Move encoder config to data driven (#19923)

Co-authored-by: Nick Brassel <nick@tzarc.org>
This commit is contained in:
Ryan 2023-02-26 09:45:12 +11:00 committed by GitHub
parent 314f6c1ddb
commit 7e0299117b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
972 changed files with 2898 additions and 2569 deletions

View file

@ -48,6 +48,3 @@
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
#define ENCODERS_PAD_A { B11 }
#define ENCODERS_PAD_B { B10 }

View file

@ -6,6 +6,11 @@
"pid": "0x3201",
"device_version": "0.0.1"
},
"encoder": {
"rotary": [
{"pin_a": "B11", "pin_b": "B10"}
]
},
"processor": "STM32F103",
"bootloader": "stm32duino",
"layouts": {

View file

@ -53,15 +53,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
#ifdef ENCODER_ENABLE
#define ENCODERS 1
static uint8_t encoder_state[ENCODERS] = {0};
static keypos_t encoder_cw[ENCODERS] = {{6, 4}};
static keypos_t encoder_ccw[ENCODERS] = {{7, 4}};
static uint8_t encoder_state[NUM_ENCODERS] = {0};
static keypos_t encoder_cw[NUM_ENCODERS] = {{6, 4}};
static keypos_t encoder_ccw[NUM_ENCODERS] = {{7, 4}};
void encoder_action_unregister(void) {
#ifdef ENCODERS
for (uint8_t index = 0; index < ENCODERS; ++index) {
for (uint8_t index = 0; index < NUM_ENCODERS; ++index) {
if (encoder_state[index]) {
keyevent_t encoder_event = (keyevent_t) {
.key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index],
@ -72,7 +69,6 @@ void encoder_action_unregister(void) {
action_exec(encoder_event);
}
}
#endif
}
void encoder_action_register(uint8_t index, bool clockwise) {

View file

@ -31,6 +31,3 @@
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
#endif
#define ENCODERS_PAD_A { E6 }
#define ENCODERS_PAD_B { D6 }

View file

@ -8,6 +8,11 @@
"pid": "0x6500",
"device_version": "0.0.1"
},
"encoder": {
"rotary": [
{"pin_a": "E6", "pin_b": "D6"}
]
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layout_aliases": {

View file

@ -24,10 +24,6 @@
/* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW
/* Encoder pins */
#define ENCODERS_PAD_A { B1 }
#define ENCODERS_PAD_B { B2 }
/* RGB Matrix config */
#define RGB_DI_PIN B3

View file

@ -8,6 +8,11 @@
"pid": "0x6502",
"device_version": "0.0.1"
},
"encoder": {
"rotary": [
{"pin_a": "B1", "pin_b": "B2"}
]
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {

View file

@ -81,6 +81,3 @@
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
#define ENCODERS_PAD_A { B1 }
#define ENCODERS_PAD_B { B2 }

View file

@ -8,6 +8,11 @@
"pid": "0x7501",
"device_version": "0.0.1"
},
"encoder": {
"rotary": [
{"pin_a": "B1", "pin_b": "B2"}
]
},
"bootmagic": {
"matrix": [0, 1]
},

View file

@ -56,6 +56,3 @@
#define RGBLIGHT_HUE_STEP 8
#define RGBLIGHT_SAT_STEP 8
#define RGBLIGHT_VAL_STEP 8
#define ENCODERS_PAD_A { B1 }
#define ENCODERS_PAD_B { B2 }

View file

@ -8,6 +8,11 @@
"pid": "0x7502",
"device_version": "0.0.1"
},
"encoder": {
"rotary": [
{"pin_a": "B1", "pin_b": "B2"}
]
},
"processor": "atmega32u4",
"bootloader": "atmel-dfu",
"layouts": {

View file

@ -105,15 +105,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
}
#ifdef ENCODER_ENABLE
#define ENCODERS 1
static uint8_t encoder_state[ENCODERS] = {0};
static keypos_t encoder_cw[ENCODERS] = {{3, 5}};
static keypos_t encoder_ccw[ENCODERS] = {{4, 5}};
static uint8_t encoder_state[NUM_ENCODERS] = {0};
static keypos_t encoder_cw[NUM_ENCODERS] = {{3, 5}};
static keypos_t encoder_ccw[NUM_ENCODERS] = {{4, 5}};
void encoder_action_unregister(void) {
#ifdef ENCODERS
for (uint8_t index = 0; index < ENCODERS; ++index) {
for (uint8_t index = 0; index < NUM_ENCODERS; ++index) {
if (encoder_state[index]) {
keyevent_t encoder_event = (keyevent_t) {
.key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index],
@ -124,7 +121,6 @@ void encoder_action_unregister(void) {
action_exec(encoder_event);
}
}
#endif
}
void encoder_action_register(uint8_t index, bool clockwise) {