#include #include #include / { combos { compatible = "zmk,combos"; combo_one { timeout-ms = <50>; key-positions = <0 1>; bindings = <&kp X>; global-quick-tap-ms = <100>; }; combo_two { timeout-ms = <50>; key-positions = <0 2>; bindings = <&kp Y>; }; }; keymap { compatible = "zmk,keymap"; label ="Default keymap"; default_layer { bindings = < &kp A &kp B &kp C &kp D >; }; }; }; &kscan { events = < /* Tap A */ ZMK_MOCK_PRESS(0,0,10) ZMK_MOCK_RELEASE(0,0,60) /* Quick Tap A and B */ ZMK_MOCK_PRESS(0,0,10) ZMK_MOCK_PRESS(0,1,10) ZMK_MOCK_RELEASE(0,0,10) ZMK_MOCK_RELEASE(0,1,200) /* Combo One */ ZMK_MOCK_PRESS(0,0,10) ZMK_MOCK_PRESS(0,1,10) ZMK_MOCK_RELEASE(0,0,10) ZMK_MOCK_RELEASE(0,1,10) /* Combo One Again (shouldn't quick tap) */ ZMK_MOCK_PRESS(0,0,10) ZMK_MOCK_PRESS(0,1,10) ZMK_MOCK_RELEASE(0,0,10) ZMK_MOCK_RELEASE(0,1,10) /* Tap A */ ZMK_MOCK_PRESS(0,0,10) ZMK_MOCK_RELEASE(0,0,60) /* Combo 2 */ ZMK_MOCK_PRESS(0,0,10) ZMK_MOCK_PRESS(1,0,10) ZMK_MOCK_RELEASE(0,0,10) ZMK_MOCK_RELEASE(1,0,10) >; };