summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/CMakeLists.txt4
-rw-r--r--app/boards/arm/planck/planck_rev6.keymap (renamed from app/boards/arm/planck/keymap/keymap.overlay)0
-rw-r--r--app/boards/shields/clueboard_california/clueboard_california.keymap (renamed from app/boards/shields/clueboard_california/keymap/keymap.overlay)0
-rw-r--r--app/boards/shields/kyria/kyria.keymap (renamed from app/boards/shields/kyria/keymap/keymap.overlay)0
-rw-r--r--app/boards/shields/lily58/keymap/keymap.overlay36
-rw-r--r--app/boards/shields/lily58/lily58.keymap70
-rw-r--r--app/boards/shields/petejohanson_handwire/Kconfig.defconfig13
-rw-r--r--app/boards/shields/petejohanson_handwire/Kconfig.shield5
-rw-r--r--app/boards/shields/petejohanson_handwire/keymap/keymap.overlay40
-rw-r--r--app/boards/shields/petejohanson_handwire/petejohanson_handwire.conf1
-rw-r--r--app/boards/shields/petejohanson_handwire/petejohanson_handwire.overlay44
-rw-r--r--app/boards/shields/petejohanson_pro_micro_handwire/Kconfig.defconfig13
-rw-r--r--app/boards/shields/petejohanson_pro_micro_handwire/Kconfig.shield5
-rw-r--r--app/boards/shields/petejohanson_pro_micro_handwire/keymap/keymap.overlay41
-rw-r--r--app/boards/shields/petejohanson_pro_micro_handwire/petejohanson_pro_micro_handwire.conf0
-rw-r--r--app/boards/shields/petejohanson_pro_micro_handwire/petejohanson_pro_micro_handwire.overlay17
-rw-r--r--app/cmake/zmk_config.cmake54
-rw-r--r--app/drivers/zephyr/kscan_gpio_matrix.c2
-rw-r--r--app/include/dt-bindings/zmk/keys.h2
-rw-r--r--app/src/event_manager.c2
20 files changed, 98 insertions, 251 deletions
diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt
index b05d16b..d0d343b 100644
--- a/app/CMakeLists.txt
+++ b/app/CMakeLists.txt
@@ -18,10 +18,6 @@ include(cmake/zmk_config.cmake)
find_package(Zephyr REQUIRED HINTS ../zephyr)
project(zmk)
-if(EXISTS ${KEYMAP_DIR}/keymap.c)
- target_sources(app PRIVATE ${KEYMAP_DIR}/keymap.c)
-endif()
-
zephyr_linker_sources(RODATA include/linker/zmk-events.ld)
# Add your source file to the "app" target. This must come after
diff --git a/app/boards/arm/planck/keymap/keymap.overlay b/app/boards/arm/planck/planck_rev6.keymap
index f474ec9..f474ec9 100644
--- a/app/boards/arm/planck/keymap/keymap.overlay
+++ b/app/boards/arm/planck/planck_rev6.keymap
diff --git a/app/boards/shields/clueboard_california/keymap/keymap.overlay b/app/boards/shields/clueboard_california/clueboard_california.keymap
index c2fa7f8..c2fa7f8 100644
--- a/app/boards/shields/clueboard_california/keymap/keymap.overlay
+++ b/app/boards/shields/clueboard_california/clueboard_california.keymap
diff --git a/app/boards/shields/kyria/keymap/keymap.overlay b/app/boards/shields/kyria/kyria.keymap
index 53101ff..53101ff 100644
--- a/app/boards/shields/kyria/keymap/keymap.overlay
+++ b/app/boards/shields/kyria/kyria.keymap
diff --git a/app/boards/shields/lily58/keymap/keymap.overlay b/app/boards/shields/lily58/keymap/keymap.overlay
deleted file mode 100644
index 9d1f9c6..0000000
--- a/app/boards/shields/lily58/keymap/keymap.overlay
+++ /dev/null
@@ -1,36 +0,0 @@
-#include <behaviors.dtsi>
-#include <dt-bindings/zmk/keys.h>
-#include <dt-bindings/zmk/matrix-transform.h>
-
-/ {
- chosen {
- zmk,keymap = &keymap0;
- };
-
- keymap0: keymap {
- compatible = "zmk,keymap";
- label ="Default Lily58 Keymap";
- layers = <&default>;
- };
-
- layers {
- compatible = "zmk,layers";
-
- default: layer_0 {
- label = "DEFAULT";
-// ---------------------------------------------------------------------------------------------------------------------------------
-// | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
-// | TAB | Q | W | E | R | T | | Y | U | I | O | P | \ |
-// | CTRL | A | S | D | F | G | | H | J | K | L | ; | ' |
-// | SHIFT | Z | X | C | V | B | "[" | | "]" | N | M | , | . | / | CTRL |
-// | GUI | DEL | RET | SPACE | | SPACE | TAB | BSPC | R-ALT |
- bindings = <
-&kp ESC &kp NUM_1 &kp NUM_2 &kp NUM_3 &kp NUM_4 &kp NUM_5 &kp NUM_6 &kp NUM_7 &kp NUM_8 &kp NUM_9 &kp NUM_0 &kp GRAV
-&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp BSLH
-&kp LCTL &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SCLN &kp QUOT
-&kp LSFT &kp Z &kp X &kp C &kp V &kp B &kp LBKT &kp RBKT &kp N &kp M &kp CMMA &kp DOT &kp FSLH &kp RCTL
- &kp LGUI &kp DEL &kp RET &kp SPC &kp SPC &kp TAB &kp BKSP &kp RALT
- >;
- };
- };
-};
diff --git a/app/boards/shields/lily58/lily58.keymap b/app/boards/shields/lily58/lily58.keymap
new file mode 100644
index 0000000..a198770
--- /dev/null
+++ b/app/boards/shields/lily58/lily58.keymap
@@ -0,0 +1,70 @@
+#include <behaviors.dtsi>
+#include <dt-bindings/zmk/keys.h>
+#include <dt-bindings/zmk/matrix-transform.h>
+
+/ {
+ chosen {
+ zmk,keymap = &keymap0;
+ };
+
+ keymap0: keymap {
+ compatible = "zmk,keymap";
+ label ="Default Lily58 Keymap";
+ layers = <&default &lower &raise>;
+ };
+
+ layers {
+ compatible = "zmk,layers";
+
+ default: layer_0 {
+ label = "DEFAULT";
+// ------------------------------------------------------------------------------------------------------------
+// | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ` |
+// | TAB | Q | W | E | R | T | | Y | U | I | O | P | - |
+// | CTRL | A | S | D | F | G | | H | J | K | L | ; | ' |
+// | SHIFT | Z | X | C | V | B | "[" | | "]" | N | M | , | . | / | SHIFT |
+// | ALT | GUI | LOWER| SPACE | | ENTER | RAISE| BSPC | GUI |
+ bindings = <
+&kp ESC &kp NUM_1 &kp NUM_2 &kp NUM_3 &kp NUM_4 &kp NUM_5 &kp NUM_6 &kp NUM_7 &kp NUM_8 &kp NUM_9 &kp NUM_0 &kp GRAV
+&kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp MINUS
+&kp LCTL &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SCLN &kp QUOT
+&kp LSFT &kp Z &kp X &kp C &kp V &kp B &kp LBKT &kp RBKT &kp N &kp M &kp CMMA &kp DOT &kp FSLH &kp RSFT
+ &kp LALT &kp LGUI &mo 1 &kp SPC &kp RET &mo 2 &kp BKSP &kp RGUI
+ >;
+ };
+
+ lower: layer_1 {
+ label = "LOWER";
+// ------------------------------------------------------------------------------------------------------------
+// | | | | | | | | | | | | | |
+// | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 |
+// | ` | ! | @ | # | $ | % | | ^ | & | * | ( | ) | ~ |
+// | | | | | | | | | | | _ | + | { | } | "|" |
+// | | | | | | | | | |
+ bindings = <
+&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
+&kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12
+&kp GRAV &kp BANG &kp ATSN &kp HASH &kp CURU &kp PRCT &kp CRRT &kp AMPS &kp KMLT &kp LPRN &kp RPRN &kp TILD
+&trans &trans &trans &trans &trans &trans &trans &trans &trans &kp MINUS &kp KPLS &kp LCUR &kp RCUR &kp PIPE
+ &trans &trans &trans &trans &trans &trans &trans &trans
+ >;
+ };
+
+ raise: layer_3 {
+ label = "RAISE";
+// ------------------------------------------------------------------------------------------------------------
+// | | | | | | | | | | | | | |
+// | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | |
+// | F1 | F2 | F3 | F4 | F5 | F6 | | | <- | ^ | v | -> | |
+// | F7 | F8 | F9 | F10 | F11 | F12 | | | | + | - | = | [ | ] | \ |
+// | | | | | | | | | |
+ bindings = <
+&trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans &trans
+&kp GRAV &kp NUM_1 &kp NUM_2 &kp NUM_3 &kp NUM_4 &kp NUM_5 &kp NUM_6 &kp NUM_7 &kp NUM_8 &kp NUM_9 &kp NUM_0 &trans
+&kp F1 &kp F2 &kp F3 &kp F4 &kp F5 &kp F6 &trans &kp LARW &kp DARW &kp UARW &kp RARW &trans
+&kp F7 &kp F8 &kp F9 &kp F10 &kp F11 &kp F12 &trans &trans &kp KPLS &kp MINUS &kp EQL &kp LBKT &kp RBKT &kp BSLH
+ &trans &trans &trans &trans &trans &trans &trans &trans
+ >;
+ };
+ };
+};
diff --git a/app/boards/shields/petejohanson_handwire/Kconfig.defconfig b/app/boards/shields/petejohanson_handwire/Kconfig.defconfig
deleted file mode 100644
index 7da09ac..0000000
--- a/app/boards/shields/petejohanson_handwire/Kconfig.defconfig
+++ /dev/null
@@ -1,13 +0,0 @@
-
-if SHIELD_PETEJOHANSON_HANDWIRE
-
-config ZMK_KEYBOARD_NAME
- default "Pete's Handwire Breadboard"
-
-config ZMK_BLE
- default y
-
-config ZMK_ACTION_MOD_TAP
- default y
-
-endif
diff --git a/app/boards/shields/petejohanson_handwire/Kconfig.shield b/app/boards/shields/petejohanson_handwire/Kconfig.shield
deleted file mode 100644
index defb90a..0000000
--- a/app/boards/shields/petejohanson_handwire/Kconfig.shield
+++ /dev/null
@@ -1,5 +0,0 @@
-# Copyright (c) 2019 Linaro Limited
-# SPDX-License-Identifier: MIT
-
-config SHIELD_PETEJOHANSON_HANDWIRE
- def_bool $(shields_list_contains,petejohanson_handwire)
diff --git a/app/boards/shields/petejohanson_handwire/keymap/keymap.overlay b/app/boards/shields/petejohanson_handwire/keymap/keymap.overlay
deleted file mode 100644
index b294171..0000000
--- a/app/boards/shields/petejohanson_handwire/keymap/keymap.overlay
+++ /dev/null
@@ -1,40 +0,0 @@
-#include <dt-bindings/zmk/keys.h>
-#include <behaviors.dtsi>
-
-/ {
- chosen {
- zmk,keymap = &keymap0;
- };
-
- keymap0: keymap {
- compatible = "zmk,keymap";
- label ="Default keymap";
- layers = <&default &lower &raise>;
- };
-
- layers {
- compatible = "zmk,layers";
-
- default: layer_0 {
- label = "DEFAULT";
- bindings = <
- &cp M_NEXT &mt MOD_LSFT B &trans &trans
- &mo 1 &mo 2 &trans &trans>;
- };
-
- lower: layer_1 {
- label = "LOWER";
-
- bindings = <
- &cp M_PLAY &cp M_NEXT &trans &trans
- &trans &trans &trans &trans>;
- };
-
- raise: layer_2 {
- label = "RAISE";
- bindings = <
- &kp C &kp D &trans &trans
- &trans &kp E &trans &trans>;
- };
- };
-};
diff --git a/app/boards/shields/petejohanson_handwire/petejohanson_handwire.conf b/app/boards/shields/petejohanson_handwire/petejohanson_handwire.conf
deleted file mode 100644
index 63829ba..0000000
--- a/app/boards/shields/petejohanson_handwire/petejohanson_handwire.conf
+++ /dev/null
@@ -1 +0,0 @@
-CONFIG_ZMK_KSCAN_COMPOSITE_DRIVER=y
diff --git a/app/boards/shields/petejohanson_handwire/petejohanson_handwire.overlay b/app/boards/shields/petejohanson_handwire/petejohanson_handwire.overlay
deleted file mode 100644
index 95b0835..0000000
--- a/app/boards/shields/petejohanson_handwire/petejohanson_handwire.overlay
+++ /dev/null
@@ -1,44 +0,0 @@
-
-/ {
- chosen {
- zmk,kscan = &kscan0;
- };
-
- kscan0: kscan_0 {
- compatible = "zmk,kscan-composite";
- label = "KSCAN_COMP";
- rows = <2>;
- columns = <4>;
-
- left {
- kscan = <&left_hand>;
- };
-
- right {
- kscan = <&right_hand>;
- column-offset = <2>;
- };
- };
-
- left_hand: kscan_1 {
- compatible = "zmk,kscan-gpio-matrix";
- label = "KSCAN_LEFT";
-
- diode-direction = "row2col";
- row-gpios = <&arduino_header 8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>,
- <&arduino_header 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
- col-gpios = <&arduino_header 10 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>,
- <&arduino_header 11 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
- };
-
- right_hand: kscan_2 {
- compatible = "zmk,kscan-gpio-matrix";
- label = "KSCAN_RIGHT";
-
- diode-direction = "row2col";
- row-gpios = <&arduino_header 12 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>,
- <&arduino_header 13 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
- col-gpios = <&arduino_header 14 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>,
- <&arduino_header 15 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
- };
-};
diff --git a/app/boards/shields/petejohanson_pro_micro_handwire/Kconfig.defconfig b/app/boards/shields/petejohanson_pro_micro_handwire/Kconfig.defconfig
deleted file mode 100644
index 5098fc8..0000000
--- a/app/boards/shields/petejohanson_pro_micro_handwire/Kconfig.defconfig
+++ /dev/null
@@ -1,13 +0,0 @@
-
-if SHIELD_PETEJOHANSON_PRO_MICRO_HANDWIRE
-
-config ZMK_KEYBOARD_NAME
- default "Pete's ProMicro Compat Handwire"
-
-config ZMK_USB
- default y
-
-config ZMK_ACTION_MOD_TAP
- default y
-
-endif
diff --git a/app/boards/shields/petejohanson_pro_micro_handwire/Kconfig.shield b/app/boards/shields/petejohanson_pro_micro_handwire/Kconfig.shield
deleted file mode 100644
index b6264db..0000000
--- a/app/boards/shields/petejohanson_pro_micro_handwire/Kconfig.shield
+++ /dev/null
@@ -1,5 +0,0 @@
-# Copyright (c) 2020 Pete Johanson
-# SPDX-License-Identifier: MIT
-
-config SHIELD_PETEJOHANSON_PRO_MICRO_HANDWIRE
- def_bool $(shields_list_contains,petejohanson_pro_micro_handwire)
diff --git a/app/boards/shields/petejohanson_pro_micro_handwire/keymap/keymap.overlay b/app/boards/shields/petejohanson_pro_micro_handwire/keymap/keymap.overlay
deleted file mode 100644
index ca03557..0000000
--- a/app/boards/shields/petejohanson_pro_micro_handwire/keymap/keymap.overlay
+++ /dev/null
@@ -1,41 +0,0 @@
-#include <behaviors.dtsi>
-#include <dt-bindings/zmk/keys.h>
-
-/ {
- chosen {
- zmk,keymap = &keymap0;
- };
- keymap0: keymap {
- compatible = "zmk,keymap";
- label ="Default keymap";
- layers = <&default &lower &raise>;
- };
-
- layers {
- compatible = "zmk,layers";
-
- default: layer_0 {
- label = "DEFAULT";
-
- bindings = <
- &mo 1 &kp A
- &mo 2 &kp C>;
- };
-
- lower: layer_1 {
- label = "LOWER";
-
- bindings = <
- &trans &kp D
- &trans &kp E>;
- };
-
- raise: layer_2 {
- label = "RAISE";
-
- bindings = <
- &trans &kp I
- &trans &kp H>;
- };
- };
-};
diff --git a/app/boards/shields/petejohanson_pro_micro_handwire/petejohanson_pro_micro_handwire.conf b/app/boards/shields/petejohanson_pro_micro_handwire/petejohanson_pro_micro_handwire.conf
deleted file mode 100644
index e69de29..0000000
--- a/app/boards/shields/petejohanson_pro_micro_handwire/petejohanson_pro_micro_handwire.conf
+++ /dev/null
diff --git a/app/boards/shields/petejohanson_pro_micro_handwire/petejohanson_pro_micro_handwire.overlay b/app/boards/shields/petejohanson_pro_micro_handwire/petejohanson_pro_micro_handwire.overlay
deleted file mode 100644
index 1b27b93..0000000
--- a/app/boards/shields/petejohanson_pro_micro_handwire/petejohanson_pro_micro_handwire.overlay
+++ /dev/null
@@ -1,17 +0,0 @@
-
-/ {
- chosen {
- zmk,kscan = &kscan0;
- };
-
- kscan0: kscan {
- compatible = "zmk,kscan-gpio-matrix";
- label = "KSCAN";
-
- diode-direction = "row2col";
- row-gpios = <&pro_micro_d 6 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>,
- <&pro_micro_d 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
- col-gpios = <&pro_micro_d 8 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>,
- <&pro_micro_d 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>;
- };
-};
diff --git a/app/cmake/zmk_config.cmake b/app/cmake/zmk_config.cmake
index e4d2632..518c3c3 100644
--- a/app/cmake/zmk_config.cmake
+++ b/app/cmake/zmk_config.cmake
@@ -62,11 +62,9 @@ foreach(root ${BOARD_ROOT})
NAMES ${BOARD}_defconfig
PATHS ${root}/boards/*/*
NO_DEFAULT_PATH
- )
- if(BOARD_DIR)
- if (EXISTS "${BOARD_DIR}/keymap")
- list(APPEND KEYMAP_DIRS ${BOARD_DIR}/keymap)
- endif()
+ )
+ if(BOARD_DIR)
+ list(APPEND KEYMAP_DIRS ${BOARD_DIR})
endif()
if(DEFINED SHIELD)
@@ -77,37 +75,16 @@ foreach(root ${BOARD_ROOT})
)
foreach(shield_path ${shields_refs_list})
get_filename_component(SHIELD_DIR ${shield_path} NAME)
- if (EXISTS "${shield_path}/keymap")
- list(APPEND KEYMAP_DIRS ${shield_path}/keymap)
- endif()
+ list(APPEND KEYMAP_DIRS ${shield_path})
endforeach()
endif()
endforeach()
-find_path(BASE_KEYMAPS_DIR
- NAMES ${KEYMAP}/keymap.overlay
- PATHS ${KEYMAP_DIRS}
- NO_DEFAULT_PATH
-)
-
-if (BASE_KEYMAPS_DIR)
- set(KEYMAP_DIR "${BASE_KEYMAPS_DIR}/${KEYMAP}" CACHE STRING "Selected keymap directory")
- message(STATUS "Keyboard Base Keymap: ${KEYMAP_DIR}/")
- # Used to let local imports of custom keycodes work as expected
- list(APPEND DTS_ROOT ${KEYMAP_DIR})
- if (EXISTS "${KEYMAP_DIR}/include")
- include_directories("${KEYMAP_DIR}/include")
- endif()
- list(APPEND ZMK_DTC_FILES "${KEYMAP_DIR}keymap.overlay")
-endif()
-
if (ZMK_CONFIG)
if (EXISTS ${ZMK_CONFIG})
message(STATUS "ZMK Config directory: ${ZMK_CONFIG}")
list(APPEND DTS_ROOT ${ZMK_CONFIG})
- if (EXISTS "${ZMK_CONFIG}/include")
- include_directories("${ZMK_CONFIG}/include")
- endif()
+ list(PREPEND KEYMAP_DIRS "${ZMK_CONFIG}")
if (SHIELD)
message(STATUS "Board: ${BOARD}, ${BOARD_DIR}, ${SHIELD}, ${SHIELD_DIR}")
@@ -137,7 +114,7 @@ if (ZMK_CONFIG)
foreach(conf ${config_candidates})
if (EXISTS "${conf}")
- message(STATUS "ZMK Config Kconfig: ${overlay}")
+ message(STATUS "ZMK Config Kconfig: ${conf}")
set(CONF_FILE "${conf}")
break()
endif()
@@ -147,6 +124,25 @@ if (ZMK_CONFIG)
endif()
endif()
+
+if(NOT KEYMAP_FILE)
+ foreach(keymap_dir ${KEYMAP_DIRS})
+ foreach(keymap_prefix ${SHIELD} ${SHIELD_DIR} ${BOARD} ${BOARD_DIR})
+ if (EXISTS ${keymap_dir}/${keymap_prefix}.keymap)
+ set(KEYMAP_FILE "${keymap_dir}/${keymap_prefix}.keymap" CACHE STRING "Selected keymap file")
+ message(STATUS "Using keymap file: ${KEYMAP_FILE}")
+ break()
+ endif()
+ endforeach()
+ endforeach()
+endif()
+
+if (NOT KEYMAP_FILE)
+ message(FATAL_ERROR "Failed to locate keymap file!")
+endif()
+
+list(APPEND ZMK_DTC_FILES ${KEYMAP_FILE})
+
if (ZMK_DTC_FILES)
string(REPLACE ";" " " DTC_OVERLAY_FILE "${ZMK_DTC_FILES}")
endif()
diff --git a/app/drivers/zephyr/kscan_gpio_matrix.c b/app/drivers/zephyr/kscan_gpio_matrix.c
index 8e27712..baaca30 100644
--- a/app/drivers/zephyr/kscan_gpio_matrix.c
+++ b/app/drivers/zephyr/kscan_gpio_matrix.c
@@ -171,7 +171,7 @@ static int kscan_gpio_config_interrupts(struct device **devices,
({ k_work_submit(&data->work); }), \
({ \
k_delayed_work_cancel(&data->work); \
- k_delayed_work_submit(&data->work, K_MSEC(1)); })) \
+ k_delayed_work_submit(&data->work, K_MSEC(5)); })) \
} \
return 0; \
} \
diff --git a/app/include/dt-bindings/zmk/keys.h b/app/include/dt-bindings/zmk/keys.h
index 726d200..0a52857 100644
--- a/app/include/dt-bindings/zmk/keys.h
+++ b/app/include/dt-bindings/zmk/keys.h
@@ -50,7 +50,7 @@
#define LBKT 0x2F
#define RBKT 0x30
#define BSLH 0x31
-
+#define TILD 0x32
#define SCLN 0x33
#define QUOT 0x34
#define GRAV 0x35
diff --git a/app/src/event_manager.c b/app/src/event_manager.c
index 5d2e9ed..c405176 100644
--- a/app/src/event_manager.c
+++ b/app/src/event_manager.c
@@ -22,7 +22,7 @@ int zmk_event_manager_handle_from(struct zmk_event_header *event, u8_t start_ind
{
int ret = 0;
u8_t len = __event_subscriptions_end - __event_subscriptions_start;
- for (int i = start_index + 1; i < len; i++) {
+ for (int i = start_index; i < len; i++) {
struct zmk_event_subscription *ev_sub = __event_subscriptions_start + i;
if (ev_sub->event_type == event->event) {
ret = ev_sub->listener->callback(event);