Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix pegasushoof caps light, add via keymap #19649

Merged
merged 8 commits into from
Jan 27, 2023
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions keyboards/bpiphany/pegasushoof/2013/2013.h
Original file line number Diff line number Diff line change
Expand Up @@ -74,8 +74,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* 7 */ { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KF7, KG7, KH7, KI7, KJ7, KK7, KL7, KK7, KL7, KO7, KP7, KC_NO, KC_NO } \
}

inline void ph_caps_led_on(void) { DDRC |= (1<<6); PORTC &= ~(1<<6); }
inline void ph_caps_led_off(void) { DDRC &= ~(1<<6); PORTC &= ~(1<<6); }
inline void ph_caps_led_on(void) { PORTC &= ~(1<<6); }
inline void ph_caps_led_off(void) { PORTC |= (1<<6); }

inline void ph_sclk_led_on(void) { DDRC |= (1<<5); PORTC &= ~(1<<5); }
inline void ph_sclk_led_off(void) { DDRC &= ~(1<<5); PORTC &= ~(1<<5); }
inline void ph_sclk_led_on(void) { PORTC &= ~(1<<5); }
wangfuco marked this conversation as resolved.
Show resolved Hide resolved
inline void ph_sclk_led_off(void) { PORTC |= (1<<5); }
3 changes: 3 additions & 0 deletions keyboards/bpiphany/pegasushoof/2013/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW

#define DYNAMIC_KEYMAP_LAYER_COUNT 3 // not enough memory for a 4th layer with VIA

/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5

1 change: 1 addition & 0 deletions keyboards/bpiphany/pegasushoof/2013/matrix.c
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ void matrix_init(void)
{
/* Column output pins */
DDRD |= 0b01111011;
DDRC |= 0b01100000; // leds
/* Row input pins */
DDRC &= (unsigned char) ~0b00000000;
DDRB &= (unsigned char) ~0b11111111;
Expand Down
9 changes: 4 additions & 5 deletions keyboards/bpiphany/pegasushoof/2015/2015.h
Original file line number Diff line number Diff line change
Expand Up @@ -94,9 +94,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* 7 */ { KA7 , KB7 , KC7 , KD7 , KE7 , KF7 , KG7 , KH7 , KI7 , KJ7 , ___ , ___ , ___ , ___ , KO7 , ___ , KQ7 , KR7 } \
}

inline void ph_caps_led_on(void) { DDRC |= (1<<6); PORTC &= ~(1<<6); }
inline void ph_caps_led_off(void) { DDRC &= ~(1<<6); PORTC &= ~(1<<6); }

inline void ph_sclk_led_on(void) { DDRC |= (1<<5); PORTC &= ~(1<<5); }
inline void ph_sclk_led_off(void) { DDRC &= ~(1<<5); PORTC &= ~(1<<5); }
inline void ph_caps_led_on(void) { PORTC &= ~(1<<6); }
inline void ph_caps_led_off(void) { PORTC |= (1<<6); }

inline void ph_sclk_led_on(void) { PORTC &= ~(1<<5); }
inline void ph_sclk_led_off(void) { PORTC |= (1<<5); }
2 changes: 2 additions & 0 deletions keyboards/bpiphany/pegasushoof/2015/config.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW

#define DYNAMIC_KEYMAP_LAYER_COUNT 3 // not enough memory for a 4th layer with VIA

/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5

1 change: 1 addition & 0 deletions keyboards/bpiphany/pegasushoof/2015/matrix.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,6 +59,7 @@ void matrix_init(void)
{
/* Column output pins */
DDRD |= 0b01111011;
DDRC |= 0b01100000; // leds
/* Row input pins */
DDRC &= ~0b10000000;
DDRB &= ~0b01111111;
Expand Down
2 changes: 1 addition & 1 deletion keyboards/bpiphany/pegasushoof/info.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"url": "",
"maintainer": "qmk",
"usb": {
"vid": "0xFEED",
"vid": "0x4245",
"pid": "0x6050",
"device_version": "1.0.4"
}
Expand Down
71 changes: 71 additions & 0 deletions keyboards/bpiphany/pegasushoof/keymaps/via/keymap.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
/*!
* Copyright 2016 Daniel Svensson <dsvensson@gmail.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/

#include QMK_KEYBOARD_H

enum {
LAYER_1 = 0,
LAYER_2,
LAYER_3
};

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/* Layer 0: Standard ISO layer */
[LAYER_1] = LAYOUT( \
KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, KC_SCRL, KC_PAUS, \
KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, \
KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, \
KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, \
KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, \
KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT \
),

/* Layer 1: Function layer */
[LAYER_2] = LAYOUT( \
_______, KC_BRID, KC_BRIU, KC_F16, KC_F17, KC_F18, KC_F19, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_ERAS, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_EJCT, _______, _______, _______, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PENT, \
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \
_______, _______, _______, _______, _______, MO(2), _______, _______, _______, _______, _______ \
),

/* Layer 2: Additional layer */
[LAYER_3] = LAYOUT( \
QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DB_TOGG, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \
XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX \
wangfuco marked this conversation as resolved.
Show resolved Hide resolved
),

};

void led_set_user(uint8_t usb_led) {
if (usb_led & (1 << USB_LED_CAPS_LOCK)) {
ph_caps_led_on();
} else {
ph_caps_led_off();
}

if (usb_led & (1 << USB_LED_SCROLL_LOCK)) {
ph_sclk_led_on();
} else {
ph_sclk_led_off();
}
}
wangfuco marked this conversation as resolved.
Show resolved Hide resolved
17 changes: 17 additions & 0 deletions keyboards/bpiphany/pegasushoof/keymaps/via/rules.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Build Options
# change to "no" to disable the options, or define them in the Makefile in
# the appropriate keymap folder that will get included automatically
#
BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite
MOUSEKEY_ENABLE = no # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = no # Console for debug
COMMAND_ENABLE = no # Commands for debug and configuration
CUSTOM_MATRIX = yes # Custom matrix file for the Pegasus Hoof due to the 2x74HC42
NKRO_ENABLE = no # Nkey Rollover - if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
BACKLIGHT_ENABLE = no # Keyboard backlight functionality
AUDIO_ENABLE = no # Audio output
RGBLIGHT_ENABLE = no # RGB underlight.

wangfuco marked this conversation as resolved.
Show resolved Hide resolved
VIA_ENABLE = yes
LTO_ENABLE = yes