port vial encoders 1
This commit is contained in:
parent
7d509e3d51
commit
036605a3c1
46 changed files with 128 additions and 121 deletions
|
@ -575,10 +575,6 @@ ifeq ($(strip $(VIAL_INSECURE)), yes)
|
|||
OPT_DEFS += -DVIAL_INSECURE
|
||||
endif
|
||||
|
||||
ifeq ($(strip $(VIAL_ENCODERS_ENABLE)), yes)
|
||||
OPT_DEFS += -DVIAL_ENCODERS_ENABLE
|
||||
endif
|
||||
|
||||
ifeq ($(strip $(VIALRGB_ENABLE)), yes)
|
||||
SRC += $(QUANTUM_DIR)/vialrgb.c
|
||||
OPT_DEFS += -DVIALRGB_ENABLE
|
||||
|
|
|
@ -9,8 +9,6 @@
|
|||
|
||||
#define DYNAMIC_KEYMAP_LAYER_COUNT 4
|
||||
|
||||
#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_VOLD, KC_VOLU, KC_MS_WH_DOWN, KC_MS_WH_UP, KC_MS_WH_DOWN, KC_MS_WH_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS }
|
||||
|
||||
#define VIAL_TAP_DANCE_ENTRIES 5
|
||||
#define VIAL_COMBO_ENTRIES 5
|
||||
#define VIAL_KEY_OVERRIDE_ENTRIES 5
|
||||
|
|
|
@ -66,3 +66,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_MS_WH_DOWN, KC_MS_WH_UP), ENCODER_CCW_CW(KC_MS_WH_DOWN, KC_MS_WH_UP) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
||||
|
|
|
@ -7,8 +7,6 @@
|
|||
#define VIAL_UNLOCK_COMBO_COLS { 0, 13 }
|
||||
#define DYNAMIC_KEYMAP_LAYER_COUNT 3
|
||||
|
||||
#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS }
|
||||
|
||||
#define VIAL_KEY_OVERRIDE_ENTRIES 6
|
||||
#define VIAL_COMBO_ENTRIES 6
|
||||
#define VIAL_TAP_DANCE_ENTRIES 6
|
||||
|
|
|
@ -48,3 +48,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS)
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_MPRV, KC_MNXT) },
|
||||
[2] = { ENCODER_CCW_CW(KC_NO, KC_NO) },
|
||||
[3] = { ENCODER_CCW_CW(KC_NO, KC_NO) },
|
||||
};
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
|
@ -2,8 +2,6 @@
|
|||
|
||||
#define DYNAMIC_KEYMAP_LAYER_COUNT 7
|
||||
|
||||
#define VIAL_ENCODER_DEFAULT {KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}
|
||||
|
||||
#define VIAL_ENCODER_KEYCODE_DELAY 10
|
||||
|
||||
#define VIAL_KEYBOARD_UID {0xB3, 0x30, 0xE4, 0x75, 0xF9, 0x3A, 0x9B, 0x18}
|
||||
|
|
|
@ -162,3 +162,12 @@ bool led_update_user(led_t led_state) {
|
|||
return true;
|
||||
}
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[4] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[5] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[6] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -31,4 +31,4 @@ WS2812_DRIVER = bitbang
|
|||
#Vial
|
||||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
|
@ -37,3 +37,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
_______, _______, _______
|
||||
),
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_NO, KC_NO) },
|
||||
[1] = { ENCODER_CCW_CW(KC_NO, KC_NO) },
|
||||
[2] = { ENCODER_CCW_CW(KC_NO, KC_NO) },
|
||||
[3] = { ENCODER_CCW_CW(KC_NO, KC_NO) },
|
||||
};
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
QMK_SETTINGS = no
|
||||
TAP_DANCE_ENABLE = yes
|
||||
MOUSEKEY_ENABLE = yes
|
||||
|
|
|
@ -6,7 +6,3 @@
|
|||
/* VIAL Unlock combo keys */
|
||||
#define VIAL_UNLOCK_COMBO_ROWS { 0, 2 }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 0, 11 }
|
||||
|
||||
/* Encoder default values and delay */
|
||||
#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS }
|
||||
#define VIAL_ENCODER_KEYCODE_DELAY 10
|
||||
|
|
|
@ -43,3 +43,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS),
|
||||
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
||||
QMK_SETTINGS = no
|
||||
|
|
|
@ -7,9 +7,6 @@
|
|||
#define VIAL_UNLOCK_COMBO_ROWS { 4, 4 }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 0, 4 }
|
||||
|
||||
#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_UP, KC_DOWN, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, \
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS }
|
||||
|
||||
#undef ENCODER_RESOLUTION
|
||||
#define ENCODER_RESOLUTION 4
|
||||
|
|
|
@ -91,3 +91,12 @@ led_config_t g_led_config = {
|
|||
}
|
||||
};
|
||||
#endif
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_UP, KC_DOWN) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[4] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[5] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -10,7 +10,7 @@ LTO_ENABLE = yes
|
|||
# Vial settings
|
||||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
VIALRGB_ENABLE = yes
|
||||
|
||||
# Reduce firmware size
|
||||
|
|
|
@ -6,8 +6,5 @@
|
|||
|
||||
#define ENCODER_RESOLUTION 2
|
||||
|
||||
#define VIAL_ENCODER_DEFAULT { KC_A, KC_B, KC_C, KC_D, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_A, KC_B, KC_C, KC_D, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS }
|
||||
|
||||
|
||||
#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 1, 4 }
|
||||
|
|
|
@ -145,3 +145,10 @@ bool encoder_update_user(uint8_t index, bool clockwise) {
|
|||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_A, KC_B), ENCODER_CCW_CW(KC_C, KC_D) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_A, KC_B), ENCODER_CCW_CW(KC_C, KC_D) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
QMK_SETTINGS = no
|
||||
|
||||
EXTRAFLAGS += -flto
|
|
@ -8,4 +8,3 @@
|
|||
#define VIAL_UNLOCK_COMBO_COLS { 0, 1, 2 }
|
||||
|
||||
#define VIAL_ENCODER_KEYCODE_DELAY 10
|
||||
#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_MEDIA_REWIND, KC_MEDIA_FAST_FORWARD, KC_MS_DOWN, KC_MS_UP, KC_MS_LEFT, KC_MS_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS }
|
||||
|
|
|
@ -25,3 +25,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
_______, _______
|
||||
)
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_MEDIA_REWIND, KC_MEDIA_FAST_FORWARD) },
|
||||
[1] = { ENCODER_CCW_CW(KC_MS_DOWN, KC_MS_UP), ENCODER_CCW_CW(KC_MS_LEFT, KC_MS_RIGHT) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
||||
KEY_OVERRIDE_ENABLE = no
|
||||
|
|
|
@ -21,7 +21,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define VIAL_KEYBOARD_UID {0xAA, 0xF4, 0xE4, 0x5D, 0xDA, 0x2E, 0x52, 0x2F}
|
||||
#define VIAL_UNLOCK_COMBO_ROWS { 1, 5 }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 0, 3 }
|
||||
#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS }
|
||||
|
||||
/* Space-saving measures */
|
||||
#define LAYER_STATE_8BIT
|
||||
|
|
|
@ -66,3 +66,10 @@ bool oled_task_user(void) {
|
|||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
|
||||
LTO_ENABLE = yes
|
||||
KEY_OVERRIDE_ENABLE = no
|
||||
|
|
|
@ -25,5 +25,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
/* VIAL Specific definitions */
|
||||
#define VIAL_KEYBOARD_UID {0x3B, 0x87, 0xE1, 0xE7, 0x57, 0x30, 0x78, 0x13}
|
||||
#define VIAL_UNLOCK_COMBO_ROWS { 0, 0 }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 1, 4 }
|
||||
#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 1, 4 }
|
|
@ -122,3 +122,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
return false;
|
||||
}
|
||||
#endif
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
VIA_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
MOUSEKEY_ENABLE = no
|
||||
QMK_SETTINGS = no
|
||||
COMBOS_ENABLE = no
|
||||
|
|
|
@ -17,5 +17,4 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
/* VIAL Specific definitions */
|
||||
#define VIAL_KEYBOARD_UID {0xD1, 0x5C, 0x58, 0xBE, 0xC2, 0x90, 0x5E, 0xD6}
|
||||
#define VIAL_UNLOCK_COMBO_ROWS { 5, 5 }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 4, 3 }
|
||||
#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 4, 3 }
|
|
@ -54,4 +54,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,
|
||||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
|
@ -26,5 +26,3 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
|
||||
#define VIAL_UNLOCK_COMBO_ROWS { 0, 5 }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 0, 5 }
|
||||
|
||||
#define VIAL_ENCODER_DEFAULT { KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS }
|
||||
|
|
|
@ -55,3 +55,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS
|
||||
)
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -2,4 +2,4 @@ VIA_ENABLE = yes
|
|||
VIAL_ENABLE = yes
|
||||
AUDIO_ENABLE = yes
|
||||
AUDIO_DRIVER = pwm_software
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
|
|
|
@ -3,7 +3,3 @@
|
|||
#define VIAL_KEYBOARD_UID {0xD6, 0x68, 0xF2, 0x55, 0x9B, 0x48, 0x07, 0x6E}
|
||||
#define VIAL_UNLOCK_COMBO_ROWS { 0, 4 }
|
||||
#define VIAL_UNLOCK_COMBO_COLS { 0, 0 }
|
||||
|
||||
//default trans keycode.
|
||||
#define VIAL_ENCODER_DEFAULT { KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS}
|
||||
|
||||
|
|
|
@ -82,3 +82,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
)
|
||||
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[4] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[5] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[6] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS), ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
LTO_ENABLE = yes
|
||||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
||||
QMK_SETTINGS = no
|
||||
COMBO_ENABLE = no
|
||||
TAP_DANCE_ENABLE = no
|
||||
|
|
|
@ -8,6 +8,4 @@
|
|||
|
||||
#define ENCODERS_PAD_A { D0 }
|
||||
#define ENCODERS_PAD_B { D1 }
|
||||
#define ENCODER_RESOLUTION 4
|
||||
#define VIAL_ENCODER_DEFAULT {KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS}
|
||||
#define VIAL_ENCODER_KEYCODE_DELAY 10
|
||||
#define ENCODER_RESOLUTION 4
|
|
@ -46,3 +46,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
|
|||
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______
|
||||
)
|
||||
};
|
||||
|
||||
const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = {
|
||||
[0] = { ENCODER_CCW_CW(KC_VOLD, KC_VOLU) },
|
||||
[1] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[2] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
[3] = { ENCODER_CCW_CW(KC_TRNS, KC_TRNS) },
|
||||
};
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
VIA_ENABLE = yes
|
||||
VIAL_ENABLE = yes
|
||||
LTO_ENABLE = yes
|
||||
VIAL_ENCODERS_ENABLE = yes
|
||||
ENCODER_MAP_ENABLE = yes
|
|
@ -71,22 +71,13 @@
|
|||
|
||||
// Encoders are located right after the dynamic keymap
|
||||
#define VIAL_ENCODERS_EEPROM_ADDR (DYNAMIC_KEYMAP_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2))
|
||||
#define DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR VIAL_ENCODERS_EEPROM_ADDR
|
||||
|
||||
#ifdef VIAL_ENCODERS_ENABLE
|
||||
#ifdef SPLIT_KEYBOARD
|
||||
#define NUMBER_OF_ENCODERS (2 * sizeof(encoders_pad_a) / sizeof(pin_t))
|
||||
#else
|
||||
#define NUMBER_OF_ENCODERS (sizeof(encoders_pad_a) / sizeof(pin_t))
|
||||
#endif
|
||||
static pin_t encoders_pad_a[] = ENCODERS_PAD_A;
|
||||
#define VIAL_ENCODERS_SIZE (NUMBER_OF_ENCODERS * DYNAMIC_KEYMAP_LAYER_COUNT * 2 * 2)
|
||||
#else
|
||||
#define VIAL_ENCODERS_SIZE 0
|
||||
#endif
|
||||
|
||||
#define VIAL_QMK_SETTINGS_EEPROM_ADDR (VIAL_ENCODERS_EEPROM_ADDR + VIAL_ENCODERS_SIZE)
|
||||
#define VIAL_ENCODERS_SIZE (NUM_ENCODERS * DYNAMIC_KEYMAP_LAYER_COUNT * 2 * 2)
|
||||
|
||||
// QMK settings area is just past encoders
|
||||
#define VIAL_QMK_SETTINGS_EEPROM_ADDR (VIAL_ENCODERS_EEPROM_ADDR + VIAL_ENCODERS_SIZE)
|
||||
|
||||
#ifdef QMK_SETTINGS
|
||||
#include "qmk_settings.h"
|
||||
#define VIAL_QMK_SETTINGS_SIZE (sizeof(qmk_settings_t))
|
||||
|
@ -126,17 +117,6 @@ static pin_t encoders_pad_a[] = ENCODERS_PAD_A;
|
|||
# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (VIAL_KEY_OVERRIDE_EEPROM_ADDR + VIAL_KEY_OVERRIDE_SIZE)
|
||||
#endif
|
||||
|
||||
// Dynamic macro starts after dynamic encoders, but only when using ENCODER_MAP
|
||||
#ifdef ENCODER_MAP_ENABLE
|
||||
# ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
|
||||
# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * NUM_ENCODERS * 2 * 2))
|
||||
# endif // DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
|
||||
#else // ENCODER_MAP_ENABLE
|
||||
# ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
|
||||
# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR)
|
||||
# endif // DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR
|
||||
#endif // ENCODER_MAP_ENABLE
|
||||
|
||||
// Sanity check that dynamic keymaps fit in available EEPROM
|
||||
// If there's not 100 bytes available for macros, then something is wrong.
|
||||
// The keyboard should override DYNAMIC_KEYMAP_LAYER_COUNT to reduce it,
|
||||
|
|
|
@ -79,11 +79,6 @@ __attribute__((weak)) bool encoder_update_kb(uint8_t index, bool clockwise) {
|
|||
return encoder_update_user(index, clockwise);
|
||||
}
|
||||
|
||||
#ifdef VIAL_ENCODERS_ENABLE
|
||||
#include "vial.h"
|
||||
#define encoder_update_kb vial_encoder_update
|
||||
#endif
|
||||
|
||||
void encoder_init(void) {
|
||||
#ifdef SPLIT_KEYBOARD
|
||||
thisHand = isLeftHand ? 0 : NUM_ENCODERS_LEFT;
|
||||
|
|
|
@ -44,10 +44,6 @@ _Static_assert(VIAL_UNLOCK_NUM_KEYS < 15, "Max 15 unlock keys");
|
|||
_Static_assert(sizeof(vial_unlock_combo_rows) == sizeof(vial_unlock_combo_cols), "The number of unlock cols and rows should be the same");
|
||||
#endif
|
||||
|
||||
#ifndef VIAL_ENCODER_KEYCODE_DELAY
|
||||
#define VIAL_ENCODER_KEYCODE_DELAY 10
|
||||
#endif
|
||||
|
||||
#include "qmk_settings.h"
|
||||
|
||||
#ifdef VIAL_TAP_DANCE_ENABLE
|
||||
|
@ -123,7 +119,7 @@ void vial_handle_cmd(uint8_t *msg, uint8_t length) {
|
|||
memcpy_P(msg, &keyboard_definition[start], end - start);
|
||||
break;
|
||||
}
|
||||
#ifdef VIAL_ENCODERS_ENABLE
|
||||
#ifdef ENCODER_MAP_ENABLE
|
||||
case vial_get_encoder: {
|
||||
uint8_t layer = msg[2];
|
||||
uint8_t idx = msg[3];
|
||||
|
@ -326,39 +322,6 @@ void vial_keycode_tap(uint16_t keycode) {
|
|||
vial_keycode_up(keycode);
|
||||
}
|
||||
|
||||
#ifdef VIAL_ENCODERS_ENABLE
|
||||
static void exec_keycode(uint16_t keycode) {
|
||||
vial_keycode_down(keycode);
|
||||
|
||||
#if VIAL_ENCODER_KEYCODE_DELAY > 0
|
||||
wait_ms(VIAL_ENCODER_KEYCODE_DELAY);
|
||||
#endif
|
||||
|
||||
vial_keycode_up(keycode);
|
||||
}
|
||||
|
||||
bool vial_encoder_update(uint8_t index, bool clockwise) {
|
||||
uint16_t code;
|
||||
|
||||
layer_state_t layers = layer_state | default_layer_state;
|
||||
/* check top layer first */
|
||||
for (int8_t i = MAX_LAYER - 1; i >= 0; i--) {
|
||||
if (layers & (1UL << i)) {
|
||||
code = dynamic_keymap_get_encoder(i, index, clockwise);
|
||||
if (code != KC_TRNS) {
|
||||
exec_keycode(code);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
/* fall back to layer 0 */
|
||||
code = dynamic_keymap_get_encoder(0, index, clockwise);
|
||||
exec_keycode(code);
|
||||
|
||||
return true;
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef VIAL_TAP_DANCE_ENABLE
|
||||
#include "process_tap_dance.h"
|
||||
|
||||
|
|
|
@ -29,10 +29,6 @@ void vial_init(void);
|
|||
void vial_handle_cmd(uint8_t *data, uint8_t length);
|
||||
bool process_record_vial(uint16_t keycode, keyrecord_t *record);
|
||||
|
||||
#ifdef VIAL_ENCODERS_ENABLE
|
||||
bool vial_encoder_update(uint8_t index, bool clockwise);
|
||||
#endif
|
||||
|
||||
extern int vial_unlocked;
|
||||
extern int vial_unlock_in_progress;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue