diff options
-rw-r--r-- | boards/shields/petejohanson_handwire/petejohanson_handwire.overlay | 11 | ||||
-rw-r--r-- | src/main.c | 4 | ||||
-rw-r--r-- | src/zmk.h | 6 |
3 files changed, 14 insertions, 7 deletions
diff --git a/boards/shields/petejohanson_handwire/petejohanson_handwire.overlay b/boards/shields/petejohanson_handwire/petejohanson_handwire.overlay index 3a777a6..215531d 100644 --- a/boards/shields/petejohanson_handwire/petejohanson_handwire.overlay +++ b/boards/shields/petejohanson_handwire/petejohanson_handwire.overlay @@ -3,6 +3,7 @@ / { chosen { zmk,keymap = &keymap0; + zmk,kscan = &kscan0; }; layers { @@ -10,7 +11,11 @@ default: layer_0 { label = "Default"; - keys = <KC_A KC_B KC_C KC_D>; + keys = + < + KC_A KC_B + KC_C KC_D + >; }; lower: layer_1 { @@ -31,9 +36,9 @@ layers = <&default &lower &raise>; }; - kscan { + kscan0: kscan { compatible = "gpio-kscan"; - label = "Handwired GPIO KSCAN matrix"; + label = "KSCAN"; diode-direction = "row2col"; row-gpios = <&arduino_header 8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>, @@ -8,14 +8,16 @@ #include <device.h> #include <devicetree.h> +#include "zmk.h" #include "kscan.h" #include "usb_hid.h" +#define ZMK_KSCAN_DEV DT_LABEL(ZMK_MATRIX_NODE_ID) void main(void) { printk("Welcome to ZMK!\n"); - if (zmk_kscan_init(CONFIG_KSCAN_MATRIX_DEV_NAME) != 0) { + if (zmk_kscan_init(ZMK_KSCAN_DEV) != 0) { printk("Keyboard Scan Init Failed\n"); return; } @@ -1,8 +1,8 @@ #ifndef ZMK_H #define ZMK_H -#define __ZMK_MATRIX_NODE_ID DT_PATH(kscan) -#define ZMK_MATRIX_ROWS DT_PROP_LEN(__ZMK_MATRIX_NODE_ID,row_gpios) -#define ZMK_MATRIX_COLS DT_PROP_LEN(__ZMK_MATRIX_NODE_ID,col_gpios) +#define ZMK_MATRIX_NODE_ID DT_CHOSEN(zmk_kscan) +#define ZMK_MATRIX_ROWS DT_PROP_LEN(ZMK_MATRIX_NODE_ID,row_gpios) +#define ZMK_MATRIX_COLS DT_PROP_LEN(ZMK_MATRIX_NODE_ID,col_gpios) #endif |