Cody McGinnis
4 years ago
14 changed files with 82 additions and 72 deletions
@ -1,9 +1,8 @@
@@ -1,9 +1,8 @@
|
||||
CONFIG_KSCAN=n |
||||
CONFIG_ZMK_KSCAN_MOCK_DRIVER=y |
||||
CONFIG_ZMK_KSCAN_COMPOSITE_DRIVER=y |
||||
CONFIG_ZMK_KSCAN_GPIO_DRIVER=n |
||||
CONFIG_GPIO=n |
||||
CONFIG_ZMK_BLE=n |
||||
CONFIG_LOG=y |
||||
CONFIG_KSCAN_LOG_LEVEL_DBG=y |
||||
CONFIG_LOG_BACKEND_SHOW_COLOR=n |
||||
CONFIG_ZMK_LOG_LEVEL_DBG=y |
||||
|
@ -1,79 +1,18 @@
@@ -1,79 +1,18 @@
|
||||
#include <dt-bindings/zmk/keys.h> |
||||
#include <behaviors.dtsi> |
||||
#include <zmk/kscan-mock.h> |
||||
#include <dt-bindings/zmk/keys.h> |
||||
#include <dt-bindings/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>; |
||||
}; |
||||
zmk,kscan = &kscan; |
||||
}; |
||||
|
||||
left_hand: kscan_1 { |
||||
kscan: kscan { |
||||
compatible = "zmk,kscan-mock"; |
||||
label = "KSCAN_LEFT"; |
||||
label = "KSCAN_MOCK"; |
||||
|
||||
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"; |
||||
|
||||
bindings = < |
||||
&kp B &mo 1 &kp C &kp E |
||||
&kp D &kp G &kp F &kp Q>; |
||||
}; |
||||
|
||||
lower: layer_1 { |
||||
label = "LOWER"; |
||||
|
||||
bindings = < |
||||
&cp M_NEXT &trans &kp O &kp Q |
||||
&kp L &kp J &kp P &kp K>; |
||||
}; |
||||
|
||||
raise: layer_2 { |
||||
label = "RAISE"; |
||||
|
||||
bindings = < |
||||
&kp W &kp U &kp I &kp N |
||||
&kp X &kp M &kp C &kp B>; |
||||
}; |
||||
exit-after; |
||||
}; |
||||
}; |
||||
|
@ -0,0 +1,17 @@
@@ -0,0 +1,17 @@
|
||||
#!/bin/sh |
||||
|
||||
if [ -z "$1" ]; then |
||||
echo "Usage: ./run-test.sh <path to testcase>" |
||||
exit 1 |
||||
elif [ "$1" = "all" ]; then |
||||
find tests -name native_posix.keymap -exec dirname \{\} \; | xargs -l -P 2 ./run-test.sh |
||||
exit $? |
||||
fi |
||||
|
||||
testcase="$1" |
||||
echo "Running $testcase:" |
||||
|
||||
west build --pristine -d build/$testcase -b native_posix -- -DZMK_CONFIG=$testcase > /dev/null |
||||
./build/$testcase/zephyr/zmk.exe | sed -e "s/.*> //" | sed -n -f $testcase/events.patterns > build/$testcase/keycode_events.log |
||||
|
||||
diff -au $testcase/keycode_events.snapshot build/$testcase/keycode_events.log |
@ -0,0 +1,28 @@
@@ -0,0 +1,28 @@
|
||||
#include <dt-bindings/zmk/keys.h> |
||||
#include <behaviors.dtsi> |
||||
#include <dt-bindings/zmk/kscan-mock.h> |
||||
|
||||
/ { |
||||
keymap { |
||||
compatible = "zmk,keymap"; |
||||
label ="Default keymap"; |
||||
|
||||
default_layer { |
||||
bindings = < |
||||
&kp B &mo 1 |
||||
&kp D &kp G>; |
||||
}; |
||||
|
||||
lower_layer { |
||||
bindings = < |
||||
&cp M_NEXT &trans |
||||
&kp L &kp J>; |
||||
}; |
||||
|
||||
raise_layer { |
||||
bindings = < |
||||
&kp W &kp U |
||||
&kp X &kp M>; |
||||
}; |
||||
}; |
||||
}; |
@ -0,0 +1 @@
@@ -0,0 +1 @@
|
||||
s/.*hid_listener_keycode_//p |
@ -0,0 +1,2 @@
@@ -0,0 +1,2 @@
|
||||
pressed: usage_page 0x0c keycode 0xb5 |
||||
released: usage_page 0x0c keycode 0xb5 |
@ -0,0 +1,5 @@
@@ -0,0 +1,5 @@
|
||||
#include "../behavior_keymap.dtsi" |
||||
|
||||
&kscan { |
||||
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)>; |
||||
}; |
@ -0,0 +1 @@
@@ -0,0 +1 @@
|
||||
s/.*hid_listener_keycode_//p |
@ -0,0 +1,2 @@
@@ -0,0 +1,2 @@
|
||||
pressed: usage_page 0x0c keycode 0xb5 |
||||
released: usage_page 0x0c keycode 0xb5 |
@ -0,0 +1,8 @@
@@ -0,0 +1,8 @@
|
||||
#include <dt-bindings/zmk/keys.h> |
||||
#include <behaviors.dtsi> |
||||
#include <dt-bindings/zmk/kscan-mock.h> |
||||
#include "../behavior_keymap.dtsi" |
||||
|
||||
&kscan { |
||||
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)>; |
||||
}; |
Loading…
Reference in new issue