mirror of
https://github.com/Keychron/qmk_firmware.git
synced 2024-12-02 21:58:04 +06:00
d90038eb9c
* Turn off more unnecessary features by default * Double TAP_CODE_DELAY due to more media key issues Even with this change, some of the rotary encoder turns on my BDN9's volume knob still seem to get dropped. It's possible there's something wrong with the encoder itself. (Maybe the TAP_CODE_DELAY actually causes QMK to miss an encoder turn? Unclear.) The other knob (backlight brightness) works fine, FWIW.... * Restructure userspace config.h a bit * Hack around Instant60 Via EEPROM conflict Remove this when #6589 is fixed for Via boards. * Add backlight breathing and (EEPROM) reset to BDN9 * Add keymap for 9-Key macropad
44 lines
1016 B
C
44 lines
1016 B
C
#include QMK_KEYBOARD_H
|
|
|
|
enum layer {
|
|
LAYER_FIRST,
|
|
LAYER_SECOND,
|
|
};
|
|
|
|
/* Switch to second layer when held. */
|
|
#define LY_SECND MO(LAYER_SECOND)
|
|
|
|
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|
/* First layer (F1-F6) */
|
|
[LAYER_FIRST] = LAYOUT(
|
|
KC_MUTE, LY_SECND, BL_BRTG,
|
|
KC_F4, KC_F5, KC_F6,
|
|
KC_F1, KC_F2, KC_F3
|
|
),
|
|
|
|
/* Second layer (F7-F12) */
|
|
[LAYER_SECOND] = LAYOUT(
|
|
EEP_RST, _______, RESET,
|
|
KC_F10, KC_F11, KC_F12,
|
|
KC_F7, KC_F8, KC_F9
|
|
),
|
|
};
|
|
|
|
void encoder_update_user(uint8_t index, bool clockwise) {
|
|
switch (index) {
|
|
/* Top-left encoder (volume): */
|
|
case 0:
|
|
tap_code(clockwise ? KC_VOLU : KC_VOLD);
|
|
break;
|
|
|
|
/* Top-right encoder (backlight brightness): */
|
|
case 1:
|
|
if (clockwise) {
|
|
backlight_increase();
|
|
} else {
|
|
backlight_decrease();
|
|
}
|
|
break;
|
|
}
|
|
}
|