diff options
Diffstat (limited to 'app/boards/native_posix.overlay')
-rw-r--r-- | app/boards/native_posix.overlay | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/app/boards/native_posix.overlay b/app/boards/native_posix.overlay new file mode 100644 index 0000000..9d92bee --- /dev/null +++ b/app/boards/native_posix.overlay @@ -0,0 +1,79 @@ +#include <dt-bindings/zmk/keys.h> +#include <zmk/kscan-mock.h> + +/ { + chosen { + zmk,kscan = &kscan0; + zmk,keymap = &keymap0; + }; + + kscan0: kscan_0 { + compatible = "zmk,kscan-composite"; + label = "KSCAN_COMP"; + rows = <2>; + columns = <4>; + + left: left { + kscan = <&left_hand>; + }; + + right: right { + kscan = <&right_hand>; + column-offset = <2>; + }; + }; + + left_hand: kscan_1 { + compatible = "zmk,kscan-mock"; + label = "KSCAN_LEFT"; + + rows = <2>; + columns = <2>; + events = <ZMK_MOCK_PRESS(0,1,300) ZMK_MOCK_PRESS(0,0,300) ZMK_MOCK_RELEASE(0,0,300) ZMK_MOCK_RELEASE(0,1,300)>; + // events = <ZMK_MOCK_PRESS(0,0,800) ZMK_MOCK_RELEASE(0,0,800) ZMK_MOCK_PRESS(0,1,800) ZMK_MOCK_RELEASE(0,1,800)>; + }; + + right_hand: kscan_2 { + compatible = "zmk,kscan-mock"; + label = "KSCAN_RIGHT"; + + rows = <2>; + columns = <2>; + events = <ZMK_MOCK_PRESS(1,1,800) ZMK_MOCK_RELEASE(1,1,100) ZMK_MOCK_PRESS(0,1,800) ZMK_MOCK_RELEASE(0,1,100)>; + }; + + keymap0: keymap { + compatible = "zmk,keymap"; + label ="Default keymap"; + layers = <&default &lower &raise>; + }; + + layers { + compatible = "zmk,layers"; + + default: layer_0 { + label = "DEFAULT"; + keys = + < + KC_A MT(MOD_LSFT, KC_B) KC_C KC_D + KC_E KC_F KC_G KC_H + >; + }; + + lower: layer_1 { + label = "LOWER"; + keys = < + KC_A KC_B KC_C KC_D + KC_E KC_F KC_G KC_H + >; + }; + + raise: layer_2 { + label = "RAISE"; + keys = < + KC_E KC_F KC_G KC_H + KC_A KC_B KC_C KC_D + >; + }; + }; +}; |