Tweak to use a chosen node for kscan device.
This commit is contained in:
parent
a63a773983
commit
70bf1230fa
3 changed files with 14 additions and 7 deletions
|
@ -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
|
||||
|
|
Loading…
Add table
Reference in a new issue