summary refs log tree commit diff
path: root/keyboards/meletrix
diff options
context:
space:
mode:
authorRyan <fauxpark@gmail.com>2023-02-26 09:45:12 +1100
committerGitHub <noreply@github.com>2023-02-26 09:45:12 +1100
commit7e0299117b389b1c7fcdfa2f20891ba2287ea771 (patch)
tree00bb5bb7b3b73a9de365d1839ba7d41240d439f1 /keyboards/meletrix
parent314f6c1ddba09851b33e4f3b4bd43bdbc55f9628 (diff)
Move encoder config to data driven (#19923)
Co-authored-by: Nick Brassel <nick@tzarc.org>
Diffstat (limited to 'keyboards/meletrix')
-rw-r--r--keyboards/meletrix/zoom65/config.h8
-rw-r--r--keyboards/meletrix/zoom65/info.json5
-rw-r--r--keyboards/meletrix/zoom65/zoom65.c8
-rw-r--r--keyboards/meletrix/zoom65_lite/config.h8
-rw-r--r--keyboards/meletrix/zoom65_lite/info.json5
-rw-r--r--keyboards/meletrix/zoom65_lite/keymaps/via/keymap.c12
6 files changed, 19 insertions, 27 deletions
diff --git a/keyboards/meletrix/zoom65/config.h b/keyboards/meletrix/zoom65/config.h
index 0bf850043c..4c05b1d83b 100644
--- a/keyboards/meletrix/zoom65/config.h
+++ b/keyboards/meletrix/zoom65/config.h
@@ -22,14 +22,6 @@
 
 #define DIODE_DIRECTION COL2ROW
 
-/* Enable encoder */
-#define ENCODERS_PAD_A { B1 }
-#define ENCODERS_PAD_B { B0 }
-
-#define ENCODERS 1
-
-#define ENCODER_RESOLUTION 2
-
 // Note:  array is { col, row )
 #define ENCODERS_CW_KEY  { { 5, 4 } }
 #define ENCODERS_CCW_KEY { { 3, 4 } }
diff --git a/keyboards/meletrix/zoom65/info.json b/keyboards/meletrix/zoom65/info.json
index 18be91ee26..0968df4794 100644
--- a/keyboards/meletrix/zoom65/info.json
+++ b/keyboards/meletrix/zoom65/info.json
@@ -8,6 +8,11 @@
         "pid": "0x0004",
         "device_version": "0.0.1"
     },
+    "encoder": {
+        "rotary": [
+            {"pin_a": "B1", "pin_b": "B0", "resolution": 2}
+        ]
+    },
     "indicators": {
         "caps_lock": "F7",
         "on_state": 0
diff --git a/keyboards/meletrix/zoom65/zoom65.c b/keyboards/meletrix/zoom65/zoom65.c
index f69ed547ef..ff27a4442f 100644
--- a/keyboards/meletrix/zoom65/zoom65.c
+++ b/keyboards/meletrix/zoom65/zoom65.c
@@ -17,13 +17,13 @@
 #include "zoom65.h"
 
 #ifdef VIA_ENABLE
-static uint8_t encoder_state[ENCODERS] = {0};
-static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY;
-static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY;
+static uint8_t encoder_state[NUM_ENCODERS] = {0};
+static keypos_t encoder_cw[NUM_ENCODERS] = ENCODERS_CW_KEY;
+static keypos_t encoder_ccw[NUM_ENCODERS] = ENCODERS_CCW_KEY;
 
 void encoder_action_unregister(void)
 {
-    for (int index = 0; index < ENCODERS; ++index)
+    for (int index = 0; index < NUM_ENCODERS; ++index)
     {
         if (encoder_state[index])
         {
diff --git a/keyboards/meletrix/zoom65_lite/config.h b/keyboards/meletrix/zoom65_lite/config.h
index 0bf850043c..4c05b1d83b 100644
--- a/keyboards/meletrix/zoom65_lite/config.h
+++ b/keyboards/meletrix/zoom65_lite/config.h
@@ -22,14 +22,6 @@
 
 #define DIODE_DIRECTION COL2ROW
 
-/* Enable encoder */
-#define ENCODERS_PAD_A { B1 }
-#define ENCODERS_PAD_B { B0 }
-
-#define ENCODERS 1
-
-#define ENCODER_RESOLUTION 2
-
 // Note:  array is { col, row )
 #define ENCODERS_CW_KEY  { { 5, 4 } }
 #define ENCODERS_CCW_KEY { { 3, 4 } }
diff --git a/keyboards/meletrix/zoom65_lite/info.json b/keyboards/meletrix/zoom65_lite/info.json
index f3839d2e88..d5dcd621ef 100644
--- a/keyboards/meletrix/zoom65_lite/info.json
+++ b/keyboards/meletrix/zoom65_lite/info.json
@@ -8,6 +8,11 @@
         "pid": "0x0005",
         "device_version": "0.0.1"
     },
+    "encoder": {
+        "rotary": [
+            {"pin_a": "B1", "pin_b": "B0", "resolution": 2}
+        ]
+    },
     "indicators": {
         "caps_lock": "F7",
         "on_state": 0
diff --git a/keyboards/meletrix/zoom65_lite/keymaps/via/keymap.c b/keyboards/meletrix/zoom65_lite/keymaps/via/keymap.c
index de44abe37e..23729b4349 100644
--- a/keyboards/meletrix/zoom65_lite/keymaps/via/keymap.c
+++ b/keyboards/meletrix/zoom65_lite/keymaps/via/keymap.c
@@ -16,14 +16,13 @@
 
 #include QMK_KEYBOARD_H
 
-#ifdef VIA_ENABLE
-static uint8_t encoder_state[ENCODERS] = {0};
-static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY;
-static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY;
+static uint8_t encoder_state[NUM_ENCODERS] = {0};
+static keypos_t encoder_cw[NUM_ENCODERS] = ENCODERS_CW_KEY;
+static keypos_t encoder_ccw[NUM_ENCODERS] = ENCODERS_CCW_KEY;
 
 void encoder_action_unregister(void)
 {
-    for (int index = 0; index < ENCODERS; ++index)
+    for (int index = 0; index < NUM_ENCODERS; ++index)
     {
         if (encoder_state[index])
         {
@@ -56,8 +55,7 @@ bool encoder_update_kb(uint8_t index, bool clockwise)
 {
     encoder_action_register(index, clockwise);
     return true;
-};
-#endif
+}
 
 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
     [0] = LAYOUT_all(