From b710695fa92d1bb306eadcb0ffca368fc6b9db79 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 18 Nov 2024 14:55:03 -0700 Subject: [PATCH 01/61] DON'T USE THIS, IT BARELY HAS BEEN TESTED. --- app/boards/shields/sofle/Kconfig.defconfig | 4 ++-- app/boards/shields/splitkb_aurora_corne/Kconfig.defconfig | 2 +- app/boards/shields/splitkb_aurora_helix/Kconfig.defconfig | 2 +- app/boards/shields/splitkb_aurora_lily58/Kconfig.defconfig | 2 +- app/boards/shields/splitkb_aurora_sofle/Kconfig.defconfig | 2 +- app/boards/shields/splitkb_aurora_sweep/Kconfig.defconfig | 2 +- app/boards/shields/zmk_uno/Kconfig.defconfig | 2 +- app/src/behavior.c | 4 ++-- app/west.yml | 4 ++-- 9 files changed, 12 insertions(+), 12 deletions(-) diff --git a/app/boards/shields/sofle/Kconfig.defconfig b/app/boards/shields/sofle/Kconfig.defconfig index 4eb3d743b86..97b0bc5480a 100644 --- a/app/boards/shields/sofle/Kconfig.defconfig +++ b/app/boards/shields/sofle/Kconfig.defconfig @@ -45,8 +45,8 @@ endif # LVGL if ZMK_RGB_UNDERGLOW -config WS2812_STRIP - default y +# config WS2812_STRIP +# default y endif endif diff --git a/app/boards/shields/splitkb_aurora_corne/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_corne/Kconfig.defconfig index d3ac6c77e26..f4011fcfacd 100644 --- a/app/boards/shields/splitkb_aurora_corne/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_corne/Kconfig.defconfig @@ -17,7 +17,7 @@ config ZMK_SPLIT default y config ZMK_RGB_UNDERGLOW - select WS2812_STRIP + # select WS2812_STRIP select SPI config ZMK_DISPLAY diff --git a/app/boards/shields/splitkb_aurora_helix/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_helix/Kconfig.defconfig index df32b83b237..91537711e90 100644 --- a/app/boards/shields/splitkb_aurora_helix/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_helix/Kconfig.defconfig @@ -17,7 +17,7 @@ config ZMK_SPLIT default y config ZMK_RGB_UNDERGLOW - select WS2812_STRIP + # select WS2812_STRIP select SPI if ZMK_DISPLAY diff --git a/app/boards/shields/splitkb_aurora_lily58/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_lily58/Kconfig.defconfig index 861db44f0b1..e4e3f6894cd 100644 --- a/app/boards/shields/splitkb_aurora_lily58/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_lily58/Kconfig.defconfig @@ -17,7 +17,7 @@ config ZMK_SPLIT default y config ZMK_RGB_UNDERGLOW - select WS2812_STRIP + # select WS2812_STRIP select SPI config ZMK_DISPLAY diff --git a/app/boards/shields/splitkb_aurora_sofle/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_sofle/Kconfig.defconfig index 172548e87d7..8dc5d808131 100644 --- a/app/boards/shields/splitkb_aurora_sofle/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_sofle/Kconfig.defconfig @@ -17,7 +17,7 @@ config ZMK_SPLIT default y config ZMK_RGB_UNDERGLOW - select WS2812_STRIP + # select WS2812_STRIP select SPI if ZMK_DISPLAY diff --git a/app/boards/shields/splitkb_aurora_sweep/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_sweep/Kconfig.defconfig index 6a0e37286c9..1f429867f87 100644 --- a/app/boards/shields/splitkb_aurora_sweep/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_sweep/Kconfig.defconfig @@ -17,7 +17,7 @@ config ZMK_SPLIT default y config ZMK_RGB_UNDERGLOW - select WS2812_STRIP + # select WS2812_STRIP select SPI config ZMK_DISPLAY diff --git a/app/boards/shields/zmk_uno/Kconfig.defconfig b/app/boards/shields/zmk_uno/Kconfig.defconfig index 95602ca73f9..b348cf4eb40 100644 --- a/app/boards/shields/zmk_uno/Kconfig.defconfig +++ b/app/boards/shields/zmk_uno/Kconfig.defconfig @@ -17,7 +17,7 @@ config SHIELD_SSD1306_128X32 select ZMK_DISPLAY config ZMK_RGB_UNDERGLOW - select WS2812_STRIP + # select WS2812_STRIP select SPI config ZMK_PM_SOFT_OFF diff --git a/app/src/behavior.c b/app/src/behavior.c index 6d5bbca314f..ae342d2c4d8 100644 --- a/app/src/behavior.c +++ b/app/src/behavior.c @@ -41,13 +41,13 @@ const struct device *z_impl_behavior_get_binding(const char *name) { } STRUCT_SECTION_FOREACH(zmk_behavior_ref, item) { - if (z_device_is_ready(item->device) && item->device->name == name) { + if (device_is_ready(item->device) && item->device->name == name) { return item->device; } } STRUCT_SECTION_FOREACH(zmk_behavior_ref, item) { - if (z_device_is_ready(item->device) && strcmp(item->device->name, name) == 0) { + if (device_is_ready(item->device) && strcmp(item->device->name, name) == 0) { return item->device; } } diff --git a/app/west.yml b/app/west.yml index ce0785e3349..0dd5029c317 100644 --- a/app/west.yml +++ b/app/west.yml @@ -6,8 +6,8 @@ manifest: url-base: https://github.com/zmkfirmware projects: - name: zephyr - remote: zmkfirmware - revision: v3.5.0+zmk-fixes + remote: zephyr + revision: v3.7.0 clone-depth: 1 import: name-blocklist: From 3648f106801b732157a9c69bf9dc7d6b4cc77204 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Fri, 6 Dec 2024 20:45:06 -0700 Subject: [PATCH 02/61] Bump to 4.0, why not, you shouldn't be using this anyways. --- app/west.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/app/west.yml b/app/west.yml index 0dd5029c317..6508c15865b 100644 --- a/app/west.yml +++ b/app/west.yml @@ -6,8 +6,8 @@ manifest: url-base: https://github.com/zmkfirmware projects: - name: zephyr - remote: zephyr - revision: v3.7.0 + remote: zephyrproject-rtos + revision: v4.0.0 clone-depth: 1 import: name-blocklist: @@ -18,7 +18,6 @@ manifest: - hal_microchip - hal_nxp - hal_openisa - - hal_silabs - hal_xtensa - hal_st - hal_ti From 340f06d30ae78c4789cac01d99be2998d4afeb84 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 9 Dec 2024 11:15:27 -0700 Subject: [PATCH 03/61] Random build fixes. --- app/Kconfig | 4 +-- app/keymap-module/modules/modules.cmake | 33 ++++++++++++++++++++----- app/src/behavior.c | 4 +-- app/west.yml | 2 ++ 4 files changed, 33 insertions(+), 10 deletions(-) diff --git a/app/Kconfig b/app/Kconfig index 6b4e3509a0d..ddfddecccaf 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -186,8 +186,8 @@ config BT_CTLR_PHY_2M default n if ZMK_BLE_EXPERIMENTAL_CONN # BT_TINYCRYPT_ECC is required for BT_SMP_SC_PAIR_ONLY when using HCI -config BT_TINYCRYPT_ECC - default y if BT_HCI && !BT_CTLR +# config BT_TINYCRYPT_ECC + # default y if BT_HCI && !BT_CTLR config ZMK_BLE_THREAD_STACK_SIZE int "BLE notify thread stack size" diff --git a/app/keymap-module/modules/modules.cmake b/app/keymap-module/modules/modules.cmake index 6aa62885105..b480657b43a 100644 --- a/app/keymap-module/modules/modules.cmake +++ b/app/keymap-module/modules/modules.cmake @@ -65,12 +65,33 @@ if(DEFINED SHIELD) string(REPLACE " " ";" SHIELD_AS_LIST "${SHIELD}") endif() -string(FIND "${BOARD}" "@" REVISION_SEPARATOR_INDEX) -if(NOT (REVISION_SEPARATOR_INDEX EQUAL -1)) - math(EXPR BOARD_REVISION_INDEX "${REVISION_SEPARATOR_INDEX} + 1") - string(SUBSTRING ${BOARD} ${BOARD_REVISION_INDEX} -1 BOARD_REVISION) - string(SUBSTRING ${BOARD} 0 ${REVISION_SEPARATOR_INDEX} BOARD) -endif() +# Helper function for parsing a board's name, revision, and qualifiers, +# from one input variable to three separate output variables. +function(parse_board_components board_in name_out revision_out qualifiers_out) + if(NOT "${${board_in}}" MATCHES "^([^@/]+)(@[^@/]+)?(/[^@]+)?$") + message(FATAL_ERROR + "Invalid revision / qualifiers format for ${board_in} (${${board_in}}). " + "Valid format is: @/" + ) + endif() + string(REPLACE "@" "" board_revision "${CMAKE_MATCH_2}") + + set(${name_out} ${CMAKE_MATCH_1} PARENT_SCOPE) + set(${revision_out} ${board_revision} PARENT_SCOPE) + set(${qualifiers_out} ${CMAKE_MATCH_3} PARENT_SCOPE) +endfunction() + +parse_board_components( + BOARD + BOARD BOARD_REVISION BOARD_QUALIFIERS +) + +# string(FIND "${BOARD}" "@" REVISION_SEPARATOR_INDEX) +# if(NOT (REVISION_SEPARATOR_INDEX EQUAL -1)) +# math(EXPR BOARD_REVISION_INDEX "${REVISION_SEPARATOR_INDEX} + 1") +# string(SUBSTRING ${BOARD} ${BOARD_REVISION_INDEX} -1 BOARD_REVISION) +# string(SUBSTRING ${BOARD} 0 ${REVISION_SEPARATOR_INDEX} BOARD) +# endif() foreach(root ${BOARD_ROOT}) set(shield_dir ${root}/boards/shields) diff --git a/app/src/behavior.c b/app/src/behavior.c index ae342d2c4d8..c7899d62eae 100644 --- a/app/src/behavior.c +++ b/app/src/behavior.c @@ -267,7 +267,7 @@ zmk_behavior_local_id_t zmk_behavior_get_local_id(const char *name) { } STRUCT_SECTION_FOREACH(zmk_behavior_local_id_map, item) { - if (z_device_is_ready(item->device) && strcmp(item->device->name, name) == 0) { + if (device_is_ready(item->device) && strcmp(item->device->name, name) == 0) { return item->local_id; } } @@ -277,7 +277,7 @@ zmk_behavior_local_id_t zmk_behavior_get_local_id(const char *name) { const char *zmk_behavior_find_behavior_name_from_local_id(zmk_behavior_local_id_t local_id) { STRUCT_SECTION_FOREACH(zmk_behavior_local_id_map, item) { - if (z_device_is_ready(item->device) && item->local_id == local_id) { + if (device_is_ready(item->device) && item->local_id == local_id) { return item->device->name; } } diff --git a/app/west.yml b/app/west.yml index 6508c15865b..40d198d72c7 100644 --- a/app/west.yml +++ b/app/west.yml @@ -4,6 +4,8 @@ manifest: url-base: https://github.com/zephyrproject-rtos - name: zmkfirmware url-base: https://github.com/zmkfirmware + - name: ajf58 + url-base: https://github.com/ajf58 projects: - name: zephyr remote: zephyrproject-rtos From d415bde371ac2463c38d18eaf3a871b253197d40 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sat, 29 Mar 2025 00:40:18 -0600 Subject: [PATCH 04/61] refactor(tests): Move to native_sim for tests. --- app/boards/native_posix.conf | 7 ---- app/boards/native_posix.overlay | 17 ---------- ...ve_posix_64.overlay => native_sim.overlay} | 0 app/boards/native_sim_64.overlay | 32 +++++++++++++++++++ ...osix_64.conf => native_sim_native_64.conf} | 0 app/run-test.sh | 4 +-- .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../native_posix.keymap | 17 ---------- ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../native_posix.keymap | 13 -------- ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../tap-when-rolling/native_posix.keymap | 13 -------- ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...{native_posix.keymap => native_sim.keymap} | 0 app/tests/pointing/mkp/native_posix_64.keymap | 27 ---------------- .../{native_posix_64.conf => native_sim.conf} | 0 ...{native_posix.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../transparent/normal/native_posix_64.keymap | 8 ----- .../normal/native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 .../{native_posix_64.conf => native_sim.conf} | 0 ...tive_posix_64.keymap => native_sim.keymap} | 0 282 files changed, 34 insertions(+), 104 deletions(-) delete mode 100644 app/boards/native_posix.conf delete mode 100644 app/boards/native_posix.overlay rename app/boards/{native_posix_64.overlay => native_sim.overlay} (100%) create mode 100644 app/boards/native_sim_64.overlay rename app/boards/{native_posix_64.conf => native_sim_native_64.conf} (100%) rename app/tests/backlight/basic/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/backlight/basic/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/backlight/config-brt/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/backlight/config-brt/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/backlight/config-on/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/backlight/config-on/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/backlight/config-step/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/backlight/config-step/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/backlight/cycle/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/backlight/cycle/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/backlight/low-brightness/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/backlight/low-brightness/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/caps-word/continue-with-modifiers/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/caps-word/continue-with-non-alpha-continue-list-item/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/caps-word/continue-with-non-modified-numeric-usage-id/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/caps-word/deactivate-by-non-alpha-non-continuation/{native_posix_64.keymap => native_sim.keymap} (100%) delete mode 100644 app/tests/caps-word/deactivate-by-second-press/native_posix.keymap rename app/tests/caps-word/deactivate-by-second-press/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/combos-and-holdtaps-0/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/combos-and-holdtaps-1/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/combos-and-holdtaps-2/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/combos-and-holdtaps-3/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/combos-and-holdtaps-4/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/layer-filter-0/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/layer-filter-1/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/multiple-timeouts/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/overlapping-combos-0/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/overlapping-combos-1/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/overlapping-combos-2/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/overlapping-combos-3/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/overlapping-combos-4-different-timeouts/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/partially-overlapping-combos/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/press-release-long-combo-complete/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/press-release-long-combo-incomplete/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/press-release-long-combo-wrong-last-key/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/press-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/press-timeout/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/press1-press2-release1-release2/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/press1-press2-release2-release1/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/press1-release1-press2-release2/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/require-prior-idle/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/slowrelease-disabled/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/combo/slowrelease-enabled/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/conditional-layer/chained-activation/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/conditional-layer/mo-overlap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/conditional-layer/multiple-configs/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/conditional-layer/quad-layer/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/conditional-layer/same-layer-reached-both-ways/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/conditional-layer/same-layer-reached-differently/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/conditional-layer/tri-layer-alt-order/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/conditional-layer/tri-layer-lt/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/conditional-layer/tri-layer/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/encoders/layers-1/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/encoders/layers-2/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/encoders/rotate/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/gresc/gresc-press-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/gresc/gresc-two-instances/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/1-dn-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/2-dn-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/3a-moddn-dn-modup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/3b-moddn-dn-modup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/3c-kcdn-dn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/3d-kcdn-dn-kcup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/4a-dn-htdn-timer-htup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/4a-dn-kcdn-timer-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/4b-dn-kcdn-kcup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/4c-dn-kcdn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/4d-dn-kcdn-timer-up-kcup/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/5-quick-tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/6-retro-tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/7-positional/2-dn-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/7-positional/4a-dn-ntgdn-timer-ntgup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/7-positional/4a-dn-tgdn-timer-tgup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/7-positional/on-release-no-trigger/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/7-positional/on-release-trigger/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/8-require-prior-idle/1-basic/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/8-require-prior-idle/2-double-hold/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/balanced/many-nested/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/1-dn-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/2-dn-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/3a-moddn-dn-modup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/3b-moddn-dn-modup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/3c-kcdn-dn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/3d-kcdn-dn-kcup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/4a-dn-htdn-timer-htup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/4a-dn-kcdn-timer-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/4b-dn-kcdn-kcup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/4c-dn-kcdn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/4d-dn-kcdn-timer-up-kcup/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/5-quick-tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/6-retro-tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/7-positional/2-dn-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/7-positional/on-release-no-trigger/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/7-positional/on-release-trigger/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/8-require-prior-idle/1-basic/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-preferred/8-require-prior-idle/2-double-hold/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-while-undecided/1-tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-while-undecided/2-hold/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-while-undecided/3-linger/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/hold-while-undecided/4-linger-sk/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/1-dn-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/2-dn-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/3a-moddn-dn-modup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/3b-moddn-dn-modup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/3c-kcdn-dn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/3d-kcdn-dn-kcup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/4a-dn-htdn-timer-htup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/4a-dn-kcdn-timer-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/4b-dn-kcdn-kcup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/4c-dn-kcdn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/4d-dn-kcdn-timer-up-kcup/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/5-quick-tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/6-nested-timeouts/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/7-positional/2-dn-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/7-positional/on-release-no-trigger/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/7-positional/on-release-trigger/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/8-require-prior-idle/1-basic/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-preferred/8-require-prior-idle/2-double-hold/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/1-dn-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/2-dn-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/3a-moddn-dn-modup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/3b-moddn-dn-modup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/3c-kcdn-dn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/3d-kcdn-dn-kcup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/4a-dn-htdn-timer-htup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/4a-dn-kcdn-timer-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/4b-dn-kcdn-kcup-timer-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/4c-dn-kcdn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/4d-dn-kcdn-timer-up-kcup/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/5-quick-tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/1-basic/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/2-double-hold/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/key-repeat/ignore-other-usage-page-events/{native_posix_64.keymap => native_sim.keymap} (100%) delete mode 100644 app/tests/key-repeat/press-and-release-after-key-usage/native_posix.keymap rename app/tests/key-repeat/press-and-release-after-key-usage/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/key-repeat/press-and-release-with-explicit-modifiers/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/key-repeat/send-nothing-if-no-keys-pressed-yet/{native_posix_64.keymap => native_sim.keymap} (100%) delete mode 100644 app/tests/key-repeat/tap-when-rolling/native_posix.keymap rename app/tests/key-repeat/tap-when-rolling/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/keypress/kp-press-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/keytoggle/kt-alt-tab/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/keytoggle/kt-modded-alpha/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/keytoggle/kt-off/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/keytoggle/kt-on/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/keytoggle/kt-press-release-nkro/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/keytoggle/kt-press-release-nkro/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/keytoggle/kt-press-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/macros/basic/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/macros/mo-plus-modifier-from-hold-tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/macros/mo-plus-modifier-macro/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/macros/place-holder-parameters/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/macros/press-mid-macro/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/macros/press-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/macros/timing-override/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/macros/wait-macro-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/mod-morph/1-no-morph/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/mod-morph/2a-masked-morph/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/mod-morph/2b-masked-morph-implicit-overwrite/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/mod-morph/2c-masked-morph-and-explicit-mods/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/mod-morph/2d-masked-morph-into-hold-tap-tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/mod-morph/2e-masked-morph-into-hold-tap-hold/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/mod-morph/3-unmasked-morph/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/explicit/kp-hyper-dn-a-dn-a-up-hyper-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/explicit/kp-lctl-dn-lctl-dn-lctl-up-lctl-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/explicit/kp-lctl-dn-lctl-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lctl-up-lsft-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lsft-up-lctl-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod1-up-mod2-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod2-up-mod1-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/implicit/kp-rolling-symbols-same-key/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-lctl-up-mod-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-mod-up-lctl-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/momentary-layer/1-normal/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/momentary-layer/2-early-key-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/momentary-layer/3-covered/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/momentary-layer/4-nested/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/momentary-layer/5-nested-early-key-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/none/layered/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/none/normal/{native_posix.keymap => native_sim.keymap} (100%) delete mode 100644 app/tests/pointing/mkp/native_posix_64.keymap rename app/tests/pointing/mkp/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mkp/{native_posix.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/move_diagonal/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/move_diagonal/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/move_x/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/move_x/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/move_y/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/move_y/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/behaviors_basic/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/behaviors_basic/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/behaviors_hold_tap/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/behaviors_hold_tap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/move_diagonal_scaling/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/move_diagonal_scaling/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-scroll/move_diagonal/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-scroll/move_diagonal/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-scroll/move_hwheel/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-scroll/move_hwheel/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-scroll/move_wheel/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-scroll/move_wheel/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/1-os-dn-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/10-callum-mods-quick-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/10-callum-mods/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/10-sl-sl-kp/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/11-lazy-timeout-during/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/11-lazy-timeout/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/11-lazy/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/12-macro/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/12-same-position-mods/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/12-same-position-sk-sl/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/2-os-dn-up-kcdn-kcup-quick-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/2-os-dn-up-kcdn-kcup/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/2-sl-dn-up-kcdn-kcup/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/3a-os-dn-kcdn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/3b-os-dn-kcdn-up-kcup/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/4-os-dn-up-kcdn-timer-kcup/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/5-os-kcdn-dn-kcup-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/7-os-dn-up-kc1dn-kc2dn-kc1up-kc2up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/8-lsk-osk-combination-quick-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/8-lsk-osk-combination/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/sticky-keys/9-sk-dn-up-dn-up/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/1a-tap1/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/1b-tap2/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/1c-tap3/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/2a-hold1/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/2b-hold2/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/2c-hold3/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/3a-tap-int-mid/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/3b-tap-int-seq/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/3c-tap-int-after/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/3d-hold-int-mid/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/3e-hold-int-seq/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/3f-hold-int-after/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/4a-single/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/5a-tdint-mid/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/5b-tdint-seq/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/5c-tdint-after/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/5d-tdint-multiple/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/tap-dance/6-combo-tap2/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/to-layer/normal/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/toggle-layer/early-key-release/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/toggle-layer/normal/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/toggle-layer/toggle-mode-off/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/toggle-layer/toggle-mode-on/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/transparent/layered/{native_posix_64.keymap => native_sim.keymap} (100%) delete mode 100644 app/tests/transparent/normal/native_posix_64.keymap rename app/tests/{none/normal/native_posix_64.keymap => transparent/normal/native_sim.keymap} (100%) rename app/tests/wpm/1-single_keypress/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/wpm/1-single_keypress/{native_posix_64.keymap => native_sim.keymap} (100%) rename app/tests/wpm/2-multiple_keypress/{native_posix_64.conf => native_sim.conf} (100%) rename app/tests/wpm/2-multiple_keypress/{native_posix_64.keymap => native_sim.keymap} (100%) diff --git a/app/boards/native_posix.conf b/app/boards/native_posix.conf deleted file mode 100644 index c3d0260e866..00000000000 --- a/app/boards/native_posix.conf +++ /dev/null @@ -1,7 +0,0 @@ -CONFIG_GPIO=n -CONFIG_ZMK_BLE=n -CONFIG_LOG=y -CONFIG_LOG_BACKEND_SHOW_COLOR=n -CONFIG_ZMK_LOG_LEVEL_DBG=y -CONFIG_DEBUG=y -CONFIG_SYS_CLOCK_TICKS_PER_SEC=1000 diff --git a/app/boards/native_posix.overlay b/app/boards/native_posix.overlay deleted file mode 100644 index d5ebcf18454..00000000000 --- a/app/boards/native_posix.overlay +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include - -/ { - chosen { - zmk,kscan = &kscan; - }; - - kscan: kscan { - compatible = "zmk,kscan-mock"; - - rows = <2>; - columns = <2>; - exit-after; - }; -}; diff --git a/app/boards/native_posix_64.overlay b/app/boards/native_sim.overlay similarity index 100% rename from app/boards/native_posix_64.overlay rename to app/boards/native_sim.overlay diff --git a/app/boards/native_sim_64.overlay b/app/boards/native_sim_64.overlay new file mode 100644 index 00000000000..277e45328b6 --- /dev/null +++ b/app/boards/native_sim_64.overlay @@ -0,0 +1,32 @@ + +#include +#include + +/ { + chosen { + zephyr,console = &uart0; + zmk,kscan = &kscan; + }; + + kscan: native_posix_64_kscan_mock { + compatible = "zmk,kscan-mock"; + + rows = <2>; + columns = <2>; + exit-after; + }; + + uart0: uart { + status = "okay"; + compatible = "zephyr,native-posix-uart"; + /* Dummy current-speed entry to comply with serial + * DTS binding + */ + current-speed = <0>; + }; +}; + +&sdl_dc { + width = <128>; + height = <32>; +}; \ No newline at end of file diff --git a/app/boards/native_posix_64.conf b/app/boards/native_sim_native_64.conf similarity index 100% rename from app/boards/native_posix_64.conf rename to app/boards/native_sim_native_64.conf diff --git a/app/run-test.sh b/app/run-test.sh index 1b10ed930ad..e22adff1b4a 100755 --- a/app/run-test.sh +++ b/app/run-test.sh @@ -25,7 +25,7 @@ fi ZMK_BUILD_DIR=${ZMK_BUILD_DIR:-${ZMK_SRC_DIR:-.}/build} mkdir -p ${ZMK_BUILD_DIR}/tests -testcases=$(find $path -name native_posix_64.keymap -exec dirname \{\} \;) +testcases=$(find $path -name native_sim.keymap -exec dirname \{\} \;) num_cases=$(echo "$testcases" | wc -l) if [ $num_cases -gt 1 ] || [ "$testcases" != "$path" ]; then echo "" >${ZMK_BUILD_DIR}/tests/pass-fail.log @@ -39,7 +39,7 @@ testcase=$(realpath $path | sed -n -e "s|.*/tests/||p") echo "Running $testcase:" build_cmd="west build ${ZMK_SRC_DIR:+-s $ZMK_SRC_DIR} -d ${ZMK_BUILD_DIR}/tests/$testcase \ - -b native_posix_64 -p -- -DCONFIG_ASSERT=y -DZMK_CONFIG="$(realpath $path)" \ + -b native_sim/native/64 -p -- -DCONFIG_ASSERT=y -DZMK_CONFIG="$(realpath $path)" \ ${ZMK_EXTRA_MODULES:+-DZMK_EXTRA_MODULES="$(realpath ${ZMK_EXTRA_MODULES})"}" if [ -z ${ZMK_TESTS_VERBOSE} ]; then diff --git a/app/tests/backlight/basic/native_posix_64.conf b/app/tests/backlight/basic/native_sim.conf similarity index 100% rename from app/tests/backlight/basic/native_posix_64.conf rename to app/tests/backlight/basic/native_sim.conf diff --git a/app/tests/backlight/basic/native_posix_64.keymap b/app/tests/backlight/basic/native_sim.keymap similarity index 100% rename from app/tests/backlight/basic/native_posix_64.keymap rename to app/tests/backlight/basic/native_sim.keymap diff --git a/app/tests/backlight/config-brt/native_posix_64.conf b/app/tests/backlight/config-brt/native_sim.conf similarity index 100% rename from app/tests/backlight/config-brt/native_posix_64.conf rename to app/tests/backlight/config-brt/native_sim.conf diff --git a/app/tests/backlight/config-brt/native_posix_64.keymap b/app/tests/backlight/config-brt/native_sim.keymap similarity index 100% rename from app/tests/backlight/config-brt/native_posix_64.keymap rename to app/tests/backlight/config-brt/native_sim.keymap diff --git a/app/tests/backlight/config-on/native_posix_64.conf b/app/tests/backlight/config-on/native_sim.conf similarity index 100% rename from app/tests/backlight/config-on/native_posix_64.conf rename to app/tests/backlight/config-on/native_sim.conf diff --git a/app/tests/backlight/config-on/native_posix_64.keymap b/app/tests/backlight/config-on/native_sim.keymap similarity index 100% rename from app/tests/backlight/config-on/native_posix_64.keymap rename to app/tests/backlight/config-on/native_sim.keymap diff --git a/app/tests/backlight/config-step/native_posix_64.conf b/app/tests/backlight/config-step/native_sim.conf similarity index 100% rename from app/tests/backlight/config-step/native_posix_64.conf rename to app/tests/backlight/config-step/native_sim.conf diff --git a/app/tests/backlight/config-step/native_posix_64.keymap b/app/tests/backlight/config-step/native_sim.keymap similarity index 100% rename from app/tests/backlight/config-step/native_posix_64.keymap rename to app/tests/backlight/config-step/native_sim.keymap diff --git a/app/tests/backlight/cycle/native_posix_64.conf b/app/tests/backlight/cycle/native_sim.conf similarity index 100% rename from app/tests/backlight/cycle/native_posix_64.conf rename to app/tests/backlight/cycle/native_sim.conf diff --git a/app/tests/backlight/cycle/native_posix_64.keymap b/app/tests/backlight/cycle/native_sim.keymap similarity index 100% rename from app/tests/backlight/cycle/native_posix_64.keymap rename to app/tests/backlight/cycle/native_sim.keymap diff --git a/app/tests/backlight/low-brightness/native_posix_64.conf b/app/tests/backlight/low-brightness/native_sim.conf similarity index 100% rename from app/tests/backlight/low-brightness/native_posix_64.conf rename to app/tests/backlight/low-brightness/native_sim.conf diff --git a/app/tests/backlight/low-brightness/native_posix_64.keymap b/app/tests/backlight/low-brightness/native_sim.keymap similarity index 100% rename from app/tests/backlight/low-brightness/native_posix_64.keymap rename to app/tests/backlight/low-brightness/native_sim.keymap diff --git a/app/tests/caps-word/continue-with-modifiers/native_posix_64.keymap b/app/tests/caps-word/continue-with-modifiers/native_sim.keymap similarity index 100% rename from app/tests/caps-word/continue-with-modifiers/native_posix_64.keymap rename to app/tests/caps-word/continue-with-modifiers/native_sim.keymap diff --git a/app/tests/caps-word/continue-with-non-alpha-continue-list-item/native_posix_64.keymap b/app/tests/caps-word/continue-with-non-alpha-continue-list-item/native_sim.keymap similarity index 100% rename from app/tests/caps-word/continue-with-non-alpha-continue-list-item/native_posix_64.keymap rename to app/tests/caps-word/continue-with-non-alpha-continue-list-item/native_sim.keymap diff --git a/app/tests/caps-word/continue-with-non-modified-numeric-usage-id/native_posix_64.keymap b/app/tests/caps-word/continue-with-non-modified-numeric-usage-id/native_sim.keymap similarity index 100% rename from app/tests/caps-word/continue-with-non-modified-numeric-usage-id/native_posix_64.keymap rename to app/tests/caps-word/continue-with-non-modified-numeric-usage-id/native_sim.keymap diff --git a/app/tests/caps-word/deactivate-by-non-alpha-non-continuation/native_posix_64.keymap b/app/tests/caps-word/deactivate-by-non-alpha-non-continuation/native_sim.keymap similarity index 100% rename from app/tests/caps-word/deactivate-by-non-alpha-non-continuation/native_posix_64.keymap rename to app/tests/caps-word/deactivate-by-non-alpha-non-continuation/native_sim.keymap diff --git a/app/tests/caps-word/deactivate-by-second-press/native_posix.keymap b/app/tests/caps-word/deactivate-by-second-press/native_posix.keymap deleted file mode 100644 index 121a827cce6..00000000000 --- a/app/tests/caps-word/deactivate-by-second-press/native_posix.keymap +++ /dev/null @@ -1,17 +0,0 @@ -#include -#include -#include -#include "../behavior_keymap.dtsi" - -&kscan { - events = < - ZMK_MOCK_PRESS(0,0,10) - ZMK_MOCK_RELEASE(0,0,10) - ZMK_MOCK_PRESS(0,1,10) - ZMK_MOCK_RELEASE(0,1,10) - ZMK_MOCK_PRESS(0,0,10) - ZMK_MOCK_RELEASE(0,0,10) - ZMK_MOCK_PRESS(0,1,10) - ZMK_MOCK_RELEASE(0,1,10) - >; -}; \ No newline at end of file diff --git a/app/tests/caps-word/deactivate-by-second-press/native_posix_64.keymap b/app/tests/caps-word/deactivate-by-second-press/native_sim.keymap similarity index 100% rename from app/tests/caps-word/deactivate-by-second-press/native_posix_64.keymap rename to app/tests/caps-word/deactivate-by-second-press/native_sim.keymap diff --git a/app/tests/combo/combos-and-holdtaps-0/native_posix_64.keymap b/app/tests/combo/combos-and-holdtaps-0/native_sim.keymap similarity index 100% rename from app/tests/combo/combos-and-holdtaps-0/native_posix_64.keymap rename to app/tests/combo/combos-and-holdtaps-0/native_sim.keymap diff --git a/app/tests/combo/combos-and-holdtaps-1/native_posix_64.keymap b/app/tests/combo/combos-and-holdtaps-1/native_sim.keymap similarity index 100% rename from app/tests/combo/combos-and-holdtaps-1/native_posix_64.keymap rename to app/tests/combo/combos-and-holdtaps-1/native_sim.keymap diff --git a/app/tests/combo/combos-and-holdtaps-2/native_posix_64.keymap b/app/tests/combo/combos-and-holdtaps-2/native_sim.keymap similarity index 100% rename from app/tests/combo/combos-and-holdtaps-2/native_posix_64.keymap rename to app/tests/combo/combos-and-holdtaps-2/native_sim.keymap diff --git a/app/tests/combo/combos-and-holdtaps-3/native_posix_64.keymap b/app/tests/combo/combos-and-holdtaps-3/native_sim.keymap similarity index 100% rename from app/tests/combo/combos-and-holdtaps-3/native_posix_64.keymap rename to app/tests/combo/combos-and-holdtaps-3/native_sim.keymap diff --git a/app/tests/combo/combos-and-holdtaps-4/native_posix_64.keymap b/app/tests/combo/combos-and-holdtaps-4/native_sim.keymap similarity index 100% rename from app/tests/combo/combos-and-holdtaps-4/native_posix_64.keymap rename to app/tests/combo/combos-and-holdtaps-4/native_sim.keymap diff --git a/app/tests/combo/layer-filter-0/native_posix_64.keymap b/app/tests/combo/layer-filter-0/native_sim.keymap similarity index 100% rename from app/tests/combo/layer-filter-0/native_posix_64.keymap rename to app/tests/combo/layer-filter-0/native_sim.keymap diff --git a/app/tests/combo/layer-filter-1/native_posix_64.keymap b/app/tests/combo/layer-filter-1/native_sim.keymap similarity index 100% rename from app/tests/combo/layer-filter-1/native_posix_64.keymap rename to app/tests/combo/layer-filter-1/native_sim.keymap diff --git a/app/tests/combo/multiple-timeouts/native_posix_64.keymap b/app/tests/combo/multiple-timeouts/native_sim.keymap similarity index 100% rename from app/tests/combo/multiple-timeouts/native_posix_64.keymap rename to app/tests/combo/multiple-timeouts/native_sim.keymap diff --git a/app/tests/combo/overlapping-combos-0/native_posix_64.keymap b/app/tests/combo/overlapping-combos-0/native_sim.keymap similarity index 100% rename from app/tests/combo/overlapping-combos-0/native_posix_64.keymap rename to app/tests/combo/overlapping-combos-0/native_sim.keymap diff --git a/app/tests/combo/overlapping-combos-1/native_posix_64.keymap b/app/tests/combo/overlapping-combos-1/native_sim.keymap similarity index 100% rename from app/tests/combo/overlapping-combos-1/native_posix_64.keymap rename to app/tests/combo/overlapping-combos-1/native_sim.keymap diff --git a/app/tests/combo/overlapping-combos-2/native_posix_64.keymap b/app/tests/combo/overlapping-combos-2/native_sim.keymap similarity index 100% rename from app/tests/combo/overlapping-combos-2/native_posix_64.keymap rename to app/tests/combo/overlapping-combos-2/native_sim.keymap diff --git a/app/tests/combo/overlapping-combos-3/native_posix_64.keymap b/app/tests/combo/overlapping-combos-3/native_sim.keymap similarity index 100% rename from app/tests/combo/overlapping-combos-3/native_posix_64.keymap rename to app/tests/combo/overlapping-combos-3/native_sim.keymap diff --git a/app/tests/combo/overlapping-combos-4-different-timeouts/native_posix_64.keymap b/app/tests/combo/overlapping-combos-4-different-timeouts/native_sim.keymap similarity index 100% rename from app/tests/combo/overlapping-combos-4-different-timeouts/native_posix_64.keymap rename to app/tests/combo/overlapping-combos-4-different-timeouts/native_sim.keymap diff --git a/app/tests/combo/partially-overlapping-combos/native_posix_64.keymap b/app/tests/combo/partially-overlapping-combos/native_sim.keymap similarity index 100% rename from app/tests/combo/partially-overlapping-combos/native_posix_64.keymap rename to app/tests/combo/partially-overlapping-combos/native_sim.keymap diff --git a/app/tests/combo/press-release-long-combo-complete/native_posix_64.keymap b/app/tests/combo/press-release-long-combo-complete/native_sim.keymap similarity index 100% rename from app/tests/combo/press-release-long-combo-complete/native_posix_64.keymap rename to app/tests/combo/press-release-long-combo-complete/native_sim.keymap diff --git a/app/tests/combo/press-release-long-combo-incomplete/native_posix_64.keymap b/app/tests/combo/press-release-long-combo-incomplete/native_sim.keymap similarity index 100% rename from app/tests/combo/press-release-long-combo-incomplete/native_posix_64.keymap rename to app/tests/combo/press-release-long-combo-incomplete/native_sim.keymap diff --git a/app/tests/combo/press-release-long-combo-wrong-last-key/native_posix_64.keymap b/app/tests/combo/press-release-long-combo-wrong-last-key/native_sim.keymap similarity index 100% rename from app/tests/combo/press-release-long-combo-wrong-last-key/native_posix_64.keymap rename to app/tests/combo/press-release-long-combo-wrong-last-key/native_sim.keymap diff --git a/app/tests/combo/press-release/native_posix_64.keymap b/app/tests/combo/press-release/native_sim.keymap similarity index 100% rename from app/tests/combo/press-release/native_posix_64.keymap rename to app/tests/combo/press-release/native_sim.keymap diff --git a/app/tests/combo/press-timeout/native_posix_64.keymap b/app/tests/combo/press-timeout/native_sim.keymap similarity index 100% rename from app/tests/combo/press-timeout/native_posix_64.keymap rename to app/tests/combo/press-timeout/native_sim.keymap diff --git a/app/tests/combo/press1-press2-release1-release2/native_posix_64.keymap b/app/tests/combo/press1-press2-release1-release2/native_sim.keymap similarity index 100% rename from app/tests/combo/press1-press2-release1-release2/native_posix_64.keymap rename to app/tests/combo/press1-press2-release1-release2/native_sim.keymap diff --git a/app/tests/combo/press1-press2-release2-release1/native_posix_64.keymap b/app/tests/combo/press1-press2-release2-release1/native_sim.keymap similarity index 100% rename from app/tests/combo/press1-press2-release2-release1/native_posix_64.keymap rename to app/tests/combo/press1-press2-release2-release1/native_sim.keymap diff --git a/app/tests/combo/press1-release1-press2-release2/native_posix_64.keymap b/app/tests/combo/press1-release1-press2-release2/native_sim.keymap similarity index 100% rename from app/tests/combo/press1-release1-press2-release2/native_posix_64.keymap rename to app/tests/combo/press1-release1-press2-release2/native_sim.keymap diff --git a/app/tests/combo/require-prior-idle/native_posix_64.keymap b/app/tests/combo/require-prior-idle/native_sim.keymap similarity index 100% rename from app/tests/combo/require-prior-idle/native_posix_64.keymap rename to app/tests/combo/require-prior-idle/native_sim.keymap diff --git a/app/tests/combo/slowrelease-disabled/native_posix_64.keymap b/app/tests/combo/slowrelease-disabled/native_sim.keymap similarity index 100% rename from app/tests/combo/slowrelease-disabled/native_posix_64.keymap rename to app/tests/combo/slowrelease-disabled/native_sim.keymap diff --git a/app/tests/combo/slowrelease-enabled/native_posix_64.keymap b/app/tests/combo/slowrelease-enabled/native_sim.keymap similarity index 100% rename from app/tests/combo/slowrelease-enabled/native_posix_64.keymap rename to app/tests/combo/slowrelease-enabled/native_sim.keymap diff --git a/app/tests/conditional-layer/chained-activation/native_posix_64.keymap b/app/tests/conditional-layer/chained-activation/native_sim.keymap similarity index 100% rename from app/tests/conditional-layer/chained-activation/native_posix_64.keymap rename to app/tests/conditional-layer/chained-activation/native_sim.keymap diff --git a/app/tests/conditional-layer/mo-overlap/native_posix_64.keymap b/app/tests/conditional-layer/mo-overlap/native_sim.keymap similarity index 100% rename from app/tests/conditional-layer/mo-overlap/native_posix_64.keymap rename to app/tests/conditional-layer/mo-overlap/native_sim.keymap diff --git a/app/tests/conditional-layer/multiple-configs/native_posix_64.keymap b/app/tests/conditional-layer/multiple-configs/native_sim.keymap similarity index 100% rename from app/tests/conditional-layer/multiple-configs/native_posix_64.keymap rename to app/tests/conditional-layer/multiple-configs/native_sim.keymap diff --git a/app/tests/conditional-layer/quad-layer/native_posix_64.keymap b/app/tests/conditional-layer/quad-layer/native_sim.keymap similarity index 100% rename from app/tests/conditional-layer/quad-layer/native_posix_64.keymap rename to app/tests/conditional-layer/quad-layer/native_sim.keymap diff --git a/app/tests/conditional-layer/same-layer-reached-both-ways/native_posix_64.keymap b/app/tests/conditional-layer/same-layer-reached-both-ways/native_sim.keymap similarity index 100% rename from app/tests/conditional-layer/same-layer-reached-both-ways/native_posix_64.keymap rename to app/tests/conditional-layer/same-layer-reached-both-ways/native_sim.keymap diff --git a/app/tests/conditional-layer/same-layer-reached-differently/native_posix_64.keymap b/app/tests/conditional-layer/same-layer-reached-differently/native_sim.keymap similarity index 100% rename from app/tests/conditional-layer/same-layer-reached-differently/native_posix_64.keymap rename to app/tests/conditional-layer/same-layer-reached-differently/native_sim.keymap diff --git a/app/tests/conditional-layer/tri-layer-alt-order/native_posix_64.keymap b/app/tests/conditional-layer/tri-layer-alt-order/native_sim.keymap similarity index 100% rename from app/tests/conditional-layer/tri-layer-alt-order/native_posix_64.keymap rename to app/tests/conditional-layer/tri-layer-alt-order/native_sim.keymap diff --git a/app/tests/conditional-layer/tri-layer-lt/native_posix_64.keymap b/app/tests/conditional-layer/tri-layer-lt/native_sim.keymap similarity index 100% rename from app/tests/conditional-layer/tri-layer-lt/native_posix_64.keymap rename to app/tests/conditional-layer/tri-layer-lt/native_sim.keymap diff --git a/app/tests/conditional-layer/tri-layer/native_posix_64.keymap b/app/tests/conditional-layer/tri-layer/native_sim.keymap similarity index 100% rename from app/tests/conditional-layer/tri-layer/native_posix_64.keymap rename to app/tests/conditional-layer/tri-layer/native_sim.keymap diff --git a/app/tests/encoders/layers-1/native_posix_64.keymap b/app/tests/encoders/layers-1/native_sim.keymap similarity index 100% rename from app/tests/encoders/layers-1/native_posix_64.keymap rename to app/tests/encoders/layers-1/native_sim.keymap diff --git a/app/tests/encoders/layers-2/native_posix_64.keymap b/app/tests/encoders/layers-2/native_sim.keymap similarity index 100% rename from app/tests/encoders/layers-2/native_posix_64.keymap rename to app/tests/encoders/layers-2/native_sim.keymap diff --git a/app/tests/encoders/rotate/native_posix_64.keymap b/app/tests/encoders/rotate/native_sim.keymap similarity index 100% rename from app/tests/encoders/rotate/native_posix_64.keymap rename to app/tests/encoders/rotate/native_sim.keymap diff --git a/app/tests/gresc/gresc-press-release/native_posix_64.keymap b/app/tests/gresc/gresc-press-release/native_sim.keymap similarity index 100% rename from app/tests/gresc/gresc-press-release/native_posix_64.keymap rename to app/tests/gresc/gresc-press-release/native_sim.keymap diff --git a/app/tests/gresc/gresc-two-instances/native_posix_64.keymap b/app/tests/gresc/gresc-two-instances/native_sim.keymap similarity index 100% rename from app/tests/gresc/gresc-two-instances/native_posix_64.keymap rename to app/tests/gresc/gresc-two-instances/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/1-dn-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/1-dn-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/1-dn-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/1-dn-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/2-dn-timer-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/2-dn-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/2-dn-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/2-dn-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/3a-moddn-dn-modup-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/3a-moddn-dn-modup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/3a-moddn-dn-modup-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/3a-moddn-dn-modup-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/3b-moddn-dn-modup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/3b-moddn-dn-modup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/3b-moddn-dn-modup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/3b-moddn-dn-modup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/3c-kcdn-dn-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/3c-kcdn-dn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/3c-kcdn-dn-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/3c-kcdn-dn-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/3d-kcdn-dn-kcup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/3d-kcdn-dn-kcup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/3d-kcdn-dn-kcup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/3d-kcdn-dn-kcup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/4a-dn-htdn-timer-htup-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/4a-dn-htdn-timer-htup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/4a-dn-htdn-timer-htup-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/4a-dn-htdn-timer-htup-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/4a-dn-kcdn-timer-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/4a-dn-kcdn-timer-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/4a-dn-kcdn-timer-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/4a-dn-kcdn-timer-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/4b-dn-kcdn-kcup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/4b-dn-kcdn-kcup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/4b-dn-kcdn-kcup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/4b-dn-kcdn-kcup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/4c-dn-kcdn-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/4c-dn-kcdn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/4c-dn-kcdn-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/4c-dn-kcdn-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/4d-dn-kcdn-timer-up-kcup/native_posix_64.keymap b/app/tests/hold-tap/balanced/4d-dn-kcdn-timer-up-kcup/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/4d-dn-kcdn-timer-up-kcup/native_posix_64.keymap rename to app/tests/hold-tap/balanced/4d-dn-kcdn-timer-up-kcup/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/5-quick-tap/native_posix_64.keymap b/app/tests/hold-tap/balanced/5-quick-tap/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/5-quick-tap/native_posix_64.keymap rename to app/tests/hold-tap/balanced/5-quick-tap/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/6-retro-tap/native_posix_64.keymap b/app/tests/hold-tap/balanced/6-retro-tap/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/6-retro-tap/native_posix_64.keymap rename to app/tests/hold-tap/balanced/6-retro-tap/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/7-positional/2-dn-timer-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/7-positional/2-dn-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/7-positional/2-dn-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/7-positional/2-dn-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/7-positional/4a-dn-tgdn-timer-tgup-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/7-positional/4a-dn-tgdn-timer-tgup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/7-positional/4a-dn-tgdn-timer-tgup-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/7-positional/4a-dn-tgdn-timer-tgup-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/7-positional/on-release-no-trigger/native_posix_64.keymap b/app/tests/hold-tap/balanced/7-positional/on-release-no-trigger/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/7-positional/on-release-no-trigger/native_posix_64.keymap rename to app/tests/hold-tap/balanced/7-positional/on-release-no-trigger/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/7-positional/on-release-trigger/native_posix_64.keymap b/app/tests/hold-tap/balanced/7-positional/on-release-trigger/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/7-positional/on-release-trigger/native_posix_64.keymap rename to app/tests/hold-tap/balanced/7-positional/on-release-trigger/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_posix_64.keymap b/app/tests/hold-tap/balanced/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_posix_64.keymap rename to app/tests/hold-tap/balanced/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/8-require-prior-idle/1-basic/native_posix_64.keymap b/app/tests/hold-tap/balanced/8-require-prior-idle/1-basic/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/8-require-prior-idle/1-basic/native_posix_64.keymap rename to app/tests/hold-tap/balanced/8-require-prior-idle/1-basic/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/8-require-prior-idle/2-double-hold/native_posix_64.keymap b/app/tests/hold-tap/balanced/8-require-prior-idle/2-double-hold/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/8-require-prior-idle/2-double-hold/native_posix_64.keymap rename to app/tests/hold-tap/balanced/8-require-prior-idle/2-double-hold/native_sim.keymap diff --git a/app/tests/hold-tap/balanced/many-nested/native_posix_64.keymap b/app/tests/hold-tap/balanced/many-nested/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/balanced/many-nested/native_posix_64.keymap rename to app/tests/hold-tap/balanced/many-nested/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/1-dn-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/1-dn-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/1-dn-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/1-dn-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/2-dn-timer-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/2-dn-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/2-dn-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/2-dn-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/3a-moddn-dn-modup-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/3a-moddn-dn-modup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/3a-moddn-dn-modup-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/3a-moddn-dn-modup-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/3b-moddn-dn-modup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/3b-moddn-dn-modup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/3b-moddn-dn-modup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/3b-moddn-dn-modup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/3c-kcdn-dn-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/3c-kcdn-dn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/3c-kcdn-dn-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/3c-kcdn-dn-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/3d-kcdn-dn-kcup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/3d-kcdn-dn-kcup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/3d-kcdn-dn-kcup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/3d-kcdn-dn-kcup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/4a-dn-htdn-timer-htup-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/4a-dn-htdn-timer-htup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/4a-dn-htdn-timer-htup-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/4a-dn-htdn-timer-htup-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/4a-dn-kcdn-timer-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/4a-dn-kcdn-timer-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/4a-dn-kcdn-timer-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/4a-dn-kcdn-timer-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/4b-dn-kcdn-kcup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/4b-dn-kcdn-kcup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/4b-dn-kcdn-kcup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/4b-dn-kcdn-kcup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/4c-dn-kcdn-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/4c-dn-kcdn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/4c-dn-kcdn-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/4c-dn-kcdn-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/4d-dn-kcdn-timer-up-kcup/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/4d-dn-kcdn-timer-up-kcup/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/4d-dn-kcdn-timer-up-kcup/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/4d-dn-kcdn-timer-up-kcup/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/5-quick-tap/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/5-quick-tap/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/5-quick-tap/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/5-quick-tap/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/6-retro-tap/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/6-retro-tap/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/6-retro-tap/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/6-retro-tap/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/7-positional/2-dn-timer-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/7-positional/2-dn-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/7-positional/2-dn-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/7-positional/2-dn-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/7-positional/on-release-no-trigger/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/7-positional/on-release-no-trigger/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/7-positional/on-release-no-trigger/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/7-positional/on-release-no-trigger/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/7-positional/on-release-trigger/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/7-positional/on-release-trigger/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/7-positional/on-release-trigger/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/7-positional/on-release-trigger/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/8-require-prior-idle/1-basic/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/8-require-prior-idle/1-basic/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/8-require-prior-idle/1-basic/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/8-require-prior-idle/1-basic/native_sim.keymap diff --git a/app/tests/hold-tap/hold-preferred/8-require-prior-idle/2-double-hold/native_posix_64.keymap b/app/tests/hold-tap/hold-preferred/8-require-prior-idle/2-double-hold/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-preferred/8-require-prior-idle/2-double-hold/native_posix_64.keymap rename to app/tests/hold-tap/hold-preferred/8-require-prior-idle/2-double-hold/native_sim.keymap diff --git a/app/tests/hold-tap/hold-while-undecided/1-tap/native_posix_64.keymap b/app/tests/hold-tap/hold-while-undecided/1-tap/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-while-undecided/1-tap/native_posix_64.keymap rename to app/tests/hold-tap/hold-while-undecided/1-tap/native_sim.keymap diff --git a/app/tests/hold-tap/hold-while-undecided/2-hold/native_posix_64.keymap b/app/tests/hold-tap/hold-while-undecided/2-hold/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-while-undecided/2-hold/native_posix_64.keymap rename to app/tests/hold-tap/hold-while-undecided/2-hold/native_sim.keymap diff --git a/app/tests/hold-tap/hold-while-undecided/3-linger/native_posix_64.keymap b/app/tests/hold-tap/hold-while-undecided/3-linger/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-while-undecided/3-linger/native_posix_64.keymap rename to app/tests/hold-tap/hold-while-undecided/3-linger/native_sim.keymap diff --git a/app/tests/hold-tap/hold-while-undecided/4-linger-sk/native_posix_64.keymap b/app/tests/hold-tap/hold-while-undecided/4-linger-sk/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/hold-while-undecided/4-linger-sk/native_posix_64.keymap rename to app/tests/hold-tap/hold-while-undecided/4-linger-sk/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/1-dn-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/1-dn-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/1-dn-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/1-dn-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/2-dn-timer-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/2-dn-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/2-dn-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/2-dn-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/3a-moddn-dn-modup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/3a-moddn-dn-modup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/3a-moddn-dn-modup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/3a-moddn-dn-modup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/3b-moddn-dn-modup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/3b-moddn-dn-modup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/3b-moddn-dn-modup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/3b-moddn-dn-modup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/3c-kcdn-dn-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/3c-kcdn-dn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/3c-kcdn-dn-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/3c-kcdn-dn-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/3d-kcdn-dn-kcup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/3d-kcdn-dn-kcup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/3d-kcdn-dn-kcup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/3d-kcdn-dn-kcup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/4a-dn-htdn-timer-htup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/4a-dn-htdn-timer-htup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/4a-dn-htdn-timer-htup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/4a-dn-htdn-timer-htup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/4a-dn-kcdn-timer-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/4a-dn-kcdn-timer-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/4a-dn-kcdn-timer-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/4a-dn-kcdn-timer-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/4b-dn-kcdn-kcup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/4b-dn-kcdn-kcup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/4b-dn-kcdn-kcup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/4b-dn-kcdn-kcup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/4c-dn-kcdn-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/4c-dn-kcdn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/4c-dn-kcdn-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/4c-dn-kcdn-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/4d-dn-kcdn-timer-up-kcup/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/4d-dn-kcdn-timer-up-kcup/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/4d-dn-kcdn-timer-up-kcup/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/4d-dn-kcdn-timer-up-kcup/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/5-quick-tap/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/5-quick-tap/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/5-quick-tap/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/5-quick-tap/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/6-nested-timeouts/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/6-nested-timeouts/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/6-nested-timeouts/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/6-nested-timeouts/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/7-positional/2-dn-timer-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/7-positional/2-dn-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/7-positional/2-dn-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/7-positional/2-dn-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/7-positional/4a-dn-ntgdn-timer-ntgup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/7-positional/4a-dn-tgdn-timer-tgup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/7-positional/on-release-no-trigger/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/7-positional/on-release-no-trigger/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/7-positional/on-release-no-trigger/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/7-positional/on-release-no-trigger/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/7-positional/on-release-trigger/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/7-positional/on-release-trigger/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/7-positional/on-release-trigger/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/7-positional/on-release-trigger/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/7-positional/tgdn-dn-ntgdn-timer-ntgup-tgup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/8-require-prior-idle/1-basic/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/8-require-prior-idle/1-basic/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/8-require-prior-idle/1-basic/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/8-require-prior-idle/1-basic/native_sim.keymap diff --git a/app/tests/hold-tap/tap-preferred/8-require-prior-idle/2-double-hold/native_posix_64.keymap b/app/tests/hold-tap/tap-preferred/8-require-prior-idle/2-double-hold/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-preferred/8-require-prior-idle/2-double-hold/native_posix_64.keymap rename to app/tests/hold-tap/tap-preferred/8-require-prior-idle/2-double-hold/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/1-dn-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/1-dn-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/1-dn-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/1-dn-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/2-dn-timer-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/2-dn-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/2-dn-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/2-dn-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/3a-moddn-dn-modup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/3a-moddn-dn-modup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/3a-moddn-dn-modup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/3a-moddn-dn-modup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/3b-moddn-dn-modup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/3b-moddn-dn-modup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/3b-moddn-dn-modup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/3b-moddn-dn-modup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/3c-kcdn-dn-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/3c-kcdn-dn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/3c-kcdn-dn-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/3c-kcdn-dn-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/3d-kcdn-dn-kcup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/3d-kcdn-dn-kcup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/3d-kcdn-dn-kcup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/3d-kcdn-dn-kcup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/4a-dn-htdn-timer-htup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/4a-dn-htdn-timer-htup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/4a-dn-htdn-timer-htup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/4a-dn-htdn-timer-htup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/4a-dn-kcdn-timer-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/4a-dn-kcdn-timer-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/4a-dn-kcdn-timer-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/4a-dn-kcdn-timer-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/4b-dn-kcdn-kcup-timer-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/4b-dn-kcdn-kcup-timer-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/4b-dn-kcdn-kcup-timer-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/4b-dn-kcdn-kcup-timer-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/4c-dn-kcdn-kcup-up/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/4c-dn-kcdn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/4c-dn-kcdn-kcup-up/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/4c-dn-kcdn-kcup-up/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/4d-dn-kcdn-timer-up-kcup/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/4d-dn-kcdn-timer-up-kcup/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/4d-dn-kcdn-timer-up-kcup/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/4d-dn-kcdn-timer-up-kcup/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/5-quick-tap/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/5-quick-tap/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/5-quick-tap/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/5-quick-tap/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/1-basic/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/1-basic/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/1-basic/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/1-basic/native_sim.keymap diff --git a/app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/2-double-hold/native_posix_64.keymap b/app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/2-double-hold/native_sim.keymap similarity index 100% rename from app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/2-double-hold/native_posix_64.keymap rename to app/tests/hold-tap/tap-unless-interrupted/6-require-prior-idle/2-double-hold/native_sim.keymap diff --git a/app/tests/key-repeat/ignore-other-usage-page-events/native_posix_64.keymap b/app/tests/key-repeat/ignore-other-usage-page-events/native_sim.keymap similarity index 100% rename from app/tests/key-repeat/ignore-other-usage-page-events/native_posix_64.keymap rename to app/tests/key-repeat/ignore-other-usage-page-events/native_sim.keymap diff --git a/app/tests/key-repeat/press-and-release-after-key-usage/native_posix.keymap b/app/tests/key-repeat/press-and-release-after-key-usage/native_posix.keymap deleted file mode 100644 index 9078f304d58..00000000000 --- a/app/tests/key-repeat/press-and-release-after-key-usage/native_posix.keymap +++ /dev/null @@ -1,13 +0,0 @@ -#include -#include -#include -#include "../behavior_keymap.dtsi" - -&kscan { - events = < - ZMK_MOCK_PRESS(0,1,10) - ZMK_MOCK_RELEASE(0,1,10) - ZMK_MOCK_PRESS(0,0,10) - ZMK_MOCK_RELEASE(0,0,10) - >; -}; \ No newline at end of file diff --git a/app/tests/key-repeat/press-and-release-after-key-usage/native_posix_64.keymap b/app/tests/key-repeat/press-and-release-after-key-usage/native_sim.keymap similarity index 100% rename from app/tests/key-repeat/press-and-release-after-key-usage/native_posix_64.keymap rename to app/tests/key-repeat/press-and-release-after-key-usage/native_sim.keymap diff --git a/app/tests/key-repeat/press-and-release-with-explicit-modifiers/native_posix_64.keymap b/app/tests/key-repeat/press-and-release-with-explicit-modifiers/native_sim.keymap similarity index 100% rename from app/tests/key-repeat/press-and-release-with-explicit-modifiers/native_posix_64.keymap rename to app/tests/key-repeat/press-and-release-with-explicit-modifiers/native_sim.keymap diff --git a/app/tests/key-repeat/send-nothing-if-no-keys-pressed-yet/native_posix_64.keymap b/app/tests/key-repeat/send-nothing-if-no-keys-pressed-yet/native_sim.keymap similarity index 100% rename from app/tests/key-repeat/send-nothing-if-no-keys-pressed-yet/native_posix_64.keymap rename to app/tests/key-repeat/send-nothing-if-no-keys-pressed-yet/native_sim.keymap diff --git a/app/tests/key-repeat/tap-when-rolling/native_posix.keymap b/app/tests/key-repeat/tap-when-rolling/native_posix.keymap deleted file mode 100644 index bb129d14c7a..00000000000 --- a/app/tests/key-repeat/tap-when-rolling/native_posix.keymap +++ /dev/null @@ -1,13 +0,0 @@ -#include -#include -#include -#include "../behavior_keymap.dtsi" - -&kscan { - events = < - ZMK_MOCK_PRESS(0,1,10) - ZMK_MOCK_PRESS(0,0,10) - ZMK_MOCK_RELEASE(0,1,10) - ZMK_MOCK_RELEASE(0,0,10) - >; -}; diff --git a/app/tests/key-repeat/tap-when-rolling/native_posix_64.keymap b/app/tests/key-repeat/tap-when-rolling/native_sim.keymap similarity index 100% rename from app/tests/key-repeat/tap-when-rolling/native_posix_64.keymap rename to app/tests/key-repeat/tap-when-rolling/native_sim.keymap diff --git a/app/tests/keypress/kp-press-release/native_posix_64.keymap b/app/tests/keypress/kp-press-release/native_sim.keymap similarity index 100% rename from app/tests/keypress/kp-press-release/native_posix_64.keymap rename to app/tests/keypress/kp-press-release/native_sim.keymap diff --git a/app/tests/keytoggle/kt-alt-tab/native_posix_64.keymap b/app/tests/keytoggle/kt-alt-tab/native_sim.keymap similarity index 100% rename from app/tests/keytoggle/kt-alt-tab/native_posix_64.keymap rename to app/tests/keytoggle/kt-alt-tab/native_sim.keymap diff --git a/app/tests/keytoggle/kt-modded-alpha/native_posix_64.keymap b/app/tests/keytoggle/kt-modded-alpha/native_sim.keymap similarity index 100% rename from app/tests/keytoggle/kt-modded-alpha/native_posix_64.keymap rename to app/tests/keytoggle/kt-modded-alpha/native_sim.keymap diff --git a/app/tests/keytoggle/kt-off/native_posix_64.keymap b/app/tests/keytoggle/kt-off/native_sim.keymap similarity index 100% rename from app/tests/keytoggle/kt-off/native_posix_64.keymap rename to app/tests/keytoggle/kt-off/native_sim.keymap diff --git a/app/tests/keytoggle/kt-on/native_posix_64.keymap b/app/tests/keytoggle/kt-on/native_sim.keymap similarity index 100% rename from app/tests/keytoggle/kt-on/native_posix_64.keymap rename to app/tests/keytoggle/kt-on/native_sim.keymap diff --git a/app/tests/keytoggle/kt-press-release-nkro/native_posix_64.conf b/app/tests/keytoggle/kt-press-release-nkro/native_sim.conf similarity index 100% rename from app/tests/keytoggle/kt-press-release-nkro/native_posix_64.conf rename to app/tests/keytoggle/kt-press-release-nkro/native_sim.conf diff --git a/app/tests/keytoggle/kt-press-release-nkro/native_posix_64.keymap b/app/tests/keytoggle/kt-press-release-nkro/native_sim.keymap similarity index 100% rename from app/tests/keytoggle/kt-press-release-nkro/native_posix_64.keymap rename to app/tests/keytoggle/kt-press-release-nkro/native_sim.keymap diff --git a/app/tests/keytoggle/kt-press-release/native_posix_64.keymap b/app/tests/keytoggle/kt-press-release/native_sim.keymap similarity index 100% rename from app/tests/keytoggle/kt-press-release/native_posix_64.keymap rename to app/tests/keytoggle/kt-press-release/native_sim.keymap diff --git a/app/tests/macros/basic/native_posix_64.keymap b/app/tests/macros/basic/native_sim.keymap similarity index 100% rename from app/tests/macros/basic/native_posix_64.keymap rename to app/tests/macros/basic/native_sim.keymap diff --git a/app/tests/macros/mo-plus-modifier-from-hold-tap/native_posix_64.keymap b/app/tests/macros/mo-plus-modifier-from-hold-tap/native_sim.keymap similarity index 100% rename from app/tests/macros/mo-plus-modifier-from-hold-tap/native_posix_64.keymap rename to app/tests/macros/mo-plus-modifier-from-hold-tap/native_sim.keymap diff --git a/app/tests/macros/mo-plus-modifier-macro/native_posix_64.keymap b/app/tests/macros/mo-plus-modifier-macro/native_sim.keymap similarity index 100% rename from app/tests/macros/mo-plus-modifier-macro/native_posix_64.keymap rename to app/tests/macros/mo-plus-modifier-macro/native_sim.keymap diff --git a/app/tests/macros/place-holder-parameters/native_posix_64.keymap b/app/tests/macros/place-holder-parameters/native_sim.keymap similarity index 100% rename from app/tests/macros/place-holder-parameters/native_posix_64.keymap rename to app/tests/macros/place-holder-parameters/native_sim.keymap diff --git a/app/tests/macros/press-mid-macro/native_posix_64.keymap b/app/tests/macros/press-mid-macro/native_sim.keymap similarity index 100% rename from app/tests/macros/press-mid-macro/native_posix_64.keymap rename to app/tests/macros/press-mid-macro/native_sim.keymap diff --git a/app/tests/macros/press-release/native_posix_64.keymap b/app/tests/macros/press-release/native_sim.keymap similarity index 100% rename from app/tests/macros/press-release/native_posix_64.keymap rename to app/tests/macros/press-release/native_sim.keymap diff --git a/app/tests/macros/timing-override/native_posix_64.keymap b/app/tests/macros/timing-override/native_sim.keymap similarity index 100% rename from app/tests/macros/timing-override/native_posix_64.keymap rename to app/tests/macros/timing-override/native_sim.keymap diff --git a/app/tests/macros/wait-macro-release/native_posix_64.keymap b/app/tests/macros/wait-macro-release/native_sim.keymap similarity index 100% rename from app/tests/macros/wait-macro-release/native_posix_64.keymap rename to app/tests/macros/wait-macro-release/native_sim.keymap diff --git a/app/tests/mod-morph/1-no-morph/native_posix_64.keymap b/app/tests/mod-morph/1-no-morph/native_sim.keymap similarity index 100% rename from app/tests/mod-morph/1-no-morph/native_posix_64.keymap rename to app/tests/mod-morph/1-no-morph/native_sim.keymap diff --git a/app/tests/mod-morph/2a-masked-morph/native_posix_64.keymap b/app/tests/mod-morph/2a-masked-morph/native_sim.keymap similarity index 100% rename from app/tests/mod-morph/2a-masked-morph/native_posix_64.keymap rename to app/tests/mod-morph/2a-masked-morph/native_sim.keymap diff --git a/app/tests/mod-morph/2b-masked-morph-implicit-overwrite/native_posix_64.keymap b/app/tests/mod-morph/2b-masked-morph-implicit-overwrite/native_sim.keymap similarity index 100% rename from app/tests/mod-morph/2b-masked-morph-implicit-overwrite/native_posix_64.keymap rename to app/tests/mod-morph/2b-masked-morph-implicit-overwrite/native_sim.keymap diff --git a/app/tests/mod-morph/2c-masked-morph-and-explicit-mods/native_posix_64.keymap b/app/tests/mod-morph/2c-masked-morph-and-explicit-mods/native_sim.keymap similarity index 100% rename from app/tests/mod-morph/2c-masked-morph-and-explicit-mods/native_posix_64.keymap rename to app/tests/mod-morph/2c-masked-morph-and-explicit-mods/native_sim.keymap diff --git a/app/tests/mod-morph/2d-masked-morph-into-hold-tap-tap/native_posix_64.keymap b/app/tests/mod-morph/2d-masked-morph-into-hold-tap-tap/native_sim.keymap similarity index 100% rename from app/tests/mod-morph/2d-masked-morph-into-hold-tap-tap/native_posix_64.keymap rename to app/tests/mod-morph/2d-masked-morph-into-hold-tap-tap/native_sim.keymap diff --git a/app/tests/mod-morph/2e-masked-morph-into-hold-tap-hold/native_posix_64.keymap b/app/tests/mod-morph/2e-masked-morph-into-hold-tap-hold/native_sim.keymap similarity index 100% rename from app/tests/mod-morph/2e-masked-morph-into-hold-tap-hold/native_posix_64.keymap rename to app/tests/mod-morph/2e-masked-morph-into-hold-tap-hold/native_sim.keymap diff --git a/app/tests/mod-morph/3-unmasked-morph/native_posix_64.keymap b/app/tests/mod-morph/3-unmasked-morph/native_sim.keymap similarity index 100% rename from app/tests/mod-morph/3-unmasked-morph/native_posix_64.keymap rename to app/tests/mod-morph/3-unmasked-morph/native_sim.keymap diff --git a/app/tests/modifiers/explicit/kp-hyper-dn-a-dn-a-up-hyper-up/native_posix_64.keymap b/app/tests/modifiers/explicit/kp-hyper-dn-a-dn-a-up-hyper-up/native_sim.keymap similarity index 100% rename from app/tests/modifiers/explicit/kp-hyper-dn-a-dn-a-up-hyper-up/native_posix_64.keymap rename to app/tests/modifiers/explicit/kp-hyper-dn-a-dn-a-up-hyper-up/native_sim.keymap diff --git a/app/tests/modifiers/explicit/kp-lctl-dn-lctl-dn-lctl-up-lctl-up/native_posix_64.keymap b/app/tests/modifiers/explicit/kp-lctl-dn-lctl-dn-lctl-up-lctl-up/native_sim.keymap similarity index 100% rename from app/tests/modifiers/explicit/kp-lctl-dn-lctl-dn-lctl-up-lctl-up/native_posix_64.keymap rename to app/tests/modifiers/explicit/kp-lctl-dn-lctl-dn-lctl-up-lctl-up/native_sim.keymap diff --git a/app/tests/modifiers/explicit/kp-lctl-dn-lctl-up/native_posix_64.keymap b/app/tests/modifiers/explicit/kp-lctl-dn-lctl-up/native_sim.keymap similarity index 100% rename from app/tests/modifiers/explicit/kp-lctl-dn-lctl-up/native_posix_64.keymap rename to app/tests/modifiers/explicit/kp-lctl-dn-lctl-up/native_sim.keymap diff --git a/app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lctl-up-lsft-up/native_posix_64.keymap b/app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lctl-up-lsft-up/native_sim.keymap similarity index 100% rename from app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lctl-up-lsft-up/native_posix_64.keymap rename to app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lctl-up-lsft-up/native_sim.keymap diff --git a/app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lsft-up-lctl-up/native_posix_64.keymap b/app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lsft-up-lctl-up/native_sim.keymap similarity index 100% rename from app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lsft-up-lctl-up/native_posix_64.keymap rename to app/tests/modifiers/explicit/kp-lctl-dn-lsft-dn-lsft-up-lctl-up/native_sim.keymap diff --git a/app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod1-up-mod2-up/native_posix_64.keymap b/app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod1-up-mod2-up/native_sim.keymap similarity index 100% rename from app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod1-up-mod2-up/native_posix_64.keymap rename to app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod1-up-mod2-up/native_sim.keymap diff --git a/app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod2-up-mod1-up/native_posix_64.keymap b/app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod2-up-mod1-up/native_sim.keymap similarity index 100% rename from app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod2-up-mod1-up/native_posix_64.keymap rename to app/tests/modifiers/implicit/kp-mod1-dn-mod2-dn-mod2-up-mod1-up/native_sim.keymap diff --git a/app/tests/modifiers/implicit/kp-rolling-symbols-same-key/native_posix_64.keymap b/app/tests/modifiers/implicit/kp-rolling-symbols-same-key/native_sim.keymap similarity index 100% rename from app/tests/modifiers/implicit/kp-rolling-symbols-same-key/native_posix_64.keymap rename to app/tests/modifiers/implicit/kp-rolling-symbols-same-key/native_sim.keymap diff --git a/app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-lctl-up-mod-up/native_posix_64.keymap b/app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-lctl-up-mod-up/native_sim.keymap similarity index 100% rename from app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-lctl-up-mod-up/native_posix_64.keymap rename to app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-lctl-up-mod-up/native_sim.keymap diff --git a/app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-mod-up-lctl-up/native_posix_64.keymap b/app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-mod-up-lctl-up/native_sim.keymap similarity index 100% rename from app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-mod-up-lctl-up/native_posix_64.keymap rename to app/tests/modifiers/mixed/kp-lctl-dn-mod-dn-mod-up-lctl-up/native_sim.keymap diff --git a/app/tests/momentary-layer/1-normal/native_posix_64.keymap b/app/tests/momentary-layer/1-normal/native_sim.keymap similarity index 100% rename from app/tests/momentary-layer/1-normal/native_posix_64.keymap rename to app/tests/momentary-layer/1-normal/native_sim.keymap diff --git a/app/tests/momentary-layer/2-early-key-release/native_posix_64.keymap b/app/tests/momentary-layer/2-early-key-release/native_sim.keymap similarity index 100% rename from app/tests/momentary-layer/2-early-key-release/native_posix_64.keymap rename to app/tests/momentary-layer/2-early-key-release/native_sim.keymap diff --git a/app/tests/momentary-layer/3-covered/native_posix_64.keymap b/app/tests/momentary-layer/3-covered/native_sim.keymap similarity index 100% rename from app/tests/momentary-layer/3-covered/native_posix_64.keymap rename to app/tests/momentary-layer/3-covered/native_sim.keymap diff --git a/app/tests/momentary-layer/4-nested/native_posix_64.keymap b/app/tests/momentary-layer/4-nested/native_sim.keymap similarity index 100% rename from app/tests/momentary-layer/4-nested/native_posix_64.keymap rename to app/tests/momentary-layer/4-nested/native_sim.keymap diff --git a/app/tests/momentary-layer/5-nested-early-key-release/native_posix_64.keymap b/app/tests/momentary-layer/5-nested-early-key-release/native_sim.keymap similarity index 100% rename from app/tests/momentary-layer/5-nested-early-key-release/native_posix_64.keymap rename to app/tests/momentary-layer/5-nested-early-key-release/native_sim.keymap diff --git a/app/tests/none/layered/native_posix_64.keymap b/app/tests/none/layered/native_sim.keymap similarity index 100% rename from app/tests/none/layered/native_posix_64.keymap rename to app/tests/none/layered/native_sim.keymap diff --git a/app/tests/none/normal/native_posix.keymap b/app/tests/none/normal/native_sim.keymap similarity index 100% rename from app/tests/none/normal/native_posix.keymap rename to app/tests/none/normal/native_sim.keymap diff --git a/app/tests/pointing/mkp/native_posix_64.keymap b/app/tests/pointing/mkp/native_posix_64.keymap deleted file mode 100644 index cec0b6e1b1b..00000000000 --- a/app/tests/pointing/mkp/native_posix_64.keymap +++ /dev/null @@ -1,27 +0,0 @@ -#include -#include -#include -#include - -/ { - keymap { - compatible = "zmk,keymap"; - - default_layer { - bindings = < - &mkp LCLK &none - &none &mkp RCLK - >; - }; - }; -}; - - -&kscan { - events = < - ZMK_MOCK_PRESS (0,0,100) - ZMK_MOCK_PRESS (1,1,100) - ZMK_MOCK_RELEASE(1,1, 10) - ZMK_MOCK_RELEASE(0,0, 10) - >; -}; diff --git a/app/tests/pointing/mkp/native_posix_64.conf b/app/tests/pointing/mkp/native_sim.conf similarity index 100% rename from app/tests/pointing/mkp/native_posix_64.conf rename to app/tests/pointing/mkp/native_sim.conf diff --git a/app/tests/pointing/mkp/native_posix.keymap b/app/tests/pointing/mkp/native_sim.keymap similarity index 100% rename from app/tests/pointing/mkp/native_posix.keymap rename to app/tests/pointing/mkp/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/move_diagonal/native_posix_64.conf b/app/tests/pointing/mouse-move/move_diagonal/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/move_diagonal/native_posix_64.conf rename to app/tests/pointing/mouse-move/move_diagonal/native_sim.conf diff --git a/app/tests/pointing/mouse-move/move_diagonal/native_posix_64.keymap b/app/tests/pointing/mouse-move/move_diagonal/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/move_diagonal/native_posix_64.keymap rename to app/tests/pointing/mouse-move/move_diagonal/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/move_x/native_posix_64.conf b/app/tests/pointing/mouse-move/move_x/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/move_x/native_posix_64.conf rename to app/tests/pointing/mouse-move/move_x/native_sim.conf diff --git a/app/tests/pointing/mouse-move/move_x/native_posix_64.keymap b/app/tests/pointing/mouse-move/move_x/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/move_x/native_posix_64.keymap rename to app/tests/pointing/mouse-move/move_x/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/move_y/native_posix_64.conf b/app/tests/pointing/mouse-move/move_y/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/move_y/native_posix_64.conf rename to app/tests/pointing/mouse-move/move_y/native_sim.conf diff --git a/app/tests/pointing/mouse-move/move_y/native_posix_64.keymap b/app/tests/pointing/mouse-move/move_y/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/move_y/native_posix_64.keymap rename to app/tests/pointing/mouse-move/move_y/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/behaviors_basic/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/behaviors_basic/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/behaviors_basic/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/behaviors_basic/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/behaviors_basic/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/behaviors_basic/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/behaviors_basic/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/behaviors_basic/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/behaviors_hold_tap/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/behaviors_hold_tap/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/behaviors_hold_tap/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/behaviors_hold_tap/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/behaviors_hold_tap/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/behaviors_hold_tap/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/behaviors_hold_tap/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/behaviors_hold_tap/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/move_diagonal_scaling/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/move_diagonal_scaling/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/move_diagonal_scaling/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/move_diagonal_scaling/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/move_diagonal_scaling/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/move_diagonal_scaling/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/move_diagonal_scaling/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/move_diagonal_scaling/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/move_diagonal_xy_invert/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/move_diagonal_xy_swap/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/temp_layer/1-deactivate-layer-timeout/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/temp_layer/2a-deactivate-layer-position-trigger/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/temp_layer/2b-deactivate-layer-position-not-trigger/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/temp_layer/3-require-prior-idle-ms/native_sim.keymap diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/native_posix_64.conf b/app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/native_posix_64.conf rename to app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/native_sim.conf diff --git a/app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/native_posix_64.keymap b/app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/native_posix_64.keymap rename to app/tests/pointing/mouse-move/processors/temp_layer/4-deactivated-layer-externally/native_sim.keymap diff --git a/app/tests/pointing/mouse-scroll/move_diagonal/native_posix_64.conf b/app/tests/pointing/mouse-scroll/move_diagonal/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-scroll/move_diagonal/native_posix_64.conf rename to app/tests/pointing/mouse-scroll/move_diagonal/native_sim.conf diff --git a/app/tests/pointing/mouse-scroll/move_diagonal/native_posix_64.keymap b/app/tests/pointing/mouse-scroll/move_diagonal/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-scroll/move_diagonal/native_posix_64.keymap rename to app/tests/pointing/mouse-scroll/move_diagonal/native_sim.keymap diff --git a/app/tests/pointing/mouse-scroll/move_hwheel/native_posix_64.conf b/app/tests/pointing/mouse-scroll/move_hwheel/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-scroll/move_hwheel/native_posix_64.conf rename to app/tests/pointing/mouse-scroll/move_hwheel/native_sim.conf diff --git a/app/tests/pointing/mouse-scroll/move_hwheel/native_posix_64.keymap b/app/tests/pointing/mouse-scroll/move_hwheel/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-scroll/move_hwheel/native_posix_64.keymap rename to app/tests/pointing/mouse-scroll/move_hwheel/native_sim.keymap diff --git a/app/tests/pointing/mouse-scroll/move_wheel/native_posix_64.conf b/app/tests/pointing/mouse-scroll/move_wheel/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-scroll/move_wheel/native_posix_64.conf rename to app/tests/pointing/mouse-scroll/move_wheel/native_sim.conf diff --git a/app/tests/pointing/mouse-scroll/move_wheel/native_posix_64.keymap b/app/tests/pointing/mouse-scroll/move_wheel/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-scroll/move_wheel/native_posix_64.keymap rename to app/tests/pointing/mouse-scroll/move_wheel/native_sim.keymap diff --git a/app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/native_posix_64.conf b/app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/native_posix_64.conf rename to app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/native_sim.conf diff --git a/app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/native_posix_64.keymap b/app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/native_posix_64.keymap rename to app/tests/pointing/mouse-scroll/processors/move_diagonal_scaling/native_sim.keymap diff --git a/app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/native_posix_64.conf b/app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/native_sim.conf similarity index 100% rename from app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/native_posix_64.conf rename to app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/native_sim.conf diff --git a/app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/native_posix_64.keymap b/app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/native_sim.keymap similarity index 100% rename from app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/native_posix_64.keymap rename to app/tests/pointing/mouse-scroll/processors/move_diagonal_xy_invert/native_sim.keymap diff --git a/app/tests/sticky-keys/1-os-dn-up/native_posix_64.keymap b/app/tests/sticky-keys/1-os-dn-up/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/1-os-dn-up/native_posix_64.keymap rename to app/tests/sticky-keys/1-os-dn-up/native_sim.keymap diff --git a/app/tests/sticky-keys/10-callum-mods-quick-release/native_posix_64.keymap b/app/tests/sticky-keys/10-callum-mods-quick-release/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/10-callum-mods-quick-release/native_posix_64.keymap rename to app/tests/sticky-keys/10-callum-mods-quick-release/native_sim.keymap diff --git a/app/tests/sticky-keys/10-callum-mods/native_posix_64.keymap b/app/tests/sticky-keys/10-callum-mods/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/10-callum-mods/native_posix_64.keymap rename to app/tests/sticky-keys/10-callum-mods/native_sim.keymap diff --git a/app/tests/sticky-keys/10-sl-sl-kp/native_posix_64.keymap b/app/tests/sticky-keys/10-sl-sl-kp/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/10-sl-sl-kp/native_posix_64.keymap rename to app/tests/sticky-keys/10-sl-sl-kp/native_sim.keymap diff --git a/app/tests/sticky-keys/11-lazy-timeout-during/native_posix_64.keymap b/app/tests/sticky-keys/11-lazy-timeout-during/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/11-lazy-timeout-during/native_posix_64.keymap rename to app/tests/sticky-keys/11-lazy-timeout-during/native_sim.keymap diff --git a/app/tests/sticky-keys/11-lazy-timeout/native_posix_64.keymap b/app/tests/sticky-keys/11-lazy-timeout/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/11-lazy-timeout/native_posix_64.keymap rename to app/tests/sticky-keys/11-lazy-timeout/native_sim.keymap diff --git a/app/tests/sticky-keys/11-lazy/native_posix_64.keymap b/app/tests/sticky-keys/11-lazy/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/11-lazy/native_posix_64.keymap rename to app/tests/sticky-keys/11-lazy/native_sim.keymap diff --git a/app/tests/sticky-keys/12-macro/native_posix_64.keymap b/app/tests/sticky-keys/12-macro/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/12-macro/native_posix_64.keymap rename to app/tests/sticky-keys/12-macro/native_sim.keymap diff --git a/app/tests/sticky-keys/12-same-position-mods/native_posix_64.keymap b/app/tests/sticky-keys/12-same-position-mods/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/12-same-position-mods/native_posix_64.keymap rename to app/tests/sticky-keys/12-same-position-mods/native_sim.keymap diff --git a/app/tests/sticky-keys/12-same-position-sk-sl/native_posix_64.keymap b/app/tests/sticky-keys/12-same-position-sk-sl/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/12-same-position-sk-sl/native_posix_64.keymap rename to app/tests/sticky-keys/12-same-position-sk-sl/native_sim.keymap diff --git a/app/tests/sticky-keys/2-os-dn-up-kcdn-kcup-quick-release/native_posix_64.keymap b/app/tests/sticky-keys/2-os-dn-up-kcdn-kcup-quick-release/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/2-os-dn-up-kcdn-kcup-quick-release/native_posix_64.keymap rename to app/tests/sticky-keys/2-os-dn-up-kcdn-kcup-quick-release/native_sim.keymap diff --git a/app/tests/sticky-keys/2-os-dn-up-kcdn-kcup/native_posix_64.keymap b/app/tests/sticky-keys/2-os-dn-up-kcdn-kcup/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/2-os-dn-up-kcdn-kcup/native_posix_64.keymap rename to app/tests/sticky-keys/2-os-dn-up-kcdn-kcup/native_sim.keymap diff --git a/app/tests/sticky-keys/2-sl-dn-up-kcdn-kcup/native_posix_64.keymap b/app/tests/sticky-keys/2-sl-dn-up-kcdn-kcup/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/2-sl-dn-up-kcdn-kcup/native_posix_64.keymap rename to app/tests/sticky-keys/2-sl-dn-up-kcdn-kcup/native_sim.keymap diff --git a/app/tests/sticky-keys/3a-os-dn-kcdn-kcup-up/native_posix_64.keymap b/app/tests/sticky-keys/3a-os-dn-kcdn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/3a-os-dn-kcdn-kcup-up/native_posix_64.keymap rename to app/tests/sticky-keys/3a-os-dn-kcdn-kcup-up/native_sim.keymap diff --git a/app/tests/sticky-keys/3b-os-dn-kcdn-up-kcup/native_posix_64.keymap b/app/tests/sticky-keys/3b-os-dn-kcdn-up-kcup/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/3b-os-dn-kcdn-up-kcup/native_posix_64.keymap rename to app/tests/sticky-keys/3b-os-dn-kcdn-up-kcup/native_sim.keymap diff --git a/app/tests/sticky-keys/4-os-dn-up-kcdn-timer-kcup/native_posix_64.keymap b/app/tests/sticky-keys/4-os-dn-up-kcdn-timer-kcup/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/4-os-dn-up-kcdn-timer-kcup/native_posix_64.keymap rename to app/tests/sticky-keys/4-os-dn-up-kcdn-timer-kcup/native_sim.keymap diff --git a/app/tests/sticky-keys/5-os-kcdn-dn-kcup-up/native_posix_64.keymap b/app/tests/sticky-keys/5-os-kcdn-dn-kcup-up/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/5-os-kcdn-dn-kcup-up/native_posix_64.keymap rename to app/tests/sticky-keys/5-os-kcdn-dn-kcup-up/native_sim.keymap diff --git a/app/tests/sticky-keys/7-os-dn-up-kc1dn-kc2dn-kc1up-kc2up/native_posix_64.keymap b/app/tests/sticky-keys/7-os-dn-up-kc1dn-kc2dn-kc1up-kc2up/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/7-os-dn-up-kc1dn-kc2dn-kc1up-kc2up/native_posix_64.keymap rename to app/tests/sticky-keys/7-os-dn-up-kc1dn-kc2dn-kc1up-kc2up/native_sim.keymap diff --git a/app/tests/sticky-keys/8-lsk-osk-combination-quick-release/native_posix_64.keymap b/app/tests/sticky-keys/8-lsk-osk-combination-quick-release/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/8-lsk-osk-combination-quick-release/native_posix_64.keymap rename to app/tests/sticky-keys/8-lsk-osk-combination-quick-release/native_sim.keymap diff --git a/app/tests/sticky-keys/8-lsk-osk-combination/native_posix_64.keymap b/app/tests/sticky-keys/8-lsk-osk-combination/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/8-lsk-osk-combination/native_posix_64.keymap rename to app/tests/sticky-keys/8-lsk-osk-combination/native_sim.keymap diff --git a/app/tests/sticky-keys/9-sk-dn-up-dn-up/native_posix_64.keymap b/app/tests/sticky-keys/9-sk-dn-up-dn-up/native_sim.keymap similarity index 100% rename from app/tests/sticky-keys/9-sk-dn-up-dn-up/native_posix_64.keymap rename to app/tests/sticky-keys/9-sk-dn-up-dn-up/native_sim.keymap diff --git a/app/tests/tap-dance/1a-tap1/native_posix_64.keymap b/app/tests/tap-dance/1a-tap1/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/1a-tap1/native_posix_64.keymap rename to app/tests/tap-dance/1a-tap1/native_sim.keymap diff --git a/app/tests/tap-dance/1b-tap2/native_posix_64.keymap b/app/tests/tap-dance/1b-tap2/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/1b-tap2/native_posix_64.keymap rename to app/tests/tap-dance/1b-tap2/native_sim.keymap diff --git a/app/tests/tap-dance/1c-tap3/native_posix_64.keymap b/app/tests/tap-dance/1c-tap3/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/1c-tap3/native_posix_64.keymap rename to app/tests/tap-dance/1c-tap3/native_sim.keymap diff --git a/app/tests/tap-dance/2a-hold1/native_posix_64.keymap b/app/tests/tap-dance/2a-hold1/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/2a-hold1/native_posix_64.keymap rename to app/tests/tap-dance/2a-hold1/native_sim.keymap diff --git a/app/tests/tap-dance/2b-hold2/native_posix_64.keymap b/app/tests/tap-dance/2b-hold2/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/2b-hold2/native_posix_64.keymap rename to app/tests/tap-dance/2b-hold2/native_sim.keymap diff --git a/app/tests/tap-dance/2c-hold3/native_posix_64.keymap b/app/tests/tap-dance/2c-hold3/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/2c-hold3/native_posix_64.keymap rename to app/tests/tap-dance/2c-hold3/native_sim.keymap diff --git a/app/tests/tap-dance/3a-tap-int-mid/native_posix_64.keymap b/app/tests/tap-dance/3a-tap-int-mid/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/3a-tap-int-mid/native_posix_64.keymap rename to app/tests/tap-dance/3a-tap-int-mid/native_sim.keymap diff --git a/app/tests/tap-dance/3b-tap-int-seq/native_posix_64.keymap b/app/tests/tap-dance/3b-tap-int-seq/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/3b-tap-int-seq/native_posix_64.keymap rename to app/tests/tap-dance/3b-tap-int-seq/native_sim.keymap diff --git a/app/tests/tap-dance/3c-tap-int-after/native_posix_64.keymap b/app/tests/tap-dance/3c-tap-int-after/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/3c-tap-int-after/native_posix_64.keymap rename to app/tests/tap-dance/3c-tap-int-after/native_sim.keymap diff --git a/app/tests/tap-dance/3d-hold-int-mid/native_posix_64.keymap b/app/tests/tap-dance/3d-hold-int-mid/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/3d-hold-int-mid/native_posix_64.keymap rename to app/tests/tap-dance/3d-hold-int-mid/native_sim.keymap diff --git a/app/tests/tap-dance/3e-hold-int-seq/native_posix_64.keymap b/app/tests/tap-dance/3e-hold-int-seq/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/3e-hold-int-seq/native_posix_64.keymap rename to app/tests/tap-dance/3e-hold-int-seq/native_sim.keymap diff --git a/app/tests/tap-dance/3f-hold-int-after/native_posix_64.keymap b/app/tests/tap-dance/3f-hold-int-after/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/3f-hold-int-after/native_posix_64.keymap rename to app/tests/tap-dance/3f-hold-int-after/native_sim.keymap diff --git a/app/tests/tap-dance/4a-single/native_posix_64.keymap b/app/tests/tap-dance/4a-single/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/4a-single/native_posix_64.keymap rename to app/tests/tap-dance/4a-single/native_sim.keymap diff --git a/app/tests/tap-dance/5a-tdint-mid/native_posix_64.keymap b/app/tests/tap-dance/5a-tdint-mid/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/5a-tdint-mid/native_posix_64.keymap rename to app/tests/tap-dance/5a-tdint-mid/native_sim.keymap diff --git a/app/tests/tap-dance/5b-tdint-seq/native_posix_64.keymap b/app/tests/tap-dance/5b-tdint-seq/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/5b-tdint-seq/native_posix_64.keymap rename to app/tests/tap-dance/5b-tdint-seq/native_sim.keymap diff --git a/app/tests/tap-dance/5c-tdint-after/native_posix_64.keymap b/app/tests/tap-dance/5c-tdint-after/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/5c-tdint-after/native_posix_64.keymap rename to app/tests/tap-dance/5c-tdint-after/native_sim.keymap diff --git a/app/tests/tap-dance/5d-tdint-multiple/native_posix_64.keymap b/app/tests/tap-dance/5d-tdint-multiple/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/5d-tdint-multiple/native_posix_64.keymap rename to app/tests/tap-dance/5d-tdint-multiple/native_sim.keymap diff --git a/app/tests/tap-dance/6-combo-tap2/native_posix_64.keymap b/app/tests/tap-dance/6-combo-tap2/native_sim.keymap similarity index 100% rename from app/tests/tap-dance/6-combo-tap2/native_posix_64.keymap rename to app/tests/tap-dance/6-combo-tap2/native_sim.keymap diff --git a/app/tests/to-layer/normal/native_posix_64.keymap b/app/tests/to-layer/normal/native_sim.keymap similarity index 100% rename from app/tests/to-layer/normal/native_posix_64.keymap rename to app/tests/to-layer/normal/native_sim.keymap diff --git a/app/tests/toggle-layer/early-key-release/native_posix_64.keymap b/app/tests/toggle-layer/early-key-release/native_sim.keymap similarity index 100% rename from app/tests/toggle-layer/early-key-release/native_posix_64.keymap rename to app/tests/toggle-layer/early-key-release/native_sim.keymap diff --git a/app/tests/toggle-layer/normal/native_posix_64.keymap b/app/tests/toggle-layer/normal/native_sim.keymap similarity index 100% rename from app/tests/toggle-layer/normal/native_posix_64.keymap rename to app/tests/toggle-layer/normal/native_sim.keymap diff --git a/app/tests/toggle-layer/toggle-mode-off/native_posix_64.keymap b/app/tests/toggle-layer/toggle-mode-off/native_sim.keymap similarity index 100% rename from app/tests/toggle-layer/toggle-mode-off/native_posix_64.keymap rename to app/tests/toggle-layer/toggle-mode-off/native_sim.keymap diff --git a/app/tests/toggle-layer/toggle-mode-on/native_posix_64.keymap b/app/tests/toggle-layer/toggle-mode-on/native_sim.keymap similarity index 100% rename from app/tests/toggle-layer/toggle-mode-on/native_posix_64.keymap rename to app/tests/toggle-layer/toggle-mode-on/native_sim.keymap diff --git a/app/tests/transparent/layered/native_posix_64.keymap b/app/tests/transparent/layered/native_sim.keymap similarity index 100% rename from app/tests/transparent/layered/native_posix_64.keymap rename to app/tests/transparent/layered/native_sim.keymap diff --git a/app/tests/transparent/normal/native_posix_64.keymap b/app/tests/transparent/normal/native_posix_64.keymap deleted file mode 100644 index 502f7ccc473..00000000000 --- a/app/tests/transparent/normal/native_posix_64.keymap +++ /dev/null @@ -1,8 +0,0 @@ -#include -#include -#include -#include "../behavior_keymap.dtsi" - -&kscan { - events = ; -}; \ No newline at end of file diff --git a/app/tests/none/normal/native_posix_64.keymap b/app/tests/transparent/normal/native_sim.keymap similarity index 100% rename from app/tests/none/normal/native_posix_64.keymap rename to app/tests/transparent/normal/native_sim.keymap diff --git a/app/tests/wpm/1-single_keypress/native_posix_64.conf b/app/tests/wpm/1-single_keypress/native_sim.conf similarity index 100% rename from app/tests/wpm/1-single_keypress/native_posix_64.conf rename to app/tests/wpm/1-single_keypress/native_sim.conf diff --git a/app/tests/wpm/1-single_keypress/native_posix_64.keymap b/app/tests/wpm/1-single_keypress/native_sim.keymap similarity index 100% rename from app/tests/wpm/1-single_keypress/native_posix_64.keymap rename to app/tests/wpm/1-single_keypress/native_sim.keymap diff --git a/app/tests/wpm/2-multiple_keypress/native_posix_64.conf b/app/tests/wpm/2-multiple_keypress/native_sim.conf similarity index 100% rename from app/tests/wpm/2-multiple_keypress/native_posix_64.conf rename to app/tests/wpm/2-multiple_keypress/native_sim.conf diff --git a/app/tests/wpm/2-multiple_keypress/native_posix_64.keymap b/app/tests/wpm/2-multiple_keypress/native_sim.keymap similarity index 100% rename from app/tests/wpm/2-multiple_keypress/native_posix_64.keymap rename to app/tests/wpm/2-multiple_keypress/native_sim.keymap From b8a4e6feadd8337c7ef87e6d63f59fe2e21e20d0 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sat, 29 Mar 2025 00:41:44 -0600 Subject: [PATCH 05/61] refactor: Move to Zephyr v4.1.0 --- app/west.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/west.yml b/app/west.yml index 40d198d72c7..6fe15620187 100644 --- a/app/west.yml +++ b/app/west.yml @@ -9,7 +9,7 @@ manifest: projects: - name: zephyr remote: zephyrproject-rtos - revision: v4.0.0 + revision: v4.1.0 clone-depth: 1 import: name-blocklist: From 14b8f153cabfda78af1851b85cc77e4c177a5a92 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sat, 29 Mar 2025 00:44:11 -0600 Subject: [PATCH 06/61] feat(core): (Optionally) use Zephyr keyboard input devices Add ability to assign a keyboard `input` device to a physical layout, or use a chosen `zmk,matrix-input`. --- app/dts/bindings/zmk,physical-layout.yaml | 3 + app/include/zmk/physical_layouts.h | 3 + app/module/drivers/input/input_mock.c | 9 +- app/src/physical_layouts.c | 90 ++++++++++++++++++- .../kp-press-release/events.patterns | 1 + .../kp-press-release/keycode_events.snapshot | 2 + .../kp-press-release/native_sim.conf | 1 + .../kp-press-release/native_sim.keymap | 60 +++++++++++++ 8 files changed, 163 insertions(+), 6 deletions(-) create mode 100644 app/tests/matrix-input/kp-press-release/events.patterns create mode 100644 app/tests/matrix-input/kp-press-release/keycode_events.snapshot create mode 100644 app/tests/matrix-input/kp-press-release/native_sim.conf create mode 100644 app/tests/matrix-input/kp-press-release/native_sim.keymap diff --git a/app/dts/bindings/zmk,physical-layout.yaml b/app/dts/bindings/zmk,physical-layout.yaml index 3f9b8c244bd..7ed4cdc3d2d 100644 --- a/app/dts/bindings/zmk,physical-layout.yaml +++ b/app/dts/bindings/zmk,physical-layout.yaml @@ -21,6 +21,9 @@ properties: kscan: type: phandle description: The kscan to use along with this layout. The `zmk,kscan` chosen will be used as a fallback if this property is omitted. + input: + type: phandle + description: The input device to use along with this layout. The `zmk,matrix-input` chosen will be used as a fallback if this property is omitted. keys: type: phandle-array description: Array of key physical attributes. diff --git a/app/include/zmk/physical_layouts.h b/app/include/zmk/physical_layouts.h index d5cf6527379..e28c194fec5 100644 --- a/app/include/zmk/physical_layouts.h +++ b/app/include/zmk/physical_layouts.h @@ -33,6 +33,9 @@ struct zmk_physical_layout { zmk_matrix_transform_t matrix_transform; const struct device *kscan; +#if IS_ENABLED(CONFIG_INPUT) + const struct device *input; +#endif const struct zmk_key_physical_attrs *keys; size_t keys_len; diff --git a/app/module/drivers/input/input_mock.c b/app/module/drivers/input/input_mock.c index 855b7dc378a..23282cd0417 100644 --- a/app/module/drivers/input/input_mock.c +++ b/app/module/drivers/input/input_mock.c @@ -48,10 +48,15 @@ static void input_mock_work_cb(struct k_work *work) { } } + bool sync = cfg->events[base_idx + 3]; input_report(dev, cfg->events[base_idx], cfg->events[base_idx + 1], cfg->events[base_idx + 2], - cfg->events[base_idx + 3], K_NO_WAIT); + sync, K_NO_WAIT); - k_work_schedule(&data->work, K_MSEC(cfg->event_period)); + if (sync) { + k_work_schedule(&data->work, K_MSEC(cfg->event_period)); + } else { + k_work_schedule(&data->work, K_NO_WAIT); + } } int input_mock_init(const struct device *dev) { diff --git a/app/src/physical_layouts.c b/app/src/physical_layouts.c index 8d384308892..7483022ace9 100644 --- a/app/src/physical_layouts.c +++ b/app/src/physical_layouts.c @@ -9,6 +9,7 @@ #include #include #include +#include #if IS_ENABLED(CONFIG_SETTINGS) #include @@ -27,6 +28,12 @@ ZMK_EVENT_IMPL(zmk_physical_layout_selection_changed); #define DT_DRV_COMPAT zmk_physical_layout +#if IS_ENABLED(CONFIG_INPUT) + +static void zmk_physical_layout_input_event_cb(struct input_event *evt, void *user_data); + +#endif + #define USE_PHY_LAYOUTS \ (DT_HAS_COMPAT_STATUS_OKAY(DT_DRV_COMPAT) && !DT_HAS_CHOSEN(zmk_matrix_transform)) @@ -53,6 +60,10 @@ BUILD_ASSERT( ()) \ } +#define INPUT_FOR_INST(n) \ + DEVICE_DT_GET(COND_CODE_1(DT_INST_PROP_LEN(n, input), (DT_INST_PHANDLE(n, input)), \ + (DT_CHOSEN(zmk_matrix_input)))) + #define ZMK_LAYOUT_INST(n) \ BUILD_ASSERT(!IS_ENABLED(CONFIG_ZMK_STUDIO) || DT_INST_NODE_HAS_PROP(n, keys), \ "ZMK Studio requires physical layouts with key positions. See " \ @@ -67,8 +78,20 @@ BUILD_ASSERT( .matrix_transform = ZMK_MATRIX_TRANSFORM_T_FOR_NODE(DT_INST_PHANDLE(n, transform)), \ .keys = _CONCAT(_zmk_physical_layout_keys_, n), \ .keys_len = DT_INST_PROP_LEN_OR(n, keys, 0), \ - .kscan = DEVICE_DT_GET(COND_CODE_1(DT_INST_PROP_LEN(n, kscan), \ - (DT_INST_PHANDLE(n, kscan)), (DT_CHOSEN(zmk_kscan))))}; + COND_CODE_1(UTIL_AND(IS_ENABLED(CONFIG_INPUT), UTIL_OR(DT_HAS_CHOSEN(zmk_matrix_input), \ + DT_INST_PROP_LEN(n, input))), \ + (.input = INPUT_FOR_INST(n)), ()) \ + COND_CODE_1(UTIL_OR(DT_HAS_CHOSEN(zmk_kscan), DT_INST_PROP_LEN(n, kscan)), \ + (.kscan = DEVICE_DT_GET(COND_CODE_1(DT_INST_PROP_LEN(n, kscan), \ + (DT_INST_PHANDLE(n, kscan)), \ + (DT_CHOSEN(zmk_kscan))))), \ + ())}; \ + COND_CODE_1( \ + UTIL_AND(IS_ENABLED(CONFIG_INPUT), \ + UTIL_OR(DT_HAS_CHOSEN(zmk_matrix_input), DT_INST_PROP_LEN(n, input))), \ + (INPUT_CALLBACK_DEFINE(INPUT_FOR_INST(n), zmk_physical_layout_input_event_cb, \ + (void *)&(_CONCAT(_zmk_physical_layout_, DT_DRV_INST(n))));), \ + ()) DT_INST_FOREACH_STATUS_OKAY(ZMK_LAYOUT_INST) @@ -135,12 +158,12 @@ static const struct zmk_physical_layout _CONCAT(_zmk_physical_layout_, chosen) = static const struct zmk_physical_layout *const layouts[] = { &_CONCAT(_zmk_physical_layout_, chosen)}; -#elif DT_HAS_CHOSEN(zmk_kscan) +#elif UTIL_OR(DT_HAS_CHOSEN(zmk_kscan), DT_HAS_CHOSEN(zmk_matrix_input)) #if DT_HAS_COMPAT_STATUS_OKAY(DT_DRV_COMPAT) #warning \ - "Ignoring the physical layouts and using the chosen kscan with a synthetic transform. Consider setting a chosen physical layout instead." + "Ignoring the physical layouts and using the chosen kscan/matrix-input with a synthetic transform. Consider setting a chosen physical layout instead." #endif @@ -148,9 +171,19 @@ ZMK_MATRIX_TRANSFORM_DEFAULT_EXTERN(); static const struct zmk_physical_layout _CONCAT(_zmk_physical_layout_, chosen) = { .display_name = "Default", .matrix_transform = &zmk_matrix_transform_default, +#if DT_HAS_CHOSEN(zmk_matrix_input) + .input = DEVICE_DT_GET(DT_CHOSEN(zmk_matrix_input)), +#elif DT_HAS_CHOSEN(zmk_kscan) .kscan = DEVICE_DT_GET(DT_CHOSEN(zmk_kscan)), +#endif }; +#if DT_HAS_CHOSEN(zmk_matrix_input) +INPUT_CALLBACK_DEFINE(DEVICE_DT_GET(DT_CHOSEN(zmk_matrix_input)), + zmk_physical_layout_input_event_cb, + (void *)&(_CONCAT(_zmk_physical_layout_, chosen))); +#endif + static const struct zmk_physical_layout *const layouts[] = { &_CONCAT(_zmk_physical_layout_, chosen)}; @@ -180,6 +213,55 @@ static struct zmk_kscan_msg_processor { K_MSGQ_DEFINE(physical_layouts_kscan_msgq, sizeof(struct zmk_kscan_event), CONFIG_ZMK_KSCAN_EVENT_QUEUE_SIZE, 4); +#if IS_ENABLED(CONFIG_INPUT) + +static struct zmk_kscan_event pending_input_event; + +static void zmk_physical_layout_input_event_cb(struct input_event *evt, void *user_data) { + const struct zmk_physical_layout *layout = (const struct zmk_physical_layout *)user_data; + if (layout != active) { + LOG_WRN("Ignoring input event from non-active layout"); + return; + } + + switch (evt->type) { + case INPUT_EV_ABS: + switch (evt->code) { + case INPUT_ABS_X: + pending_input_event.column = evt->value; + break; + case INPUT_ABS_Y: + pending_input_event.row = evt->value; + break; + default: + LOG_WRN("Unknown abs code"); + return; + } + break; + case INPUT_EV_KEY: + switch (evt->code) { + case INPUT_BTN_TOUCH: + pending_input_event.state = + (evt->value ? ZMK_KSCAN_EVENT_STATE_PRESSED : ZMK_KSCAN_EVENT_STATE_RELEASED); + break; + default: + LOG_WRN("Unknown key code"); + return; + } + break; + default: + LOG_WRN("Unknown type"); + return; + } + + if (evt->sync) { + k_msgq_put(&physical_layouts_kscan_msgq, &pending_input_event, K_NO_WAIT); + k_work_submit(&msg_processor.work); + } +} + +#endif + static void zmk_physical_layout_kscan_callback(const struct device *dev, uint32_t row, uint32_t column, bool pressed) { if (dev != active->kscan) { diff --git a/app/tests/matrix-input/kp-press-release/events.patterns b/app/tests/matrix-input/kp-press-release/events.patterns new file mode 100644 index 00000000000..833100f6ac4 --- /dev/null +++ b/app/tests/matrix-input/kp-press-release/events.patterns @@ -0,0 +1 @@ +s/.*hid_listener_keycode_//p \ No newline at end of file diff --git a/app/tests/matrix-input/kp-press-release/keycode_events.snapshot b/app/tests/matrix-input/kp-press-release/keycode_events.snapshot new file mode 100644 index 00000000000..259501ba3d9 --- /dev/null +++ b/app/tests/matrix-input/kp-press-release/keycode_events.snapshot @@ -0,0 +1,2 @@ +pressed: usage_page 0x07 keycode 0x05 implicit_mods 0x00 explicit_mods 0x00 +released: usage_page 0x07 keycode 0x05 implicit_mods 0x00 explicit_mods 0x00 diff --git a/app/tests/matrix-input/kp-press-release/native_sim.conf b/app/tests/matrix-input/kp-press-release/native_sim.conf new file mode 100644 index 00000000000..9ce5b96b3d0 --- /dev/null +++ b/app/tests/matrix-input/kp-press-release/native_sim.conf @@ -0,0 +1 @@ +CONFIG_INPUT=y \ No newline at end of file diff --git a/app/tests/matrix-input/kp-press-release/native_sim.keymap b/app/tests/matrix-input/kp-press-release/native_sim.keymap new file mode 100644 index 00000000000..14e82d13f42 --- /dev/null +++ b/app/tests/matrix-input/kp-press-release/native_sim.keymap @@ -0,0 +1,60 @@ +#include +#include +#include +#include + +/delete-node/ &kscan; + +/ { + physical_layout: physical_layout { + display-name = "Layout"; + compatible = "zmk,physical-layout"; + input = <&mock_matrix_input>; + transform = <&matrix_transform0>; + }; + + chosen { + /delete-property/ zmk,kscan; + + // zmk,matrix-input = &mock_matrix_input; + }; + + matrix_transform0: keymap_transform_0 { + compatible = "zmk,matrix-transform"; + columns = <20>; + rows = <5>; + + + map = < + RC(0,0) RC(0,1) + RC(1,0) RC(1,1) + >; + }; + + mock_matrix_input: mock_matrix_input { + compatible = "zmk,input-mock"; + + event-startup-delay = <100>; + event-period = <2000>; + events + = + , + , + , + , + , + ; + exit-after; + }; + + keymap { + compatible = "zmk,keymap"; + + default_layer { + bindings = < + &kp B &kp C + &kp D &kp E + >; + }; + }; +}; From ea3619628d62ec9718a3d1b9cab2605a16cbb47b Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sat, 29 Mar 2025 00:46:24 -0600 Subject: [PATCH 07/61] FIXME: RANDOM Kconfig hacks --- app/Kconfig | 2 +- app/src/display/Kconfig | 7 ++----- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/app/Kconfig b/app/Kconfig index ddfddecccaf..fc71fa5071d 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -705,7 +705,7 @@ rsource "boards/shields/*/Kconfig.shield" # Duplicated from Kconfig.zephyr osource "$(KCONFIG_BINARY_DIR)/Kconfig.shield.defconfig" -source "$(BOARD_DIR)/Kconfig.defconfig" +# source "$(BOARD_DIR)/Kconfig.defconfig" # This loads board and shield Kconfigs found under zmk-config/config/ osource "$(ZMK_CONFIG)/boards/shields/*/Kconfig.defconfig" diff --git a/app/src/display/Kconfig b/app/src/display/Kconfig index 5d5c81f479e..b132243e337 100644 --- a/app/src/display/Kconfig +++ b/app/src/display/Kconfig @@ -29,11 +29,8 @@ choice LV_TXT_ENC endchoice -config LV_MEM_CUSTOM - default y - - config LV_Z_MEM_POOL_SIZE - default 4096 if ZMK_DISPLAY_STATUS_SCREEN_BUILT_IN +config LV_Z_MEM_POOL_SIZE + default 4096 if ZMK_DISPLAY_STATUS_SCREEN_BUILT_IN choice ZMK_DISPLAY_STATUS_SCREEN prompt "Default status screen for displays" From d783e941cf6229481b32e27582efa5b319427db9 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sat, 29 Mar 2025 01:08:00 -0600 Subject: [PATCH 08/61] fix(pointing): Refactor for changes to input API Pass NULL user_data to input callbacks. --- app/src/activity.c | 6 ++++-- app/src/pointing/input_listener.c | 5 +++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/app/src/activity.c b/app/src/activity.c index b109d46d841..f4dc3562437 100644 --- a/app/src/activity.c +++ b/app/src/activity.c @@ -116,9 +116,11 @@ static void note_activity_work_cb(struct k_work *_work) { note_activity(); } K_WORK_DEFINE(note_activity_work, note_activity_work_cb); -static void activity_input_listener(struct input_event *ev) { k_work_submit(¬e_activity_work); } +static void activity_input_listener(struct input_event *ev, void *user_data) { + k_work_submit(¬e_activity_work); +} -INPUT_CALLBACK_DEFINE(NULL, activity_input_listener); +INPUT_CALLBACK_DEFINE(NULL, activity_input_listener, NULL); #endif diff --git a/app/src/pointing/input_listener.c b/app/src/pointing/input_listener.c index 28f25300032..2c293332fd8 100644 --- a/app/src/pointing/input_listener.c +++ b/app/src/pointing/input_listener.c @@ -391,9 +391,10 @@ static void input_handler(const struct input_listener_config *config, .layer_override_data = {DT_INST_FOREACH_CHILD_SEP_VARGS(n, IL_OVERRIDE_DATA, \ (, ), n)}, \ }; \ - void input_handler_##n(struct input_event *evt) { \ + void input_handler_##n(struct input_event *evt, void *user_data) { \ input_handler(&config_##n, &data_##n, evt); \ - } INPUT_CALLBACK_DEFINE(DEVICE_DT_GET(DT_INST_PHANDLE(n, device)), input_handler_##n);), \ + } INPUT_CALLBACK_DEFINE(DEVICE_DT_GET(DT_INST_PHANDLE(n, device)), input_handler_##n, \ + NULL);), \ ()) DT_INST_FOREACH_STATUS_OKAY(IL_INST) From 9d51c267e16610d3497ffe9c121c0523b74b81c1 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sat, 29 Mar 2025 02:47:30 -0600 Subject: [PATCH 09/61] fix(tests): Fix BLE test to account for Zephyr changes Handle additional read callback invocation once all matching characteristic have been read. --- .../security/read-hid-after-connect-with-auto-sec/snapshot.log | 1 + 1 file changed, 1 insertion(+) diff --git a/app/tests/ble/security/read-hid-after-connect-with-auto-sec/snapshot.log b/app/tests/ble/security/read-hid-after-connect-with-auto-sec/snapshot.log index fa40c20a67b..4c8f2c27fe8 100644 --- a/app/tests/ble/security/read-hid-after-connect-with-auto-sec/snapshot.log +++ b/app/tests/ble/security/read-hid-after-connect-with-auto-sec/snapshot.log @@ -9,3 +9,4 @@ ble_central: pairing_complete: Pairing complete ble_central: read_cb: Read err: 0, length 8 ble_central: read_cb: Read err: 0, length 12 + ble_central: read_cb: Read err: 10, length 0 From f1c475f1aebcfbd7785c52c5704e8f5cf5d3ac5b Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sun, 30 Mar 2025 10:03:26 -0600 Subject: [PATCH 10/61] fix(sensors): Initialize sensor data to 0 before fetching. Be sure we don't get back any uninitialized data by initializing the channel data to 0 before calling into the sensor API. --- app/src/sensors.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/sensors.c b/app/src/sensors.c index 90ea1903940..e1295de8551 100644 --- a/app/src/sensors.c +++ b/app/src/sensors.c @@ -73,7 +73,7 @@ static void trigger_sensor_data_for_position(uint32_t sensor_index) { return; } - struct sensor_value value; + struct sensor_value value = {0}; err = sensor_channel_get(item->dev, item->trigger.chan, &value); if (err) { From f5c47317ac11fd8083354ee1b4c37a23a75af57e Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sun, 30 Mar 2025 10:04:38 -0600 Subject: [PATCH 11/61] refactor(input): Adjust split input to input API changes. Input callbacks now have a user_data parameter, adjust accordingly. --- app/src/pointing/input_split.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/pointing/input_split.c b/app/src/pointing/input_split.c index 615790a09a0..c3bcd4cc21f 100644 --- a/app/src/pointing/input_split.c +++ b/app/src/pointing/input_split.c @@ -54,7 +54,7 @@ int zmk_input_split_report_peripheral_event(uint8_t reg, uint8_t type, uint16_t ({})); \ BUILD_ASSERT(DT_INST_NODE_HAS_PROP(n, device), \ "Peripheral input splits need an `input` property set"); \ - void split_input_handler_##n(struct input_event *evt) { \ + void split_input_handler_##n(struct input_event *evt, void *user_data) { \ for (size_t i = 0; i < ARRAY_SIZE(processors_##n); i++) { \ int ret = zmk_input_processor_handle_event(processors_##n[i].dev, evt, \ processors_##n[i].param1, \ @@ -74,7 +74,7 @@ int zmk_input_split_report_peripheral_event(uint8_t reg, uint8_t type, uint16_t }}}; \ zmk_split_peripheral_report_event(&ev); \ } \ - INPUT_CALLBACK_DEFINE(DEVICE_DT_GET(DT_INST_PHANDLE(n, device)), split_input_handler_##n); + INPUT_CALLBACK_DEFINE(DEVICE_DT_GET(DT_INST_PHANDLE(n, device)), split_input_handler_##n, NULL); #endif From adbe02fd5a5762ff43aeff1aae3248c60840e339 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sun, 30 Mar 2025 10:05:26 -0600 Subject: [PATCH 12/61] chore(bluetooth): Minor cleanup of split BT code after refactor Small fixes and remove commented dead code left after the split refactor. --- app/src/split/bluetooth/central.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/app/src/split/bluetooth/central.c b/app/src/split/bluetooth/central.c index 685deb51cbb..1a9fb0e8a14 100644 --- a/app/src/split/bluetooth/central.c +++ b/app/src/split/bluetooth/central.c @@ -966,10 +966,6 @@ static void split_central_disconnected(struct bt_conn *conn, uint8_t reason) { k_msgq_put(&peripheral_event_msgq, &ev, K_NO_WAIT); k_work_submit(&peripheral_event_work); - // struct zmk_peripheral_battery_state_changed ev = { - // .source = peripheral_slot_index_for_conn(conn), .state_of_charge = 0}; - // k_msgq_put(&peripheral_batt_lvl_msgq, &ev, K_NO_WAIT); - // k_work_submit(&peripheral_batt_lvl_work); #endif // IS_ENABLED(CONFIG_ZMK_SPLIT_BLE_CENTRAL_BATTERY_LEVEL_FETCHING) #if IS_ENABLED(CONFIG_ZMK_INPUT_SPLIT) @@ -1288,8 +1284,7 @@ static int finish_init() { void peripheral_event_work_callback(struct k_work *work) { struct peripheral_event_wrapper ev; while (k_msgq_get(&peripheral_event_msgq, &ev, K_NO_WAIT) == 0) { - LOG_DBG("Trigger key position state change for %d", - ev.event.data.key_position_event.position); + LOG_DBG("Trigger key position state change of type %d", ev.event.type); zmk_split_transport_central_peripheral_event_handler(&bt_central, ev.source, ev.event); } } From 87e88abe65ec59b3e042a132630b1f37a6e2e94a Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sun, 30 Mar 2025 10:06:37 -0600 Subject: [PATCH 13/61] refactor: Fix up BLE tests after Zephyr upgrade. Minor changes to snapshots based on newer Zephyr version. --- app/tests/ble/split/peripheral-input/snapshot.log | 1 + app/tests/ble/split/run-peripheral-behavior/snapshot.log | 2 +- app/tests/ble/split/set-hid-indicators/snapshot.log | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/app/tests/ble/split/peripheral-input/snapshot.log b/app/tests/ble/split/peripheral-input/snapshot.log index eaf0675def3..cf63c996e95 100644 --- a/app/tests/ble/split/peripheral-input/snapshot.log +++ b/app/tests/ble/split/peripheral-input/snapshot.log @@ -19,6 +19,7 @@ profile 0 ble_central: discover_func: [CONSUMER SUBSCRIBED] profile 0 ble_central: discover_func: [ATTRIBUTE] handle 36 profile 0 ble_central: discover_func: [ATTRIBUTE] handle 38 profile 0 ble_central: discover_func: [MOUSE SUBSCRIBED] +profile 0 ble_central: discover_func: [Discover complete] profile 0 ble_central: notify_func: payload profile 0 00 64 00 64 00 00 00 00 00 |.d.d.... . profile 0 ble_central: notify_func: payload diff --git a/app/tests/ble/split/run-peripheral-behavior/snapshot.log b/app/tests/ble/split/run-peripheral-behavior/snapshot.log index ae93d4d8097..2289d9c1f8d 100644 --- a/app/tests/ble/split/run-peripheral-behavior/snapshot.log +++ b/app/tests/ble/split/run-peripheral-behavior/snapshot.log @@ -1,6 +1,6 @@ peripheral 0 bt_hci_core: HW Platform: Nordic Semiconductor (0x0002) peripheral 0 bt_hci_core: HW Variant: nRF52x (0x0002) -peripheral 0 bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 3.5 Build 0 +peripheral 0 bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 4.1 Build 0 peripheral 0 bt_id: No static addresses stored in controller peripheral 0 bt_hci_core: Identity: D1:0B:03:A3:ED:6F (random) peripheral 0 bt_hci_core: HCI: version 5.4 (0x0d) revision 0x0000, manufacturer 0x05f1 diff --git a/app/tests/ble/split/set-hid-indicators/snapshot.log b/app/tests/ble/split/set-hid-indicators/snapshot.log index 3e35cb2b70e..abec1666d18 100644 --- a/app/tests/ble/split/set-hid-indicators/snapshot.log +++ b/app/tests/ble/split/set-hid-indicators/snapshot.log @@ -1,6 +1,6 @@ peripheral 0 bt_hci_core: HW Platform: Nordic Semiconductor (0x0002) peripheral 0 bt_hci_core: HW Variant: nRF52x (0x0002) -peripheral 0 bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 3.5 Build 0 +peripheral 0 bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 4.1 Build 0 peripheral 0 bt_id: No static addresses stored in controller peripheral 0 bt_hci_core: Identity: D1:0B:03:A3:ED:6F (random) peripheral 0 bt_hci_core: HCI: version 5.4 (0x0d) revision 0x0000, manufacturer 0x05f1 From 21d194c8bd541a0692c0d1da125eebd15f839027 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sun, 30 Mar 2025 11:41:45 -0600 Subject: [PATCH 14/61] refactor(boards): Move to upstream xiao_ble board ID. Move to official upstream board definition for the Seeed XIAO BLE. --- app/boards/{seeeduino_xiao_ble.conf => xiao_ble.conf} | 0 app/boards/{seeeduino_xiao_ble.overlay => xiao_ble.overlay} | 0 app/core-coverage.yml | 2 +- 3 files changed, 1 insertion(+), 1 deletion(-) rename app/boards/{seeeduino_xiao_ble.conf => xiao_ble.conf} (100%) rename app/boards/{seeeduino_xiao_ble.overlay => xiao_ble.overlay} (100%) diff --git a/app/boards/seeeduino_xiao_ble.conf b/app/boards/xiao_ble.conf similarity index 100% rename from app/boards/seeeduino_xiao_ble.conf rename to app/boards/xiao_ble.conf diff --git a/app/boards/seeeduino_xiao_ble.overlay b/app/boards/xiao_ble.overlay similarity index 100% rename from app/boards/seeeduino_xiao_ble.overlay rename to app/boards/xiao_ble.overlay diff --git a/app/core-coverage.yml b/app/core-coverage.yml index bc36495a758..6e8c1a3f61a 100644 --- a/app/core-coverage.yml +++ b/app/core-coverage.yml @@ -11,7 +11,7 @@ shield: include: - board: bdn9_rev2 - board: nice60 - - board: seeeduino_xiao_ble + - board: xiao_ble shield: hummingbird - board: nrf52840_m2 shield: m60 From dc51126f79c8f7c096e742a76695a72259b24f6f Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 29 May 2025 15:20:56 -0600 Subject: [PATCH 15/61] chore: Move to Zephyr 4.1.0 branch. --- app/west.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/app/west.yml b/app/west.yml index 6fe15620187..b482610939b 100644 --- a/app/west.yml +++ b/app/west.yml @@ -4,12 +4,12 @@ manifest: url-base: https://github.com/zephyrproject-rtos - name: zmkfirmware url-base: https://github.com/zmkfirmware - - name: ajf58 - url-base: https://github.com/ajf58 + - name: petejohanson + url-base: https://github.com/petejohanson projects: - name: zephyr - remote: zephyrproject-rtos - revision: v4.1.0 + remote: petejohanson + revision: v4.1.0+zmk-fixes clone-depth: 1 import: name-blocklist: From 23686f459b2a87611712acae53e97ca313bd8dad Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 29 May 2025 16:22:59 -0600 Subject: [PATCH 16/61] refactor!(boards): Move nice!nano to HWMv2, and proper revisioning Upgrade the nice!nano board to HWMv2, under the proper nicekeyboards vendor directory, and with proper revisions. Includes a breaking change to default the `2.0.0` version instead of the much older v1 (`1.0.0`). --- app/boards/arm/nice_nano/Kconfig | 13 ------------- app/boards/arm/nice_nano/Kconfig.board | 13 ------------- app/boards/arm/nice_nano/Kconfig.defconfig | 19 ------------------- app/boards/arm/nice_nano/nice_nano_v2.yaml | 15 --------------- app/boards/arm/nice_nano/nice_nano_v2.zmk.yml | 10 ---------- .../nicekeyboards/nice_nano/Kconfig.defconfig | 6 ++++++ .../nicekeyboards/nice_nano/Kconfig.nice_nano | 5 +++++ .../nice_nano/arduino_pro_micro_pins.dtsi | 0 .../nice_nano/board.cmake | 0 app/boards/nicekeyboards/nice_nano/board.yml | 11 +++++++++++ .../nice_nano/nice_nano-pinctrl.dtsi | 0 .../nice_nano/nice_nano.dts} | 6 ++++++ .../nice_nano/nice_nano.yaml | 0 .../nice_nano/nice_nano.zmk.yml | 6 +++++- .../nice_nano/nice_nano_1_0_0.overlay} | 5 +---- .../nice_nano/nice_nano_1_0_0_defconfig} | 4 ---- .../nice_nano/nice_nano_2_0_0.overlay} | 7 ++++--- .../nice_nano/nice_nano_2_0_0_defconfig} | 6 +----- .../nice_nano/pre_dt_board.cmake | 0 19 files changed, 39 insertions(+), 87 deletions(-) delete mode 100644 app/boards/arm/nice_nano/Kconfig delete mode 100644 app/boards/arm/nice_nano/Kconfig.board delete mode 100644 app/boards/arm/nice_nano/Kconfig.defconfig delete mode 100644 app/boards/arm/nice_nano/nice_nano_v2.yaml delete mode 100644 app/boards/arm/nice_nano/nice_nano_v2.zmk.yml create mode 100644 app/boards/nicekeyboards/nice_nano/Kconfig.defconfig create mode 100644 app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano rename app/boards/{arm => nicekeyboards}/nice_nano/arduino_pro_micro_pins.dtsi (100%) rename app/boards/{arm => nicekeyboards}/nice_nano/board.cmake (100%) create mode 100644 app/boards/nicekeyboards/nice_nano/board.yml rename app/boards/{arm => nicekeyboards}/nice_nano/nice_nano-pinctrl.dtsi (100%) rename app/boards/{arm/nice_nano/nice_nano.dtsi => nicekeyboards/nice_nano/nice_nano.dts} (96%) rename app/boards/{arm => nicekeyboards}/nice_nano/nice_nano.yaml (100%) rename app/boards/{arm => nicekeyboards}/nice_nano/nice_nano.zmk.yml (64%) rename app/boards/{arm/nice_nano/nice_nano.dts => nicekeyboards/nice_nano/nice_nano_1_0_0.overlay} (85%) rename app/boards/{arm/nice_nano/nice_nano_defconfig => nicekeyboards/nice_nano/nice_nano_1_0_0_defconfig} (81%) rename app/boards/{arm/nice_nano/nice_nano_v2.dts => nicekeyboards/nice_nano/nice_nano_2_0_0.overlay} (92%) rename app/boards/{arm/nice_nano/nice_nano_v2_defconfig => nicekeyboards/nice_nano/nice_nano_2_0_0_defconfig} (76%) rename app/boards/{arm => nicekeyboards}/nice_nano/pre_dt_board.cmake (100%) diff --git a/app/boards/arm/nice_nano/Kconfig b/app/boards/arm/nice_nano/Kconfig deleted file mode 100644 index 18a0a12e14a..00000000000 --- a/app/boards/arm/nice_nano/Kconfig +++ /dev/null @@ -1,13 +0,0 @@ -# SPDX-License-Identifier: MIT - -config BOARD_ENABLE_DCDC - bool "Enable DCDC mode" - select SOC_DCDC_NRF52X - default y - depends on (BOARD_NICE_NANO || BOARD_NICE_NANO_V2) - -config BOARD_ENABLE_DCDC_HV - bool "High voltage DCDC converter" - select SOC_DCDC_NRF52X_HV - default n - depends on (BOARD_NICE_NANO_V2) diff --git a/app/boards/arm/nice_nano/Kconfig.board b/app/boards/arm/nice_nano/Kconfig.board deleted file mode 100644 index 8dd16512358..00000000000 --- a/app/boards/arm/nice_nano/Kconfig.board +++ /dev/null @@ -1,13 +0,0 @@ -# nice!nano board configuration - -# Copyright (c) 2020 Pete Johanson -# SPDX-License-Identifier: MIT - -config BOARD_NICE_NANO - bool "nice!nano" - depends on SOC_NRF52840_QIAA - -config BOARD_NICE_NANO_V2 - bool "nice!nano v2" - depends on SOC_NRF52840_QIAA - diff --git a/app/boards/arm/nice_nano/Kconfig.defconfig b/app/boards/arm/nice_nano/Kconfig.defconfig deleted file mode 100644 index 63102a571f9..00000000000 --- a/app/boards/arm/nice_nano/Kconfig.defconfig +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright (c) 2021 The ZMK Contributors -# SPDX-License-Identifier: MIT - -if BOARD_NICE_NANO || BOARD_NICE_NANO_V2 - -config BOARD - default "nice_nano" - -if USB_DEVICE_STACK - -config USB_NRFX - default y - -endif # USB_DEVICE_STACK - -config BT_CTLR - default BT - -endif # BOARD_NICE_NANO || BOARD_NICE_NANO_V2 diff --git a/app/boards/arm/nice_nano/nice_nano_v2.yaml b/app/boards/arm/nice_nano/nice_nano_v2.yaml deleted file mode 100644 index d050ce993f9..00000000000 --- a/app/boards/arm/nice_nano/nice_nano_v2.yaml +++ /dev/null @@ -1,15 +0,0 @@ -identifier: nice_nano_v2 -name: nice!nano v2 -type: mcu -arch: arm -toolchain: - - zephyr - - gnuarmemb - - xtools -supported: - - adc - - usb_device - - ble - - ieee802154 - - pwm - - watchdog diff --git a/app/boards/arm/nice_nano/nice_nano_v2.zmk.yml b/app/boards/arm/nice_nano/nice_nano_v2.zmk.yml deleted file mode 100644 index 3d1149a0c25..00000000000 --- a/app/boards/arm/nice_nano/nice_nano_v2.zmk.yml +++ /dev/null @@ -1,10 +0,0 @@ -file_format: "1" -id: nice_nano_v2 -name: nice!nano v2 -type: board -arch: arm -outputs: - - usb - - ble -url: https://nicekeyboards.com/nice-nano -exposes: [pro_micro] diff --git a/app/boards/nicekeyboards/nice_nano/Kconfig.defconfig b/app/boards/nicekeyboards/nice_nano/Kconfig.defconfig new file mode 100644 index 00000000000..780df2659ab --- /dev/null +++ b/app/boards/nicekeyboards/nice_nano/Kconfig.defconfig @@ -0,0 +1,6 @@ +# Copyright (c) 2021 The ZMK Contributors +# SPDX-License-Identifier: MIT + +if BOARD_NICE_NANO + +endif # BOARD_NICE_NANO diff --git a/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano b/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano new file mode 100644 index 00000000000..7f170d1a7a9 --- /dev/null +++ b/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano @@ -0,0 +1,5 @@ +# Copyright (c) 2020 Pete Johanson +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_NICE_NANO + select SOC_NRF52840_QIAA diff --git a/app/boards/arm/nice_nano/arduino_pro_micro_pins.dtsi b/app/boards/nicekeyboards/nice_nano/arduino_pro_micro_pins.dtsi similarity index 100% rename from app/boards/arm/nice_nano/arduino_pro_micro_pins.dtsi rename to app/boards/nicekeyboards/nice_nano/arduino_pro_micro_pins.dtsi diff --git a/app/boards/arm/nice_nano/board.cmake b/app/boards/nicekeyboards/nice_nano/board.cmake similarity index 100% rename from app/boards/arm/nice_nano/board.cmake rename to app/boards/nicekeyboards/nice_nano/board.cmake diff --git a/app/boards/nicekeyboards/nice_nano/board.yml b/app/boards/nicekeyboards/nice_nano/board.yml new file mode 100644 index 00000000000..89171957c9c --- /dev/null +++ b/app/boards/nicekeyboards/nice_nano/board.yml @@ -0,0 +1,11 @@ +board: + name: nice_nano + vendor: nicekeyboards + socs: + - name: nrf52840 + revision: + format: major.minor.patch + default: 2.0.0 + revisions: + - name: 1.0.0 + - name: 2.0.0 diff --git a/app/boards/arm/nice_nano/nice_nano-pinctrl.dtsi b/app/boards/nicekeyboards/nice_nano/nice_nano-pinctrl.dtsi similarity index 100% rename from app/boards/arm/nice_nano/nice_nano-pinctrl.dtsi rename to app/boards/nicekeyboards/nice_nano/nice_nano-pinctrl.dtsi diff --git a/app/boards/arm/nice_nano/nice_nano.dtsi b/app/boards/nicekeyboards/nice_nano/nice_nano.dts similarity index 96% rename from app/boards/arm/nice_nano/nice_nano.dtsi rename to app/boards/nicekeyboards/nice_nano/nice_nano.dts index 839845c8e8c..c01fb66cc9e 100644 --- a/app/boards/arm/nice_nano/nice_nano.dtsi +++ b/app/boards/nicekeyboards/nice_nano/nice_nano.dts @@ -4,6 +4,8 @@ * SPDX-License-Identifier: MIT */ +/dts-v1/; + #include #include "nice_nano-pinctrl.dtsi" #include "arduino_pro_micro_pins.dtsi" @@ -26,6 +28,10 @@ }; }; +®1 { + regulator-initial-mode = ; +}; + &adc { status = "okay"; }; diff --git a/app/boards/arm/nice_nano/nice_nano.yaml b/app/boards/nicekeyboards/nice_nano/nice_nano.yaml similarity index 100% rename from app/boards/arm/nice_nano/nice_nano.yaml rename to app/boards/nicekeyboards/nice_nano/nice_nano.yaml diff --git a/app/boards/arm/nice_nano/nice_nano.zmk.yml b/app/boards/nicekeyboards/nice_nano/nice_nano.zmk.yml similarity index 64% rename from app/boards/arm/nice_nano/nice_nano.zmk.yml rename to app/boards/nicekeyboards/nice_nano/nice_nano.zmk.yml index 1799c0def49..2245a89ee57 100644 --- a/app/boards/arm/nice_nano/nice_nano.zmk.yml +++ b/app/boards/nicekeyboards/nice_nano/nice_nano.zmk.yml @@ -1,6 +1,6 @@ file_format: "1" id: nice_nano -name: nice!nano v1 +name: nice!nano type: board arch: arm outputs: @@ -8,3 +8,7 @@ outputs: - ble url: https://nicekeyboards.com/nice-nano exposes: [pro_micro] +revisions: + - "1.0.0" + - "2.0.0" +default_revision: "2.0.0" diff --git a/app/boards/arm/nice_nano/nice_nano.dts b/app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0.overlay similarity index 85% rename from app/boards/arm/nice_nano/nice_nano.dts rename to app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0.overlay index 06be88e1c51..6c1590bb2a0 100644 --- a/app/boards/arm/nice_nano/nice_nano.dts +++ b/app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0.overlay @@ -1,12 +1,9 @@ /* - * Copyright (c) 2021 The ZMK Contributors + * Copyright (c) 2025 The ZMK Contributors * * SPDX-License-Identifier: MIT */ -/dts-v1/; -#include "nice_nano.dtsi" - / { chosen { zmk,battery = &vbatt; diff --git a/app/boards/arm/nice_nano/nice_nano_defconfig b/app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0_defconfig similarity index 81% rename from app/boards/arm/nice_nano/nice_nano_defconfig rename to app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0_defconfig index 6b7fcab252d..babddaac9b2 100644 --- a/app/boards/arm/nice_nano/nice_nano_defconfig +++ b/app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_NICE_NANO=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/app/boards/arm/nice_nano/nice_nano_v2.dts b/app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0.overlay similarity index 92% rename from app/boards/arm/nice_nano/nice_nano_v2.dts rename to app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0.overlay index c4f7a821c04..34c635ffa97 100644 --- a/app/boards/arm/nice_nano/nice_nano_v2.dts +++ b/app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0.overlay @@ -4,9 +4,6 @@ * SPDX-License-Identifier: MIT */ -/dts-v1/; -#include "nice_nano.dtsi" - / { chosen { zmk,battery = &vbatt; @@ -23,3 +20,7 @@ compatible = "zmk,battery-nrf-vddh"; }; }; + +®0 { + status = "okay"; +}; diff --git a/app/boards/arm/nice_nano/nice_nano_v2_defconfig b/app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0_defconfig similarity index 76% rename from app/boards/arm/nice_nano/nice_nano_v2_defconfig rename to app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0_defconfig index 6b5044e5ef0..03d08c91c04 100644 --- a/app/boards/arm/nice_nano/nice_nano_v2_defconfig +++ b/app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_NICE_NANO_V2=y - # Enable MPU CONFIG_ARM_MPU=y @@ -24,4 +20,4 @@ CONFIG_FLASH_PAGE_LAYOUT=y CONFIG_FLASH_MAP=y CONFIG_ZMK_BLE=y -CONFIG_ZMK_USB=y \ No newline at end of file +CONFIG_ZMK_USB=y diff --git a/app/boards/arm/nice_nano/pre_dt_board.cmake b/app/boards/nicekeyboards/nice_nano/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/nice_nano/pre_dt_board.cmake rename to app/boards/nicekeyboards/nice_nano/pre_dt_board.cmake From d827fbea3770d882faa53224eaaf19e77fd0dcc5 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 29 May 2025 16:25:07 -0600 Subject: [PATCH 17/61] fix: Disable Nordic dt-bindings header checks. Disable the recently added Nordic dt-bindings header checks, which cause issues for our HID related headers. --- app/Kconfig | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/app/Kconfig b/app/Kconfig index fc71fa5071d..6953990b78c 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -653,6 +653,13 @@ endmenu # Advanced endmenu # ZMK +if SOC_FAMILY_NORDIC_NRF + +config NRF_SOC_VALIDATE_HEADERS_DISABLED + default y + +endif + config KERNEL_BIN_NAME default "zmk" From 0221ec20ad27b2edf6a58bed0dacd363c7464c36 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 29 May 2025 16:27:08 -0600 Subject: [PATCH 18/61] fix(studio): Correct `memset` usage. Use the correct memset call to clear our RPC memory. --- app/src/studio/gatt_rpc_transport.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/src/studio/gatt_rpc_transport.c b/app/src/studio/gatt_rpc_transport.c index f0ab3152aa6..3459015a552 100644 --- a/app/src/studio/gatt_rpc_transport.c +++ b/app/src/studio/gatt_rpc_transport.c @@ -194,7 +194,7 @@ static void gatt_tx_notify(struct ring_buf *tx_buf, size_t added, bool msg_done, static struct gatt_write_state tx_state = {}; static void *gatt_tx_user_data(void) { - memset(&tx_state, sizeof(tx_state), 0); + memset(&tx_state, 0, sizeof(tx_state)); return &tx_state; } From 5ce757038e96c0d7925d452805c1fcdb0575b85f Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 29 May 2025 16:32:44 -0600 Subject: [PATCH 19/61] fix: Refactor for new Zephyr PM API Adjustments to our PM code to match Zephyr PM APIs. --- app/src/pm.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/pm.c b/app/src/pm.c index 447eb351c9b..f4389e7eeb4 100644 --- a/app/src/pm.c +++ b/app/src/pm.c @@ -23,7 +23,7 @@ LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL); #ifdef CONFIG_ZMK_PM_DEVICE_SUSPEND_RESUME TYPE_SECTION_START_EXTERN(const struct device *, pm_device_slots); -#if !defined(CONFIG_PM_DEVICE_RUNTIME_EXCLUSIVE) +#if defined(CONFIG_PM_DEVICE_SYSTEM_MANAGED) /* Number of devices successfully suspended. */ static size_t zmk_num_susp; @@ -42,8 +42,8 @@ int zmk_pm_suspend_devices(void) { * Ignore uninitialized devices, busy devices, wake up sources, and * devices with runtime PM enabled. */ - if (!device_is_ready(dev) || pm_device_is_busy(dev) || pm_device_state_is_locked(dev) || - pm_device_wakeup_is_enabled(dev) || pm_device_runtime_is_enabled(dev)) { + if (!device_is_ready(dev) || pm_device_is_busy(dev) || pm_device_wakeup_is_enabled(dev) || + pm_device_runtime_is_enabled(dev)) { continue; } From b68e191ad79a026f2923e97efc54fd2a738df253 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 29 May 2025 16:33:14 -0600 Subject: [PATCH 20/61] refactor(ble): Use correct BT opt for connectable. Adjust for upstream Zephyr BT API changes for advertising options. --- app/src/ble.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/app/src/ble.c b/app/src/ble.c index 2611eee5e49..14fbe9bead6 100644 --- a/app/src/ble.c +++ b/app/src/ble.c @@ -56,8 +56,7 @@ enum advertising_type { #define CURR_ADV(adv) (adv << 4) #define ZMK_ADV_CONN_NAME \ - BT_LE_ADV_PARAM(BT_LE_ADV_OPT_CONNECTABLE | BT_LE_ADV_OPT_ONE_TIME | BT_LE_ADV_OPT_USE_NAME | \ - BT_LE_ADV_OPT_FORCE_NAME_IN_AD, \ + BT_LE_ADV_PARAM(BT_LE_ADV_OPT_CONN | BT_LE_ADV_OPT_USE_NAME | BT_LE_ADV_OPT_FORCE_NAME_IN_AD, \ BT_GAP_ADV_FAST_INT_MIN_2, BT_GAP_ADV_FAST_INT_MAX_2, NULL) static struct zmk_ble_profile profiles[ZMK_BLE_PROFILE_COUNT]; From c3bc4b1b9f8b2b11587d62fcf639b05278be8078 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 29 May 2025 17:15:51 -0600 Subject: [PATCH 21/61] refactor(boards): Move MakerDiary M2 board to HWMv2. Run the HWMv2 script to convert the MakerDiary M2 board. --- app/boards/arm/nrf52840_m2/Kconfig.board | 9 --------- app/boards/{arm => makerdiary}/nrf52840_m2/Kconfig | 0 .../{arm => makerdiary}/nrf52840_m2/Kconfig.defconfig | 3 --- app/boards/makerdiary/nrf52840_m2/Kconfig.nrf52840_m2 | 5 +++++ app/boards/{arm => makerdiary}/nrf52840_m2/board.cmake | 0 app/boards/makerdiary/nrf52840_m2/board.yml | 5 +++++ .../{arm => makerdiary}/nrf52840_m2/nrf52840_m2.dts | 0 .../{arm => makerdiary}/nrf52840_m2/nrf52840_m2.yaml | 0 .../{arm => makerdiary}/nrf52840_m2/nrf52840_m2.zmk.yml | 0 .../nrf52840_m2/nrf52840_m2_defconfig | 4 ---- .../{arm => makerdiary}/nrf52840_m2/pre_dt_board.cmake | 0 11 files changed, 10 insertions(+), 16 deletions(-) delete mode 100644 app/boards/arm/nrf52840_m2/Kconfig.board rename app/boards/{arm => makerdiary}/nrf52840_m2/Kconfig (100%) rename app/boards/{arm => makerdiary}/nrf52840_m2/Kconfig.defconfig (85%) create mode 100644 app/boards/makerdiary/nrf52840_m2/Kconfig.nrf52840_m2 rename app/boards/{arm => makerdiary}/nrf52840_m2/board.cmake (100%) create mode 100644 app/boards/makerdiary/nrf52840_m2/board.yml rename app/boards/{arm => makerdiary}/nrf52840_m2/nrf52840_m2.dts (100%) rename app/boards/{arm => makerdiary}/nrf52840_m2/nrf52840_m2.yaml (100%) rename app/boards/{arm => makerdiary}/nrf52840_m2/nrf52840_m2.zmk.yml (100%) rename app/boards/{arm => makerdiary}/nrf52840_m2/nrf52840_m2_defconfig (81%) rename app/boards/{arm => makerdiary}/nrf52840_m2/pre_dt_board.cmake (100%) diff --git a/app/boards/arm/nrf52840_m2/Kconfig.board b/app/boards/arm/nrf52840_m2/Kconfig.board deleted file mode 100644 index b2927ff2507..00000000000 --- a/app/boards/arm/nrf52840_m2/Kconfig.board +++ /dev/null @@ -1,9 +0,0 @@ -# Maker Diary nrf52840 M.2 board configuration - -# Copyright (c) 2020 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_NRF52840_M2 - bool "nrf52480_m2" - depends on SOC_NRF52840_QIAA - diff --git a/app/boards/arm/nrf52840_m2/Kconfig b/app/boards/makerdiary/nrf52840_m2/Kconfig similarity index 100% rename from app/boards/arm/nrf52840_m2/Kconfig rename to app/boards/makerdiary/nrf52840_m2/Kconfig diff --git a/app/boards/arm/nrf52840_m2/Kconfig.defconfig b/app/boards/makerdiary/nrf52840_m2/Kconfig.defconfig similarity index 85% rename from app/boards/arm/nrf52840_m2/Kconfig.defconfig rename to app/boards/makerdiary/nrf52840_m2/Kconfig.defconfig index a5227fc0a10..a7851c3b148 100644 --- a/app/boards/arm/nrf52840_m2/Kconfig.defconfig +++ b/app/boards/makerdiary/nrf52840_m2/Kconfig.defconfig @@ -3,9 +3,6 @@ if BOARD_NRF52840_M2 -config BOARD - default "nrf52480_m2" - if USB_DEVICE_STACK config USB_NRFX diff --git a/app/boards/makerdiary/nrf52840_m2/Kconfig.nrf52840_m2 b/app/boards/makerdiary/nrf52840_m2/Kconfig.nrf52840_m2 new file mode 100644 index 00000000000..9c34dd8fd00 --- /dev/null +++ b/app/boards/makerdiary/nrf52840_m2/Kconfig.nrf52840_m2 @@ -0,0 +1,5 @@ +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_NRF52840_M2 + select SOC_NRF52840_QIAA diff --git a/app/boards/arm/nrf52840_m2/board.cmake b/app/boards/makerdiary/nrf52840_m2/board.cmake similarity index 100% rename from app/boards/arm/nrf52840_m2/board.cmake rename to app/boards/makerdiary/nrf52840_m2/board.cmake diff --git a/app/boards/makerdiary/nrf52840_m2/board.yml b/app/boards/makerdiary/nrf52840_m2/board.yml new file mode 100644 index 00000000000..a1675e245cf --- /dev/null +++ b/app/boards/makerdiary/nrf52840_m2/board.yml @@ -0,0 +1,5 @@ +board: + name: nrf52840_m2 + vendor: makerdiary + socs: + - name: nrf52840 diff --git a/app/boards/arm/nrf52840_m2/nrf52840_m2.dts b/app/boards/makerdiary/nrf52840_m2/nrf52840_m2.dts similarity index 100% rename from app/boards/arm/nrf52840_m2/nrf52840_m2.dts rename to app/boards/makerdiary/nrf52840_m2/nrf52840_m2.dts diff --git a/app/boards/arm/nrf52840_m2/nrf52840_m2.yaml b/app/boards/makerdiary/nrf52840_m2/nrf52840_m2.yaml similarity index 100% rename from app/boards/arm/nrf52840_m2/nrf52840_m2.yaml rename to app/boards/makerdiary/nrf52840_m2/nrf52840_m2.yaml diff --git a/app/boards/arm/nrf52840_m2/nrf52840_m2.zmk.yml b/app/boards/makerdiary/nrf52840_m2/nrf52840_m2.zmk.yml similarity index 100% rename from app/boards/arm/nrf52840_m2/nrf52840_m2.zmk.yml rename to app/boards/makerdiary/nrf52840_m2/nrf52840_m2.zmk.yml diff --git a/app/boards/arm/nrf52840_m2/nrf52840_m2_defconfig b/app/boards/makerdiary/nrf52840_m2/nrf52840_m2_defconfig similarity index 81% rename from app/boards/arm/nrf52840_m2/nrf52840_m2_defconfig rename to app/boards/makerdiary/nrf52840_m2/nrf52840_m2_defconfig index 93eef9e6ef8..d0b01539e98 100644 --- a/app/boards/arm/nrf52840_m2/nrf52840_m2_defconfig +++ b/app/boards/makerdiary/nrf52840_m2/nrf52840_m2_defconfig @@ -1,10 +1,6 @@ # Copyright (c) 2020 The ZMK Contributors # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_NRF52840_M2=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/app/boards/arm/nrf52840_m2/pre_dt_board.cmake b/app/boards/makerdiary/nrf52840_m2/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/nrf52840_m2/pre_dt_board.cmake rename to app/boards/makerdiary/nrf52840_m2/pre_dt_board.cmake From de67006c24bece36ff70da0a97e5cf2d2742a082 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Fri, 30 May 2025 13:39:22 -0600 Subject: [PATCH 22/61] fix(studio): Correct usage of thread analyzer API Fix up the RPC code that invoke the thread analyzer API to account for API changes. --- app/src/studio/rpc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/src/studio/rpc.c b/app/src/studio/rpc.c index 7b8dd605d29..af56148254d 100644 --- a/app/src/studio/rpc.c +++ b/app/src/studio/rpc.c @@ -217,7 +217,7 @@ static void rpc_main(void) { pb_istream_t stream = pb_istream_for_rx_ring_buf(); zmk_studio_Request req = zmk_studio_Request_init_zero; #if IS_ENABLED(CONFIG_THREAD_ANALYZER) - thread_analyzer_print(); + thread_analyzer_print(0); #endif // IS_ENABLED(CONFIG_THREAD_ANALYZER) bool status = pb_decode(&stream, &zmk_studio_Request_msg, &req); @@ -228,7 +228,7 @@ static void rpc_main(void) { int err = send_response(&resp); #if IS_ENABLED(CONFIG_THREAD_ANALYZER) - thread_analyzer_print(); + thread_analyzer_print(0); #endif // IS_ENABLED(CONFIG_THREAD_ANALYZER) if (err < 0) { LOG_ERR("Failed to send the RPC response %d", err); From 018dff2af82975e8bf8f93086ec7b916defb497d Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Fri, 30 May 2025 14:39:53 -0600 Subject: [PATCH 23/61] chore: Remove nanopb module override. Leverage nanopb version that's used by Zephyr. --- app/west.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/app/west.yml b/app/west.yml index b482610939b..a93749d0d98 100644 --- a/app/west.yml +++ b/app/west.yml @@ -30,10 +30,6 @@ manifest: - openthread - edtt - trusted-firmware-m - - name: nanopb - revision: 8c60555d6277a0360c876bd85d491fc4fb0cd74a - path: modules/lib/nanopb - remote: zmkfirmware - name: zmk-studio-messages revision: 6cb4c283e76209d59c45fbcb218800cd19e9339d path: modules/msgs/zmk-studio-messages From 20498bdde98ff64ae11e6fb1d2939c30e9a04fc7 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 2 Dec 2024 00:24:45 -0700 Subject: [PATCH 24/61] feat(core): mapper for magic bootloader values. To trigger bootloaders that use a magic value in RAM to trigger bootloader mode, add a mapping retained memory driver that maps write/read of boot mode values to a special magic value stored in the actually backing RAM. --- app/CMakeLists.txt | 1 + app/Kconfig | 2 + .../zmk,bootmode-to-magic-mapper.yaml | 9 +++ app/src/boot/CMakeLists.txt | 2 + app/src/boot/Kconfig | 31 +++++++++ app/src/boot/bootmode_to_magic_mapper.c | 63 +++++++++++++++++++ 6 files changed, 108 insertions(+) create mode 100644 app/dts/bindings/retained_mem/zmk,bootmode-to-magic-mapper.yaml create mode 100644 app/src/boot/CMakeLists.txt create mode 100644 app/src/boot/Kconfig create mode 100644 app/src/boot/bootmode_to_magic_mapper.c diff --git a/app/CMakeLists.txt b/app/CMakeLists.txt index 60c502fcd2a..cc38244a4c7 100644 --- a/app/CMakeLists.txt +++ b/app/CMakeLists.txt @@ -23,6 +23,7 @@ zephyr_syscall_header(${APPLICATION_SOURCE_DIR}/include/drivers/ext_power.h) # Add your source file to the "app" target. This must come after # find_package(Zephyr) which defines the target. target_include_directories(app PRIVATE include) +add_subdirectory(src/boot) target_sources(app PRIVATE src/stdlib.c) target_sources(app PRIVATE src/activity.c) target_sources(app PRIVATE src/behavior.c) diff --git a/app/Kconfig b/app/Kconfig index 6953990b78c..b54b1e358a1 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -478,6 +478,8 @@ endmenu menu "Advanced" +rsource "src/boot/Kconfig" + menu "Initialization Priorities" if USB_DEVICE_STACK diff --git a/app/dts/bindings/retained_mem/zmk,bootmode-to-magic-mapper.yaml b/app/dts/bindings/retained_mem/zmk,bootmode-to-magic-mapper.yaml new file mode 100644 index 00000000000..5d8b70c6a97 --- /dev/null +++ b/app/dts/bindings/retained_mem/zmk,bootmode-to-magic-mapper.yaml @@ -0,0 +1,9 @@ +# Copyright (c) 2024 The ZMK Contributors +# SPDX-License-Identifier: MIT + +description: | + Driver for mapping bootloader boot mode to a magic value + +compatible: "zmk,bootmode-to-magic-mapper" + +include: base.yaml diff --git a/app/src/boot/CMakeLists.txt b/app/src/boot/CMakeLists.txt new file mode 100644 index 00000000000..e0d421c19a5 --- /dev/null +++ b/app/src/boot/CMakeLists.txt @@ -0,0 +1,2 @@ + +target_sources_ifdef(CONFIG_ZMK_BOOTMODE_TO_MAGIC_VALUE_MAPPER app PRIVATE bootmode_to_magic_mapper.c) \ No newline at end of file diff --git a/app/src/boot/Kconfig b/app/src/boot/Kconfig new file mode 100644 index 00000000000..c470eeae0bd --- /dev/null +++ b/app/src/boot/Kconfig @@ -0,0 +1,31 @@ + +config ZMK_BOOTMODE_TO_MAGIC_VALUE_MAPPER + bool "Magic Value Mapper" + default y + depends on DT_HAS_ZMK_BOOTMODE_TO_MAGIC_MAPPER_ENABLED + +if ZMK_BOOTMODE_TO_MAGIC_VALUE_MAPPER + +choice ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE + prompt "Magic Value Bootloader Type" + +config ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_UNKNOWN + bool "Unknown" + +config ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_TINYUF2 + bool "tinyuf2" + +config ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_ADAFRUIT_BOSSA + bool "Adafruit BOSSA" + +config ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_ADAFRUIT_NRF52 + bool "Adafruit nRF52" + +endchoice + +config ZMK_BOOTMODE_BOOTLOADER_MAGIC_VALUE + hex + default 0xf01669ef if ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_TINYUF2 || ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_ADAFRUIT_BOSSA || BOOTLOADER_BOSSA_ADAFRUIT_UF2 + default 0x57 if ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_ADAFRUIT_NRF52 + +endif diff --git a/app/src/boot/bootmode_to_magic_mapper.c b/app/src/boot/bootmode_to_magic_mapper.c new file mode 100644 index 00000000000..f2b672bfa16 --- /dev/null +++ b/app/src/boot/bootmode_to_magic_mapper.c @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2024 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +#define DT_DRV_COMPAT zmk_bootmode_to_magic_mapper + +#include +#include +#include +#include + +static const struct device *magic_dev = DEVICE_DT_GET(DT_CHOSEN(zmk_magic_boot_mode)); +#define MAGIC_DEST_ONE_BYTE (DT_REG_SIZE(DT_CHOSEN(zmk_magic_boot_mode)) == 1) + +#if MAGIC_DEST_ONE_BYTE +typedef uint8_t magic_val_t; +#else +typedef uint32_t magic_val_t; +#endif + +static const magic_val_t bootloader_magic_value = CONFIG_ZMK_BOOTMODE_BOOTLOADER_MAGIC_VALUE; + +static ssize_t btmm_ram_size(const struct device *dev) { return (ssize_t)1; } + +static int btmm_ram_read(const struct device *dev, off_t offset, uint8_t *buffer, size_t size) { + if (size != 1) { + return -ENOTSUP; + } + + magic_val_t val; + int ret = retention_read(magic_dev, 0, (uint8_t *)&val, sizeof(val)); + if (ret < 0) { + return ret; + } + + *buffer = (val == bootloader_magic_value) ? BOOT_MODE_TYPE_BOOTLOADER : BOOT_MODE_TYPE_NORMAL; + + return 0; +} + +static int btmm_ram_write(const struct device *dev, off_t offset, const uint8_t *buffer, + size_t size) { + if (size != 1) { + return -ENOTSUP; + } + + magic_val_t val = (*buffer == BOOT_MODE_TYPE_BOOTLOADER) ? bootloader_magic_value : 0; + + return retention_write(magic_dev, 0, (uint8_t *)&val, sizeof(val)); +} + +static int btmm_ram_clear(const struct device *dev) { return retention_clear(magic_dev); } + +static const struct retained_mem_driver_api btmm_api = { + .size = btmm_ram_size, + .read = btmm_ram_read, + .write = btmm_ram_write, + .clear = btmm_ram_clear, +}; + +DEVICE_DT_INST_DEFINE(0, NULL, NULL, NULL, NULL, POST_KERNEL, 0, &btmm_api); From 4ccffecec9b3d58c7ccaf70ff9a09145a140518a Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 2 Dec 2024 00:27:48 -0700 Subject: [PATCH 25/61] feat(behaviors): Add retention boot mode to reset. Support new generic Zephyr retention boot mode API in the reset behavior. --- app/dts/behaviors/reset.dtsi | 1 + .../behaviors/zmk,behavior-reset.yaml | 2 ++ app/src/behaviors/behavior_reset.c | 28 +++++++++++++++++-- 3 files changed, 29 insertions(+), 2 deletions(-) diff --git a/app/dts/behaviors/reset.dtsi b/app/dts/behaviors/reset.dtsi index 2aa41d7d6e8..1b29f9d19aa 100644 --- a/app/dts/behaviors/reset.dtsi +++ b/app/dts/behaviors/reset.dtsi @@ -19,6 +19,7 @@ bootloader: bootload { compatible = "zmk,behavior-reset"; type = ; + bootloader; #binding-cells = <0>; display-name = "Bootloader"; }; diff --git a/app/dts/bindings/behaviors/zmk,behavior-reset.yaml b/app/dts/bindings/behaviors/zmk,behavior-reset.yaml index 9eb7aa6a3c4..aeb9450eea9 100644 --- a/app/dts/bindings/behaviors/zmk,behavior-reset.yaml +++ b/app/dts/bindings/behaviors/zmk,behavior-reset.yaml @@ -11,3 +11,5 @@ properties: type: type: int default: 0 + bootloader: + type: boolean diff --git a/app/src/behaviors/behavior_reset.c b/app/src/behaviors/behavior_reset.c index 61df15afdce..67f33aaedb2 100644 --- a/app/src/behaviors/behavior_reset.c +++ b/app/src/behaviors/behavior_reset.c @@ -14,11 +14,21 @@ #include +#if IS_ENABLED(CONFIG_RETENTION_BOOT_MODE) + +#include + +#endif /* IS_ENABLED(CONFIG_RETENTION_BOOT_MODE) */ + LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL); #if DT_HAS_COMPAT_STATUS_OKAY(DT_DRV_COMPAT) struct behavior_reset_config { +#if IS_ENABLED(CONFIG_RETENTION_BOOT_MODE) + enum BOOT_MODE_TYPES boot_mode; +#else int type; +#endif /* IS_ENABLED(CONFIG_RETENTION_BOOT_MODE) */ }; static int on_keymap_binding_pressed(struct zmk_behavior_binding *binding, @@ -26,10 +36,20 @@ static int on_keymap_binding_pressed(struct zmk_behavior_binding *binding, const struct device *dev = zmk_behavior_get_binding(binding->behavior_dev); const struct behavior_reset_config *cfg = dev->config; - // TODO: Correct magic code for going into DFU? +#if IS_ENABLED(CONFIG_RETENTION_BOOT_MODE) + int ret = bootmode_set(cfg->boot_mode); + if (ret < 0) { + LOG_ERR("Failed to set the bootloader mode (%d)", ret); + return ZMK_BEHAVIOR_OPAQUE; + } + + sys_reboot(SYS_REBOOT_WARM); +#else // See // https://github.com/adafruit/Adafruit_nRF52_Bootloader/blob/d6b28e66053eea467166f44875e3c7ec741cb471/src/main.c#L107 sys_reboot(cfg->type); +#endif /* IS_ENABLED(CONFIG_RETENTION_BOOT_MODE) */ + return ZMK_BEHAVIOR_OPAQUE; } @@ -43,7 +63,11 @@ static const struct behavior_driver_api behavior_reset_driver_api = { #define RST_INST(n) \ static const struct behavior_reset_config behavior_reset_config_##n = { \ - .type = DT_INST_PROP(n, type)}; \ + COND_CODE_1( \ + IS_ENABLED(CONFIG_RETENTION_BOOT_MODE), \ + (DT_INST_PROP(n, bootloader) ? BOOT_MODE_TYPE_BOOTLOADER : BOOT_MODE_TYPE_NORMAL), \ + (.type = DT_INST_PROP(n, type))), \ + }; \ BEHAVIOR_DT_INST_DEFINE(n, NULL, NULL, NULL, &behavior_reset_config_##n, POST_KERNEL, \ CONFIG_KERNEL_INIT_PRIORITY_DEFAULT, &behavior_reset_driver_api); From f13f462a5bd12606369d42a92989e78636768336 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sun, 23 Mar 2025 23:32:27 -0600 Subject: [PATCH 26/61] feat: Add double tap to enter bootloader functionality Add ability to enter the bootloader if double tapping reset within the specified window. --- app/src/boot/CMakeLists.txt | 3 ++- app/src/boot/Kconfig | 15 +++++++++++++++ app/src/boot/dbl_tap_bootloader.c | 16 ++++++++++++++++ 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 app/src/boot/dbl_tap_bootloader.c diff --git a/app/src/boot/CMakeLists.txt b/app/src/boot/CMakeLists.txt index e0d421c19a5..6e75945a7e9 100644 --- a/app/src/boot/CMakeLists.txt +++ b/app/src/boot/CMakeLists.txt @@ -1,2 +1,3 @@ -target_sources_ifdef(CONFIG_ZMK_BOOTMODE_TO_MAGIC_VALUE_MAPPER app PRIVATE bootmode_to_magic_mapper.c) \ No newline at end of file +target_sources_ifdef(CONFIG_ZMK_BOOTMODE_TO_MAGIC_VALUE_MAPPER app PRIVATE bootmode_to_magic_mapper.c) +target_sources_ifdef(CONFIG_ZMK_DBL_TAP_BOOTLOADER app PRIVATE dbl_tap_bootloader.c) \ No newline at end of file diff --git a/app/src/boot/Kconfig b/app/src/boot/Kconfig index c470eeae0bd..0651243861f 100644 --- a/app/src/boot/Kconfig +++ b/app/src/boot/Kconfig @@ -1,4 +1,19 @@ +config ZMK_DBL_TAP_BOOTLOADER + bool "Double Tap To Enter Bootloader" + default y if !SOC_SERIES_NRF52X + depends on RETENTION_BOOT_MODE + select RETENTION_MUTEX_FORCE_DISABLE + select RETAINED_MEM_MUTEX_FORCE_DISABLE + +if ZMK_DBL_TAP_BOOTLOADER + +config ZMK_DBL_TAP_BOOTLOADER_TIMEOUT + int "Double Tap Timeout (ms)" + default 500 + +endif + config ZMK_BOOTMODE_TO_MAGIC_VALUE_MAPPER bool "Magic Value Mapper" default y diff --git a/app/src/boot/dbl_tap_bootloader.c b/app/src/boot/dbl_tap_bootloader.c new file mode 100644 index 00000000000..404c3ece872 --- /dev/null +++ b/app/src/boot/dbl_tap_bootloader.c @@ -0,0 +1,16 @@ +#include +#include +#include +#include + +static int dbl_tap_boot_mode_init(void) { + bootmode_set(BOOT_MODE_TYPE_BOOTLOADER); + + k_busy_wait(CONFIG_ZMK_DBL_TAP_BOOTLOADER_TIMEOUT * 1000); + + bootmode_clear(); + + return 0; +} + +SYS_INIT(dbl_tap_boot_mode_init, PRE_KERNEL_2, 20); \ No newline at end of file From c1a146cc89bc9fcb9600e4f86a5cd32817d18866 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sun, 1 Jun 2025 17:26:23 -0600 Subject: [PATCH 27/61] FIXME: Move to 4.1-branch container. --- .devcontainer/Dockerfile | 2 +- .github/workflows/ble-test.yml | 2 +- .github/workflows/build.yml | 2 +- .github/workflows/hardware-metadata-validation.yml | 2 +- .github/workflows/test.yml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index 5e123bd59e4..7e81e779d81 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -1,4 +1,4 @@ -FROM docker.io/zmkfirmware/zmk-dev-arm:3.5 +FROM docker.io/zmkfirmware/zmk-dev-arm:4.1-branch COPY .bashrc tmp RUN mv /tmp/.bashrc ~/.bashrc diff --git a/.github/workflows/ble-test.yml b/.github/workflows/ble-test.yml index 7d76fb9e9d3..68065c02a1d 100644 --- a/.github/workflows/ble-test.yml +++ b/.github/workflows/ble-test.yml @@ -35,7 +35,7 @@ jobs: test: ${{ fromJSON(needs.collect-tests.outputs.test-dirs) }} runs-on: ubuntu-latest container: - image: docker.io/zmkfirmware/zmk-build-arm:3.5 + image: docker.io/zmkfirmware/zmk-build-arm:4.1-branch steps: - name: Checkout uses: actions/checkout@v4 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3307b006aa9..7c362f038ca 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -23,7 +23,7 @@ jobs: if: ${{ always() }} runs-on: ubuntu-latest container: - image: docker.io/zmkfirmware/zmk-build-arm:3.5 + image: docker.io/zmkfirmware/zmk-build-arm:4.1-branch needs: compile-matrix strategy: matrix: diff --git a/.github/workflows/hardware-metadata-validation.yml b/.github/workflows/hardware-metadata-validation.yml index 3e3faa0dfc3..1a7368bb488 100644 --- a/.github/workflows/hardware-metadata-validation.yml +++ b/.github/workflows/hardware-metadata-validation.yml @@ -18,7 +18,7 @@ jobs: validate-metadata: runs-on: ubuntu-latest container: - image: docker.io/zmkfirmware/zmk-dev-arm:3.5 + image: docker.io/zmkfirmware/zmk-dev-arm:4.1-branch steps: - uses: actions/checkout@v4 - name: Install dependencies diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 93321760ef8..edfc21d1d7d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -37,7 +37,7 @@ jobs: test: ${{ fromJSON(needs.collect-tests.outputs.test-dirs) }} runs-on: ubuntu-latest container: - image: docker.io/zmkfirmware/zmk-build-arm:3.5 + image: docker.io/zmkfirmware/zmk-build-arm:4.1-branch steps: - name: Checkout uses: actions/checkout@v4 From 3af124b93062fbc71d33036774c8b50c1c32ce4a Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 2 Jun 2025 01:05:11 -0600 Subject: [PATCH 28/61] refactor(boards): Move nrfMicro to HWMv2 Refactor nRFMicro to HWMv2, using proper SoC, revisions, and variants (for flipped). Also move to devicetree setup of DCDC/HV DCDC. --- app/boards/arm/nrfmicro/Kconfig | 10 -- app/boards/arm/nrfmicro/Kconfig.board | 20 ---- app/boards/arm/nrfmicro/nrfmicro_11.dts | 110 ------------------ .../{arm => joric}/nrfmicro/CMakeLists.txt | 0 app/boards/joric/nrfmicro/Kconfig | 4 + .../{arm => joric}/nrfmicro/Kconfig.defconfig | 0 app/boards/joric/nrfmicro/Kconfig.nrfmicro | 9 ++ .../nrfmicro/arduino_pro_micro_pins.dtsi | 0 .../arduino_pro_micro_pins_52833.dtsi | 0 .../arduino_pro_micro_pins_flipped.dtsi | 0 .../{arm => joric}/nrfmicro/board.cmake | 0 app/boards/joric/nrfmicro/board.yml | 14 +++ .../nrfmicro/nrfmicro-flipped-pinctrl.dtsi | 0 .../nrfmicro/nrfmicro-pinctrl.dtsi | 0 .../{arm => joric}/nrfmicro/nrfmicro_11.yaml | 0 .../nrfmicro/nrfmicro_11.zmk.yml | 0 .../nrfmicro/nrfmicro_11_flipped.yaml | 0 .../{arm => joric}/nrfmicro/nrfmicro_13.yaml | 0 .../nrfmicro/nrfmicro_13_52833.yaml | 0 .../nrfmicro/nrfmicro_nrf52833.dts} | 4 + .../nrfmicro/nrfmicro_nrf52833.zmk.yml} | 7 +- .../nrfmicro/nrfmicro_nrf52833_1_3_0.overlay | 6 + .../nrfmicro_nrf52833_1_3_0_defconfig} | 6 +- .../nrfmicro/nrfmicro_nrf52840.dts} | 4 + .../nrfmicro/nrfmicro_nrf52840.zmk.yml} | 8 +- .../nrfmicro/nrfmicro_nrf52840_1_1_0.overlay | 15 +++ .../nrfmicro_nrf52840_1_1_0_defconfig} | 3 +- .../nrfmicro/nrfmicro_nrf52840_1_3_0.overlay | 30 +++++ .../nrfmicro_nrf52840_1_3_0_defconfig} | 6 +- .../nrfmicro/nrfmicro_nrf52840_flipped.dts} | 4 + .../nrfmicro_nrf52840_flipped.zmk.yml} | 7 +- .../nrfmicro_nrf52840_flipped_1_1_0.overlay | 6 + ...nrfmicro_nrf52840_flipped_1_1_0_defconfig} | 6 +- app/boards/{arm => joric}/nrfmicro/pinmux.c | 0 .../nrfmicro/pre_dt_board.cmake | 0 35 files changed, 117 insertions(+), 162 deletions(-) delete mode 100644 app/boards/arm/nrfmicro/Kconfig delete mode 100644 app/boards/arm/nrfmicro/Kconfig.board delete mode 100644 app/boards/arm/nrfmicro/nrfmicro_11.dts rename app/boards/{arm => joric}/nrfmicro/CMakeLists.txt (100%) create mode 100644 app/boards/joric/nrfmicro/Kconfig rename app/boards/{arm => joric}/nrfmicro/Kconfig.defconfig (100%) create mode 100644 app/boards/joric/nrfmicro/Kconfig.nrfmicro rename app/boards/{arm => joric}/nrfmicro/arduino_pro_micro_pins.dtsi (100%) rename app/boards/{arm => joric}/nrfmicro/arduino_pro_micro_pins_52833.dtsi (100%) rename app/boards/{arm => joric}/nrfmicro/arduino_pro_micro_pins_flipped.dtsi (100%) rename app/boards/{arm => joric}/nrfmicro/board.cmake (100%) create mode 100644 app/boards/joric/nrfmicro/board.yml rename app/boards/{arm => joric}/nrfmicro/nrfmicro-flipped-pinctrl.dtsi (100%) rename app/boards/{arm => joric}/nrfmicro/nrfmicro-pinctrl.dtsi (100%) rename app/boards/{arm => joric}/nrfmicro/nrfmicro_11.yaml (100%) rename app/boards/{arm => joric}/nrfmicro/nrfmicro_11.zmk.yml (100%) rename app/boards/{arm => joric}/nrfmicro/nrfmicro_11_flipped.yaml (100%) rename app/boards/{arm => joric}/nrfmicro/nrfmicro_13.yaml (100%) rename app/boards/{arm => joric}/nrfmicro/nrfmicro_13_52833.yaml (100%) rename app/boards/{arm/nrfmicro/nrfmicro_13_52833.dts => joric/nrfmicro/nrfmicro_nrf52833.dts} (97%) rename app/boards/{arm/nrfmicro/nrfmicro_11_flipped.zmk.yml => joric/nrfmicro/nrfmicro_nrf52833.zmk.yml} (56%) create mode 100644 app/boards/joric/nrfmicro/nrfmicro_nrf52833_1_3_0.overlay rename app/boards/{arm/nrfmicro/nrfmicro_13_52833_defconfig => joric/nrfmicro/nrfmicro_nrf52833_1_3_0_defconfig} (78%) rename app/boards/{arm/nrfmicro/nrfmicro_13.dts => joric/nrfmicro/nrfmicro_nrf52840.dts} (97%) rename app/boards/{arm/nrfmicro/nrfmicro_13.zmk.yml => joric/nrfmicro/nrfmicro_nrf52840.zmk.yml} (53%) create mode 100644 app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_1_0.overlay rename app/boards/{arm/nrfmicro/nrfmicro_11_defconfig => joric/nrfmicro/nrfmicro_nrf52840_1_1_0_defconfig} (90%) create mode 100644 app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_3_0.overlay rename app/boards/{arm/nrfmicro/nrfmicro_13_defconfig => joric/nrfmicro/nrfmicro_nrf52840_1_3_0_defconfig} (79%) rename app/boards/{arm/nrfmicro/nrfmicro_11_flipped.dts => joric/nrfmicro/nrfmicro_nrf52840_flipped.dts} (97%) rename app/boards/{arm/nrfmicro/nrfmicro_13_52833.zmk.yml => joric/nrfmicro/nrfmicro_nrf52840_flipped.zmk.yml} (52%) create mode 100644 app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped_1_1_0.overlay rename app/boards/{arm/nrfmicro/nrfmicro_11_flipped_defconfig => joric/nrfmicro/nrfmicro_nrf52840_flipped_1_1_0_defconfig} (78%) rename app/boards/{arm => joric}/nrfmicro/pinmux.c (100%) rename app/boards/{arm => joric}/nrfmicro/pre_dt_board.cmake (100%) diff --git a/app/boards/arm/nrfmicro/Kconfig b/app/boards/arm/nrfmicro/Kconfig deleted file mode 100644 index 233ddbad460..00000000000 --- a/app/boards/arm/nrfmicro/Kconfig +++ /dev/null @@ -1,10 +0,0 @@ -config BOARD_ENABLE_DCDC - bool "Enable DCDC mode" - select SOC_DCDC_NRF52X - default y - depends on (BOARD_NRFMICRO_11 || BOARD_NRFMICRO_11_FLIPPED || BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833) - -config BOARD_NRFMICRO_CHARGER - bool "Enable battery charger" - default y - depends on (BOARD_NRFMICRO_13 || BOARD_NRFMICRO_13_52833) diff --git a/app/boards/arm/nrfmicro/Kconfig.board b/app/boards/arm/nrfmicro/Kconfig.board deleted file mode 100644 index 441de5cff7e..00000000000 --- a/app/boards/arm/nrfmicro/Kconfig.board +++ /dev/null @@ -1,20 +0,0 @@ -# nrfmicro board configuration - -# Copyright (c) 2020 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_NRFMICRO_11 - bool "nrfmicro_11" - depends on SOC_NRF52840_QIAA - -config BOARD_NRFMICRO_11_FLIPPED - bool "nrfmicro_11_flipped" - depends on SOC_NRF52840_QIAA - -config BOARD_NRFMICRO_13 - bool "nrfmicro_13" - depends on SOC_NRF52840_QIAA - -config BOARD_NRFMICRO_13_52833 - bool "nrfmicro_13_52833" - depends on SOC_NRF52833_QIAA diff --git a/app/boards/arm/nrfmicro/nrfmicro_11.dts b/app/boards/arm/nrfmicro/nrfmicro_11.dts deleted file mode 100644 index b80ed4c62c1..00000000000 --- a/app/boards/arm/nrfmicro/nrfmicro_11.dts +++ /dev/null @@ -1,110 +0,0 @@ -/* - * Copyright (c) 2020 The ZMK Contributors - * - * SPDX-License-Identifier: MIT - */ - -/dts-v1/; -#include -#include "arduino_pro_micro_pins.dtsi" -#include "nrfmicro-pinctrl.dtsi" - -/ { - model = "nrfmicro"; - compatible = "joric,nrfmicro"; - - chosen { - zephyr,code-partition = &code_partition; - zephyr,sram = &sram0; - zephyr,flash = &flash0; - }; - - leds { - compatible = "gpio-leds"; - blue_led: led_0 { - gpios = <&gpio1 10 GPIO_ACTIVE_HIGH>; - }; - }; - - // Node name must match original "EXT_POWER" label to preserve user settings. - EXT_POWER { - compatible = "zmk,ext-power-generic"; - control-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>; - init-delay-ms = <50>; - }; -}; - -&gpiote { - status = "okay"; -}; - -&gpio0 { - status = "okay"; -}; - -&gpio1 { - status = "okay"; -}; - -&i2c0 { - compatible = "nordic,nrf-twi"; - pinctrl-0 = <&i2c0_default>; - pinctrl-1 = <&i2c0_sleep>; - pinctrl-names = "default", "sleep"; -}; - -&spi1 { - compatible = "nordic,nrf-spim"; - pinctrl-0 = <&spi1_default>; - pinctrl-1 = <&spi1_sleep>; - pinctrl-names = "default", "sleep"; -}; - -&uart0 { - compatible = "nordic,nrf-uarte"; - current-speed = <115200>; - pinctrl-0 = <&uart0_default>; - pinctrl-1 = <&uart0_sleep>; - pinctrl-names = "default", "sleep"; -}; - -zephyr_udc0: &usbd { - status = "okay"; -}; - - -&flash0 { - /* - * For more information, see: - * http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html - */ - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - sd_partition: partition@0 { - reg = <0x00000000 0x00026000>; - }; - code_partition: partition@26000 { - reg = <0x00026000 0x000c6000>; - }; - - /* - * The flash starting at 0x000ec000 and ending at - * 0x000f3fff is reserved for use by the application. - */ - - /* - * Storage partition will be used by FCB/LittleFS/NVS - * if enabled. - */ - storage_partition: partition@ec000 { - reg = <0x000ec000 0x00008000>; - }; - - boot_partition: partition@f4000 { - reg = <0x000f4000 0x0000c000>; - }; - }; -}; diff --git a/app/boards/arm/nrfmicro/CMakeLists.txt b/app/boards/joric/nrfmicro/CMakeLists.txt similarity index 100% rename from app/boards/arm/nrfmicro/CMakeLists.txt rename to app/boards/joric/nrfmicro/CMakeLists.txt diff --git a/app/boards/joric/nrfmicro/Kconfig b/app/boards/joric/nrfmicro/Kconfig new file mode 100644 index 00000000000..f8e10e63aba --- /dev/null +++ b/app/boards/joric/nrfmicro/Kconfig @@ -0,0 +1,4 @@ +config BOARD_NRFMICRO_CHARGER + bool "Enable battery charger" + default y + depends on (BOARD_NRFMICRO && BOARD_REVISION = "1.3.0") diff --git a/app/boards/arm/nrfmicro/Kconfig.defconfig b/app/boards/joric/nrfmicro/Kconfig.defconfig similarity index 100% rename from app/boards/arm/nrfmicro/Kconfig.defconfig rename to app/boards/joric/nrfmicro/Kconfig.defconfig diff --git a/app/boards/joric/nrfmicro/Kconfig.nrfmicro b/app/boards/joric/nrfmicro/Kconfig.nrfmicro new file mode 100644 index 00000000000..f4b37ad9d4a --- /dev/null +++ b/app/boards/joric/nrfmicro/Kconfig.nrfmicro @@ -0,0 +1,9 @@ +# nrfmicro board configuration + +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config BOARD_NRFMICRO + select SOC_NRF52840_QIAA if BOARD_NRFMICRO_NRF52840 + select SOC_NRF52840_QIAA if BOARD_NRFMICRO_NRF52840_FLIPPED + select SOC_NRF52833_QIAA if BOARD_NRFMICRO_NRF52833 diff --git a/app/boards/arm/nrfmicro/arduino_pro_micro_pins.dtsi b/app/boards/joric/nrfmicro/arduino_pro_micro_pins.dtsi similarity index 100% rename from app/boards/arm/nrfmicro/arduino_pro_micro_pins.dtsi rename to app/boards/joric/nrfmicro/arduino_pro_micro_pins.dtsi diff --git a/app/boards/arm/nrfmicro/arduino_pro_micro_pins_52833.dtsi b/app/boards/joric/nrfmicro/arduino_pro_micro_pins_52833.dtsi similarity index 100% rename from app/boards/arm/nrfmicro/arduino_pro_micro_pins_52833.dtsi rename to app/boards/joric/nrfmicro/arduino_pro_micro_pins_52833.dtsi diff --git a/app/boards/arm/nrfmicro/arduino_pro_micro_pins_flipped.dtsi b/app/boards/joric/nrfmicro/arduino_pro_micro_pins_flipped.dtsi similarity index 100% rename from app/boards/arm/nrfmicro/arduino_pro_micro_pins_flipped.dtsi rename to app/boards/joric/nrfmicro/arduino_pro_micro_pins_flipped.dtsi diff --git a/app/boards/arm/nrfmicro/board.cmake b/app/boards/joric/nrfmicro/board.cmake similarity index 100% rename from app/boards/arm/nrfmicro/board.cmake rename to app/boards/joric/nrfmicro/board.cmake diff --git a/app/boards/joric/nrfmicro/board.yml b/app/boards/joric/nrfmicro/board.yml new file mode 100644 index 00000000000..1cfcc492fc4 --- /dev/null +++ b/app/boards/joric/nrfmicro/board.yml @@ -0,0 +1,14 @@ +board: + name: nrfmicro + vendor: joric + socs: + - name: nrf52840 + variants: + - name: flipped + - name: nrf52833 + revision: + format: major.minor.patch + default: 1.3.0 + revisions: + - name: 1.3.0 + - name: 1.1.0 diff --git a/app/boards/arm/nrfmicro/nrfmicro-flipped-pinctrl.dtsi b/app/boards/joric/nrfmicro/nrfmicro-flipped-pinctrl.dtsi similarity index 100% rename from app/boards/arm/nrfmicro/nrfmicro-flipped-pinctrl.dtsi rename to app/boards/joric/nrfmicro/nrfmicro-flipped-pinctrl.dtsi diff --git a/app/boards/arm/nrfmicro/nrfmicro-pinctrl.dtsi b/app/boards/joric/nrfmicro/nrfmicro-pinctrl.dtsi similarity index 100% rename from app/boards/arm/nrfmicro/nrfmicro-pinctrl.dtsi rename to app/boards/joric/nrfmicro/nrfmicro-pinctrl.dtsi diff --git a/app/boards/arm/nrfmicro/nrfmicro_11.yaml b/app/boards/joric/nrfmicro/nrfmicro_11.yaml similarity index 100% rename from app/boards/arm/nrfmicro/nrfmicro_11.yaml rename to app/boards/joric/nrfmicro/nrfmicro_11.yaml diff --git a/app/boards/arm/nrfmicro/nrfmicro_11.zmk.yml b/app/boards/joric/nrfmicro/nrfmicro_11.zmk.yml similarity index 100% rename from app/boards/arm/nrfmicro/nrfmicro_11.zmk.yml rename to app/boards/joric/nrfmicro/nrfmicro_11.zmk.yml diff --git a/app/boards/arm/nrfmicro/nrfmicro_11_flipped.yaml b/app/boards/joric/nrfmicro/nrfmicro_11_flipped.yaml similarity index 100% rename from app/boards/arm/nrfmicro/nrfmicro_11_flipped.yaml rename to app/boards/joric/nrfmicro/nrfmicro_11_flipped.yaml diff --git a/app/boards/arm/nrfmicro/nrfmicro_13.yaml b/app/boards/joric/nrfmicro/nrfmicro_13.yaml similarity index 100% rename from app/boards/arm/nrfmicro/nrfmicro_13.yaml rename to app/boards/joric/nrfmicro/nrfmicro_13.yaml diff --git a/app/boards/arm/nrfmicro/nrfmicro_13_52833.yaml b/app/boards/joric/nrfmicro/nrfmicro_13_52833.yaml similarity index 100% rename from app/boards/arm/nrfmicro/nrfmicro_13_52833.yaml rename to app/boards/joric/nrfmicro/nrfmicro_13_52833.yaml diff --git a/app/boards/arm/nrfmicro/nrfmicro_13_52833.dts b/app/boards/joric/nrfmicro/nrfmicro_nrf52833.dts similarity index 97% rename from app/boards/arm/nrfmicro/nrfmicro_13_52833.dts rename to app/boards/joric/nrfmicro/nrfmicro_nrf52833.dts index 866276bbec4..5099701f8c9 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_13_52833.dts +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52833.dts @@ -42,6 +42,10 @@ }; }; +®1 { + regulator-initial-mode = ; +}; + &adc { status = "okay"; }; diff --git a/app/boards/arm/nrfmicro/nrfmicro_11_flipped.zmk.yml b/app/boards/joric/nrfmicro/nrfmicro_nrf52833.zmk.yml similarity index 56% rename from app/boards/arm/nrfmicro/nrfmicro_11_flipped.zmk.yml rename to app/boards/joric/nrfmicro/nrfmicro_nrf52833.zmk.yml index b63ace2d652..ee6a162f13b 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_11_flipped.zmk.yml +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52833.zmk.yml @@ -1,6 +1,6 @@ file_format: "1" -id: nrfmicro_11_flipped -name: nRFMicro 1.1 (flipped) +id: nrfmicro_nrf52833 +name: nRFMicro (nRF52833) type: board arch: arm outputs: @@ -8,3 +8,6 @@ outputs: - ble url: https://github.com/joric/nrfmicro/ exposes: [pro_micro] +revisions: + - "1.3.0" +default_revision: "1.3.0" diff --git a/app/boards/joric/nrfmicro/nrfmicro_nrf52833_1_3_0.overlay b/app/boards/joric/nrfmicro/nrfmicro_nrf52833_1_3_0.overlay new file mode 100644 index 00000000000..758f4ee89de --- /dev/null +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52833_1_3_0.overlay @@ -0,0 +1,6 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + diff --git a/app/boards/arm/nrfmicro/nrfmicro_13_52833_defconfig b/app/boards/joric/nrfmicro/nrfmicro_nrf52833_1_3_0_defconfig similarity index 78% rename from app/boards/arm/nrfmicro/nrfmicro_13_52833_defconfig rename to app/boards/joric/nrfmicro/nrfmicro_nrf52833_1_3_0_defconfig index f459f35636a..709f33d8eee 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_13_52833_defconfig +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52833_1_3_0_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52833_QIAA=y -CONFIG_BOARD_NRFMICRO_13_52833=y - # Enable MPU CONFIG_ARM_MPU=y @@ -25,4 +21,4 @@ CONFIG_CLOCK_CONTROL_NRF=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y diff --git a/app/boards/arm/nrfmicro/nrfmicro_13.dts b/app/boards/joric/nrfmicro/nrfmicro_nrf52840.dts similarity index 97% rename from app/boards/arm/nrfmicro/nrfmicro_13.dts rename to app/boards/joric/nrfmicro/nrfmicro_nrf52840.dts index 0cb22e63ca9..48ccc4c7406 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_13.dts +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840.dts @@ -42,6 +42,10 @@ }; }; +®1 { + regulator-initial-mode = ; +}; + &adc { status = "okay"; }; diff --git a/app/boards/arm/nrfmicro/nrfmicro_13.zmk.yml b/app/boards/joric/nrfmicro/nrfmicro_nrf52840.zmk.yml similarity index 53% rename from app/boards/arm/nrfmicro/nrfmicro_13.zmk.yml rename to app/boards/joric/nrfmicro/nrfmicro_nrf52840.zmk.yml index 8fd28d37794..67b72d03911 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_13.zmk.yml +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840.zmk.yml @@ -1,6 +1,6 @@ file_format: "1" -id: nrfmicro_13 -name: nRFMicro 1.3/1.4 +id: nrfmicro_nrf52840 +name: nRFMicro nrf52840 type: board arch: arm outputs: @@ -8,3 +8,7 @@ outputs: - ble url: https://github.com/joric/nrfmicro/ exposes: [pro_micro] +revisions: + - "1.3.0" + - "1.1.0" +default_revision: "1.3.0" diff --git a/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_1_0.overlay b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_1_0.overlay new file mode 100644 index 00000000000..ac8b205785d --- /dev/null +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_1_0.overlay @@ -0,0 +1,15 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +/ { + // Node name must match original "EXT_POWER" label to preserve user settings. + EXT_POWER { + compatible = "zmk,ext-power-generic"; + control-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>; + init-delay-ms = <50>; + }; +}; + diff --git a/app/boards/arm/nrfmicro/nrfmicro_11_defconfig b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_1_0_defconfig similarity index 90% rename from app/boards/arm/nrfmicro/nrfmicro_11_defconfig rename to app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_1_0_defconfig index 5ba4d6e1478..4bb9bcfd145 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_11_defconfig +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_1_0_defconfig @@ -1,6 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y CONFIG_SOC_NRF52840_QIAA=y CONFIG_BOARD_NRFMICRO_11=y @@ -25,4 +24,4 @@ CONFIG_CLOCK_CONTROL_NRF=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y diff --git a/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_3_0.overlay b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_3_0.overlay new file mode 100644 index 00000000000..3963dc4348c --- /dev/null +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_3_0.overlay @@ -0,0 +1,30 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +/ { + chosen { + zmk,battery = &vbatt; + }; + + // Node name must match original "EXT_POWER" label to preserve user settings. + EXT_POWER { + compatible = "zmk,ext-power-generic"; + control-gpios = <&gpio1 9 GPIO_ACTIVE_LOW>; + init-delay-ms = <50>; + }; + + vbatt: vbatt { + compatible = "zmk,battery-voltage-divider"; + io-channels = <&adc 2>; + output-ohms = <2000000>; + full-ohms = <(2000000 + 820000)>; + }; +}; + +&adc { + status = "okay"; +}; + diff --git a/app/boards/arm/nrfmicro/nrfmicro_13_defconfig b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_3_0_defconfig similarity index 79% rename from app/boards/arm/nrfmicro/nrfmicro_13_defconfig rename to app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_3_0_defconfig index 9ffb2766a66..45b62eeee85 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_13_defconfig +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_1_3_0_defconfig @@ -1,8 +1,6 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_NRFMICRO_13=y +# CONFIG_BOARD_NRFMICRO_13=y # Enable MPU CONFIG_ARM_MPU=y @@ -25,4 +23,4 @@ CONFIG_CLOCK_CONTROL_NRF=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y diff --git a/app/boards/arm/nrfmicro/nrfmicro_11_flipped.dts b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped.dts similarity index 97% rename from app/boards/arm/nrfmicro/nrfmicro_11_flipped.dts rename to app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped.dts index 7b89b62f88a..e35d1615409 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_11_flipped.dts +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped.dts @@ -34,6 +34,10 @@ }; }; +®1 { + regulator-initial-mode = ; +}; + &gpiote { status = "okay"; }; diff --git a/app/boards/arm/nrfmicro/nrfmicro_13_52833.zmk.yml b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped.zmk.yml similarity index 52% rename from app/boards/arm/nrfmicro/nrfmicro_13_52833.zmk.yml rename to app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped.zmk.yml index 757ff860a1c..f666bfea44e 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_13_52833.zmk.yml +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped.zmk.yml @@ -1,6 +1,6 @@ file_format: "1" -id: nrfmicro_13_52833 -name: nRFMicro 1.3/1.4 (nRF52833) +id: nrfmicro_nrf52840_flipped +name: nRFMicro nRF52840 (flipped) type: board arch: arm outputs: @@ -8,3 +8,6 @@ outputs: - ble url: https://github.com/joric/nrfmicro/ exposes: [pro_micro] +revisions: + - "1.1.0" +default_revision: "1.1.0" diff --git a/app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped_1_1_0.overlay b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped_1_1_0.overlay new file mode 100644 index 00000000000..758f4ee89de --- /dev/null +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped_1_1_0.overlay @@ -0,0 +1,6 @@ +/* + * Copyright (c) 2020 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + diff --git a/app/boards/arm/nrfmicro/nrfmicro_11_flipped_defconfig b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped_1_1_0_defconfig similarity index 78% rename from app/boards/arm/nrfmicro/nrfmicro_11_flipped_defconfig rename to app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped_1_1_0_defconfig index 31cbfc9ae75..709f33d8eee 100644 --- a/app/boards/arm/nrfmicro/nrfmicro_11_flipped_defconfig +++ b/app/boards/joric/nrfmicro/nrfmicro_nrf52840_flipped_1_1_0_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_NRFMICRO_11_FLIPPED=y - # Enable MPU CONFIG_ARM_MPU=y @@ -25,4 +21,4 @@ CONFIG_CLOCK_CONTROL_NRF=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y diff --git a/app/boards/arm/nrfmicro/pinmux.c b/app/boards/joric/nrfmicro/pinmux.c similarity index 100% rename from app/boards/arm/nrfmicro/pinmux.c rename to app/boards/joric/nrfmicro/pinmux.c diff --git a/app/boards/arm/nrfmicro/pre_dt_board.cmake b/app/boards/joric/nrfmicro/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/nrfmicro/pre_dt_board.cmake rename to app/boards/joric/nrfmicro/pre_dt_board.cmake From 06274c5553c3504a46444c27db3a12fe2e5d6c63 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 2 Jun 2025 01:10:26 -0600 Subject: [PATCH 29/61] refactor(boards): Move QMK Proton-C to HWMv2 Move Proton-C to HWMv2 for use with Zephyr 4.1. --- app/boards/arm/proton_c/Kconfig.board | 8 -------- app/boards/arm/proton_c/Kconfig.defconfig | 11 ----------- app/boards/qmk/proton_c/Kconfig.proton_c | 5 +++++ .../{arm => qmk}/proton_c/arduino_pro_micro_pins.dtsi | 0 app/boards/{arm => qmk}/proton_c/board.cmake | 0 app/boards/qmk/proton_c/board.yml | 5 +++++ app/boards/{arm => qmk}/proton_c/proton_c.dts | 0 app/boards/{arm => qmk}/proton_c/proton_c.yaml | 0 app/boards/{arm => qmk}/proton_c/proton_c.zmk.yml | 0 app/boards/{arm => qmk}/proton_c/proton_c_defconfig | 2 -- 10 files changed, 10 insertions(+), 21 deletions(-) delete mode 100644 app/boards/arm/proton_c/Kconfig.board delete mode 100644 app/boards/arm/proton_c/Kconfig.defconfig create mode 100644 app/boards/qmk/proton_c/Kconfig.proton_c rename app/boards/{arm => qmk}/proton_c/arduino_pro_micro_pins.dtsi (100%) rename app/boards/{arm => qmk}/proton_c/board.cmake (100%) create mode 100644 app/boards/qmk/proton_c/board.yml rename app/boards/{arm => qmk}/proton_c/proton_c.dts (100%) rename app/boards/{arm => qmk}/proton_c/proton_c.yaml (100%) rename app/boards/{arm => qmk}/proton_c/proton_c.zmk.yml (100%) rename app/boards/{arm => qmk}/proton_c/proton_c_defconfig (82%) diff --git a/app/boards/arm/proton_c/Kconfig.board b/app/boards/arm/proton_c/Kconfig.board deleted file mode 100644 index 1596077fc1d..00000000000 --- a/app/boards/arm/proton_c/Kconfig.board +++ /dev/null @@ -1,8 +0,0 @@ -# QMK Proton-C board configuration - -# Copyright (c) 2020 Pete Johanson -# SPDX-License-Identifier: MIT - -config BOARD_QMK_PROTON_C - bool "QMK Proton-C" - depends on SOC_STM32F303XC diff --git a/app/boards/arm/proton_c/Kconfig.defconfig b/app/boards/arm/proton_c/Kconfig.defconfig deleted file mode 100644 index eed4b830442..00000000000 --- a/app/boards/arm/proton_c/Kconfig.defconfig +++ /dev/null @@ -1,11 +0,0 @@ -# QMK Proton-C board configuration - -# Copyright (c) 2020 Pete Johanson -# SPDX-License-Identifier: MIT - -if BOARD_QMK_PROTON_C - -config BOARD - default "proton_c" - -endif # BOARD_QMK_PROTON_C diff --git a/app/boards/qmk/proton_c/Kconfig.proton_c b/app/boards/qmk/proton_c/Kconfig.proton_c new file mode 100644 index 00000000000..ba5edaf8f9a --- /dev/null +++ b/app/boards/qmk/proton_c/Kconfig.proton_c @@ -0,0 +1,5 @@ +# Copyright (c) 2020 Pete Johanson +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_PROTON_C + select SOC_STM32F303XC diff --git a/app/boards/arm/proton_c/arduino_pro_micro_pins.dtsi b/app/boards/qmk/proton_c/arduino_pro_micro_pins.dtsi similarity index 100% rename from app/boards/arm/proton_c/arduino_pro_micro_pins.dtsi rename to app/boards/qmk/proton_c/arduino_pro_micro_pins.dtsi diff --git a/app/boards/arm/proton_c/board.cmake b/app/boards/qmk/proton_c/board.cmake similarity index 100% rename from app/boards/arm/proton_c/board.cmake rename to app/boards/qmk/proton_c/board.cmake diff --git a/app/boards/qmk/proton_c/board.yml b/app/boards/qmk/proton_c/board.yml new file mode 100644 index 00000000000..54ecb64bbed --- /dev/null +++ b/app/boards/qmk/proton_c/board.yml @@ -0,0 +1,5 @@ +board: + name: proton_c + vendor: qmk + socs: + - name: stm32f303xc diff --git a/app/boards/arm/proton_c/proton_c.dts b/app/boards/qmk/proton_c/proton_c.dts similarity index 100% rename from app/boards/arm/proton_c/proton_c.dts rename to app/boards/qmk/proton_c/proton_c.dts diff --git a/app/boards/arm/proton_c/proton_c.yaml b/app/boards/qmk/proton_c/proton_c.yaml similarity index 100% rename from app/boards/arm/proton_c/proton_c.yaml rename to app/boards/qmk/proton_c/proton_c.yaml diff --git a/app/boards/arm/proton_c/proton_c.zmk.yml b/app/boards/qmk/proton_c/proton_c.zmk.yml similarity index 100% rename from app/boards/arm/proton_c/proton_c.zmk.yml rename to app/boards/qmk/proton_c/proton_c.zmk.yml diff --git a/app/boards/arm/proton_c/proton_c_defconfig b/app/boards/qmk/proton_c/proton_c_defconfig similarity index 82% rename from app/boards/arm/proton_c/proton_c_defconfig rename to app/boards/qmk/proton_c/proton_c_defconfig index c552bf15df9..f7abf012335 100644 --- a/app/boards/arm/proton_c/proton_c_defconfig +++ b/app/boards/qmk/proton_c/proton_c_defconfig @@ -1,7 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_STM32F3X=y -CONFIG_SOC_STM32F303XC=y # 72MHz system clock CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000 From a093a86e5786759826fc16111bdd8b1a40870c63 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 2 Jun 2025 01:11:09 -0600 Subject: [PATCH 30/61] chore(ci): Adjust core coverage for new board IDs. Use correct board IDs, with qualifiers, for our core coverage testing. --- app/core-coverage.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/core-coverage.yml b/app/core-coverage.yml index 6e8c1a3f61a..ac428d275e3 100644 --- a/app/core-coverage.yml +++ b/app/core-coverage.yml @@ -1,6 +1,6 @@ board: - - nice_nano_v2 - - nrfmicro_13 + - nice_nano + - nrfmicro/nrf52840 - proton_c shield: - corne_left From f6daa8fd405701423fc2c35a18a1f740922d79ec Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 2 Jun 2025 01:34:20 -0600 Subject: [PATCH 31/61] refactor(boards): Move BDN9 to HWMv2 Move BDN9 to HWMv2, using the base `bdn9` ID, no longer including the `_rev2` suffix in the ID. --- app/boards/arm/bdn9/Kconfig.board | 8 -------- app/boards/arm/bdn9/bdn9_rev2.yml | 11 ----------- app/boards/keebio/bdn9/Kconfig.bdn9 | 5 +++++ app/boards/{arm => keebio}/bdn9/Kconfig.defconfig | 0 app/boards/{arm => keebio}/bdn9/README.md | 0 .../bdn9/bdn9-layouts.dtsi} | 0 .../bdn9/bdn9_rev2.conf => keebio/bdn9/bdn9.conf} | 0 .../{arm/bdn9/bdn9_rev2.dts => keebio/bdn9/bdn9.dts} | 2 +- .../bdn9/bdn9_rev2.keymap => keebio/bdn9/bdn9.keymap} | 0 .../bdn9/bdn9_rev2.yaml => keebio/bdn9/bdn9.yaml} | 0 .../bdn9_rev2.zmk.yml => keebio/bdn9/bdn9.zmk.yml} | 7 +++++-- .../bdn9/bdn9_defconfig} | 2 -- app/boards/{arm => keebio}/bdn9/board.cmake | 0 app/boards/keebio/bdn9/board.yml | 10 ++++++++++ app/core-coverage.yml | 2 +- 15 files changed, 22 insertions(+), 25 deletions(-) delete mode 100644 app/boards/arm/bdn9/Kconfig.board delete mode 100644 app/boards/arm/bdn9/bdn9_rev2.yml create mode 100644 app/boards/keebio/bdn9/Kconfig.bdn9 rename app/boards/{arm => keebio}/bdn9/Kconfig.defconfig (100%) rename app/boards/{arm => keebio}/bdn9/README.md (100%) rename app/boards/{arm/bdn9/bdn9_rev2-layouts.dtsi => keebio/bdn9/bdn9-layouts.dtsi} (100%) rename app/boards/{arm/bdn9/bdn9_rev2.conf => keebio/bdn9/bdn9.conf} (100%) rename app/boards/{arm/bdn9/bdn9_rev2.dts => keebio/bdn9/bdn9.dts} (99%) rename app/boards/{arm/bdn9/bdn9_rev2.keymap => keebio/bdn9/bdn9.keymap} (100%) rename app/boards/{arm/bdn9/bdn9_rev2.yaml => keebio/bdn9/bdn9.yaml} (100%) rename app/boards/{arm/bdn9/bdn9_rev2.zmk.yml => keebio/bdn9/bdn9.zmk.yml} (72%) rename app/boards/{arm/bdn9/bdn9_rev2_defconfig => keebio/bdn9/bdn9_defconfig} (85%) rename app/boards/{arm => keebio}/bdn9/board.cmake (100%) create mode 100644 app/boards/keebio/bdn9/board.yml diff --git a/app/boards/arm/bdn9/Kconfig.board b/app/boards/arm/bdn9/Kconfig.board deleted file mode 100644 index 76a204cc41a..00000000000 --- a/app/boards/arm/bdn9/Kconfig.board +++ /dev/null @@ -1,8 +0,0 @@ -# keeb.io BDN9 board configuration - -# Copyright (c) 2020 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_BDN9 - bool "BDN9 rev2" - depends on SOC_STM32F072XB diff --git a/app/boards/arm/bdn9/bdn9_rev2.yml b/app/boards/arm/bdn9/bdn9_rev2.yml deleted file mode 100644 index 01ebd3e0b5c..00000000000 --- a/app/boards/arm/bdn9/bdn9_rev2.yml +++ /dev/null @@ -1,11 +0,0 @@ -file_format: "1" -id: bdn9_rev2 -name: BDN9 Rev2 -type: board -arch: arm -features: - - keys - - encoder -outputs: - - usb -url: https://keeb.io/products/bdn9-rev-2-3x3-9-key-macropad-rotary-encoder-and-rgb diff --git a/app/boards/keebio/bdn9/Kconfig.bdn9 b/app/boards/keebio/bdn9/Kconfig.bdn9 new file mode 100644 index 00000000000..29055ef5776 --- /dev/null +++ b/app/boards/keebio/bdn9/Kconfig.bdn9 @@ -0,0 +1,5 @@ +# Copyright (c) 2020 Pete Johanson +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_BDN9 + select SOC_STM32F072XB diff --git a/app/boards/arm/bdn9/Kconfig.defconfig b/app/boards/keebio/bdn9/Kconfig.defconfig similarity index 100% rename from app/boards/arm/bdn9/Kconfig.defconfig rename to app/boards/keebio/bdn9/Kconfig.defconfig diff --git a/app/boards/arm/bdn9/README.md b/app/boards/keebio/bdn9/README.md similarity index 100% rename from app/boards/arm/bdn9/README.md rename to app/boards/keebio/bdn9/README.md diff --git a/app/boards/arm/bdn9/bdn9_rev2-layouts.dtsi b/app/boards/keebio/bdn9/bdn9-layouts.dtsi similarity index 100% rename from app/boards/arm/bdn9/bdn9_rev2-layouts.dtsi rename to app/boards/keebio/bdn9/bdn9-layouts.dtsi diff --git a/app/boards/arm/bdn9/bdn9_rev2.conf b/app/boards/keebio/bdn9/bdn9.conf similarity index 100% rename from app/boards/arm/bdn9/bdn9_rev2.conf rename to app/boards/keebio/bdn9/bdn9.conf diff --git a/app/boards/arm/bdn9/bdn9_rev2.dts b/app/boards/keebio/bdn9/bdn9.dts similarity index 99% rename from app/boards/arm/bdn9/bdn9_rev2.dts rename to app/boards/keebio/bdn9/bdn9.dts index 389d23b7de6..542c5341cab 100644 --- a/app/boards/arm/bdn9/bdn9_rev2.dts +++ b/app/boards/keebio/bdn9/bdn9.dts @@ -11,7 +11,7 @@ #include -#include "bdn9_rev2-layouts.dtsi" +#include "bdn9-layouts.dtsi" &physical_layout0 { transform = <&matrix_transform0>; diff --git a/app/boards/arm/bdn9/bdn9_rev2.keymap b/app/boards/keebio/bdn9/bdn9.keymap similarity index 100% rename from app/boards/arm/bdn9/bdn9_rev2.keymap rename to app/boards/keebio/bdn9/bdn9.keymap diff --git a/app/boards/arm/bdn9/bdn9_rev2.yaml b/app/boards/keebio/bdn9/bdn9.yaml similarity index 100% rename from app/boards/arm/bdn9/bdn9_rev2.yaml rename to app/boards/keebio/bdn9/bdn9.yaml diff --git a/app/boards/arm/bdn9/bdn9_rev2.zmk.yml b/app/boards/keebio/bdn9/bdn9.zmk.yml similarity index 72% rename from app/boards/arm/bdn9/bdn9_rev2.zmk.yml rename to app/boards/keebio/bdn9/bdn9.zmk.yml index 4680746f22d..4991888c44a 100644 --- a/app/boards/arm/bdn9/bdn9_rev2.zmk.yml +++ b/app/boards/keebio/bdn9/bdn9.zmk.yml @@ -1,6 +1,6 @@ file_format: "1" -id: bdn9_rev2 -name: BDN9 Rev2 +id: bdn9 +name: BDN9 (Rev2) type: board arch: arm outputs: @@ -9,3 +9,6 @@ features: - keys - encoder url: https://keeb.io/collections/bdn9-collection/products/bdn9-rev-2-3x3-9-key-macropad-rotary-encoder-and-rgb +revisions: + - "2.0.0" +default_revision: "2.0.0" diff --git a/app/boards/arm/bdn9/bdn9_rev2_defconfig b/app/boards/keebio/bdn9/bdn9_defconfig similarity index 85% rename from app/boards/arm/bdn9/bdn9_rev2_defconfig rename to app/boards/keebio/bdn9/bdn9_defconfig index a59fa522114..2aad1628dbe 100644 --- a/app/boards/arm/bdn9/bdn9_rev2_defconfig +++ b/app/boards/keebio/bdn9/bdn9_defconfig @@ -1,7 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_STM32F0X=y -CONFIG_SOC_STM32F072XB=y # 72MHz system clock CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000 diff --git a/app/boards/arm/bdn9/board.cmake b/app/boards/keebio/bdn9/board.cmake similarity index 100% rename from app/boards/arm/bdn9/board.cmake rename to app/boards/keebio/bdn9/board.cmake diff --git a/app/boards/keebio/bdn9/board.yml b/app/boards/keebio/bdn9/board.yml new file mode 100644 index 00000000000..45eaad64145 --- /dev/null +++ b/app/boards/keebio/bdn9/board.yml @@ -0,0 +1,10 @@ +board: + name: bdn9 + vendor: keebio + socs: + - name: stm32f072xb + revision: + format: major.minor.patch + default: 2.0.0 + revisions: + - name: 2.0.0 diff --git a/app/core-coverage.yml b/app/core-coverage.yml index ac428d275e3..51bcedf2146 100644 --- a/app/core-coverage.yml +++ b/app/core-coverage.yml @@ -9,7 +9,7 @@ shield: - settings_reset - tidbit include: - - board: bdn9_rev2 + - board: bdn9 - board: nice60 - board: xiao_ble shield: hummingbird From 636eb7406260839515b01f27dac047cc509e1dd5 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 2 Jun 2025 01:39:42 -0600 Subject: [PATCH 32/61] refactor(boards): Move nice!60 to HWMv2 Migrate nice!60 to HWMv2. --- app/boards/arm/nice60/Kconfig.board | 6 ------ app/boards/{arm => nicekeyboards}/nice60/Kconfig | 0 .../{arm => nicekeyboards}/nice60/Kconfig.defconfig | 0 app/boards/nicekeyboards/nice60/Kconfig.nice60 | 5 +++++ app/boards/{arm => nicekeyboards}/nice60/README.md | 0 app/boards/{arm => nicekeyboards}/nice60/board.cmake | 0 app/boards/nicekeyboards/nice60/board.yml | 5 +++++ .../{arm => nicekeyboards}/nice60/nice60-pinctrl.dtsi | 0 app/boards/{arm => nicekeyboards}/nice60/nice60.dts | 4 ++++ app/boards/{arm => nicekeyboards}/nice60/nice60.keymap | 0 app/boards/{arm => nicekeyboards}/nice60/nice60.yaml | 0 app/boards/{arm => nicekeyboards}/nice60/nice60.zmk.yml | 0 .../{arm => nicekeyboards}/nice60/nice60_defconfig | 9 ++------- .../{arm => nicekeyboards}/nice60/pre_dt_board.cmake | 0 14 files changed, 16 insertions(+), 13 deletions(-) delete mode 100644 app/boards/arm/nice60/Kconfig.board rename app/boards/{arm => nicekeyboards}/nice60/Kconfig (100%) rename app/boards/{arm => nicekeyboards}/nice60/Kconfig.defconfig (100%) create mode 100644 app/boards/nicekeyboards/nice60/Kconfig.nice60 rename app/boards/{arm => nicekeyboards}/nice60/README.md (100%) rename app/boards/{arm => nicekeyboards}/nice60/board.cmake (100%) create mode 100644 app/boards/nicekeyboards/nice60/board.yml rename app/boards/{arm => nicekeyboards}/nice60/nice60-pinctrl.dtsi (100%) rename app/boards/{arm => nicekeyboards}/nice60/nice60.dts (98%) rename app/boards/{arm => nicekeyboards}/nice60/nice60.keymap (100%) rename app/boards/{arm => nicekeyboards}/nice60/nice60.yaml (100%) rename app/boards/{arm => nicekeyboards}/nice60/nice60.zmk.yml (100%) rename app/boards/{arm => nicekeyboards}/nice60/nice60_defconfig (79%) rename app/boards/{arm => nicekeyboards}/nice60/pre_dt_board.cmake (100%) diff --git a/app/boards/arm/nice60/Kconfig.board b/app/boards/arm/nice60/Kconfig.board deleted file mode 100644 index 88db9ee861b..00000000000 --- a/app/boards/arm/nice60/Kconfig.board +++ /dev/null @@ -1,6 +0,0 @@ -# Copyright (c) 2021 Nick Winans -# SPDX-License-Identifier: MIT - -config BOARD_NICE60 - bool "nice!60" - depends on SOC_NRF52840_QIAA diff --git a/app/boards/arm/nice60/Kconfig b/app/boards/nicekeyboards/nice60/Kconfig similarity index 100% rename from app/boards/arm/nice60/Kconfig rename to app/boards/nicekeyboards/nice60/Kconfig diff --git a/app/boards/arm/nice60/Kconfig.defconfig b/app/boards/nicekeyboards/nice60/Kconfig.defconfig similarity index 100% rename from app/boards/arm/nice60/Kconfig.defconfig rename to app/boards/nicekeyboards/nice60/Kconfig.defconfig diff --git a/app/boards/nicekeyboards/nice60/Kconfig.nice60 b/app/boards/nicekeyboards/nice60/Kconfig.nice60 new file mode 100644 index 00000000000..1760b687be8 --- /dev/null +++ b/app/boards/nicekeyboards/nice60/Kconfig.nice60 @@ -0,0 +1,5 @@ +# Copyright (c) 2021 Nick Winans +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_NICE60 + select SOC_NRF52840_QIAA diff --git a/app/boards/arm/nice60/README.md b/app/boards/nicekeyboards/nice60/README.md similarity index 100% rename from app/boards/arm/nice60/README.md rename to app/boards/nicekeyboards/nice60/README.md diff --git a/app/boards/arm/nice60/board.cmake b/app/boards/nicekeyboards/nice60/board.cmake similarity index 100% rename from app/boards/arm/nice60/board.cmake rename to app/boards/nicekeyboards/nice60/board.cmake diff --git a/app/boards/nicekeyboards/nice60/board.yml b/app/boards/nicekeyboards/nice60/board.yml new file mode 100644 index 00000000000..fdbe7cef1ed --- /dev/null +++ b/app/boards/nicekeyboards/nice60/board.yml @@ -0,0 +1,5 @@ +board: + name: nice60 + vendor: nicekeyboards + socs: + - name: nrf52840 diff --git a/app/boards/arm/nice60/nice60-pinctrl.dtsi b/app/boards/nicekeyboards/nice60/nice60-pinctrl.dtsi similarity index 100% rename from app/boards/arm/nice60/nice60-pinctrl.dtsi rename to app/boards/nicekeyboards/nice60/nice60-pinctrl.dtsi diff --git a/app/boards/arm/nice60/nice60.dts b/app/boards/nicekeyboards/nice60/nice60.dts similarity index 98% rename from app/boards/arm/nice60/nice60.dts rename to app/boards/nicekeyboards/nice60/nice60.dts index 35eececd439..7da97ff4fbd 100644 --- a/app/boards/arm/nice60/nice60.dts +++ b/app/boards/nicekeyboards/nice60/nice60.dts @@ -92,6 +92,10 @@ RC(4,0) RC(4,1) RC(4,2) RC(4,5) R }; }; +®1 { + regulator-initial-mode = ; +}; + &adc { status = "okay"; }; diff --git a/app/boards/arm/nice60/nice60.keymap b/app/boards/nicekeyboards/nice60/nice60.keymap similarity index 100% rename from app/boards/arm/nice60/nice60.keymap rename to app/boards/nicekeyboards/nice60/nice60.keymap diff --git a/app/boards/arm/nice60/nice60.yaml b/app/boards/nicekeyboards/nice60/nice60.yaml similarity index 100% rename from app/boards/arm/nice60/nice60.yaml rename to app/boards/nicekeyboards/nice60/nice60.yaml diff --git a/app/boards/arm/nice60/nice60.zmk.yml b/app/boards/nicekeyboards/nice60/nice60.zmk.yml similarity index 100% rename from app/boards/arm/nice60/nice60.zmk.yml rename to app/boards/nicekeyboards/nice60/nice60.zmk.yml diff --git a/app/boards/arm/nice60/nice60_defconfig b/app/boards/nicekeyboards/nice60/nice60_defconfig similarity index 79% rename from app/boards/arm/nice60/nice60_defconfig rename to app/boards/nicekeyboards/nice60/nice60_defconfig index fabcb7eddf4..6bf5757c380 100644 --- a/app/boards/arm/nice60/nice60_defconfig +++ b/app/boards/nicekeyboards/nice60/nice60_defconfig @@ -1,10 +1,6 @@ # Copyright (c) 2021 Nick Winans # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_NICE60=y - # Enable MPU CONFIG_ARM_MPU=y @@ -24,11 +20,10 @@ CONFIG_FLASH_PAGE_LAYOUT=y CONFIG_FLASH_MAP=y CONFIG_ZMK_RGB_UNDERGLOW=y -CONFIG_WS2812_STRIP=y +#CONFIG_WS2812_STRIP=y CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=160 CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=3 - CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y diff --git a/app/boards/arm/nice60/pre_dt_board.cmake b/app/boards/nicekeyboards/nice60/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/nice60/pre_dt_board.cmake rename to app/boards/nicekeyboards/nice60/pre_dt_board.cmake From 136e3d6dcaef69ec762be7a15b4a6581a5ec32de Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 4 Jun 2025 01:10:59 -0600 Subject: [PATCH 33/61] refactor: Adjust how we're searching/loading keymap files Use new post_boards_shields extension point for loading keymap files from board/shield directories. --- app/boards/post_boards_shields.cmake | 100 +++++++++++++ app/keymap-module/modules/modules.cmake | 181 ------------------------ 2 files changed, 100 insertions(+), 181 deletions(-) create mode 100644 app/boards/post_boards_shields.cmake diff --git a/app/boards/post_boards_shields.cmake b/app/boards/post_boards_shields.cmake new file mode 100644 index 00000000000..3bd7eb1da81 --- /dev/null +++ b/app/boards/post_boards_shields.cmake @@ -0,0 +1,100 @@ +# TODO: Check for env or command line "ZMK_CONFIG" setting. +# * That directory should load +# * defconfigs, +# * .conf file, +# * single overlay, +# * or per board/shield. + +list(APPEND KEYMAP_DIRS ${BOARD_DIR}) +get_filename_component(BOARD_DIR_NAME ${BOARD_DIR} NAME) +# Give a shield like `kyria_rev2_left` we want to use `kyria_rev2` and `kyria` as candidate names for +# overlay/conf/keymap files. +if(DEFINED SHIELD) + list(APPEND KEYMAP_DIRS ${SHIELD_DIRS}) + foreach(s ${SHIELD_AS_LIST}) + if (DEFINED SHIELD_DIR_${s}) + get_filename_component(shield_dir_name ${SHIELD_DIR_${s}} NAME) + list(APPEND shield_candidate_names ${shield_dir_name}) + endif() + string(REPLACE "_" ";" S_PIECES ${s}) + list(LENGTH S_PIECES S_PIECES_LEN) + while(NOT S_PIECES STREQUAL "") + list(POP_BACK S_PIECES) + list(JOIN S_PIECES "_" s_substr) + if ("${s_substr}" STREQUAL "" OR "${s_substr}" STREQUAL "${shield_dir_name}") + break() + endif() + list(APPEND shield_candidate_names ${s_substr}) + endwhile() + endforeach() +endif() + +if (ZMK_CONFIG) + if (EXISTS ${ZMK_CONFIG}) + message(STATUS "ZMK Config directory: ${ZMK_CONFIG}") + list(PREPEND KEYMAP_DIRS "${ZMK_CONFIG}") + + if (DEFINED SHIELD) + foreach (s ${shield_candidate_names} ${SHIELD_AS_LIST}) + if (DEFINED ${SHIELD_DIR_${s}}) + get_filename_component(shield_dir_name ${SHIELD_DIR_${s}} NAME) + endif() + list(APPEND overlay_candidates "${ZMK_CONFIG}/${s}_${BOARD}.overlay") + list(APPEND overlay_candidates "${ZMK_CONFIG}/${s}.overlay") + if (NOT "${shield_dir_name}" STREQUAL "${s}") + list(APPEND config_candidates "${ZMK_CONFIG}/${shield_dir_name}_${BOARD}.conf") + list(APPEND config_candidates "${ZMK_CONFIG}/${shield_dir_name}.conf") + endif() + list(APPEND config_candidates "${ZMK_CONFIG}/${s}_${BOARD}.conf") + list(APPEND config_candidates "${ZMK_CONFIG}/${s}.conf") + endforeach() + endif() + + # TODO: Board revisions? + list(APPEND overlay_candidates "${ZMK_CONFIG}/${BOARD_DIR_NAME}.overlay") + list(APPEND overlay_candidates "${ZMK_CONFIG}/${BOARD}.overlay") + list(APPEND overlay_candidates "${ZMK_CONFIG}/default.overlay") + list(APPEND config_candidates "${ZMK_CONFIG}/${BOARD_DIR_NAME}.conf") + list(APPEND config_candidates "${ZMK_CONFIG}/${BOARD}.conf") + list(APPEND config_candidates "${ZMK_CONFIG}/default.conf") + + foreach(overlay ${overlay_candidates}) + if (EXISTS "${overlay}") + message(STATUS "ZMK Config devicetree overlay: ${overlay}") + list(APPEND shield_dts_files "${overlay}") + break() + endif() + endforeach() + + foreach(conf ${config_candidates}) + if (EXISTS "${conf}") + message(STATUS "ZMK Config Kconfig: ${conf}") + list(APPEND shield_conf_files "${conf}") + endif() + endforeach() + else() + message(WARNING "Unable to locate ZMK config at: ${ZMK_CONFIG}") + endif() +endif() + + +if(NOT KEYMAP_FILE) + message("${NORMALIZED_BOARD_TARGET} for ${NORMALIZED_BOARD_QUALIFIERS} for ${BOARD} with version ${BOARD_REVISION}") + foreach(keymap_dir ${KEYMAP_DIRS}) + foreach(keymap_prefix ${shield_candidate_names} ${SHIELD_AS_LIST} ${SHIELD_DIR} "${BOARD}_${BOARD_REVISION_STRING}" ${BOARD} ${BOARD_DIR_NAME}) + 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}") + set(EXTRA_DTC_OVERLAY_FILE ${KEYMAP_FILE}) + break() + endif() + endforeach() + endforeach() +else() + message(STATUS "Using keymap file: ${KEYMAP_FILE}") + set(EXTRA_DTC_OVERLAY_FILE ${KEYMAP_FILE}) +endif() + +if (NOT KEYMAP_FILE) + message(WARNING "Failed to locate keymap file!") +endif() diff --git a/app/keymap-module/modules/modules.cmake b/app/keymap-module/modules/modules.cmake index b480657b43a..eed28907076 100644 --- a/app/keymap-module/modules/modules.cmake +++ b/app/keymap-module/modules/modules.cmake @@ -59,184 +59,3 @@ if (ZMK_CONFIG) list(APPEND DTS_ROOT ${ZMK_CONFIG}) endif() endif() - - -if(DEFINED SHIELD) - string(REPLACE " " ";" SHIELD_AS_LIST "${SHIELD}") -endif() - -# Helper function for parsing a board's name, revision, and qualifiers, -# from one input variable to three separate output variables. -function(parse_board_components board_in name_out revision_out qualifiers_out) - if(NOT "${${board_in}}" MATCHES "^([^@/]+)(@[^@/]+)?(/[^@]+)?$") - message(FATAL_ERROR - "Invalid revision / qualifiers format for ${board_in} (${${board_in}}). " - "Valid format is: @/" - ) - endif() - string(REPLACE "@" "" board_revision "${CMAKE_MATCH_2}") - - set(${name_out} ${CMAKE_MATCH_1} PARENT_SCOPE) - set(${revision_out} ${board_revision} PARENT_SCOPE) - set(${qualifiers_out} ${CMAKE_MATCH_3} PARENT_SCOPE) -endfunction() - -parse_board_components( - BOARD - BOARD BOARD_REVISION BOARD_QUALIFIERS -) - -# string(FIND "${BOARD}" "@" REVISION_SEPARATOR_INDEX) -# if(NOT (REVISION_SEPARATOR_INDEX EQUAL -1)) -# math(EXPR BOARD_REVISION_INDEX "${REVISION_SEPARATOR_INDEX} + 1") -# string(SUBSTRING ${BOARD} ${BOARD_REVISION_INDEX} -1 BOARD_REVISION) -# string(SUBSTRING ${BOARD} 0 ${REVISION_SEPARATOR_INDEX} BOARD) -# endif() - -foreach(root ${BOARD_ROOT}) - set(shield_dir ${root}/boards/shields) - # Match the Kconfig.shield files in the shield directories to make sure we are - # finding shields, e.g. x_nucleo_iks01a1/Kconfig.shield - file(GLOB_RECURSE shields_refs_list ${shield_dir}/*/Kconfig.shield) - unset(SHIELD_LIST) - foreach(shields_refs ${shields_refs_list}) - get_filename_component(shield_path ${shields_refs} DIRECTORY) - file(GLOB shield_overlays RELATIVE ${shield_path} ${shield_path}/*.overlay) - foreach(overlay ${shield_overlays}) - get_filename_component(shield ${overlay} NAME_WE) - list(APPEND SHIELD_LIST ${shield}) - set(SHIELD_DIR_${shield} ${shield_path}) - endforeach() - endforeach() - - if (EXISTS "${root}/boards/${BOARD}.overlay") - list(APPEND shield_dts_files "${root}/boards/${BOARD}.overlay") - endif() - if (NOT DEFINED BOARD_DIR_NAME) - find_path(BOARD_DIR - NAMES ${BOARD}_defconfig - PATHS ${root}/boards/*/* - NO_DEFAULT_PATH - ) - if(BOARD_DIR) - get_filename_component(BOARD_DIR_NAME ${BOARD_DIR} NAME) - list(APPEND KEYMAP_DIRS ${BOARD_DIR}) - endif() - endif() - - if(DEFINED SHIELD) - foreach(s ${SHIELD_AS_LIST}) - if(NOT ${s} IN_LIST SHIELD_LIST) - continue() - endif() - message(STATUS "Adding ${SHIELD_DIR_${s}}") - list(APPEND KEYMAP_DIRS ${SHIELD_DIR_${s}}) - get_filename_component(shield_dir_name ${SHIELD_DIR_${s}} NAME) - list(APPEND SHIELD_DIR ${shield_dir_name}) - endforeach() - endif() -endforeach() - -if(EXISTS ${BOARD_DIR}/revision.cmake) - # Board provides revision handling. - include(${BOARD_DIR}/revision.cmake) -elseif(BOARD_REVISION) - message(WARNING "Board revision ${BOARD_REVISION} specified for ${BOARD}, \ - but board has no revision so revision will be ignored.") -endif() - -if(DEFINED BOARD_REVISION) - string(REPLACE "." "_" BOARD_REVISION_STRING ${BOARD_REVISION}) - set(KEYMAP_BOARD_REVISION_PREFIX "${BOARD}_${BOARD_REVISION_STRING}") -else() - set(KEYMAP_BOARD_REVISION_PREFIX "") -endif() - -# Give a shield like `kyria_rev2_left` we want to use `kyria_rev2` and `kyria` as candidate names for -# overlay/conf/keymap files. -if(DEFINED SHIELD) - foreach(s ${SHIELD_AS_LIST}) - if (DEFINED $SHIELD_DIR_${s}) - get_filename_component(shield_dir_name ${SHIELD_DIR_${s}} NAME) - endif() - string(REPLACE "_" ";" S_PIECES ${s}) - list(LENGTH S_PIECES S_PIECES_LEN) - while(NOT S_PIECES STREQUAL "") - list(POP_BACK S_PIECES) - list(JOIN S_PIECES "_" s_substr) - if ("${s_substr}" STREQUAL "" OR "${s_substr}" STREQUAL "${shield_dir_name}") - break() - endif() - list(APPEND shield_candidate_names ${s_substr}) - endwhile() - endforeach() -endif() - -if (ZMK_CONFIG) - if (EXISTS ${ZMK_CONFIG}) - message(STATUS "ZMK Config directory: ${ZMK_CONFIG}") - list(PREPEND KEYMAP_DIRS "${ZMK_CONFIG}") - - if (DEFINED SHIELD) - foreach (s ${shield_candidate_names} ${SHIELD_AS_LIST}) - if (DEFINED ${SHIELD_DIR_${s}}) - get_filename_component(shield_dir_name ${SHIELD_DIR_${s}} NAME) - endif() - list(APPEND overlay_candidates "${ZMK_CONFIG}/${s}_${BOARD}.overlay") - list(APPEND overlay_candidates "${ZMK_CONFIG}/${s}.overlay") - if (NOT "${shield_dir_name}" STREQUAL "${s}") - list(APPEND config_candidates "${ZMK_CONFIG}/${shield_dir_name}_${BOARD}.conf") - list(APPEND config_candidates "${ZMK_CONFIG}/${shield_dir_name}.conf") - endif() - list(APPEND config_candidates "${ZMK_CONFIG}/${s}_${BOARD}.conf") - list(APPEND config_candidates "${ZMK_CONFIG}/${s}.conf") - endforeach() - endif() - - # TODO: Board revisions? - list(APPEND overlay_candidates "${ZMK_CONFIG}/${BOARD_DIR_NAME}.overlay") - list(APPEND overlay_candidates "${ZMK_CONFIG}/${BOARD}.overlay") - list(APPEND overlay_candidates "${ZMK_CONFIG}/default.overlay") - list(APPEND config_candidates "${ZMK_CONFIG}/${BOARD_DIR_NAME}.conf") - list(APPEND config_candidates "${ZMK_CONFIG}/${BOARD}.conf") - list(APPEND config_candidates "${ZMK_CONFIG}/default.conf") - - foreach(overlay ${overlay_candidates}) - if (EXISTS "${overlay}") - message(STATUS "ZMK Config devicetree overlay: ${overlay}") - list(APPEND shield_dts_files "${overlay}") - break() - endif() - endforeach() - - foreach(conf ${config_candidates}) - if (EXISTS "${conf}") - message(STATUS "ZMK Config Kconfig: ${conf}") - list(APPEND shield_conf_files "${conf}") - endif() - endforeach() - else() - message(WARNING "Unable to locate ZMK config at: ${ZMK_CONFIG}") - endif() -endif() - - -if(NOT KEYMAP_FILE) - foreach(keymap_dir ${KEYMAP_DIRS}) - foreach(keymap_prefix ${shield_candidate_names} ${SHIELD_AS_LIST} ${SHIELD_DIR} ${KEYMAP_BOARD_REVISION_PREFIX} ${BOARD} ${BOARD_DIR_NAME}) - 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}") - set(DTC_OVERLAY_FILE ${KEYMAP_FILE}) - break() - endif() - endforeach() - endforeach() -else() - message(STATUS "Using keymap file: ${KEYMAP_FILE}") - set(DTC_OVERLAY_FILE ${KEYMAP_FILE}) -endif() - -if (NOT KEYMAP_FILE) - message(WARNING "Failed to locate keymap file!") -endif() From 451b116b95ece638d3b02f8892be8944e3e4c8ad Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 4 Jun 2025 01:12:08 -0600 Subject: [PATCH 34/61] refactor(boards): Move planck rev6 to HWMv2. Move Planck board definition to HWMv2, including versioning tweaks. --- app/boards/{arm => olkb}/planck/CMakeLists.txt | 0 app/boards/{arm => olkb}/planck/Kconfig.defconfig | 0 .../Kconfig.board => olkb/planck/Kconfig.planck} | 6 +++--- app/boards/{arm => olkb}/planck/board.cmake | 0 app/boards/olkb/planck/board.yml | 10 ++++++++++ .../planck/planck_rev6.dts => olkb/planck/planck.dts} | 0 .../planck_rev6.keymap => olkb/planck/planck.keymap} | 0 .../planck_rev6.yaml => olkb/planck/planck.yaml} | 0 .../planck_rev6.zmk.yml => olkb/planck/planck.zmk.yml} | 7 +++++-- .../planck/planck_6_0_0_defconfig} | 2 -- 10 files changed, 18 insertions(+), 7 deletions(-) rename app/boards/{arm => olkb}/planck/CMakeLists.txt (100%) rename app/boards/{arm => olkb}/planck/Kconfig.defconfig (100%) rename app/boards/{arm/planck/Kconfig.board => olkb/planck/Kconfig.planck} (55%) rename app/boards/{arm => olkb}/planck/board.cmake (100%) create mode 100644 app/boards/olkb/planck/board.yml rename app/boards/{arm/planck/planck_rev6.dts => olkb/planck/planck.dts} (100%) rename app/boards/{arm/planck/planck_rev6.keymap => olkb/planck/planck.keymap} (100%) rename app/boards/{arm/planck/planck_rev6.yaml => olkb/planck/planck.yaml} (100%) rename app/boards/{arm/planck/planck_rev6.zmk.yml => olkb/planck/planck.zmk.yml} (61%) rename app/boards/{arm/planck/planck_rev6_defconfig => olkb/planck/planck_6_0_0_defconfig} (85%) diff --git a/app/boards/arm/planck/CMakeLists.txt b/app/boards/olkb/planck/CMakeLists.txt similarity index 100% rename from app/boards/arm/planck/CMakeLists.txt rename to app/boards/olkb/planck/CMakeLists.txt diff --git a/app/boards/arm/planck/Kconfig.defconfig b/app/boards/olkb/planck/Kconfig.defconfig similarity index 100% rename from app/boards/arm/planck/Kconfig.defconfig rename to app/boards/olkb/planck/Kconfig.defconfig diff --git a/app/boards/arm/planck/Kconfig.board b/app/boards/olkb/planck/Kconfig.planck similarity index 55% rename from app/boards/arm/planck/Kconfig.board rename to app/boards/olkb/planck/Kconfig.planck index 28b7381fb03..f8d42f0681e 100644 --- a/app/boards/arm/planck/Kconfig.board +++ b/app/boards/olkb/planck/Kconfig.planck @@ -3,6 +3,6 @@ # Copyright (c) 2020 The ZMK Contributors # SPDX-License-Identifier: MIT -config BOARD_PLANCK_REV6 - bool "Planck V6 Keyboard" - depends on SOC_STM32F303XC +config BOARD_PLANCK + bool "Planck Keyboard" + select SOC_STM32F303XC diff --git a/app/boards/arm/planck/board.cmake b/app/boards/olkb/planck/board.cmake similarity index 100% rename from app/boards/arm/planck/board.cmake rename to app/boards/olkb/planck/board.cmake diff --git a/app/boards/olkb/planck/board.yml b/app/boards/olkb/planck/board.yml new file mode 100644 index 00000000000..b81bcddbfa6 --- /dev/null +++ b/app/boards/olkb/planck/board.yml @@ -0,0 +1,10 @@ +board: + name: planck + vendor: olkb + socs: + - name: stm32f303xc + revision: + format: major.minor.patch + default: 6.0.0 + revisions: + - name: 6.0.0 diff --git a/app/boards/arm/planck/planck_rev6.dts b/app/boards/olkb/planck/planck.dts similarity index 100% rename from app/boards/arm/planck/planck_rev6.dts rename to app/boards/olkb/planck/planck.dts diff --git a/app/boards/arm/planck/planck_rev6.keymap b/app/boards/olkb/planck/planck.keymap similarity index 100% rename from app/boards/arm/planck/planck_rev6.keymap rename to app/boards/olkb/planck/planck.keymap diff --git a/app/boards/arm/planck/planck_rev6.yaml b/app/boards/olkb/planck/planck.yaml similarity index 100% rename from app/boards/arm/planck/planck_rev6.yaml rename to app/boards/olkb/planck/planck.yaml diff --git a/app/boards/arm/planck/planck_rev6.zmk.yml b/app/boards/olkb/planck/planck.zmk.yml similarity index 61% rename from app/boards/arm/planck/planck_rev6.zmk.yml rename to app/boards/olkb/planck/planck.zmk.yml index f9d42424742..42e83d12f9e 100644 --- a/app/boards/arm/planck/planck_rev6.zmk.yml +++ b/app/boards/olkb/planck/planck.zmk.yml @@ -1,6 +1,6 @@ file_format: "1" -id: planck_rev6 -name: Planck Rev6 +id: planck +name: Planck (Rev6) type: board arch: arm features: @@ -9,3 +9,6 @@ features: outputs: - usb url: https://olkb.com/collections/planck +revisions: + - "6.0.0" +default_revision: "6.0.0" diff --git a/app/boards/arm/planck/planck_rev6_defconfig b/app/boards/olkb/planck/planck_6_0_0_defconfig similarity index 85% rename from app/boards/arm/planck/planck_rev6_defconfig rename to app/boards/olkb/planck/planck_6_0_0_defconfig index f453063900f..154e7687b61 100644 --- a/app/boards/arm/planck/planck_rev6_defconfig +++ b/app/boards/olkb/planck/planck_6_0_0_defconfig @@ -1,7 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_STM32F3X=y -CONFIG_SOC_STM32F303XC=y # 72MHz system clock CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000 From 332cc58abd1906455070188d0800d4b9b97e446d Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 4 Jun 2025 11:00:03 -0600 Subject: [PATCH 35/61] refactor(boards): Move OLKB Preonic to HWMv2 Move Preonic board definition to HWMv2 and remove `_rev3` variant suffix in favor of board versioning with `3.0.0` as the default. --- app/boards/{arm => olkb}/preonic/CMakeLists.txt | 0 app/boards/{arm => olkb}/preonic/Kconfig.defconfig | 4 ++-- .../Kconfig.board => olkb/preonic/Kconfig.preonic} | 5 ++--- app/boards/{arm => olkb}/preonic/board.cmake | 0 app/boards/olkb/preonic/board.yml | 10 ++++++++++ .../preonic_rev3.dts => olkb/preonic/preonic.dts} | 0 .../preonic/preonic.keymap} | 0 .../preonic_rev3.yaml => olkb/preonic/preonic.yaml} | 0 .../preonic/preonic.zmk.yml} | 0 .../preonic/preonic_defconfig} | 4 +--- 10 files changed, 15 insertions(+), 8 deletions(-) rename app/boards/{arm => olkb}/preonic/CMakeLists.txt (100%) rename app/boards/{arm => olkb}/preonic/Kconfig.defconfig (80%) rename app/boards/{arm/preonic/Kconfig.board => olkb/preonic/Kconfig.preonic} (55%) rename app/boards/{arm => olkb}/preonic/board.cmake (100%) create mode 100644 app/boards/olkb/preonic/board.yml rename app/boards/{arm/preonic/preonic_rev3.dts => olkb/preonic/preonic.dts} (100%) rename app/boards/{arm/preonic/preonic_rev3.keymap => olkb/preonic/preonic.keymap} (100%) rename app/boards/{arm/preonic/preonic_rev3.yaml => olkb/preonic/preonic.yaml} (100%) rename app/boards/{arm/preonic/preonic_rev3.zmk.yml => olkb/preonic/preonic.zmk.yml} (100%) rename app/boards/{arm/preonic/preonic_rev3_defconfig => olkb/preonic/preonic_defconfig} (74%) diff --git a/app/boards/arm/preonic/CMakeLists.txt b/app/boards/olkb/preonic/CMakeLists.txt similarity index 100% rename from app/boards/arm/preonic/CMakeLists.txt rename to app/boards/olkb/preonic/CMakeLists.txt diff --git a/app/boards/arm/preonic/Kconfig.defconfig b/app/boards/olkb/preonic/Kconfig.defconfig similarity index 80% rename from app/boards/arm/preonic/Kconfig.defconfig rename to app/boards/olkb/preonic/Kconfig.defconfig index 86b2e3d0ef4..ab7b9b52548 100644 --- a/app/boards/arm/preonic/Kconfig.defconfig +++ b/app/boards/olkb/preonic/Kconfig.defconfig @@ -3,7 +3,7 @@ # Copyright (c) 2022 The ZMK Contributors # SPDX-License-Identifier: MIT -if BOARD_PREONIC_REV3 +if BOARD_PREONIC config ZMK_KEYBOARD_NAME default "Preonic V3" @@ -11,4 +11,4 @@ config ZMK_KEYBOARD_NAME config ZMK_KSCAN_MATRIX_POLLING default y -endif # BOARD_PREONIC_REV3 +endif # BOARD_PREONIC diff --git a/app/boards/arm/preonic/Kconfig.board b/app/boards/olkb/preonic/Kconfig.preonic similarity index 55% rename from app/boards/arm/preonic/Kconfig.board rename to app/boards/olkb/preonic/Kconfig.preonic index 39f35db6b50..d7caf7336f1 100644 --- a/app/boards/arm/preonic/Kconfig.board +++ b/app/boards/olkb/preonic/Kconfig.preonic @@ -3,6 +3,5 @@ # Copyright (c) 2022 The ZMK Contributors # SPDX-License-Identifier: MIT -config BOARD_PREONIC_REV3 - bool "Preonic V3 Keyboard" - depends on SOC_STM32F303XC +config BOARD_PREONIC + select SOC_STM32F303XC diff --git a/app/boards/arm/preonic/board.cmake b/app/boards/olkb/preonic/board.cmake similarity index 100% rename from app/boards/arm/preonic/board.cmake rename to app/boards/olkb/preonic/board.cmake diff --git a/app/boards/olkb/preonic/board.yml b/app/boards/olkb/preonic/board.yml new file mode 100644 index 00000000000..688df6846f7 --- /dev/null +++ b/app/boards/olkb/preonic/board.yml @@ -0,0 +1,10 @@ +board: + name: preonic + vendor: olkb + socs: + - name: stm32f303xc + revision: + format: major.minor.patch + default: 3.0.0 + revisions: + - name: 3.0.0 diff --git a/app/boards/arm/preonic/preonic_rev3.dts b/app/boards/olkb/preonic/preonic.dts similarity index 100% rename from app/boards/arm/preonic/preonic_rev3.dts rename to app/boards/olkb/preonic/preonic.dts diff --git a/app/boards/arm/preonic/preonic_rev3.keymap b/app/boards/olkb/preonic/preonic.keymap similarity index 100% rename from app/boards/arm/preonic/preonic_rev3.keymap rename to app/boards/olkb/preonic/preonic.keymap diff --git a/app/boards/arm/preonic/preonic_rev3.yaml b/app/boards/olkb/preonic/preonic.yaml similarity index 100% rename from app/boards/arm/preonic/preonic_rev3.yaml rename to app/boards/olkb/preonic/preonic.yaml diff --git a/app/boards/arm/preonic/preonic_rev3.zmk.yml b/app/boards/olkb/preonic/preonic.zmk.yml similarity index 100% rename from app/boards/arm/preonic/preonic_rev3.zmk.yml rename to app/boards/olkb/preonic/preonic.zmk.yml diff --git a/app/boards/arm/preonic/preonic_rev3_defconfig b/app/boards/olkb/preonic/preonic_defconfig similarity index 74% rename from app/boards/arm/preonic/preonic_rev3_defconfig rename to app/boards/olkb/preonic/preonic_defconfig index e063827a4e2..fbe05d58953 100644 --- a/app/boards/arm/preonic/preonic_rev3_defconfig +++ b/app/boards/olkb/preonic/preonic_defconfig @@ -1,7 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_STM32F3X=y -CONFIG_SOC_STM32F303XC=y # 72MHz system clock CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000 @@ -14,4 +12,4 @@ CONFIG_GPIO=y # clock configuration CONFIG_CLOCK_CONTROL=y -CONFIG_ZMK_USB=y \ No newline at end of file +CONFIG_ZMK_USB=y From 55146e09cd121a7e95f62dcd1c4c63a6b926f4da Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 4 Jun 2025 11:50:48 -0600 Subject: [PATCH 36/61] chore(deps): Pull in Zephyr optional group for nanopb. Ensure we enable nanopb by adding +optional group filter. --- app/west.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/app/west.yml b/app/west.yml index a93749d0d98..9e65c7bf92e 100644 --- a/app/west.yml +++ b/app/west.yml @@ -34,5 +34,6 @@ manifest: revision: 6cb4c283e76209d59c45fbcb218800cd19e9339d path: modules/msgs/zmk-studio-messages remote: zmkfirmware + group-filter: [+optional] self: west-commands: scripts/west-commands.yml From 8322ffac292df2d8faf53dbd33995693f4ef1a9a Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 4 Jun 2025 12:37:11 -0600 Subject: [PATCH 37/61] fix(ci): Prevent slash characters in artifact names. Move to HWMv2 means board IDs often include slashes, so replace those with underscores when doing file uploads. --- .github/workflows/build-user-config.yml | 2 +- .github/workflows/build.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-user-config.yml b/.github/workflows/build-user-config.yml index cf3247d04e0..e4c25d44b36 100644 --- a/.github/workflows/build-user-config.yml +++ b/.github/workflows/build-user-config.yml @@ -81,7 +81,7 @@ jobs: echo "extra_west_args=${extra_west_args}" >> $GITHUB_ENV echo "extra_cmake_args=${shield:+-DSHIELD=\"$shield\"}${zmk_load_arg}" >> $GITHUB_ENV echo "display_name=${shield:+$shield - }${board}" >> $GITHUB_ENV - echo "artifact_name=${artifact_name:-${shield:+$shield-}${board}-zmk}" >> $GITHUB_ENV + echo "artifact_name=${artifact_name:-${shield:+$shield-}${board//\//_}}-zmk}" >> $GITHUB_ENV - name: Copy config files to isolated temporary directory run: | diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 7c362f038ca..19a9d88a7fd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -123,7 +123,7 @@ jobs: } const cmakeName = shieldArgs['cmake-args'] ? '-' + (shieldArgs.nickname || shieldArgs['cmake-args'].split(' ').join('')) : ''; - const artifactName = `${{ matrix.board }}${shieldArgs.shield ? '-' + shieldArgs.shield : ''}${cmakeName}-zmk`; + const artifactName = `${{ matrix.board }}${shieldArgs.shield ? '-' + shieldArgs.shield : ''}${cmakeName}-zmk`.replace('/', '_'); await artifact.uploadArtifact(artifactName, files, rootDirectory, options); } catch (e) { From 55fdb0c37e46e25a62bb5d8515ff0848495eece2 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Fri, 13 Jun 2025 02:02:44 -0600 Subject: [PATCH 38/61] fix(usb): Adjust Kconfig settings for USB. * Ensure USB isn't initialized automatically before we do, which can happen if USB CDC logging is used/enabled for a given board. * Adjust USB HID to initialize the USB class/interface before we enable the USB device itself. --- app/Kconfig | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/Kconfig b/app/Kconfig index b54b1e358a1..9cd03b5392d 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -131,6 +131,9 @@ config ZMK_USB_BOOT select USB_HID_BOOT_PROTOCOL select USB_DEVICE_SOF +config USB_DEVICE_INITIALIZE_AT_BOOT + default n + if ZMK_USB config USB_NUMOF_EP_WRITE_RETRIES @@ -486,7 +489,7 @@ if USB_DEVICE_STACK config ZMK_USB_INIT_PRIORITY int "USB Init Priority" - default 94 + default 96 config ZMK_USB_HID_INIT_PRIORITY int "USB HID Init Priority" From 59d9e69c52ba0f438e2b7920e95dc328cf5b44cd Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 16 Jun 2025 01:05:45 -0600 Subject: [PATCH 39/61] fix(display): Fix setting the small font for the mono theme. Adjust for modified mono theme init function to pass the small font. --- app/src/display/main.c | 6 +++--- app/west.yml | 4 ++++ 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/app/src/display/main.c b/app/src/display/main.c index da6686cac64..7e4c6ae8214 100644 --- a/app/src/display/main.c +++ b/app/src/display/main.c @@ -110,10 +110,10 @@ static void initialize_theme() { #if IS_ENABLED(CONFIG_LV_USE_THEME_MONO) lv_disp_t *disp = lv_disp_get_default(); lv_theme_t *theme = - lv_theme_mono_init(disp, IS_ENABLED(CONFIG_ZMK_DISPLAY_INVERT), CONFIG_LV_FONT_DEFAULT); - theme->font_small = CONFIG_ZMK_LV_FONT_DEFAULT_SMALL; + lv_theme_mono_init(disp, IS_ENABLED(CONFIG_ZMK_DISPLAY_INVERT), CONFIG_LV_FONT_DEFAULT, + CONFIG_ZMK_LV_FONT_DEFAULT_SMALL, CONFIG_LV_FONT_DEFAULT); - disp->theme = theme; + lv_display_set_theme(disp, theme); #endif // CONFIG_LV_USE_THEME_MONO } diff --git a/app/west.yml b/app/west.yml index 9e65c7bf92e..ae8c6c6b72a 100644 --- a/app/west.yml +++ b/app/west.yml @@ -30,6 +30,10 @@ manifest: - openthread - edtt - trusted-firmware-m + - name: lvgl + revision: f1db87ee98f1810328a8419572fa42a3b5f352ae + path: modules/lib/gui/lvgl + remote: zmkfirmware - name: zmk-studio-messages revision: 6cb4c283e76209d59c45fbcb218800cd19e9339d path: modules/msgs/zmk-studio-messages From 6ac1d78b0b81149c478c18e1fc13ab5acfe0cb2f Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 16 Jun 2025 01:08:31 -0600 Subject: [PATCH 40/61] REMOVEME: Don't use nice view custom status screen until fixed. --- app/boards/shields/nice_view/Kconfig.defconfig | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/app/boards/shields/nice_view/Kconfig.defconfig b/app/boards/shields/nice_view/Kconfig.defconfig index c31cec89f0f..83832387986 100644 --- a/app/boards/shields/nice_view/Kconfig.defconfig +++ b/app/boards/shields/nice_view/Kconfig.defconfig @@ -20,9 +20,10 @@ choice ZMK_DISPLAY_WORK_QUEUE default ZMK_DISPLAY_WORK_QUEUE_DEDICATED endchoice -choice ZMK_DISPLAY_STATUS_SCREEN - default ZMK_DISPLAY_STATUS_SCREEN_CUSTOM -endchoice +# TODO: Restore once we fix up custom status code +# choice ZMK_DISPLAY_STATUS_SCREEN +# default ZMK_DISPLAY_STATUS_SCREEN_CUSTOM +# endchoice config LV_Z_MEM_POOL_SIZE default 4096 if ZMK_DISPLAY_STATUS_SCREEN_CUSTOM From 4a2c91ec85ada23b449ab7a4f85621bcb4568254 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 4 Jun 2025 11:08:03 -0600 Subject: [PATCH 41/61] chore(ci): Fix changed board IDs for core coverage. Adjust board IDs for our core coverage after move to HWMv2 and board versioning consistently. * planck_rev6 -> planck * bdn9_rev2 -> bdn9 --- app/core-coverage.yml | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/app/core-coverage.yml b/app/core-coverage.yml index 51bcedf2146..2eb12f21c2f 100644 --- a/app/core-coverage.yml +++ b/app/core-coverage.yml @@ -15,21 +15,21 @@ include: shield: hummingbird - board: nrf52840_m2 shield: m60 - - board: planck_rev6 + - board: planck - board: proton_c shield: clueboard_california - - board: nice_nano_v2 + - board: nice_nano shield: kyria_left cmake-args: "-DCONFIG_ZMK_DISPLAY=y" nickname: "display" - - board: nice_nano_v2 + - board: nice_nano shield: kyria_left cmake-args: "-DCONFIG_ZMK_POINTING=y" nickname: "mouse" - board: sparkfun_pro_micro_rp2040 shield: reviung41 cmake-args: "-DSNIPPET='zmk-usb-logging'" - - board: nice_nano_v2 + - board: nice_nano shield: kyria_right cmake-args: "-DCONFIG_ZMK_DISPLAY=y" nickname: "display" @@ -37,24 +37,24 @@ include: shield: romac_plus cmake-args: "-DCONFIG_ZMK_RGB_UNDERGLOW=y -DCONFIG_WS2812_STRIP=y" nickname: "underglow" - - board: nice_nano_v2 + - board: nice_nano shield: lily58_left nice_view_adapter nice_view nickname: "niceview" - - board: bdn9_rev2 + - board: bdn9 snippet: studio-rpc-usb-uart cmake-args: "-DCONFIG_ZMK_STUDIO=y" nickname: "stm32-studio" - - board: nice_nano_v2 + - board: nice_nano shield: reviung41 snippet: studio-rpc-usb-uart cmake-args: "-DCONFIG_ZMK_STUDIO=y" nickname: "nrf52-studio" - - board: nice_nano_v2 + - board: nice_nano shield: corne_left snippet: studio-rpc-usb-uart cmake-args: "-DCONFIG_ZMK_STUDIO=y" nickname: "split-left-studio" - - board: nice_nano_v2 + - board: nice_nano shield: corne_right snippet: studio-rpc-usb-uart cmake-args: "-DCONFIG_ZMK_STUDIO=y" From 68fbf5f32ba9949ba8c251a39fb34fdf0704dd55 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Mon, 16 Jun 2025 10:21:39 -0600 Subject: [PATCH 42/61] fix(underglow): Remove use of removed Kconfig WS2812 symbol --- app/boards/arm/adv360pro/adv360pro_left_defconfig | 1 - app/boards/arm/adv360pro/adv360pro_right_defconfig | 1 - app/boards/arm/ckp/bt60_v2_defconfig | 2 -- app/boards/arm/ckp/bt65_v1_defconfig | 4 +--- app/boards/arm/ckp/bt75_v1_defconfig | 4 +--- app/boards/arm/glove80/Kconfig.defconfig | 10 ---------- app/boards/keebio/bdn9/Kconfig.defconfig | 4 ---- app/boards/nicekeyboards/nice60/nice60_defconfig | 1 - app/boards/shields/chalice/chalice.conf | 1 - app/boards/shields/corne/corne.conf | 1 - app/boards/shields/elephant42/elephant42.conf | 3 +-- app/boards/shields/eternal_keypad/eternal_keypad.conf | 1 - app/boards/shields/helix/helix.conf | 1 - app/boards/shields/jorne/jorne.conf | 1 - app/boards/shields/kyria/kyria.conf | 1 - app/boards/shields/kyria/kyria_rev2.conf | 1 - app/boards/shields/kyria/kyria_rev3.conf | 1 - app/boards/shields/leeloo/leeloo_rev2.conf | 5 +---- app/boards/shields/leeloo_micro/leeloo_micro.conf | 5 +---- app/boards/shields/microdox/microdox.conf | 1 - app/boards/shields/microdox/microdox_v2.conf | 1 - app/boards/shields/murphpad/murphpad.conf | 1 - app/boards/shields/nibble/README.md | 1 - app/boards/shields/nibble/boards/nice_nano.conf | 2 -- app/boards/shields/redox/redox.conf | 1 - app/boards/shields/reviung34/reviung34.conf | 1 - app/boards/shields/reviung41/reviung41.conf | 1 - app/boards/shields/reviung5/reviung5.conf | 1 - app/boards/shields/reviung53/reviung53.conf | 1 - app/boards/shields/snap/snap.conf | 3 +-- app/boards/shields/sofle/Kconfig.defconfig | 6 ------ .../shields/splitkb_aurora_corne/Kconfig.defconfig | 4 ---- .../shields/splitkb_aurora_helix/Kconfig.defconfig | 4 ---- .../shields/splitkb_aurora_lily58/Kconfig.defconfig | 4 ---- .../shields/splitkb_aurora_sofle/Kconfig.defconfig | 4 ---- .../shields/splitkb_aurora_sweep/Kconfig.defconfig | 4 ---- app/boards/shields/tg4x/boards/nice_nano.conf | 2 -- app/boards/shields/tidbit/tidbit.conf | 2 -- .../shields/two_percent_milk/two_percent_milk.conf | 3 +-- app/boards/shields/zmk_uno/Kconfig.defconfig | 4 ---- 40 files changed, 7 insertions(+), 92 deletions(-) diff --git a/app/boards/arm/adv360pro/adv360pro_left_defconfig b/app/boards/arm/adv360pro/adv360pro_left_defconfig index 6eb5a8d042a..b6c22884138 100644 --- a/app/boards/arm/adv360pro/adv360pro_left_defconfig +++ b/app/boards/arm/adv360pro/adv360pro_left_defconfig @@ -32,7 +32,6 @@ CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM=y #RGB leds config -CONFIG_WS2812_STRIP=y CONFIG_ZMK_RGB_UNDERGLOW=y CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n diff --git a/app/boards/arm/adv360pro/adv360pro_right_defconfig b/app/boards/arm/adv360pro/adv360pro_right_defconfig index b5174549ea4..4138f008342 100644 --- a/app/boards/arm/adv360pro/adv360pro_right_defconfig +++ b/app/boards/arm/adv360pro/adv360pro_right_defconfig @@ -32,7 +32,6 @@ CONFIG_CLOCK_CONTROL_NRF_K32SRC_XTAL=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_150PPM=y #RGB leds config -CONFIG_WS2812_STRIP=y CONFIG_ZMK_RGB_UNDERGLOW=y CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y CONFIG_ZMK_RGB_UNDERGLOW_ON_START=n diff --git a/app/boards/arm/ckp/bt60_v2_defconfig b/app/boards/arm/ckp/bt60_v2_defconfig index fd1ae985995..f9e0eac60c1 100644 --- a/app/boards/arm/ckp/bt60_v2_defconfig +++ b/app/boards/arm/ckp/bt60_v2_defconfig @@ -32,8 +32,6 @@ CONFIG_ZMK_RGB_UNDERGLOW=y CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=262 -CONFIG_WS2812_STRIP=y -CONFIG_SPI=y CONFIG_BT_CTLR_TX_PWR_PLUS_8=y diff --git a/app/boards/arm/ckp/bt65_v1_defconfig b/app/boards/arm/ckp/bt65_v1_defconfig index be5f17eb54f..6d40037a717 100644 --- a/app/boards/arm/ckp/bt65_v1_defconfig +++ b/app/boards/arm/ckp/bt65_v1_defconfig @@ -32,10 +32,8 @@ CONFIG_ZMK_RGB_UNDERGLOW=y CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=262 -CONFIG_WS2812_STRIP=y -CONFIG_SPI=y CONFIG_BT_CTLR_TX_PWR_PLUS_8=y CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y diff --git a/app/boards/arm/ckp/bt75_v1_defconfig b/app/boards/arm/ckp/bt75_v1_defconfig index b4d85338aec..e7121a37a19 100644 --- a/app/boards/arm/ckp/bt75_v1_defconfig +++ b/app/boards/arm/ckp/bt75_v1_defconfig @@ -32,10 +32,8 @@ CONFIG_ZMK_RGB_UNDERGLOW=y CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=y CONFIG_ZMK_RGB_UNDERGLOW_ON_START=y CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=262 -CONFIG_WS2812_STRIP=y -CONFIG_SPI=y CONFIG_BT_CTLR_TX_PWR_PLUS_8=y CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y diff --git a/app/boards/arm/glove80/Kconfig.defconfig b/app/boards/arm/glove80/Kconfig.defconfig index b79c752f73a..6280a15120e 100644 --- a/app/boards/arm/glove80/Kconfig.defconfig +++ b/app/boards/arm/glove80/Kconfig.defconfig @@ -52,14 +52,4 @@ config LED_PWM endif # ZMK_BACKLIGHT -if ZMK_RGB_UNDERGLOW - -config SPI - default y - -config WS2812_STRIP - default y - -endif # ZMK_RGB_UNDERGLOW - endif # BOARD_GLOVE80_LH || BOARD_GLOVE80_RH diff --git a/app/boards/keebio/bdn9/Kconfig.defconfig b/app/boards/keebio/bdn9/Kconfig.defconfig index 96b7fe55329..3b6c065277a 100644 --- a/app/boards/keebio/bdn9/Kconfig.defconfig +++ b/app/boards/keebio/bdn9/Kconfig.defconfig @@ -11,8 +11,4 @@ config BOARD config ZMK_KEYBOARD_NAME default "BDN9 Rev2" -config ZMK_RGB_UNDERGLOW - select SPI - select WS2812_STRIP - endif # BOARD_BDN9 diff --git a/app/boards/nicekeyboards/nice60/nice60_defconfig b/app/boards/nicekeyboards/nice60/nice60_defconfig index 6bf5757c380..9b3a9144f3a 100644 --- a/app/boards/nicekeyboards/nice60/nice60_defconfig +++ b/app/boards/nicekeyboards/nice60/nice60_defconfig @@ -20,7 +20,6 @@ CONFIG_FLASH_PAGE_LAYOUT=y CONFIG_FLASH_MAP=y CONFIG_ZMK_RGB_UNDERGLOW=y -#CONFIG_WS2812_STRIP=y CONFIG_ZMK_RGB_UNDERGLOW_HUE_START=160 CONFIG_ZMK_RGB_UNDERGLOW_EFF_START=3 diff --git a/app/boards/shields/chalice/chalice.conf b/app/boards/shields/chalice/chalice.conf index da642256827..6ca70f41b04 100644 --- a/app/boards/shields/chalice/chalice.conf +++ b/app/boards/shields/chalice/chalice.conf @@ -1,3 +1,2 @@ # Uncomment the following lines to enable RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y \ No newline at end of file diff --git a/app/boards/shields/corne/corne.conf b/app/boards/shields/corne/corne.conf index 974243c8aea..b10586ccf05 100644 --- a/app/boards/shields/corne/corne.conf +++ b/app/boards/shields/corne/corne.conf @@ -1,6 +1,5 @@ # Uncomment the following lines to enable the Corne RGB Underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y # Uncomment the following line to enable the Corne OLED Display # CONFIG_ZMK_DISPLAY=y diff --git a/app/boards/shields/elephant42/elephant42.conf b/app/boards/shields/elephant42/elephant42.conf index 1b41763fa60..3a123f34038 100644 --- a/app/boards/shields/elephant42/elephant42.conf +++ b/app/boards/shields/elephant42/elephant42.conf @@ -1,6 +1,5 @@ # Uncomment the following lines to enable the Elephant42 RGB Underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y # Uncomment the following line to enable the Elephant42 OLED Display -# CONFIG_ZMK_DISPLAY=y \ No newline at end of file +# CONFIG_ZMK_DISPLAY=y diff --git a/app/boards/shields/eternal_keypad/eternal_keypad.conf b/app/boards/shields/eternal_keypad/eternal_keypad.conf index 65fa295516d..5f7c33bc209 100644 --- a/app/boards/shields/eternal_keypad/eternal_keypad.conf +++ b/app/boards/shields/eternal_keypad/eternal_keypad.conf @@ -6,4 +6,3 @@ # Uncomment the following lines to enable RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y diff --git a/app/boards/shields/helix/helix.conf b/app/boards/shields/helix/helix.conf index a8e57338de1..d8cb2f2e4c8 100644 --- a/app/boards/shields/helix/helix.conf +++ b/app/boards/shields/helix/helix.conf @@ -3,4 +3,3 @@ # Enables RGB functionality (Uncomment lines below to enable.) # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y \ No newline at end of file diff --git a/app/boards/shields/jorne/jorne.conf b/app/boards/shields/jorne/jorne.conf index c4e62fc0c3a..c94389a24ab 100644 --- a/app/boards/shields/jorne/jorne.conf +++ b/app/boards/shields/jorne/jorne.conf @@ -1,6 +1,5 @@ # Uncomment the following lines to enable the Jorne RGB Underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y # Uncomment the following line to enable the Jorne OLED Display # CONFIG_ZMK_DISPLAY=y diff --git a/app/boards/shields/kyria/kyria.conf b/app/boards/shields/kyria/kyria.conf index 7a0b5b6c54f..bb2b843ddfd 100644 --- a/app/boards/shields/kyria/kyria.conf +++ b/app/boards/shields/kyria/kyria.conf @@ -7,4 +7,3 @@ # Uncomment the following lines to enable RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y diff --git a/app/boards/shields/kyria/kyria_rev2.conf b/app/boards/shields/kyria/kyria_rev2.conf index 7a0b5b6c54f..bb2b843ddfd 100644 --- a/app/boards/shields/kyria/kyria_rev2.conf +++ b/app/boards/shields/kyria/kyria_rev2.conf @@ -7,4 +7,3 @@ # Uncomment the following lines to enable RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y diff --git a/app/boards/shields/kyria/kyria_rev3.conf b/app/boards/shields/kyria/kyria_rev3.conf index 7a0b5b6c54f..bb2b843ddfd 100644 --- a/app/boards/shields/kyria/kyria_rev3.conf +++ b/app/boards/shields/kyria/kyria_rev3.conf @@ -7,4 +7,3 @@ # Uncomment the following lines to enable RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y diff --git a/app/boards/shields/leeloo/leeloo_rev2.conf b/app/boards/shields/leeloo/leeloo_rev2.conf index 8c1cf3eed7b..35b12c2d3f7 100644 --- a/app/boards/shields/leeloo/leeloo_rev2.conf +++ b/app/boards/shields/leeloo/leeloo_rev2.conf @@ -14,9 +14,6 @@ # Uncomment the following line to enable per-key lighting # CONFIG_ZMK_RGB_UNDERGLOW=y -# Use the STRIP config specific to the LEDs you're using -# CONFIG_WS2812_STRIP=y - # Keep OLED or nice!view Displays on even when toggling off LEDs # Change to y if you wish to toggle Displays on and off with LEDs # CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n @@ -40,4 +37,4 @@ # Uncomment if you are experiencing connectivity issues; this # configuration item boosts the BLE transmit power. -# CONFIG_BT_CTLR_TX_PWR_PLUS_8=y \ No newline at end of file +# CONFIG_BT_CTLR_TX_PWR_PLUS_8=y diff --git a/app/boards/shields/leeloo_micro/leeloo_micro.conf b/app/boards/shields/leeloo_micro/leeloo_micro.conf index 02c1d60587b..deba268a860 100644 --- a/app/boards/shields/leeloo_micro/leeloo_micro.conf +++ b/app/boards/shields/leeloo_micro/leeloo_micro.conf @@ -14,9 +14,6 @@ # Uncomment the following line to enable per-key lighting # CONFIG_ZMK_RGB_UNDERGLOW=y -# Use the STRIP config specific to the LEDs you're using -# CONFIG_WS2812_STRIP=y - # Keep OLED or nice!view Displays on even when toggling off LEDs # Change to y if you wish to toggle Displays on and off with LEDs # CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n @@ -35,4 +32,4 @@ # Uncomment these two lines to add support for encoders # CONFIG_EC11=y -# CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y \ No newline at end of file +# CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y diff --git a/app/boards/shields/microdox/microdox.conf b/app/boards/shields/microdox/microdox.conf index 0d38398c029..b5df29aaddc 100644 --- a/app/boards/shields/microdox/microdox.conf +++ b/app/boards/shields/microdox/microdox.conf @@ -1,6 +1,5 @@ # Uncomment the following lines to enable the Microdox RGB Underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y # Uncomment the following line to enable the Microdox OLED Display # CONFIG_ZMK_DISPLAY=y diff --git a/app/boards/shields/microdox/microdox_v2.conf b/app/boards/shields/microdox/microdox_v2.conf index 0d38398c029..b5df29aaddc 100644 --- a/app/boards/shields/microdox/microdox_v2.conf +++ b/app/boards/shields/microdox/microdox_v2.conf @@ -1,6 +1,5 @@ # Uncomment the following lines to enable the Microdox RGB Underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y # Uncomment the following line to enable the Microdox OLED Display # CONFIG_ZMK_DISPLAY=y diff --git a/app/boards/shields/murphpad/murphpad.conf b/app/boards/shields/murphpad/murphpad.conf index e9236917e16..d9d0ae7de0e 100644 --- a/app/boards/shields/murphpad/murphpad.conf +++ b/app/boards/shields/murphpad/murphpad.conf @@ -12,4 +12,3 @@ CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y # Uncomment both to enable underglow # Note that this will only work if an implementation exists for your board; check under the shield folder for board-specific overlays. #CONFIG_ZMK_RGB_UNDERGLOW=y -#CONFIG_WS2812_STRIP=y diff --git a/app/boards/shields/nibble/README.md b/app/boards/shields/nibble/README.md index 42646f97099..a6d2add5752 100644 --- a/app/boards/shields/nibble/README.md +++ b/app/boards/shields/nibble/README.md @@ -8,7 +8,6 @@ If you built your nibble without the LEDs _and_ are using a nice!nano board, you ``` CONFIG_ZMK_RGB_UNDERGLOW=n -CONFIG_WS2812_STRIP=n ``` ## Encoder Notes diff --git a/app/boards/shields/nibble/boards/nice_nano.conf b/app/boards/shields/nibble/boards/nice_nano.conf index 14bed3d0fa3..d1b76b841b1 100644 --- a/app/boards/shields/nibble/boards/nice_nano.conf +++ b/app/boards/shields/nibble/boards/nice_nano.conf @@ -1,4 +1,2 @@ # Enable underglow CONFIG_ZMK_RGB_UNDERGLOW=y -# Use the STRIP config specific to the LEDs you're using -CONFIG_WS2812_STRIP=y \ No newline at end of file diff --git a/app/boards/shields/redox/redox.conf b/app/boards/shields/redox/redox.conf index a1837ef9fa3..25d3e6c40d9 100644 --- a/app/boards/shields/redox/redox.conf +++ b/app/boards/shields/redox/redox.conf @@ -1,3 +1,2 @@ # Uncomment the following lines to enable the Redox RGB Underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y \ No newline at end of file diff --git a/app/boards/shields/reviung34/reviung34.conf b/app/boards/shields/reviung34/reviung34.conf index 289f070ba3f..6ca70f41b04 100644 --- a/app/boards/shields/reviung34/reviung34.conf +++ b/app/boards/shields/reviung34/reviung34.conf @@ -1,3 +1,2 @@ # Uncomment the following lines to enable RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y diff --git a/app/boards/shields/reviung41/reviung41.conf b/app/boards/shields/reviung41/reviung41.conf index 289f070ba3f..6ca70f41b04 100644 --- a/app/boards/shields/reviung41/reviung41.conf +++ b/app/boards/shields/reviung41/reviung41.conf @@ -1,3 +1,2 @@ # Uncomment the following lines to enable RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y diff --git a/app/boards/shields/reviung5/reviung5.conf b/app/boards/shields/reviung5/reviung5.conf index d5d38739f5b..78ebd1d1e67 100644 --- a/app/boards/shields/reviung5/reviung5.conf +++ b/app/boards/shields/reviung5/reviung5.conf @@ -4,4 +4,3 @@ # Uncomment the following two lines to enable RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y \ No newline at end of file diff --git a/app/boards/shields/reviung53/reviung53.conf b/app/boards/shields/reviung53/reviung53.conf index 289f070ba3f..6ca70f41b04 100644 --- a/app/boards/shields/reviung53/reviung53.conf +++ b/app/boards/shields/reviung53/reviung53.conf @@ -1,3 +1,2 @@ # Uncomment the following lines to enable RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y diff --git a/app/boards/shields/snap/snap.conf b/app/boards/shields/snap/snap.conf index e76bccb4815..64c7602b446 100644 --- a/app/boards/shields/snap/snap.conf +++ b/app/boards/shields/snap/snap.conf @@ -12,6 +12,5 @@ # Uncomment the following lines to enable the RGB underglow # CONFIG_ZMK_RGB_UNDERGLOW_EXT_POWER=n # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y # CONFIG_ZMK_RGB_UNDERGLOW_HUE_STEP=5 -# CONFIG_ZMK_RGB_UNDERGLOW_SPD_START=1 \ No newline at end of file +# CONFIG_ZMK_RGB_UNDERGLOW_SPD_START=1 diff --git a/app/boards/shields/sofle/Kconfig.defconfig b/app/boards/shields/sofle/Kconfig.defconfig index 97b0bc5480a..767ea35a4e9 100644 --- a/app/boards/shields/sofle/Kconfig.defconfig +++ b/app/boards/shields/sofle/Kconfig.defconfig @@ -43,10 +43,4 @@ endchoice endif # LVGL -if ZMK_RGB_UNDERGLOW - -# config WS2812_STRIP -# default y -endif - endif diff --git a/app/boards/shields/splitkb_aurora_corne/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_corne/Kconfig.defconfig index f4011fcfacd..addfb8d137e 100644 --- a/app/boards/shields/splitkb_aurora_corne/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_corne/Kconfig.defconfig @@ -16,10 +16,6 @@ if SHIELD_SPLITKB_AURORA_CORNE_LEFT || SHIELD_SPLITKB_AURORA_CORNE_RIGHT config ZMK_SPLIT default y -config ZMK_RGB_UNDERGLOW - # select WS2812_STRIP - select SPI - config ZMK_DISPLAY if ZMK_DISPLAY diff --git a/app/boards/shields/splitkb_aurora_helix/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_helix/Kconfig.defconfig index 91537711e90..d9bb0eac286 100644 --- a/app/boards/shields/splitkb_aurora_helix/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_helix/Kconfig.defconfig @@ -16,10 +16,6 @@ if SHIELD_SPLITKB_AURORA_HELIX_LEFT || SHIELD_SPLITKB_AURORA_HELIX_RIGHT config ZMK_SPLIT default y -config ZMK_RGB_UNDERGLOW - # select WS2812_STRIP - select SPI - if ZMK_DISPLAY config SSD1306 diff --git a/app/boards/shields/splitkb_aurora_lily58/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_lily58/Kconfig.defconfig index e4e3f6894cd..9edcf346479 100644 --- a/app/boards/shields/splitkb_aurora_lily58/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_lily58/Kconfig.defconfig @@ -16,10 +16,6 @@ if SHIELD_SPLITKB_AURORA_LILY58_LEFT || SHIELD_SPLITKB_AURORA_LILY58_RIGHT config ZMK_SPLIT default y -config ZMK_RGB_UNDERGLOW - # select WS2812_STRIP - select SPI - config ZMK_DISPLAY if ZMK_DISPLAY diff --git a/app/boards/shields/splitkb_aurora_sofle/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_sofle/Kconfig.defconfig index 8dc5d808131..603c35c7af2 100644 --- a/app/boards/shields/splitkb_aurora_sofle/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_sofle/Kconfig.defconfig @@ -16,10 +16,6 @@ if SHIELD_SPLITKB_AURORA_SOFLE_LEFT || SHIELD_SPLITKB_AURORA_SOFLE_RIGHT config ZMK_SPLIT default y -config ZMK_RGB_UNDERGLOW - # select WS2812_STRIP - select SPI - if ZMK_DISPLAY config SSD1306 diff --git a/app/boards/shields/splitkb_aurora_sweep/Kconfig.defconfig b/app/boards/shields/splitkb_aurora_sweep/Kconfig.defconfig index 1f429867f87..c84cf94cd75 100644 --- a/app/boards/shields/splitkb_aurora_sweep/Kconfig.defconfig +++ b/app/boards/shields/splitkb_aurora_sweep/Kconfig.defconfig @@ -16,10 +16,6 @@ if SHIELD_SPLITKB_AURORA_SWEEP_LEFT || SHIELD_SPLITKB_AURORA_SWEEP_RIGHT config ZMK_SPLIT default y -config ZMK_RGB_UNDERGLOW - # select WS2812_STRIP - select SPI - config ZMK_DISPLAY if ZMK_DISPLAY diff --git a/app/boards/shields/tg4x/boards/nice_nano.conf b/app/boards/shields/tg4x/boards/nice_nano.conf index 7b0779480ec..c93ed4de8bd 100644 --- a/app/boards/shields/tg4x/boards/nice_nano.conf +++ b/app/boards/shields/tg4x/boards/nice_nano.conf @@ -3,5 +3,3 @@ # Enable underglow CONFIG_ZMK_RGB_UNDERGLOW=y -# Use the STRIP config specific to the LEDs you're using -CONFIG_WS2812_STRIP=y \ No newline at end of file diff --git a/app/boards/shields/tidbit/tidbit.conf b/app/boards/shields/tidbit/tidbit.conf index 82bd3477eab..bb2d0d9a85b 100644 --- a/app/boards/shields/tidbit/tidbit.conf +++ b/app/boards/shields/tidbit/tidbit.conf @@ -7,8 +7,6 @@ CONFIG_EC11_TRIGGER_GLOBAL_THREAD=y # Uncomment to enable underglow #CONFIG_ZMK_RGB_UNDERGLOW=y -# Use the STRIP config specific to the LEDs you're using -#CONFIG_WS2812_STRIP=y # Uncomment to enable the display # Note that an I2C OLED cannot be used at the same time as encoder 3. diff --git a/app/boards/shields/two_percent_milk/two_percent_milk.conf b/app/boards/shields/two_percent_milk/two_percent_milk.conf index 4baccacfdf3..077ebcf6ba3 100644 --- a/app/boards/shields/two_percent_milk/two_percent_milk.conf +++ b/app/boards/shields/two_percent_milk/two_percent_milk.conf @@ -3,7 +3,6 @@ # Uncomment the following lines to enable RGB Underglow # CONFIG_ZMK_RGB_UNDERGLOW=y -# CONFIG_WS2812_STRIP=y # Uncomment the following line to turn on logging, and set ZMK logging to debug output -# CONFIG_ZMK_USB_LOGGING=y \ No newline at end of file +# CONFIG_ZMK_USB_LOGGING=y diff --git a/app/boards/shields/zmk_uno/Kconfig.defconfig b/app/boards/shields/zmk_uno/Kconfig.defconfig index b348cf4eb40..9898a6e6867 100644 --- a/app/boards/shields/zmk_uno/Kconfig.defconfig +++ b/app/boards/shields/zmk_uno/Kconfig.defconfig @@ -16,10 +16,6 @@ config SHIELD_SSD1306_128X64 config SHIELD_SSD1306_128X32 select ZMK_DISPLAY -config ZMK_RGB_UNDERGLOW - # select WS2812_STRIP - select SPI - config ZMK_PM_SOFT_OFF default y if BOARD_NRF52840DK_NRF52840 From 15f18adebffc34e6f4e8cc69cd87f95baad1f594 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 3 Jul 2025 00:23:46 -0600 Subject: [PATCH 43/61] refactor(boards): Move PW CKP boards to HWMv2 Migrate the bt60, bt65, and bt75 to HWMv2. --- app/boards/arm/ckp/Kconfig | 8 ------ app/boards/arm/ckp/Kconfig.board | 16 ----------- app/boards/arm/ckp/Kconfig.defconfig | 28 ------------------- app/boards/polarityworks/bt60/Kconfig.bt60 | 7 +++++ .../polarityworks/bt60/Kconfig.defconfig | 22 +++++++++++++++ .../ckp => polarityworks/bt60}/board.cmake | 0 app/boards/polarityworks/bt60/board.yml | 5 ++++ .../bt60/bt60.dts} | 2 +- .../bt60/bt60.keymap} | 0 .../bt60/bt60.yaml} | 2 +- .../bt60/bt60.zmk.yml} | 2 +- .../bt60/bt60_defconfig} | 4 --- .../bt60}/pre_dt_board.cmake | 0 app/boards/polarityworks/bt65/Kconfig.bt65 | 7 +++++ .../polarityworks/bt65/Kconfig.defconfig | 22 +++++++++++++++ app/boards/polarityworks/bt65/board.cmake | 5 ++++ app/boards/polarityworks/bt65/board.yml | 5 ++++ .../bt65/bt65.dts} | 2 +- .../bt65/bt65.keymap} | 0 .../bt65/bt65.yaml} | 2 +- .../bt65/bt65.zmk.yml} | 2 +- .../bt65/bt65_defconfig} | 4 --- .../polarityworks/bt65/pre_dt_board.cmake | 9 ++++++ app/boards/polarityworks/bt75/Kconfig.bt75 | 7 +++++ .../polarityworks/bt75/Kconfig.defconfig | 22 +++++++++++++++ app/boards/polarityworks/bt75/board.cmake | 5 ++++ app/boards/polarityworks/bt75/board.yml | 5 ++++ .../bt75/bt75.dts} | 2 +- .../bt75/bt75.keymap} | 0 .../bt75/bt75.yaml} | 2 +- .../bt75/bt75.zmk.yml} | 2 +- .../bt75/bt75_defconfig} | 4 --- .../polarityworks/bt75/pre_dt_board.cmake | 9 ++++++ .../common}/ckp-pinctrl.dtsi | 0 .../ckp => polarityworks/common}/ckp.dtsi | 4 +++ 35 files changed, 143 insertions(+), 73 deletions(-) delete mode 100644 app/boards/arm/ckp/Kconfig delete mode 100644 app/boards/arm/ckp/Kconfig.board delete mode 100644 app/boards/arm/ckp/Kconfig.defconfig create mode 100644 app/boards/polarityworks/bt60/Kconfig.bt60 create mode 100644 app/boards/polarityworks/bt60/Kconfig.defconfig rename app/boards/{arm/ckp => polarityworks/bt60}/board.cmake (100%) create mode 100644 app/boards/polarityworks/bt60/board.yml rename app/boards/{arm/ckp/bt60_v2.dts => polarityworks/bt60/bt60.dts} (99%) rename app/boards/{arm/ckp/bt60_v2.keymap => polarityworks/bt60/bt60.keymap} (100%) rename app/boards/{arm/ckp/bt60_v2.yaml => polarityworks/bt60/bt60.yaml} (88%) rename app/boards/{arm/ckp/bt60_v2.zmk.yml => polarityworks/bt60/bt60.zmk.yml} (93%) rename app/boards/{arm/ckp/bt60_v2_defconfig => polarityworks/bt60/bt60_defconfig} (88%) rename app/boards/{arm/ckp => polarityworks/bt60}/pre_dt_board.cmake (100%) create mode 100644 app/boards/polarityworks/bt65/Kconfig.bt65 create mode 100644 app/boards/polarityworks/bt65/Kconfig.defconfig create mode 100644 app/boards/polarityworks/bt65/board.cmake create mode 100644 app/boards/polarityworks/bt65/board.yml rename app/boards/{arm/ckp/bt65_v1.dts => polarityworks/bt65/bt65.dts} (99%) rename app/boards/{arm/ckp/bt65_v1.keymap => polarityworks/bt65/bt65.keymap} (100%) rename app/boards/{arm/ckp/bt65_v1.yaml => polarityworks/bt65/bt65.yaml} (88%) rename app/boards/{arm/ckp/bt65_v1.zmk.yml => polarityworks/bt65/bt65.zmk.yml} (93%) rename app/boards/{arm/ckp/bt75_v1_defconfig => polarityworks/bt65/bt65_defconfig} (88%) create mode 100644 app/boards/polarityworks/bt65/pre_dt_board.cmake create mode 100644 app/boards/polarityworks/bt75/Kconfig.bt75 create mode 100644 app/boards/polarityworks/bt75/Kconfig.defconfig create mode 100644 app/boards/polarityworks/bt75/board.cmake create mode 100644 app/boards/polarityworks/bt75/board.yml rename app/boards/{arm/ckp/bt75_v1.dts => polarityworks/bt75/bt75.dts} (99%) rename app/boards/{arm/ckp/bt75_v1.keymap => polarityworks/bt75/bt75.keymap} (100%) rename app/boards/{arm/ckp/bt75_v1.yaml => polarityworks/bt75/bt75.yaml} (88%) rename app/boards/{arm/ckp/bt75_v1.zmk.yml => polarityworks/bt75/bt75.zmk.yml} (93%) rename app/boards/{arm/ckp/bt65_v1_defconfig => polarityworks/bt75/bt75_defconfig} (88%) create mode 100644 app/boards/polarityworks/bt75/pre_dt_board.cmake rename app/boards/{arm/ckp => polarityworks/common}/ckp-pinctrl.dtsi (100%) rename app/boards/{arm/ckp => polarityworks/common}/ckp.dtsi (98%) diff --git a/app/boards/arm/ckp/Kconfig b/app/boards/arm/ckp/Kconfig deleted file mode 100644 index 7baf1486102..00000000000 --- a/app/boards/arm/ckp/Kconfig +++ /dev/null @@ -1,8 +0,0 @@ -# Copyright (c) 2022 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_ENABLE_DCDC - bool "Enable DCDC mode" - select SOC_DCDC_NRF52X - default y - depends on BOARD_BT60_V2 || BOARD_BT65_V1 || BOARD_BT75_V1 diff --git a/app/boards/arm/ckp/Kconfig.board b/app/boards/arm/ckp/Kconfig.board deleted file mode 100644 index a98a31673f4..00000000000 --- a/app/boards/arm/ckp/Kconfig.board +++ /dev/null @@ -1,16 +0,0 @@ -# CKP boards configuration - -# Copyright (c) 2022 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_BT60_V2 - bool "bt60_v2" - depends on SOC_NRF52840_QIAA - -config BOARD_BT65_V1 - bool "bt65_v1" - depends on SOC_NRF52840_QIAA - -config BOARD_BT75_V1 - bool "bt75_v1" - depends on SOC_NRF52840_QIAA diff --git a/app/boards/arm/ckp/Kconfig.defconfig b/app/boards/arm/ckp/Kconfig.defconfig deleted file mode 100644 index 376d4619fde..00000000000 --- a/app/boards/arm/ckp/Kconfig.defconfig +++ /dev/null @@ -1,28 +0,0 @@ -# Copyright (c) 2022 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD - default "bt60_v2" if BOARD_BT60_V2 - default "bt65_v1" if BOARD_BT65_V1 - default "bt75_v1" if BOARD_BT75_V1 -config ZMK_KEYBOARD_NAME - default "BT60 V2" if BOARD_BT60_V2 - default "BT65" if BOARD_BT65_V1 - default "BT75" if BOARD_BT75_V1 - -if BOARD_BT60_V2 || BOARD_BT65_V1 || BOARD_BT75_V1 - -if USB - -config USB_NRFX - default y - -config USB_DEVICE_STACK - default y - -endif # USB - -config BT_CTLR - default BT - -endif # BOARD_BT60_V2 || BOARD_BT65_V1 || BOARD_BT75_V1 diff --git a/app/boards/polarityworks/bt60/Kconfig.bt60 b/app/boards/polarityworks/bt60/Kconfig.bt60 new file mode 100644 index 00000000000..ff32ae2b084 --- /dev/null +++ b/app/boards/polarityworks/bt60/Kconfig.bt60 @@ -0,0 +1,7 @@ +# CKP BT60 board configuration + +# Copyright (c) 2022 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config BOARD_BT60 + select SOC_NRF52840_QIAA diff --git a/app/boards/polarityworks/bt60/Kconfig.defconfig b/app/boards/polarityworks/bt60/Kconfig.defconfig new file mode 100644 index 00000000000..a37800a6dd2 --- /dev/null +++ b/app/boards/polarityworks/bt60/Kconfig.defconfig @@ -0,0 +1,22 @@ +# Copyright (c) 2022 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config ZMK_KEYBOARD_NAME + default "BT60" if BOARD_BT60 + +if BOARD_BT60 + +if USB + +config USB_NRFX + default y + +config USB_DEVICE_STACK + default y + +endif # USB + +config BT_CTLR + default BT + +endif # BOARD_BT60 diff --git a/app/boards/arm/ckp/board.cmake b/app/boards/polarityworks/bt60/board.cmake similarity index 100% rename from app/boards/arm/ckp/board.cmake rename to app/boards/polarityworks/bt60/board.cmake diff --git a/app/boards/polarityworks/bt60/board.yml b/app/boards/polarityworks/bt60/board.yml new file mode 100644 index 00000000000..2e38bd842ac --- /dev/null +++ b/app/boards/polarityworks/bt60/board.yml @@ -0,0 +1,5 @@ +board: + name: bt60 + vendor: polarityworks + socs: + - name: nrf52840 diff --git a/app/boards/arm/ckp/bt60_v2.dts b/app/boards/polarityworks/bt60/bt60.dts similarity index 99% rename from app/boards/arm/ckp/bt60_v2.dts rename to app/boards/polarityworks/bt60/bt60.dts index 1cdb0307a2c..4fef4d6107c 100644 --- a/app/boards/arm/ckp/bt60_v2.dts +++ b/app/boards/polarityworks/bt60/bt60.dts @@ -5,7 +5,7 @@ */ /dts-v1/; -#include "ckp.dtsi" +#include "../common/ckp.dtsi" #include #include #include diff --git a/app/boards/arm/ckp/bt60_v2.keymap b/app/boards/polarityworks/bt60/bt60.keymap similarity index 100% rename from app/boards/arm/ckp/bt60_v2.keymap rename to app/boards/polarityworks/bt60/bt60.keymap diff --git a/app/boards/arm/ckp/bt60_v2.yaml b/app/boards/polarityworks/bt60/bt60.yaml similarity index 88% rename from app/boards/arm/ckp/bt60_v2.yaml rename to app/boards/polarityworks/bt60/bt60.yaml index 2a3f3b47a47..c2dc3736b5a 100644 --- a/app/boards/arm/ckp/bt60_v2.yaml +++ b/app/boards/polarityworks/bt60/bt60.yaml @@ -1,4 +1,4 @@ -identifier: bt60_v2 +identifier: bt60 name: BT60 V2 type: mcu arch: arm diff --git a/app/boards/arm/ckp/bt60_v2.zmk.yml b/app/boards/polarityworks/bt60/bt60.zmk.yml similarity index 93% rename from app/boards/arm/ckp/bt60_v2.zmk.yml rename to app/boards/polarityworks/bt60/bt60.zmk.yml index eef36a4e27c..1fefe6e356e 100644 --- a/app/boards/arm/ckp/bt60_v2.zmk.yml +++ b/app/boards/polarityworks/bt60/bt60.zmk.yml @@ -1,5 +1,5 @@ file_format: "1" -id: bt60_v2 +id: bt60 name: BT60 V2 type: board arch: arm diff --git a/app/boards/arm/ckp/bt60_v2_defconfig b/app/boards/polarityworks/bt60/bt60_defconfig similarity index 88% rename from app/boards/arm/ckp/bt60_v2_defconfig rename to app/boards/polarityworks/bt60/bt60_defconfig index f9e0eac60c1..27b0681e3e3 100644 --- a/app/boards/arm/ckp/bt60_v2_defconfig +++ b/app/boards/polarityworks/bt60/bt60_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_BT60_V2=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/app/boards/arm/ckp/pre_dt_board.cmake b/app/boards/polarityworks/bt60/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/ckp/pre_dt_board.cmake rename to app/boards/polarityworks/bt60/pre_dt_board.cmake diff --git a/app/boards/polarityworks/bt65/Kconfig.bt65 b/app/boards/polarityworks/bt65/Kconfig.bt65 new file mode 100644 index 00000000000..d4cd9f87033 --- /dev/null +++ b/app/boards/polarityworks/bt65/Kconfig.bt65 @@ -0,0 +1,7 @@ +# CKP BT65 board configuration + +# Copyright (c) 2022 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config BOARD_BT65 + select SOC_NRF52840_QIAA diff --git a/app/boards/polarityworks/bt65/Kconfig.defconfig b/app/boards/polarityworks/bt65/Kconfig.defconfig new file mode 100644 index 00000000000..ac6b221e194 --- /dev/null +++ b/app/boards/polarityworks/bt65/Kconfig.defconfig @@ -0,0 +1,22 @@ +# Copyright (c) 2022 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config ZMK_KEYBOARD_NAME + default "BT65" if BOARD_BT65 + +if BOARD_BT65 + +if USB + +config USB_NRFX + default y + +config USB_DEVICE_STACK + default y + +endif # USB + +config BT_CTLR + default BT + +endif # BOARD_BT65 diff --git a/app/boards/polarityworks/bt65/board.cmake b/app/boards/polarityworks/bt65/board.cmake new file mode 100644 index 00000000000..73fa64a9aa0 --- /dev/null +++ b/app/boards/polarityworks/bt65/board.cmake @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: MIT + +board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset") +include(${ZEPHYR_BASE}/boards/common/uf2.board.cmake) +include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake) diff --git a/app/boards/polarityworks/bt65/board.yml b/app/boards/polarityworks/bt65/board.yml new file mode 100644 index 00000000000..97f443cfd03 --- /dev/null +++ b/app/boards/polarityworks/bt65/board.yml @@ -0,0 +1,5 @@ +board: + name: bt65 + vendor: polarityworks + socs: + - name: nrf52840 diff --git a/app/boards/arm/ckp/bt65_v1.dts b/app/boards/polarityworks/bt65/bt65.dts similarity index 99% rename from app/boards/arm/ckp/bt65_v1.dts rename to app/boards/polarityworks/bt65/bt65.dts index 77e81289f04..d11a558cc02 100644 --- a/app/boards/arm/ckp/bt65_v1.dts +++ b/app/boards/polarityworks/bt65/bt65.dts @@ -5,7 +5,7 @@ */ /dts-v1/; -#include "ckp.dtsi" +#include "../common/ckp.dtsi" #include #include #include diff --git a/app/boards/arm/ckp/bt65_v1.keymap b/app/boards/polarityworks/bt65/bt65.keymap similarity index 100% rename from app/boards/arm/ckp/bt65_v1.keymap rename to app/boards/polarityworks/bt65/bt65.keymap diff --git a/app/boards/arm/ckp/bt65_v1.yaml b/app/boards/polarityworks/bt65/bt65.yaml similarity index 88% rename from app/boards/arm/ckp/bt65_v1.yaml rename to app/boards/polarityworks/bt65/bt65.yaml index 61edacce6c2..52bc38ae958 100644 --- a/app/boards/arm/ckp/bt65_v1.yaml +++ b/app/boards/polarityworks/bt65/bt65.yaml @@ -1,4 +1,4 @@ -identifier: bt65_v1 +identifier: bt65 name: BT65_V1 type: mcu arch: arm diff --git a/app/boards/arm/ckp/bt65_v1.zmk.yml b/app/boards/polarityworks/bt65/bt65.zmk.yml similarity index 93% rename from app/boards/arm/ckp/bt65_v1.zmk.yml rename to app/boards/polarityworks/bt65/bt65.zmk.yml index b0be40bbb79..136ace23c6c 100644 --- a/app/boards/arm/ckp/bt65_v1.zmk.yml +++ b/app/boards/polarityworks/bt65/bt65.zmk.yml @@ -1,5 +1,5 @@ file_format: "1" -id: bt65_v1 +id: bt65 name: BT65 type: board arch: arm diff --git a/app/boards/arm/ckp/bt75_v1_defconfig b/app/boards/polarityworks/bt65/bt65_defconfig similarity index 88% rename from app/boards/arm/ckp/bt75_v1_defconfig rename to app/boards/polarityworks/bt65/bt65_defconfig index e7121a37a19..27b0681e3e3 100644 --- a/app/boards/arm/ckp/bt75_v1_defconfig +++ b/app/boards/polarityworks/bt65/bt65_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_BT75_V1=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/app/boards/polarityworks/bt65/pre_dt_board.cmake b/app/boards/polarityworks/bt65/pre_dt_board.cmake new file mode 100644 index 00000000000..05b0efe5f04 --- /dev/null +++ b/app/boards/polarityworks/bt65/pre_dt_board.cmake @@ -0,0 +1,9 @@ +# +# Copyright (c) 2024 The ZMK Contributors +# SPDX-License-Identifier: MIT +# + +# Suppresses duplicate unit-address warning at build time for power, clock, acl and flash-controller +# https://docs.zephyrproject.org/latest/build/dts/intro-input-output.html + +list(APPEND EXTRA_DTC_FLAGS "-Wno-unique_unit_address_if_enabled") \ No newline at end of file diff --git a/app/boards/polarityworks/bt75/Kconfig.bt75 b/app/boards/polarityworks/bt75/Kconfig.bt75 new file mode 100644 index 00000000000..9114d420db9 --- /dev/null +++ b/app/boards/polarityworks/bt75/Kconfig.bt75 @@ -0,0 +1,7 @@ +# CKP BT75 board configuration + +# Copyright (c) 2022 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config BOARD_BT75 + select SOC_NRF52840_QIAA diff --git a/app/boards/polarityworks/bt75/Kconfig.defconfig b/app/boards/polarityworks/bt75/Kconfig.defconfig new file mode 100644 index 00000000000..ded51c247f1 --- /dev/null +++ b/app/boards/polarityworks/bt75/Kconfig.defconfig @@ -0,0 +1,22 @@ +# Copyright (c) 2022 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config ZMK_KEYBOARD_NAME + default "BT75" if BOARD_BT75 + +if BOARD_BT75 + +if USB + +config USB_NRFX + default y + +config USB_DEVICE_STACK + default y + +endif # USB + +config BT_CTLR + default BT + +endif # BOARD_BT75 diff --git a/app/boards/polarityworks/bt75/board.cmake b/app/boards/polarityworks/bt75/board.cmake new file mode 100644 index 00000000000..73fa64a9aa0 --- /dev/null +++ b/app/boards/polarityworks/bt75/board.cmake @@ -0,0 +1,5 @@ +# SPDX-License-Identifier: MIT + +board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset") +include(${ZEPHYR_BASE}/boards/common/uf2.board.cmake) +include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake) diff --git a/app/boards/polarityworks/bt75/board.yml b/app/boards/polarityworks/bt75/board.yml new file mode 100644 index 00000000000..d12dcb3a169 --- /dev/null +++ b/app/boards/polarityworks/bt75/board.yml @@ -0,0 +1,5 @@ +board: + name: bt75 + vendor: polarityworks + socs: + - name: nrf52840 diff --git a/app/boards/arm/ckp/bt75_v1.dts b/app/boards/polarityworks/bt75/bt75.dts similarity index 99% rename from app/boards/arm/ckp/bt75_v1.dts rename to app/boards/polarityworks/bt75/bt75.dts index 7c9ab664e3c..f8cd8524b15 100644 --- a/app/boards/arm/ckp/bt75_v1.dts +++ b/app/boards/polarityworks/bt75/bt75.dts @@ -5,7 +5,7 @@ */ /dts-v1/; -#include "ckp.dtsi" +#include "../common/ckp.dtsi" #include #include #include diff --git a/app/boards/arm/ckp/bt75_v1.keymap b/app/boards/polarityworks/bt75/bt75.keymap similarity index 100% rename from app/boards/arm/ckp/bt75_v1.keymap rename to app/boards/polarityworks/bt75/bt75.keymap diff --git a/app/boards/arm/ckp/bt75_v1.yaml b/app/boards/polarityworks/bt75/bt75.yaml similarity index 88% rename from app/boards/arm/ckp/bt75_v1.yaml rename to app/boards/polarityworks/bt75/bt75.yaml index e4faa09f52c..b628d81cf4c 100644 --- a/app/boards/arm/ckp/bt75_v1.yaml +++ b/app/boards/polarityworks/bt75/bt75.yaml @@ -1,4 +1,4 @@ -identifier: bt75_v1 +identifier: bt75 name: BT75_V1 type: mcu arch: arm diff --git a/app/boards/arm/ckp/bt75_v1.zmk.yml b/app/boards/polarityworks/bt75/bt75.zmk.yml similarity index 93% rename from app/boards/arm/ckp/bt75_v1.zmk.yml rename to app/boards/polarityworks/bt75/bt75.zmk.yml index e135abfac6a..d4424a4bb98 100644 --- a/app/boards/arm/ckp/bt75_v1.zmk.yml +++ b/app/boards/polarityworks/bt75/bt75.zmk.yml @@ -1,5 +1,5 @@ file_format: "1" -id: bt75_v1 +id: bt75 name: BT75 V1 type: board arch: arm diff --git a/app/boards/arm/ckp/bt65_v1_defconfig b/app/boards/polarityworks/bt75/bt75_defconfig similarity index 88% rename from app/boards/arm/ckp/bt65_v1_defconfig rename to app/boards/polarityworks/bt75/bt75_defconfig index 6d40037a717..27b0681e3e3 100644 --- a/app/boards/arm/ckp/bt65_v1_defconfig +++ b/app/boards/polarityworks/bt75/bt75_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_BT65_V1=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/app/boards/polarityworks/bt75/pre_dt_board.cmake b/app/boards/polarityworks/bt75/pre_dt_board.cmake new file mode 100644 index 00000000000..05b0efe5f04 --- /dev/null +++ b/app/boards/polarityworks/bt75/pre_dt_board.cmake @@ -0,0 +1,9 @@ +# +# Copyright (c) 2024 The ZMK Contributors +# SPDX-License-Identifier: MIT +# + +# Suppresses duplicate unit-address warning at build time for power, clock, acl and flash-controller +# https://docs.zephyrproject.org/latest/build/dts/intro-input-output.html + +list(APPEND EXTRA_DTC_FLAGS "-Wno-unique_unit_address_if_enabled") \ No newline at end of file diff --git a/app/boards/arm/ckp/ckp-pinctrl.dtsi b/app/boards/polarityworks/common/ckp-pinctrl.dtsi similarity index 100% rename from app/boards/arm/ckp/ckp-pinctrl.dtsi rename to app/boards/polarityworks/common/ckp-pinctrl.dtsi diff --git a/app/boards/arm/ckp/ckp.dtsi b/app/boards/polarityworks/common/ckp.dtsi similarity index 98% rename from app/boards/arm/ckp/ckp.dtsi rename to app/boards/polarityworks/common/ckp.dtsi index b127cabc71a..51a4347fb27 100644 --- a/app/boards/arm/ckp/ckp.dtsi +++ b/app/boards/polarityworks/common/ckp.dtsi @@ -146,6 +146,10 @@ zephyr_udc0: &usbd { status = "okay"; }; +®1 { + regulator-initial-mode = ; +}; + &flash0 { /* From 902bc17ced56e815f4c9e86c4217fb765255e4c7 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 3 Jul 2025 01:00:40 -0600 Subject: [PATCH 44/61] refactor(boards): Move Puchi BLE to HWMv2 Migrate the Puchi BLE to HWMv2. --- app/boards/{arm => keycapsss}/puchi_ble/CMakeLists.txt | 0 app/boards/{arm => keycapsss}/puchi_ble/Kconfig | 0 app/boards/{arm => keycapsss}/puchi_ble/Kconfig.defconfig | 4 ++-- .../Kconfig.board => keycapsss/puchi_ble/Kconfig.puchi_ble} | 5 ++--- .../puchi_ble/arduino_pro_micro_pins.dtsi | 0 app/boards/{arm => keycapsss}/puchi_ble/board.cmake | 0 app/boards/keycapsss/puchi_ble/board.yml | 5 +++++ app/boards/{arm => keycapsss}/puchi_ble/pinmux.c | 2 +- app/boards/{arm => keycapsss}/puchi_ble/pre_dt_board.cmake | 0 .../puchi_ble/puchi_ble-pinctrl.dtsi} | 0 .../puchi_ble_v1.dts => keycapsss/puchi_ble/puchi_ble.dts} | 2 +- .../puchi_ble/puchi_ble.yaml} | 4 ++-- .../puchi_ble/puchi_ble.zmk.yml} | 2 +- .../puchi_ble/puchi_ble_defconfig} | 6 +----- 14 files changed, 15 insertions(+), 15 deletions(-) rename app/boards/{arm => keycapsss}/puchi_ble/CMakeLists.txt (100%) rename app/boards/{arm => keycapsss}/puchi_ble/Kconfig (100%) rename app/boards/{arm => keycapsss}/puchi_ble/Kconfig.defconfig (81%) rename app/boards/{arm/puchi_ble/Kconfig.board => keycapsss/puchi_ble/Kconfig.puchi_ble} (56%) rename app/boards/{arm => keycapsss}/puchi_ble/arduino_pro_micro_pins.dtsi (100%) rename app/boards/{arm => keycapsss}/puchi_ble/board.cmake (100%) create mode 100644 app/boards/keycapsss/puchi_ble/board.yml rename app/boards/{arm => keycapsss}/puchi_ble/pinmux.c (95%) rename app/boards/{arm => keycapsss}/puchi_ble/pre_dt_board.cmake (100%) rename app/boards/{arm/puchi_ble/puchi_ble_v1-pinctrl.dtsi => keycapsss/puchi_ble/puchi_ble-pinctrl.dtsi} (100%) rename app/boards/{arm/puchi_ble/puchi_ble_v1.dts => keycapsss/puchi_ble/puchi_ble.dts} (98%) rename app/boards/{arm/puchi_ble/puchi_ble_v1.yaml => keycapsss/puchi_ble/puchi_ble.yaml} (76%) rename app/boards/{arm/puchi_ble/puchi_ble_v1.zmk.yml => keycapsss/puchi_ble/puchi_ble.zmk.yml} (92%) rename app/boards/{arm/puchi_ble/puchi_ble_v1_defconfig => keycapsss/puchi_ble/puchi_ble_defconfig} (81%) diff --git a/app/boards/arm/puchi_ble/CMakeLists.txt b/app/boards/keycapsss/puchi_ble/CMakeLists.txt similarity index 100% rename from app/boards/arm/puchi_ble/CMakeLists.txt rename to app/boards/keycapsss/puchi_ble/CMakeLists.txt diff --git a/app/boards/arm/puchi_ble/Kconfig b/app/boards/keycapsss/puchi_ble/Kconfig similarity index 100% rename from app/boards/arm/puchi_ble/Kconfig rename to app/boards/keycapsss/puchi_ble/Kconfig diff --git a/app/boards/arm/puchi_ble/Kconfig.defconfig b/app/boards/keycapsss/puchi_ble/Kconfig.defconfig similarity index 81% rename from app/boards/arm/puchi_ble/Kconfig.defconfig rename to app/boards/keycapsss/puchi_ble/Kconfig.defconfig index 0ba7eefd043..0411ee3f217 100644 --- a/app/boards/arm/puchi_ble/Kconfig.defconfig +++ b/app/boards/keycapsss/puchi_ble/Kconfig.defconfig @@ -1,7 +1,7 @@ # Copyright (c) 2022 The ZMK Contributors # SPDX-License-Identifier: MIT -if BOARD_PUCHI_BLE_v1 +if BOARD_PUCHI_BLE config BOARD default "puchi_ble" @@ -16,4 +16,4 @@ endif # USB_DEVICE_STACK config BT_CTLR default BT -endif # BOARD_PUCHI_BLE_v1 +endif # BOARD_PUCHI_BLE diff --git a/app/boards/arm/puchi_ble/Kconfig.board b/app/boards/keycapsss/puchi_ble/Kconfig.puchi_ble similarity index 56% rename from app/boards/arm/puchi_ble/Kconfig.board rename to app/boards/keycapsss/puchi_ble/Kconfig.puchi_ble index 0f5b7f96d84..d8f69a163ce 100644 --- a/app/boards/arm/puchi_ble/Kconfig.board +++ b/app/boards/keycapsss/puchi_ble/Kconfig.puchi_ble @@ -3,6 +3,5 @@ # Copyright (c) 2022 The ZMK Contributors # SPDX-License-Identifier: MIT -config BOARD_PUCHI_BLE_v1 - bool "puchi_ble_v1" - depends on SOC_NRF52840_QIAA +config BOARD_PUCHI_BLE + select SOC_NRF52840_QIAA diff --git a/app/boards/arm/puchi_ble/arduino_pro_micro_pins.dtsi b/app/boards/keycapsss/puchi_ble/arduino_pro_micro_pins.dtsi similarity index 100% rename from app/boards/arm/puchi_ble/arduino_pro_micro_pins.dtsi rename to app/boards/keycapsss/puchi_ble/arduino_pro_micro_pins.dtsi diff --git a/app/boards/arm/puchi_ble/board.cmake b/app/boards/keycapsss/puchi_ble/board.cmake similarity index 100% rename from app/boards/arm/puchi_ble/board.cmake rename to app/boards/keycapsss/puchi_ble/board.cmake diff --git a/app/boards/keycapsss/puchi_ble/board.yml b/app/boards/keycapsss/puchi_ble/board.yml new file mode 100644 index 00000000000..d192a306393 --- /dev/null +++ b/app/boards/keycapsss/puchi_ble/board.yml @@ -0,0 +1,5 @@ +board: + name: puchi_ble + vendor: keycapsss + socs: + - name: nrf52840 diff --git a/app/boards/arm/puchi_ble/pinmux.c b/app/boards/keycapsss/puchi_ble/pinmux.c similarity index 95% rename from app/boards/arm/puchi_ble/pinmux.c rename to app/boards/keycapsss/puchi_ble/pinmux.c index 8475cfb1bdc..42689383d51 100644 --- a/app/boards/arm/puchi_ble/pinmux.c +++ b/app/boards/keycapsss/puchi_ble/pinmux.c @@ -12,7 +12,7 @@ #include static int pinmux_puchi_ble_init(void) { -#if CONFIG_BOARD_PUCHI_BLE_v1 +#if CONFIG_BOARD_PUCHI_BLE const struct device *p0 = DEVICE_DT_GET(DT_NODELABEL(gpio0)); #if CONFIG_BOARD_PUCHI_BLE_CHARGER gpio_pin_configure(p0, 5, GPIO_OUTPUT); diff --git a/app/boards/arm/puchi_ble/pre_dt_board.cmake b/app/boards/keycapsss/puchi_ble/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/puchi_ble/pre_dt_board.cmake rename to app/boards/keycapsss/puchi_ble/pre_dt_board.cmake diff --git a/app/boards/arm/puchi_ble/puchi_ble_v1-pinctrl.dtsi b/app/boards/keycapsss/puchi_ble/puchi_ble-pinctrl.dtsi similarity index 100% rename from app/boards/arm/puchi_ble/puchi_ble_v1-pinctrl.dtsi rename to app/boards/keycapsss/puchi_ble/puchi_ble-pinctrl.dtsi diff --git a/app/boards/arm/puchi_ble/puchi_ble_v1.dts b/app/boards/keycapsss/puchi_ble/puchi_ble.dts similarity index 98% rename from app/boards/arm/puchi_ble/puchi_ble_v1.dts rename to app/boards/keycapsss/puchi_ble/puchi_ble.dts index 9f3194e036f..8fc35000ddb 100644 --- a/app/boards/arm/puchi_ble/puchi_ble_v1.dts +++ b/app/boards/keycapsss/puchi_ble/puchi_ble.dts @@ -7,7 +7,7 @@ /dts-v1/; #include #include "arduino_pro_micro_pins.dtsi" -#include "puchi_ble_v1-pinctrl.dtsi" +#include "puchi_ble-pinctrl.dtsi" / { model = "puchi_ble"; diff --git a/app/boards/arm/puchi_ble/puchi_ble_v1.yaml b/app/boards/keycapsss/puchi_ble/puchi_ble.yaml similarity index 76% rename from app/boards/arm/puchi_ble/puchi_ble_v1.yaml rename to app/boards/keycapsss/puchi_ble/puchi_ble.yaml index 18770722242..19d1b122f31 100644 --- a/app/boards/arm/puchi_ble/puchi_ble_v1.yaml +++ b/app/boards/keycapsss/puchi_ble/puchi_ble.yaml @@ -1,5 +1,5 @@ -identifier: puchi_ble_v1 -name: puchi_ble_v1 +identifier: puchi_ble +name: puchi_ble type: mcu arch: arm toolchain: diff --git a/app/boards/arm/puchi_ble/puchi_ble_v1.zmk.yml b/app/boards/keycapsss/puchi_ble/puchi_ble.zmk.yml similarity index 92% rename from app/boards/arm/puchi_ble/puchi_ble_v1.zmk.yml rename to app/boards/keycapsss/puchi_ble/puchi_ble.zmk.yml index f3114008043..18f6463cb2c 100644 --- a/app/boards/arm/puchi_ble/puchi_ble_v1.zmk.yml +++ b/app/boards/keycapsss/puchi_ble/puchi_ble.zmk.yml @@ -1,5 +1,5 @@ file_format: "1" -id: puchi_ble_v1 +id: puchi_ble name: Puchi-BLE V1 type: board arch: arm diff --git a/app/boards/arm/puchi_ble/puchi_ble_v1_defconfig b/app/boards/keycapsss/puchi_ble/puchi_ble_defconfig similarity index 81% rename from app/boards/arm/puchi_ble/puchi_ble_v1_defconfig rename to app/boards/keycapsss/puchi_ble/puchi_ble_defconfig index ab197df0a80..f6aaf5fde65 100644 --- a/app/boards/arm/puchi_ble/puchi_ble_v1_defconfig +++ b/app/boards/keycapsss/puchi_ble/puchi_ble_defconfig @@ -1,10 +1,6 @@ # Copyright (c) 2022 The ZMK Contributors # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_PUCHI_BLE_v1=y - # Enable MPU CONFIG_ARM_MPU=y @@ -27,4 +23,4 @@ CONFIG_CLOCK_CONTROL_NRF=y CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y From d29a1dbca51c3115011d11fd0d277fb22bfc1f29 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 3 Jul 2025 01:10:38 -0600 Subject: [PATCH 45/61] refactor(boards): Migrate Ferris rev02 to HWMv2. Move Ferris rev02 to HMWv2, and remove the revision from the ID. --- .../{arm => pierrechevalier83}/ferris/Kconfig.defconfig | 3 --- .../ferris/Kconfig.ferris} | 3 +-- app/boards/{arm => pierrechevalier83}/ferris/README.md | 2 +- app/boards/{arm => pierrechevalier83}/ferris/board.cmake | 0 app/boards/pierrechevalier83/ferris/board.yml | 5 +++++ .../ferris_rev02.dts => pierrechevalier83/ferris/ferris.dts} | 2 +- .../ferris/ferris.keymap} | 0 .../ferris/ferris.yaml} | 2 +- .../ferris/ferris.zmk.yml} | 2 +- .../ferris/ferris_defconfig} | 3 --- 10 files changed, 10 insertions(+), 12 deletions(-) rename app/boards/{arm => pierrechevalier83}/ferris/Kconfig.defconfig (85%) rename app/boards/{arm/ferris/Kconfig.board => pierrechevalier83/ferris/Kconfig.ferris} (68%) rename app/boards/{arm => pierrechevalier83}/ferris/README.md (79%) rename app/boards/{arm => pierrechevalier83}/ferris/board.cmake (100%) create mode 100644 app/boards/pierrechevalier83/ferris/board.yml rename app/boards/{arm/ferris/ferris_rev02.dts => pierrechevalier83/ferris/ferris.dts} (98%) rename app/boards/{arm/ferris/ferris_rev02.keymap => pierrechevalier83/ferris/ferris.keymap} (100%) rename app/boards/{arm/ferris/ferris_rev02.yaml => pierrechevalier83/ferris/ferris.yaml} (83%) rename app/boards/{arm/ferris/ferris_rev02.zmk.yml => pierrechevalier83/ferris/ferris.zmk.yml} (90%) rename app/boards/{arm/ferris/ferris_rev02_defconfig => pierrechevalier83/ferris/ferris_defconfig} (84%) diff --git a/app/boards/arm/ferris/Kconfig.defconfig b/app/boards/pierrechevalier83/ferris/Kconfig.defconfig similarity index 85% rename from app/boards/arm/ferris/Kconfig.defconfig rename to app/boards/pierrechevalier83/ferris/Kconfig.defconfig index 420ea01fab9..1c8ed02c25c 100644 --- a/app/boards/arm/ferris/Kconfig.defconfig +++ b/app/boards/pierrechevalier83/ferris/Kconfig.defconfig @@ -5,9 +5,6 @@ if BOARD_FERRIS -config BOARD - default "ferris_rev02" - config ZMK_KEYBOARD_NAME default "Ferris rev 0.2" diff --git a/app/boards/arm/ferris/Kconfig.board b/app/boards/pierrechevalier83/ferris/Kconfig.ferris similarity index 68% rename from app/boards/arm/ferris/Kconfig.board rename to app/boards/pierrechevalier83/ferris/Kconfig.ferris index 70ee895d8dd..8767ab59de2 100644 --- a/app/boards/arm/ferris/Kconfig.board +++ b/app/boards/pierrechevalier83/ferris/Kconfig.ferris @@ -4,5 +4,4 @@ # SPDX-License-Identifier: MIT config BOARD_FERRIS - bool "Ferris rev 0.2" - depends on SOC_STM32F072XB + select SOC_STM32F072XB diff --git a/app/boards/arm/ferris/README.md b/app/boards/pierrechevalier83/ferris/README.md similarity index 79% rename from app/boards/arm/ferris/README.md rename to app/boards/pierrechevalier83/ferris/README.md index b6fdcdf26ae..3dbfb1ba454 100644 --- a/app/boards/arm/ferris/README.md +++ b/app/boards/pierrechevalier83/ferris/README.md @@ -3,7 +3,7 @@ ## Standard Build ``` -west build -p -d build/ferris --board ferris_rev02 +west build -p -d build/ferris --board ferris ``` ## Flashing diff --git a/app/boards/arm/ferris/board.cmake b/app/boards/pierrechevalier83/ferris/board.cmake similarity index 100% rename from app/boards/arm/ferris/board.cmake rename to app/boards/pierrechevalier83/ferris/board.cmake diff --git a/app/boards/pierrechevalier83/ferris/board.yml b/app/boards/pierrechevalier83/ferris/board.yml new file mode 100644 index 00000000000..3bed9d0b436 --- /dev/null +++ b/app/boards/pierrechevalier83/ferris/board.yml @@ -0,0 +1,5 @@ +board: + name: ferris + vendor: pierrechevalier83 + socs: + - name: stm32f072xb diff --git a/app/boards/arm/ferris/ferris_rev02.dts b/app/boards/pierrechevalier83/ferris/ferris.dts similarity index 98% rename from app/boards/arm/ferris/ferris_rev02.dts rename to app/boards/pierrechevalier83/ferris/ferris.dts index 1ec9a8043e9..e95ace608e5 100644 --- a/app/boards/arm/ferris/ferris_rev02.dts +++ b/app/boards/pierrechevalier83/ferris/ferris.dts @@ -106,7 +106,7 @@ clock-frequency = ; right_io: mcp23017@20 { - compatible = "microchip,mcp230xx"; + compatible = "microchip,mcp23017"; status = "okay"; gpio-controller; reg = <0x20>; diff --git a/app/boards/arm/ferris/ferris_rev02.keymap b/app/boards/pierrechevalier83/ferris/ferris.keymap similarity index 100% rename from app/boards/arm/ferris/ferris_rev02.keymap rename to app/boards/pierrechevalier83/ferris/ferris.keymap diff --git a/app/boards/arm/ferris/ferris_rev02.yaml b/app/boards/pierrechevalier83/ferris/ferris.yaml similarity index 83% rename from app/boards/arm/ferris/ferris_rev02.yaml rename to app/boards/pierrechevalier83/ferris/ferris.yaml index f4cbdcaf72c..d2dbfa0a322 100644 --- a/app/boards/arm/ferris/ferris_rev02.yaml +++ b/app/boards/pierrechevalier83/ferris/ferris.yaml @@ -1,4 +1,4 @@ -identifier: ferris_rev02 +identifier: ferris name: Ferris 0.2 type: mcu arch: arm diff --git a/app/boards/arm/ferris/ferris_rev02.zmk.yml b/app/boards/pierrechevalier83/ferris/ferris.zmk.yml similarity index 90% rename from app/boards/arm/ferris/ferris_rev02.zmk.yml rename to app/boards/pierrechevalier83/ferris/ferris.zmk.yml index da3a7f53469..841f437a4d3 100644 --- a/app/boards/arm/ferris/ferris_rev02.zmk.yml +++ b/app/boards/pierrechevalier83/ferris/ferris.zmk.yml @@ -1,5 +1,5 @@ file_format: "1" -id: ferris_rev02 +id: ferris name: Ferris 0.2 type: board arch: arm diff --git a/app/boards/arm/ferris/ferris_rev02_defconfig b/app/boards/pierrechevalier83/ferris/ferris_defconfig similarity index 84% rename from app/boards/arm/ferris/ferris_rev02_defconfig rename to app/boards/pierrechevalier83/ferris/ferris_defconfig index bd03c3050d7..eb55b019386 100644 --- a/app/boards/arm/ferris/ferris_rev02_defconfig +++ b/app/boards/pierrechevalier83/ferris/ferris_defconfig @@ -1,8 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_BOARD_FERRIS=y -CONFIG_SOC_SERIES_STM32F0X=y -CONFIG_SOC_STM32F072XB=y # 48MHz system clock CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=48000000 From 2965fce1b89bf0c9dbb63aba1b14eacd46a2c075 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 3 Jul 2025 01:37:04 -0600 Subject: [PATCH 46/61] refactor(boards): Move Pillbug to HWMv2 Migrate the MechWild PillBug board to HWMv2. --- app/boards/arm/pillbug/Kconfig.board | 6 ------ app/boards/{arm => mechwild}/pillbug/Kconfig | 0 app/boards/{arm => mechwild}/pillbug/Kconfig.defconfig | 3 --- app/boards/mechwild/pillbug/Kconfig.pillbug | 5 +++++ app/boards/{arm => mechwild}/pillbug/blackpill_pins.dtsi | 0 app/boards/{arm => mechwild}/pillbug/board.cmake | 0 app/boards/mechwild/pillbug/board.yml | 5 +++++ app/boards/{arm => mechwild}/pillbug/pillbug-pinctrl.dtsi | 0 app/boards/{arm => mechwild}/pillbug/pillbug.dts | 0 app/boards/{arm => mechwild}/pillbug/pillbug.yaml | 0 app/boards/{arm => mechwild}/pillbug/pillbug.zmk.yml | 0 app/boards/{arm => mechwild}/pillbug/pillbug_defconfig | 4 ---- app/boards/{arm => mechwild}/pillbug/pre_dt_board.cmake | 0 13 files changed, 10 insertions(+), 13 deletions(-) delete mode 100644 app/boards/arm/pillbug/Kconfig.board rename app/boards/{arm => mechwild}/pillbug/Kconfig (100%) rename app/boards/{arm => mechwild}/pillbug/Kconfig.defconfig (86%) create mode 100644 app/boards/mechwild/pillbug/Kconfig.pillbug rename app/boards/{arm => mechwild}/pillbug/blackpill_pins.dtsi (100%) rename app/boards/{arm => mechwild}/pillbug/board.cmake (100%) create mode 100644 app/boards/mechwild/pillbug/board.yml rename app/boards/{arm => mechwild}/pillbug/pillbug-pinctrl.dtsi (100%) rename app/boards/{arm => mechwild}/pillbug/pillbug.dts (100%) rename app/boards/{arm => mechwild}/pillbug/pillbug.yaml (100%) rename app/boards/{arm => mechwild}/pillbug/pillbug.zmk.yml (100%) rename app/boards/{arm => mechwild}/pillbug/pillbug_defconfig (83%) rename app/boards/{arm => mechwild}/pillbug/pre_dt_board.cmake (100%) diff --git a/app/boards/arm/pillbug/Kconfig.board b/app/boards/arm/pillbug/Kconfig.board deleted file mode 100644 index 70232e18a72..00000000000 --- a/app/boards/arm/pillbug/Kconfig.board +++ /dev/null @@ -1,6 +0,0 @@ -# Copyright (c) 2022 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_PILLBUG - bool "PillBug" - depends on SOC_NRF52840_QIAA diff --git a/app/boards/arm/pillbug/Kconfig b/app/boards/mechwild/pillbug/Kconfig similarity index 100% rename from app/boards/arm/pillbug/Kconfig rename to app/boards/mechwild/pillbug/Kconfig diff --git a/app/boards/arm/pillbug/Kconfig.defconfig b/app/boards/mechwild/pillbug/Kconfig.defconfig similarity index 86% rename from app/boards/arm/pillbug/Kconfig.defconfig rename to app/boards/mechwild/pillbug/Kconfig.defconfig index 48427ed3ec2..e29ed6789b3 100644 --- a/app/boards/arm/pillbug/Kconfig.defconfig +++ b/app/boards/mechwild/pillbug/Kconfig.defconfig @@ -3,9 +3,6 @@ if BOARD_PILLBUG -config BOARD - default "PillBug" - if USB_DEVICE_STACK config USB_NRFX diff --git a/app/boards/mechwild/pillbug/Kconfig.pillbug b/app/boards/mechwild/pillbug/Kconfig.pillbug new file mode 100644 index 00000000000..b4249474dc7 --- /dev/null +++ b/app/boards/mechwild/pillbug/Kconfig.pillbug @@ -0,0 +1,5 @@ +# Copyright (c) 2022 The ZMK Contributors +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_PILLBUG + select SOC_NRF52840_QIAA diff --git a/app/boards/arm/pillbug/blackpill_pins.dtsi b/app/boards/mechwild/pillbug/blackpill_pins.dtsi similarity index 100% rename from app/boards/arm/pillbug/blackpill_pins.dtsi rename to app/boards/mechwild/pillbug/blackpill_pins.dtsi diff --git a/app/boards/arm/pillbug/board.cmake b/app/boards/mechwild/pillbug/board.cmake similarity index 100% rename from app/boards/arm/pillbug/board.cmake rename to app/boards/mechwild/pillbug/board.cmake diff --git a/app/boards/mechwild/pillbug/board.yml b/app/boards/mechwild/pillbug/board.yml new file mode 100644 index 00000000000..abd15044f7e --- /dev/null +++ b/app/boards/mechwild/pillbug/board.yml @@ -0,0 +1,5 @@ +board: + name: pillbug + vendor: mechwild + socs: + - name: nrf52840 diff --git a/app/boards/arm/pillbug/pillbug-pinctrl.dtsi b/app/boards/mechwild/pillbug/pillbug-pinctrl.dtsi similarity index 100% rename from app/boards/arm/pillbug/pillbug-pinctrl.dtsi rename to app/boards/mechwild/pillbug/pillbug-pinctrl.dtsi diff --git a/app/boards/arm/pillbug/pillbug.dts b/app/boards/mechwild/pillbug/pillbug.dts similarity index 100% rename from app/boards/arm/pillbug/pillbug.dts rename to app/boards/mechwild/pillbug/pillbug.dts diff --git a/app/boards/arm/pillbug/pillbug.yaml b/app/boards/mechwild/pillbug/pillbug.yaml similarity index 100% rename from app/boards/arm/pillbug/pillbug.yaml rename to app/boards/mechwild/pillbug/pillbug.yaml diff --git a/app/boards/arm/pillbug/pillbug.zmk.yml b/app/boards/mechwild/pillbug/pillbug.zmk.yml similarity index 100% rename from app/boards/arm/pillbug/pillbug.zmk.yml rename to app/boards/mechwild/pillbug/pillbug.zmk.yml diff --git a/app/boards/arm/pillbug/pillbug_defconfig b/app/boards/mechwild/pillbug/pillbug_defconfig similarity index 83% rename from app/boards/arm/pillbug/pillbug_defconfig rename to app/boards/mechwild/pillbug/pillbug_defconfig index 9ec72c417ef..f325d3588a4 100644 --- a/app/boards/arm/pillbug/pillbug_defconfig +++ b/app/boards/mechwild/pillbug/pillbug_defconfig @@ -1,10 +1,6 @@ # Copyright (c) 2022 The ZMK Contributors # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_PILLBUG=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/app/boards/arm/pillbug/pre_dt_board.cmake b/app/boards/mechwild/pillbug/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/pillbug/pre_dt_board.cmake rename to app/boards/mechwild/pillbug/pre_dt_board.cmake From c8c41c146c2e3df086908b285cee594c7fa78647 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 3 Jul 2025 01:42:15 -0600 Subject: [PATCH 47/61] refactor(boards): Migrate s40nc to HWMv2 Move the ShortyFortyNoCordy (s40nc) to HWMv2. --- app/boards/arm/s40nc/Kconfig.board | 6 ------ app/boards/{arm => mechwild}/s40nc/Kconfig.defconfig | 0 app/boards/mechwild/s40nc/Kconfig.s40nc | 5 +++++ app/boards/{arm => mechwild}/s40nc/README.md | 0 app/boards/{arm => mechwild}/s40nc/board.cmake | 0 app/boards/mechwild/s40nc/board.yml | 5 +++++ app/boards/{arm => mechwild}/s40nc/pre_dt_board.cmake | 0 app/boards/{arm => mechwild}/s40nc/s40nc.dts | 0 app/boards/{arm => mechwild}/s40nc/s40nc.keymap | 0 app/boards/{arm => mechwild}/s40nc/s40nc.yaml | 0 app/boards/{arm => mechwild}/s40nc/s40nc.zmk.yml | 0 app/boards/{arm => mechwild}/s40nc/s40nc_defconfig | 4 ---- 12 files changed, 10 insertions(+), 10 deletions(-) delete mode 100644 app/boards/arm/s40nc/Kconfig.board rename app/boards/{arm => mechwild}/s40nc/Kconfig.defconfig (100%) create mode 100644 app/boards/mechwild/s40nc/Kconfig.s40nc rename app/boards/{arm => mechwild}/s40nc/README.md (100%) rename app/boards/{arm => mechwild}/s40nc/board.cmake (100%) create mode 100644 app/boards/mechwild/s40nc/board.yml rename app/boards/{arm => mechwild}/s40nc/pre_dt_board.cmake (100%) rename app/boards/{arm => mechwild}/s40nc/s40nc.dts (100%) rename app/boards/{arm => mechwild}/s40nc/s40nc.keymap (100%) rename app/boards/{arm => mechwild}/s40nc/s40nc.yaml (100%) rename app/boards/{arm => mechwild}/s40nc/s40nc.zmk.yml (100%) rename app/boards/{arm => mechwild}/s40nc/s40nc_defconfig (82%) diff --git a/app/boards/arm/s40nc/Kconfig.board b/app/boards/arm/s40nc/Kconfig.board deleted file mode 100644 index e703d7269af..00000000000 --- a/app/boards/arm/s40nc/Kconfig.board +++ /dev/null @@ -1,6 +0,0 @@ -# Copyright (c) 2021 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_S40NC - bool "S40NC" - depends on SOC_NRF52840_QIAA diff --git a/app/boards/arm/s40nc/Kconfig.defconfig b/app/boards/mechwild/s40nc/Kconfig.defconfig similarity index 100% rename from app/boards/arm/s40nc/Kconfig.defconfig rename to app/boards/mechwild/s40nc/Kconfig.defconfig diff --git a/app/boards/mechwild/s40nc/Kconfig.s40nc b/app/boards/mechwild/s40nc/Kconfig.s40nc new file mode 100644 index 00000000000..1ff901e88b3 --- /dev/null +++ b/app/boards/mechwild/s40nc/Kconfig.s40nc @@ -0,0 +1,5 @@ +# Copyright (c) 2021 The ZMK Contributors +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_S40NC + select SOC_NRF52840_QIAA diff --git a/app/boards/arm/s40nc/README.md b/app/boards/mechwild/s40nc/README.md similarity index 100% rename from app/boards/arm/s40nc/README.md rename to app/boards/mechwild/s40nc/README.md diff --git a/app/boards/arm/s40nc/board.cmake b/app/boards/mechwild/s40nc/board.cmake similarity index 100% rename from app/boards/arm/s40nc/board.cmake rename to app/boards/mechwild/s40nc/board.cmake diff --git a/app/boards/mechwild/s40nc/board.yml b/app/boards/mechwild/s40nc/board.yml new file mode 100644 index 00000000000..3df3c330f08 --- /dev/null +++ b/app/boards/mechwild/s40nc/board.yml @@ -0,0 +1,5 @@ +board: + name: s40nc + vendor: mechwild + socs: + - name: nrf52840 diff --git a/app/boards/arm/s40nc/pre_dt_board.cmake b/app/boards/mechwild/s40nc/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/s40nc/pre_dt_board.cmake rename to app/boards/mechwild/s40nc/pre_dt_board.cmake diff --git a/app/boards/arm/s40nc/s40nc.dts b/app/boards/mechwild/s40nc/s40nc.dts similarity index 100% rename from app/boards/arm/s40nc/s40nc.dts rename to app/boards/mechwild/s40nc/s40nc.dts diff --git a/app/boards/arm/s40nc/s40nc.keymap b/app/boards/mechwild/s40nc/s40nc.keymap similarity index 100% rename from app/boards/arm/s40nc/s40nc.keymap rename to app/boards/mechwild/s40nc/s40nc.keymap diff --git a/app/boards/arm/s40nc/s40nc.yaml b/app/boards/mechwild/s40nc/s40nc.yaml similarity index 100% rename from app/boards/arm/s40nc/s40nc.yaml rename to app/boards/mechwild/s40nc/s40nc.yaml diff --git a/app/boards/arm/s40nc/s40nc.zmk.yml b/app/boards/mechwild/s40nc/s40nc.zmk.yml similarity index 100% rename from app/boards/arm/s40nc/s40nc.zmk.yml rename to app/boards/mechwild/s40nc/s40nc.zmk.yml diff --git a/app/boards/arm/s40nc/s40nc_defconfig b/app/boards/mechwild/s40nc/s40nc_defconfig similarity index 82% rename from app/boards/arm/s40nc/s40nc_defconfig rename to app/boards/mechwild/s40nc/s40nc_defconfig index b523ceb80b7..79d4175f7ec 100644 --- a/app/boards/arm/s40nc/s40nc_defconfig +++ b/app/boards/mechwild/s40nc/s40nc_defconfig @@ -1,10 +1,6 @@ # Copyright (c) 2021 The ZMK Contributors # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_S40NC=y - # Enable MPU CONFIG_ARM_MPU=y From 661d53a9856a9a960b7e894398a108f63f1a4745 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Thu, 3 Jul 2025 01:47:50 -0600 Subject: [PATCH 48/61] refactor(boards): Move bluemicro840 board to HWMv2. Migrate bluemicro840 board to HWMv2. --- app/boards/arm/bluemicro840/Kconfig.board | 8 -------- app/boards/{arm => jpconstantineau}/bluemicro840/Kconfig | 2 +- .../jpconstantineau/bluemicro840/Kconfig.bluemicro840 | 5 +++++ .../bluemicro840/Kconfig.defconfig | 7 ++----- .../bluemicro840/arduino_pro_micro_pins.dtsi | 0 .../bluemicro840/bluemicro840-pinctrl.dtsi} | 0 .../bluemicro840/bluemicro840.dts} | 2 +- .../bluemicro840/bluemicro840.yaml} | 2 +- .../bluemicro840/bluemicro840.zmk.yml} | 2 +- .../bluemicro840/bluemicro840_defconfig} | 4 ---- .../{arm => jpconstantineau}/bluemicro840/board.cmake | 0 app/boards/jpconstantineau/bluemicro840/board.yml | 5 +++++ .../bluemicro840/pre_dt_board.cmake | 0 13 files changed, 16 insertions(+), 21 deletions(-) delete mode 100644 app/boards/arm/bluemicro840/Kconfig.board rename app/boards/{arm => jpconstantineau}/bluemicro840/Kconfig (77%) create mode 100644 app/boards/jpconstantineau/bluemicro840/Kconfig.bluemicro840 rename app/boards/{arm => jpconstantineau}/bluemicro840/Kconfig.defconfig (69%) rename app/boards/{arm => jpconstantineau}/bluemicro840/arduino_pro_micro_pins.dtsi (100%) rename app/boards/{arm/bluemicro840/bluemicro840_v1-pinctrl.dtsi => jpconstantineau/bluemicro840/bluemicro840-pinctrl.dtsi} (100%) rename app/boards/{arm/bluemicro840/bluemicro840_v1.dts => jpconstantineau/bluemicro840/bluemicro840.dts} (98%) rename app/boards/{arm/bluemicro840/bluemicro840_v1.yaml => jpconstantineau/bluemicro840/bluemicro840.yaml} (85%) rename app/boards/{arm/bluemicro840/bluemicro840_v1.zmk.yml => jpconstantineau/bluemicro840/bluemicro840.zmk.yml} (89%) rename app/boards/{arm/bluemicro840/bluemicro840_v1_defconfig => jpconstantineau/bluemicro840/bluemicro840_defconfig} (79%) rename app/boards/{arm => jpconstantineau}/bluemicro840/board.cmake (100%) create mode 100644 app/boards/jpconstantineau/bluemicro840/board.yml rename app/boards/{arm => jpconstantineau}/bluemicro840/pre_dt_board.cmake (100%) diff --git a/app/boards/arm/bluemicro840/Kconfig.board b/app/boards/arm/bluemicro840/Kconfig.board deleted file mode 100644 index e27940157b2..00000000000 --- a/app/boards/arm/bluemicro840/Kconfig.board +++ /dev/null @@ -1,8 +0,0 @@ -# BlueMicro840 board configuration - -# Copyright (c) 2020 Pete Johanson, Derek Schmell -# SPDX-License-Identifier: MIT - -config BOARD_BLUEMICRO840_V1 - bool "BlueMicro840_V1" - depends on SOC_NRF52840_QIAA diff --git a/app/boards/arm/bluemicro840/Kconfig b/app/boards/jpconstantineau/bluemicro840/Kconfig similarity index 77% rename from app/boards/arm/bluemicro840/Kconfig rename to app/boards/jpconstantineau/bluemicro840/Kconfig index ca060885f16..470b5559e26 100644 --- a/app/boards/arm/bluemicro840/Kconfig +++ b/app/boards/jpconstantineau/bluemicro840/Kconfig @@ -4,5 +4,5 @@ config BOARD_ENABLE_DCDC bool "Enable DCDC mode" select SOC_DCDC_NRF52X default y - depends on BOARD_BLUEMICRO840_V1 + depends on BOARD_BLUEMICRO840 diff --git a/app/boards/jpconstantineau/bluemicro840/Kconfig.bluemicro840 b/app/boards/jpconstantineau/bluemicro840/Kconfig.bluemicro840 new file mode 100644 index 00000000000..2ee1f6b9e07 --- /dev/null +++ b/app/boards/jpconstantineau/bluemicro840/Kconfig.bluemicro840 @@ -0,0 +1,5 @@ +# Copyright (c) 2020 Pete Johanson, Derek Schmell +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_BLUEMICRO840 + select SOC_NRF52840_QIAA diff --git a/app/boards/arm/bluemicro840/Kconfig.defconfig b/app/boards/jpconstantineau/bluemicro840/Kconfig.defconfig similarity index 69% rename from app/boards/arm/bluemicro840/Kconfig.defconfig rename to app/boards/jpconstantineau/bluemicro840/Kconfig.defconfig index ff61ec92f81..81573146e35 100644 --- a/app/boards/arm/bluemicro840/Kconfig.defconfig +++ b/app/boards/jpconstantineau/bluemicro840/Kconfig.defconfig @@ -3,10 +3,7 @@ # Copyright (c) 2020 Pete Johanson, Derek Schmell # SPDX-License-Identifier: MIT -if BOARD_BLUEMICRO840_V1 - -config BOARD - default "bluemicro840_v1" +if BOARD_BLUEMICRO840 if USB_DEVICE_STACK @@ -18,4 +15,4 @@ endif # USB_DEVICE_STACK config BT_CTLR default BT -endif # BOARD_BLUEMICRO840_V1 +endif # BOARD_BLUEMICRO840 diff --git a/app/boards/arm/bluemicro840/arduino_pro_micro_pins.dtsi b/app/boards/jpconstantineau/bluemicro840/arduino_pro_micro_pins.dtsi similarity index 100% rename from app/boards/arm/bluemicro840/arduino_pro_micro_pins.dtsi rename to app/boards/jpconstantineau/bluemicro840/arduino_pro_micro_pins.dtsi diff --git a/app/boards/arm/bluemicro840/bluemicro840_v1-pinctrl.dtsi b/app/boards/jpconstantineau/bluemicro840/bluemicro840-pinctrl.dtsi similarity index 100% rename from app/boards/arm/bluemicro840/bluemicro840_v1-pinctrl.dtsi rename to app/boards/jpconstantineau/bluemicro840/bluemicro840-pinctrl.dtsi diff --git a/app/boards/arm/bluemicro840/bluemicro840_v1.dts b/app/boards/jpconstantineau/bluemicro840/bluemicro840.dts similarity index 98% rename from app/boards/arm/bluemicro840/bluemicro840_v1.dts rename to app/boards/jpconstantineau/bluemicro840/bluemicro840.dts index 84d3ebaec99..cac2144e96e 100644 --- a/app/boards/arm/bluemicro840/bluemicro840_v1.dts +++ b/app/boards/jpconstantineau/bluemicro840/bluemicro840.dts @@ -7,7 +7,7 @@ /dts-v1/; #include #include "arduino_pro_micro_pins.dtsi" -#include "bluemicro840_v1-pinctrl.dtsi" +#include "bluemicro840-pinctrl.dtsi" / { model = "BlueMicro840_V1"; diff --git a/app/boards/arm/bluemicro840/bluemicro840_v1.yaml b/app/boards/jpconstantineau/bluemicro840/bluemicro840.yaml similarity index 85% rename from app/boards/arm/bluemicro840/bluemicro840_v1.yaml rename to app/boards/jpconstantineau/bluemicro840/bluemicro840.yaml index 9e1dd54c29c..c36eee0c9d2 100644 --- a/app/boards/arm/bluemicro840/bluemicro840_v1.yaml +++ b/app/boards/jpconstantineau/bluemicro840/bluemicro840.yaml @@ -1,4 +1,4 @@ -identifier: bluemicro840_v1 +identifier: bluemicro840 name: BlueMicro840_V1 type: mcu arch: arm diff --git a/app/boards/arm/bluemicro840/bluemicro840_v1.zmk.yml b/app/boards/jpconstantineau/bluemicro840/bluemicro840.zmk.yml similarity index 89% rename from app/boards/arm/bluemicro840/bluemicro840_v1.zmk.yml rename to app/boards/jpconstantineau/bluemicro840/bluemicro840.zmk.yml index c1d3c6b9463..10afcbf1f7b 100644 --- a/app/boards/arm/bluemicro840/bluemicro840_v1.zmk.yml +++ b/app/boards/jpconstantineau/bluemicro840/bluemicro840.zmk.yml @@ -1,5 +1,5 @@ file_format: "1" -id: bluemicro840_v1 +id: bluemicro840 name: BlueMicro840 v1 type: board arch: arm diff --git a/app/boards/arm/bluemicro840/bluemicro840_v1_defconfig b/app/boards/jpconstantineau/bluemicro840/bluemicro840_defconfig similarity index 79% rename from app/boards/arm/bluemicro840/bluemicro840_v1_defconfig rename to app/boards/jpconstantineau/bluemicro840/bluemicro840_defconfig index 3e13e77d0b5..b41fbe47f4e 100644 --- a/app/boards/arm/bluemicro840/bluemicro840_v1_defconfig +++ b/app/boards/jpconstantineau/bluemicro840/bluemicro840_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_BLUEMICRO840_V1=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/app/boards/arm/bluemicro840/board.cmake b/app/boards/jpconstantineau/bluemicro840/board.cmake similarity index 100% rename from app/boards/arm/bluemicro840/board.cmake rename to app/boards/jpconstantineau/bluemicro840/board.cmake diff --git a/app/boards/jpconstantineau/bluemicro840/board.yml b/app/boards/jpconstantineau/bluemicro840/board.yml new file mode 100644 index 00000000000..0a9ebdd5dbd --- /dev/null +++ b/app/boards/jpconstantineau/bluemicro840/board.yml @@ -0,0 +1,5 @@ +board: + name: bluemicro840 + vendor: jpconstantineau + socs: + - name: nrf52840 diff --git a/app/boards/arm/bluemicro840/pre_dt_board.cmake b/app/boards/jpconstantineau/bluemicro840/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/bluemicro840/pre_dt_board.cmake rename to app/boards/jpconstantineau/bluemicro840/pre_dt_board.cmake From ebecfef9307ec0e5e1776730354fe26e8bcaf959 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 9 Jul 2025 00:58:31 -0600 Subject: [PATCH 49/61] fix(boards): Retore bootloader support on XIAO BLE. Set up necessary boot mode/retention to properly set GPREGRET to trigger Adafruit bootloader to run on the XIAO BLE. --- app/boards/xiao_ble.conf | 7 ++++++- app/boards/xiao_ble.overlay | 23 +++++++++++++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/app/boards/xiao_ble.conf b/app/boards/xiao_ble.conf index 205f67e9127..49eaacf6585 100644 --- a/app/boards/xiao_ble.conf +++ b/app/boards/xiao_ble.conf @@ -12,4 +12,9 @@ CONFIG_NVS=y CONFIG_SETTINGS_NVS=y CONFIG_FLASH=y CONFIG_FLASH_PAGE_LAYOUT=y -CONFIG_FLASH_MAP=y \ No newline at end of file +CONFIG_FLASH_MAP=y + +CONFIG_RETAINED_MEM=y +CONFIG_RETENTION=y +CONFIG_RETENTION_BOOT_MODE=y +CONFIG_ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_ADAFRUIT_NRF52=y diff --git a/app/boards/xiao_ble.overlay b/app/boards/xiao_ble.overlay index 3b7710ef634..328b2717cc0 100644 --- a/app/boards/xiao_ble.overlay +++ b/app/boards/xiao_ble.overlay @@ -4,10 +4,33 @@ * SPDX-License-Identifier: MIT */ +&gpregret1 { + adafruit_boot_retention: retention@0 { + compatible = "zephyr,retention"; + status = "okay"; + reg = <0x0 0x1>; + }; +}; / { chosen { zmk,battery = &vbatt; + zephyr,boot-mode = &boot_retention; + zmk,magic-boot-mode = &adafruit_boot_retention; + }; + + magic_mapper { + compatible = "zmk,bootmode-to-magic-mapper"; + status = "okay"; + + #address-cells = <1>; + #size-cells = <1>; + + boot_retention: retention@0 { + compatible = "zephyr,retention"; + status = "okay"; + reg = <0x0 0x1>; + }; }; vbatt: vbatt { From 6a5d2a60ab0d890af371b223feb4cffab0d30a1f Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sun, 3 Aug 2025 16:01:10 -0600 Subject: [PATCH 50/61] refactor(boards): Further PW board HWMv2 migration work. More tweaks to unify and move PW boards to HWMv2. --- app/boards/arm/bt60/Kconfig | 7 - app/boards/arm/bt60/Kconfig.board | 12 -- app/boards/arm/bt60/Kconfig.defconfig | 25 ---- app/boards/arm/bt60/board.cmake | 5 - app/boards/arm/bt60/bt60.dtsi | 109 --------------- app/boards/arm/bt60/bt60_v1.yaml | 15 --- app/boards/arm/bt60/bt60_v1.zmk.yml | 13 -- app/boards/arm/bt60/bt60_v1_hs.yaml | 15 --- app/boards/arm/bt60/pre_dt_board.cmake | 9 -- app/boards/polarityworks/bt60/Kconfig.bt60_hs | 7 + .../polarityworks/bt60/Kconfig.defconfig | 6 +- app/boards/polarityworks/bt60/board.yml | 20 ++- app/boards/polarityworks/bt60/bt60.dts | 127 ++++++++---------- app/boards/polarityworks/bt60/bt60_1_0_0.dtsi | 38 ++++++ .../bt60/bt60_1_0_0.keymap} | 0 .../bt60/bt60_1_0_0.overlay} | 3 +- .../bt60/bt60_1_0_0_defconfig} | 6 +- .../bt60/{bt60.keymap => bt60_2_0_0.keymap} | 0 .../polarityworks/bt60/bt60_2_0_0.overlay | 90 +++++++++++++ .../{bt60_defconfig => bt60_2_0_0_defconfig} | 0 .../bt60/bt60_hs.dts} | 4 +- .../bt60/bt60_hs.keymap} | 0 .../bt60/bt60_hs.zmk.yml} | 2 +- .../bt60/bt60_hs_defconfig} | 6 +- app/boards/polarityworks/bt65/bt65.dts | 2 + app/boards/polarityworks/bt75/bt75.dts | 2 + app/boards/polarityworks/common/ckp-base.dtsi | 61 +++++++++ app/boards/polarityworks/common/ckp.dtsi | 65 +-------- 28 files changed, 284 insertions(+), 365 deletions(-) delete mode 100644 app/boards/arm/bt60/Kconfig delete mode 100644 app/boards/arm/bt60/Kconfig.board delete mode 100644 app/boards/arm/bt60/Kconfig.defconfig delete mode 100644 app/boards/arm/bt60/board.cmake delete mode 100644 app/boards/arm/bt60/bt60.dtsi delete mode 100644 app/boards/arm/bt60/bt60_v1.yaml delete mode 100644 app/boards/arm/bt60/bt60_v1.zmk.yml delete mode 100644 app/boards/arm/bt60/bt60_v1_hs.yaml delete mode 100644 app/boards/arm/bt60/pre_dt_board.cmake create mode 100644 app/boards/polarityworks/bt60/Kconfig.bt60_hs create mode 100644 app/boards/polarityworks/bt60/bt60_1_0_0.dtsi rename app/boards/{arm/bt60/bt60_v1.keymap => polarityworks/bt60/bt60_1_0_0.keymap} (100%) rename app/boards/{arm/bt60/bt60_v1.dts => polarityworks/bt60/bt60_1_0_0.overlay} (99%) rename app/boards/{arm/bt60/bt60_v1_defconfig => polarityworks/bt60/bt60_1_0_0_defconfig} (79%) rename app/boards/polarityworks/bt60/{bt60.keymap => bt60_2_0_0.keymap} (100%) create mode 100644 app/boards/polarityworks/bt60/bt60_2_0_0.overlay rename app/boards/polarityworks/bt60/{bt60_defconfig => bt60_2_0_0_defconfig} (100%) rename app/boards/{arm/bt60/bt60_v1_hs.dts => polarityworks/bt60/bt60_hs.dts} (97%) rename app/boards/{arm/bt60/bt60_v1_hs.keymap => polarityworks/bt60/bt60_hs.keymap} (100%) rename app/boards/{arm/bt60/bt60_v1_hs.zmk.yml => polarityworks/bt60/bt60_hs.zmk.yml} (91%) rename app/boards/{arm/bt60/bt60_v1_hs_defconfig => polarityworks/bt60/bt60_hs_defconfig} (78%) create mode 100644 app/boards/polarityworks/common/ckp-base.dtsi diff --git a/app/boards/arm/bt60/Kconfig b/app/boards/arm/bt60/Kconfig deleted file mode 100644 index d57a6b7efe3..00000000000 --- a/app/boards/arm/bt60/Kconfig +++ /dev/null @@ -1,7 +0,0 @@ -# SPDX-License-Identifier: MIT - -config BOARD_ENABLE_DCDC - bool "Enable DCDC mode" - select SOC_DCDC_NRF52X - default y - depends on (BOARD_BT60_V1_HS || BOARD_BT60_V1) diff --git a/app/boards/arm/bt60/Kconfig.board b/app/boards/arm/bt60/Kconfig.board deleted file mode 100644 index 24c0a8b5b0c..00000000000 --- a/app/boards/arm/bt60/Kconfig.board +++ /dev/null @@ -1,12 +0,0 @@ -# BT60 board configuration - -# Copyright (c) 2021 Polarity Works -# SPDX-License-Identifier: MIT - -config BOARD_BT60_V1 - bool "bt60" - depends on SOC_NRF52840_QIAA - -config BOARD_BT60_V1_HS - bool "bt60 hotswap" - depends on SOC_NRF52840_QIAA diff --git a/app/boards/arm/bt60/Kconfig.defconfig b/app/boards/arm/bt60/Kconfig.defconfig deleted file mode 100644 index c44901bd8d4..00000000000 --- a/app/boards/arm/bt60/Kconfig.defconfig +++ /dev/null @@ -1,25 +0,0 @@ -# Copyright (c) 2021 Polarity Works -# SPDX-License-Identifier: MIT - -if BOARD_BT60_V1_HS || BOARD_BT60_V1 - -config BOARD - default "bt60" - -if USB - -config USB_NRFX - default y - -config USB_DEVICE_STACK - default y - -endif # USB - -config BT_CTLR - default BT - -config ZMK_KEYBOARD_NAME - default "BT60" - -endif # BOARD_BT60 diff --git a/app/boards/arm/bt60/board.cmake b/app/boards/arm/bt60/board.cmake deleted file mode 100644 index 73fa64a9aa0..00000000000 --- a/app/boards/arm/bt60/board.cmake +++ /dev/null @@ -1,5 +0,0 @@ -# SPDX-License-Identifier: MIT - -board_runner_args(nrfjprog "--nrf-family=NRF52" "--softreset") -include(${ZEPHYR_BASE}/boards/common/uf2.board.cmake) -include(${ZEPHYR_BASE}/boards/common/nrfjprog.board.cmake) diff --git a/app/boards/arm/bt60/bt60.dtsi b/app/boards/arm/bt60/bt60.dtsi deleted file mode 100644 index 5e176e60244..00000000000 --- a/app/boards/arm/bt60/bt60.dtsi +++ /dev/null @@ -1,109 +0,0 @@ -/* -* Copyright (c) 2021 Polarity Works -* -* SPDX-License-Identifier: MIT -*/ - -/dts-v1/; -#include -#include - -/ { - model = "BT60"; - compatible = "polarityworks,bt60"; - - chosen { - zephyr,code-partition = &code_partition; - zephyr,sram = &sram0; - zephyr,flash = &flash0; - zmk,battery = &vbatt; - }; - - sensors: sensors { - compatible = "zmk,keymap-sensors"; - sensors = <&left_encoder>; - triggers-per-rotation = <20>; - }; - - - - left_encoder: encoder_left { - compatible = "alps,ec11"; - a-gpios = <&gpio1 1 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; - b-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; - steps = <80>; - status = "okay"; - }; - - - leds { - compatible = "gpio-leds"; - blue_led: led_0 { - gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>; - }; - }; - - vbatt: vbatt { - compatible = "zmk,battery-voltage-divider"; - io-channels = <&adc 2>; - output-ohms = <2000000>; - full-ohms = <(2000000 + 806000)>; - }; -}; - -&adc { - status = "okay"; -}; - -&gpiote { - status = "okay"; -}; - -&gpio0 { - status = "okay"; -}; - -&gpio1 { - status = "okay"; -}; - -zephyr_udc0: &usbd { - status = "okay"; -}; - - -&flash0 { - /* - * For more information, see: - * http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html - */ - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - sd_partition: partition@0 { - reg = <0x00000000 0x00026000>; - }; - code_partition: partition@26000 { - reg = <0x00026000 0x000c6000>; - }; - - /* - * The flash starting at 0x000ec000 and ending at - * 0x000f3fff is reserved for use by the application. - */ - - /* - * Storage partition will be used by FCB/LittleFS/NVS - * if enabled. - */ - storage_partition: partition@ec000 { - reg = <0x000ec000 0x00008000>; - }; - - boot_partition: partition@f4000 { - reg = <0x000f4000 0x0000c000>; - }; - }; -}; diff --git a/app/boards/arm/bt60/bt60_v1.yaml b/app/boards/arm/bt60/bt60_v1.yaml deleted file mode 100644 index 41fd7e40945..00000000000 --- a/app/boards/arm/bt60/bt60_v1.yaml +++ /dev/null @@ -1,15 +0,0 @@ -identifier: bt60_v1 -name: BT60 V1 Soldered -type: mcu -arch: arm -toolchain: - - zephyr - - gnuarmemb - - xtools -supported: - - adc - - usb_device - - ble - - ieee802154 - - pwm - - watchdog diff --git a/app/boards/arm/bt60/bt60_v1.zmk.yml b/app/boards/arm/bt60/bt60_v1.zmk.yml deleted file mode 100644 index 4c0faf9fd9f..00000000000 --- a/app/boards/arm/bt60/bt60_v1.zmk.yml +++ /dev/null @@ -1,13 +0,0 @@ -file_format: "1" -id: bt60_v1 -name: BT60 V1 Soldered -type: board -arch: arm -features: - - keys - - encoder - - studio -outputs: - - usb - - ble -url: https://polarityworks.com diff --git a/app/boards/arm/bt60/bt60_v1_hs.yaml b/app/boards/arm/bt60/bt60_v1_hs.yaml deleted file mode 100644 index 5a73753b5e2..00000000000 --- a/app/boards/arm/bt60/bt60_v1_hs.yaml +++ /dev/null @@ -1,15 +0,0 @@ -identifier: bt60_v1_hs -name: BT60 V1 Hotswap -type: mcu -arch: arm -toolchain: - - zephyr - - gnuarmemb - - xtools -supported: - - adc - - usb_device - - ble - - ieee802154 - - pwm - - watchdog diff --git a/app/boards/arm/bt60/pre_dt_board.cmake b/app/boards/arm/bt60/pre_dt_board.cmake deleted file mode 100644 index 05b0efe5f04..00000000000 --- a/app/boards/arm/bt60/pre_dt_board.cmake +++ /dev/null @@ -1,9 +0,0 @@ -# -# Copyright (c) 2024 The ZMK Contributors -# SPDX-License-Identifier: MIT -# - -# Suppresses duplicate unit-address warning at build time for power, clock, acl and flash-controller -# https://docs.zephyrproject.org/latest/build/dts/intro-input-output.html - -list(APPEND EXTRA_DTC_FLAGS "-Wno-unique_unit_address_if_enabled") \ No newline at end of file diff --git a/app/boards/polarityworks/bt60/Kconfig.bt60_hs b/app/boards/polarityworks/bt60/Kconfig.bt60_hs new file mode 100644 index 00000000000..5895b4c8360 --- /dev/null +++ b/app/boards/polarityworks/bt60/Kconfig.bt60_hs @@ -0,0 +1,7 @@ +# BT60 HS board configuration + +# Copyright (c) 2022 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config BOARD_BT60_HS + select SOC_NRF52840_QIAA diff --git a/app/boards/polarityworks/bt60/Kconfig.defconfig b/app/boards/polarityworks/bt60/Kconfig.defconfig index a37800a6dd2..1b681d07cab 100644 --- a/app/boards/polarityworks/bt60/Kconfig.defconfig +++ b/app/boards/polarityworks/bt60/Kconfig.defconfig @@ -2,9 +2,9 @@ # SPDX-License-Identifier: MIT config ZMK_KEYBOARD_NAME - default "BT60" if BOARD_BT60 + default "BT60" if BOARD_BT60 || BOARD_BT60_HS -if BOARD_BT60 +if BOARD_BT60 || BOARD_BT60_HS if USB @@ -19,4 +19,4 @@ endif # USB config BT_CTLR default BT -endif # BOARD_BT60 +endif # BOARD_BT60 || BOARD_BT60_HS diff --git a/app/boards/polarityworks/bt60/board.yml b/app/boards/polarityworks/bt60/board.yml index 2e38bd842ac..2db078f6bbd 100644 --- a/app/boards/polarityworks/bt60/board.yml +++ b/app/boards/polarityworks/bt60/board.yml @@ -1,5 +1,15 @@ -board: - name: bt60 - vendor: polarityworks - socs: - - name: nrf52840 +boards: + - name: bt60_hs + vendor: polarityworks + socs: + - name: nrf52840 + - name: bt60 + vendor: polarityworks + socs: + - name: nrf52840 + revision: + format: major.minor.patch + default: 2.0.0 + revisions: + - name: 1.0.0 + - name: 2.0.0 diff --git a/app/boards/polarityworks/bt60/bt60.dts b/app/boards/polarityworks/bt60/bt60.dts index 4fef4d6107c..50d96518240 100644 --- a/app/boards/polarityworks/bt60/bt60.dts +++ b/app/boards/polarityworks/bt60/bt60.dts @@ -5,87 +5,74 @@ */ /dts-v1/; -#include "../common/ckp.dtsi" -#include -#include -#include -#include - +#include / { - model = "BT60_V2"; - compatible = "polarityworks,bt60_v2"; - - chosen { - zmk,physical-layout = &layout_60_ansi; - }; - + chosen { + zephyr,code-partition = &code_partition; + zephyr,sram = &sram0; + zephyr,flash = &flash0; + zmk,battery = &vbatt; + }; - ansi_transform: keymap_transform_0 { - compatible = "zmk,matrix-transform"; - columns = <15>; - rows = <5>; - map = < - RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13) - RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) RC(2,13) - RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,13) - RC(4,0) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,12) - RC(5,0) RC(5,1) RC(5,2) RC(5,6) RC(5,10) RC(5,11) RC(5,12) RC(5,13) - >; - }; - - iso_transform: keymap_transform_1 { - compatible = "zmk,matrix-transform"; - columns = <15>; - rows = <5>; - map = < - RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13) - RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) - RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,12) RC(3,13) - RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,12) - RC(5,0) RC(5,1) RC(5,2) RC(5,6) RC(5,10) RC(5,11) RC(5,12) RC(5,13) - >; - }; + vbatt: vbatt { + compatible = "zmk,battery-voltage-divider"; + io-channels = <&adc 2>; + }; +}; - all_1u_transform: keymap_transform_2 { - compatible = "zmk,matrix-transform"; - columns = <15>; - rows = <5>; - map = < - RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13) RC(1,14) - RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) RC(2,13) - RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,13) - RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,12) RC(4,13) RC(4,14) - RC(5,0) RC(5,1) RC(5,2) RC(5,6) RC(5,10) RC(5,11) RC(5,12) RC(5,13) RC(5,14) - >; - }; +&adc { + status = "okay"; +}; - hhkb_transform: keymap_transform_3 { - compatible = "zmk,matrix-transform"; - columns = <15>; - rows = <5>; - map = < - RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13) - RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) RC(2,13) - RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,13) - RC(4,0) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,12) - RC(5,0) RC(5,1) RC(5,2) RC(5,6) RC(5,11) RC(5,12) RC(5,13) - >; - }; +&gpiote { + status = "okay"; }; -&layout_60_ansi { - transform = <&ansi_transform>; +&gpio0 { + status = "okay"; }; -&layout_60_iso { - transform = <&iso_transform>; +&gpio1 { + status = "okay"; }; -&layout_60_all1u { - transform = <&all_1u_transform>; +zephyr_udc0: &usbd { + status = "okay"; }; -&layout_60_hhkb { - transform = <&hhkb_transform>; +&flash0 { + /* + * For more information, see: + * http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html + */ + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + sd_partition: partition@0 { + reg = <0x00000000 0x00026000>; + }; + code_partition: partition@26000 { + reg = <0x00026000 0x000c6000>; + }; + + /* + * The flash starting at 0x000ec000 and ending at + * 0x000f3fff is reserved for use by the application. + */ + + /* + * Storage partition will be used by FCB/LittleFS/NVS + * if enabled. + */ + storage_partition: partition@ec000 { + reg = <0x000ec000 0x00008000>; + }; + + boot_partition: partition@f4000 { + reg = <0x000f4000 0x0000c000>; + }; + }; }; diff --git a/app/boards/polarityworks/bt60/bt60_1_0_0.dtsi b/app/boards/polarityworks/bt60/bt60_1_0_0.dtsi new file mode 100644 index 00000000000..d760b284410 --- /dev/null +++ b/app/boards/polarityworks/bt60/bt60_1_0_0.dtsi @@ -0,0 +1,38 @@ +/* +* Copyright (c) 2021 Polarity Works +* +* SPDX-License-Identifier: MIT +*/ + +#include + +/ { + model = "BT60"; + compatible = "polarityworks,bt60"; + + sensors: sensors { + compatible = "zmk,keymap-sensors"; + sensors = <&left_encoder>; + triggers-per-rotation = <20>; + }; + + left_encoder: encoder_left { + compatible = "alps,ec11"; + a-gpios = <&gpio1 1 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; + b-gpios = <&gpio1 3 (GPIO_ACTIVE_HIGH | GPIO_PULL_UP)>; + steps = <80>; + status = "okay"; + }; + + leds { + compatible = "gpio-leds"; + blue_led: led_0 { + gpios = <&gpio0 15 GPIO_ACTIVE_HIGH>; + }; + }; +}; + +&vbatt { + output-ohms = <2000000>; + full-ohms = <(2000000 + 806000)>; +}; diff --git a/app/boards/arm/bt60/bt60_v1.keymap b/app/boards/polarityworks/bt60/bt60_1_0_0.keymap similarity index 100% rename from app/boards/arm/bt60/bt60_v1.keymap rename to app/boards/polarityworks/bt60/bt60_1_0_0.keymap diff --git a/app/boards/arm/bt60/bt60_v1.dts b/app/boards/polarityworks/bt60/bt60_1_0_0.overlay similarity index 99% rename from app/boards/arm/bt60/bt60_v1.dts rename to app/boards/polarityworks/bt60/bt60_1_0_0.overlay index 5790458d0d4..c132266d372 100644 --- a/app/boards/arm/bt60/bt60_v1.dts +++ b/app/boards/polarityworks/bt60/bt60_1_0_0.overlay @@ -4,8 +4,7 @@ * SPDX-License-Identifier: MIT */ -/dts-v1/; -#include "bt60.dtsi" +#include "bt60_1_0_0.dtsi" #include #include #include diff --git a/app/boards/arm/bt60/bt60_v1_defconfig b/app/boards/polarityworks/bt60/bt60_1_0_0_defconfig similarity index 79% rename from app/boards/arm/bt60/bt60_v1_defconfig rename to app/boards/polarityworks/bt60/bt60_1_0_0_defconfig index 04adb8a3cd8..6925f175079 100644 --- a/app/boards/arm/bt60/bt60_v1_defconfig +++ b/app/boards/polarityworks/bt60/bt60_1_0_0_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_BT60_V1=y - # Enable MPU CONFIG_ARM_MPU=y @@ -25,4 +21,4 @@ CONFIG_FLASH_PAGE_LAYOUT=y CONFIG_FLASH_MAP=y CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y diff --git a/app/boards/polarityworks/bt60/bt60.keymap b/app/boards/polarityworks/bt60/bt60_2_0_0.keymap similarity index 100% rename from app/boards/polarityworks/bt60/bt60.keymap rename to app/boards/polarityworks/bt60/bt60_2_0_0.keymap diff --git a/app/boards/polarityworks/bt60/bt60_2_0_0.overlay b/app/boards/polarityworks/bt60/bt60_2_0_0.overlay new file mode 100644 index 00000000000..2247cab92e9 --- /dev/null +++ b/app/boards/polarityworks/bt60/bt60_2_0_0.overlay @@ -0,0 +1,90 @@ +/* +* Copyright (c) 2022 The ZMK Contributors +* +* SPDX-License-Identifier: MIT +*/ + +#include "../common/ckp.dtsi" +#include +#include +#include +#include + + +/ { + model = "BT60_V2"; + compatible = "polarityworks,bt60_v2"; + + chosen { + zmk,physical-layout = &layout_60_ansi; + }; + + + ansi_transform: keymap_transform_0 { + compatible = "zmk,matrix-transform"; + columns = <15>; + rows = <5>; + map = < + RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13) + RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) RC(2,13) + RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,13) + RC(4,0) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,12) + RC(5,0) RC(5,1) RC(5,2) RC(5,6) RC(5,10) RC(5,11) RC(5,12) RC(5,13) + >; + }; + + iso_transform: keymap_transform_1 { + compatible = "zmk,matrix-transform"; + columns = <15>; + rows = <5>; + map = < + RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13) + RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) + RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,12) RC(3,13) + RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,12) + RC(5,0) RC(5,1) RC(5,2) RC(5,6) RC(5,10) RC(5,11) RC(5,12) RC(5,13) + >; + }; + + all_1u_transform: keymap_transform_2 { + compatible = "zmk,matrix-transform"; + columns = <15>; + rows = <5>; + map = < + RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13) RC(1,14) + RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) RC(2,13) + RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,13) + RC(4,0) RC(4,1) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,12) RC(4,13) RC(4,14) + RC(5,0) RC(5,1) RC(5,2) RC(5,6) RC(5,10) RC(5,11) RC(5,12) RC(5,13) RC(5,14) + >; + }; + + hhkb_transform: keymap_transform_3 { + compatible = "zmk,matrix-transform"; + columns = <15>; + rows = <5>; + map = < + RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13) + RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,12) RC(2,13) + RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,13) + RC(4,0) RC(4,2) RC(4,3) RC(4,4) RC(4,5) RC(4,6) RC(4,7) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,12) + RC(5,0) RC(5,1) RC(5,2) RC(5,6) RC(5,11) RC(5,12) RC(5,13) + >; + }; +}; + +&layout_60_ansi { + transform = <&ansi_transform>; +}; + +&layout_60_iso { + transform = <&iso_transform>; +}; + +&layout_60_all1u { + transform = <&all_1u_transform>; +}; + +&layout_60_hhkb { + transform = <&hhkb_transform>; +}; diff --git a/app/boards/polarityworks/bt60/bt60_defconfig b/app/boards/polarityworks/bt60/bt60_2_0_0_defconfig similarity index 100% rename from app/boards/polarityworks/bt60/bt60_defconfig rename to app/boards/polarityworks/bt60/bt60_2_0_0_defconfig diff --git a/app/boards/arm/bt60/bt60_v1_hs.dts b/app/boards/polarityworks/bt60/bt60_hs.dts similarity index 97% rename from app/boards/arm/bt60/bt60_v1_hs.dts rename to app/boards/polarityworks/bt60/bt60_hs.dts index 23d4d55bbd1..c152a62a051 100644 --- a/app/boards/arm/bt60/bt60_v1_hs.dts +++ b/app/boards/polarityworks/bt60/bt60_hs.dts @@ -4,8 +4,8 @@ * SPDX-License-Identifier: MIT */ -/dts-v1/; -#include "bt60.dtsi" +#include "bt60.dts" +#include "bt60_1_0_0.dtsi" #include / { diff --git a/app/boards/arm/bt60/bt60_v1_hs.keymap b/app/boards/polarityworks/bt60/bt60_hs.keymap similarity index 100% rename from app/boards/arm/bt60/bt60_v1_hs.keymap rename to app/boards/polarityworks/bt60/bt60_hs.keymap diff --git a/app/boards/arm/bt60/bt60_v1_hs.zmk.yml b/app/boards/polarityworks/bt60/bt60_hs.zmk.yml similarity index 91% rename from app/boards/arm/bt60/bt60_v1_hs.zmk.yml rename to app/boards/polarityworks/bt60/bt60_hs.zmk.yml index 1c61f6b2a56..2d156370f92 100644 --- a/app/boards/arm/bt60/bt60_v1_hs.zmk.yml +++ b/app/boards/polarityworks/bt60/bt60_hs.zmk.yml @@ -1,5 +1,5 @@ file_format: "1" -id: bt60_v1_hs +id: bt60_hs name: BT60 V1 Hotswap type: board arch: arm diff --git a/app/boards/arm/bt60/bt60_v1_hs_defconfig b/app/boards/polarityworks/bt60/bt60_hs_defconfig similarity index 78% rename from app/boards/arm/bt60/bt60_v1_hs_defconfig rename to app/boards/polarityworks/bt60/bt60_hs_defconfig index f16d82ac41d..6925f175079 100644 --- a/app/boards/arm/bt60/bt60_v1_hs_defconfig +++ b/app/boards/polarityworks/bt60/bt60_hs_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_BT60_V1_HS=y - # Enable MPU CONFIG_ARM_MPU=y @@ -25,4 +21,4 @@ CONFIG_FLASH_PAGE_LAYOUT=y CONFIG_FLASH_MAP=y CONFIG_ZMK_USB=y -CONFIG_ZMK_BLE=y \ No newline at end of file +CONFIG_ZMK_BLE=y diff --git a/app/boards/polarityworks/bt65/bt65.dts b/app/boards/polarityworks/bt65/bt65.dts index d11a558cc02..e243a492dca 100644 --- a/app/boards/polarityworks/bt65/bt65.dts +++ b/app/boards/polarityworks/bt65/bt65.dts @@ -5,6 +5,8 @@ */ /dts-v1/; +#include +#include "../common/ckp-base.dtsi" #include "../common/ckp.dtsi" #include #include diff --git a/app/boards/polarityworks/bt75/bt75.dts b/app/boards/polarityworks/bt75/bt75.dts index f8cd8524b15..3c3086bb301 100644 --- a/app/boards/polarityworks/bt75/bt75.dts +++ b/app/boards/polarityworks/bt75/bt75.dts @@ -5,6 +5,8 @@ */ /dts-v1/; +#include +#include "../common/ckp-base.dtsi" #include "../common/ckp.dtsi" #include #include diff --git a/app/boards/polarityworks/common/ckp-base.dtsi b/app/boards/polarityworks/common/ckp-base.dtsi new file mode 100644 index 00000000000..0b1d9d131a0 --- /dev/null +++ b/app/boards/polarityworks/common/ckp-base.dtsi @@ -0,0 +1,61 @@ +&adc { + status = "okay"; +}; + +&gpiote { + status = "okay"; +}; + +&gpio0 { + status = "okay"; +}; + +&gpio1 { + status = "okay"; +}; + +zephyr_udc0: &usbd { + status = "okay"; +}; + +®1 { + regulator-initial-mode = ; +}; + + +&flash0 { + /* + * For more information, see: + * http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html + */ + partitions { + compatible = "fixed-partitions"; + #address-cells = <1>; + #size-cells = <1>; + + sd_partition: partition@0 { + reg = <0x00000000 0x00026000>; + }; + code_partition: partition@26000 { + reg = <0x00026000 0x000c6000>; + }; + + /* + * The flash starting at 0x000ec000 and ending at + * 0x000f3fff is reserved for use by the application. + */ + + /* + * Storage partition will be used by FCB/LittleFS/NVS + * if enabled. + */ + storage_partition: partition@ec000 { + reg = <0x000ec000 0x00008000>; + }; + + boot_partition: partition@f4000 { + reg = <0x000f4000 0x0000c000>; + }; + }; +}; + diff --git a/app/boards/polarityworks/common/ckp.dtsi b/app/boards/polarityworks/common/ckp.dtsi index 51a4347fb27..ba3374687a0 100644 --- a/app/boards/polarityworks/common/ckp.dtsi +++ b/app/boards/polarityworks/common/ckp.dtsi @@ -4,9 +4,6 @@ * SPDX-License-Identifier: MIT */ -/dts-v1/; -#include - #include #include @@ -119,8 +116,9 @@ }; }; -&adc { - status = "okay"; +&vbatt { + output-ohms = <100000>; + full-ohms = <(100000 + 100000)>; }; &pwm0 { @@ -130,63 +128,6 @@ pinctrl-names = "default", "sleep"; }; -&gpiote { - status = "okay"; -}; - -&gpio0 { - status = "okay"; -}; - -&gpio1 { - status = "okay"; -}; - -zephyr_udc0: &usbd { - status = "okay"; -}; - -®1 { - regulator-initial-mode = ; -}; - - -&flash0 { - /* - * For more information, see: - * http://docs.zephyrproject.org/latest/devices/dts/flash_partitions.html - */ - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - sd_partition: partition@0 { - reg = <0x00000000 0x00026000>; - }; - code_partition: partition@26000 { - reg = <0x00026000 0x000c6000>; - }; - - /* - * The flash starting at 0x000ec000 and ending at - * 0x000f3fff is reserved for use by the application. - */ - - /* - * Storage partition will be used by FCB/LittleFS/NVS - * if enabled. - */ - storage_partition: partition@ec000 { - reg = <0x000ec000 0x00008000>; - }; - - boot_partition: partition@f4000 { - reg = <0x000f4000 0x0000c000>; - }; - }; -}; - &spi3 { compatible = "nordic,nrf-spim"; status = "okay"; From c0137d76a09e3b60ea1834093fad4cb52ce3445f Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Tue, 5 Aug 2025 16:46:11 -0600 Subject: [PATCH 51/61] REMOVEME: Verbose testing to see errors. --- .github/workflows/test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index edfc21d1d7d..cebff0cc99d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -66,7 +66,7 @@ jobs: run: west zephyr-export - name: Test ${{ matrix.test }} working-directory: app - run: west test tests/${{ matrix.test }} + run: ZMK_TESTS_VERBOSE=1 west test tests/${{ matrix.test }} - name: Archive artifacts if: ${{ always() }} uses: actions/upload-artifact@v4 From 36b22f6d7c4906a21748f7577d5f79e0a7b65ac2 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 6 Aug 2025 00:34:04 -0600 Subject: [PATCH 52/61] refactor(boards): Move Adv360 Pro to HWMv2. Migrate Adv360 Pro left/right to HWMv2. --- app/boards/arm/adv360pro/Kconfig | 7 ------- app/boards/arm/adv360pro/Kconfig.board | 12 ------------ app/boards/kinesis/adv360pro/Kconfig.adv360pro_left | 7 +++++++ app/boards/kinesis/adv360pro/Kconfig.adv360pro_right | 7 +++++++ .../{arm => kinesis}/adv360pro/Kconfig.defconfig | 0 app/boards/{arm => kinesis}/adv360pro/README.md | 0 .../adv360pro/adv360pro-layouts.dtsi | 0 .../adv360pro/adv360pro-pinctrl.dtsi | 0 app/boards/{arm => kinesis}/adv360pro/adv360pro.dtsi | 4 ++++ .../{arm => kinesis}/adv360pro/adv360pro.keymap | 0 app/boards/{arm => kinesis}/adv360pro/adv360pro.yaml | 0 .../{arm => kinesis}/adv360pro/adv360pro.zmk.yml | 0 .../{arm => kinesis}/adv360pro/adv360pro_left.dts | 0 .../adv360pro/adv360pro_left_defconfig | 4 ---- .../{arm => kinesis}/adv360pro/adv360pro_right.dts | 0 .../adv360pro/adv360pro_right_defconfig | 4 ---- app/boards/{arm => kinesis}/adv360pro/board.cmake | 0 app/boards/kinesis/adv360pro/board.yml | 9 +++++++++ .../{arm => kinesis}/adv360pro/pre_dt_board.cmake | 0 19 files changed, 27 insertions(+), 27 deletions(-) delete mode 100644 app/boards/arm/adv360pro/Kconfig delete mode 100644 app/boards/arm/adv360pro/Kconfig.board create mode 100644 app/boards/kinesis/adv360pro/Kconfig.adv360pro_left create mode 100644 app/boards/kinesis/adv360pro/Kconfig.adv360pro_right rename app/boards/{arm => kinesis}/adv360pro/Kconfig.defconfig (100%) rename app/boards/{arm => kinesis}/adv360pro/README.md (100%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro-layouts.dtsi (100%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro-pinctrl.dtsi (100%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro.dtsi (98%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro.keymap (100%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro.yaml (100%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro.zmk.yml (100%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro_left.dts (100%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro_left_defconfig (92%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro_right.dts (100%) rename app/boards/{arm => kinesis}/adv360pro/adv360pro_right_defconfig (92%) rename app/boards/{arm => kinesis}/adv360pro/board.cmake (100%) create mode 100644 app/boards/kinesis/adv360pro/board.yml rename app/boards/{arm => kinesis}/adv360pro/pre_dt_board.cmake (100%) diff --git a/app/boards/arm/adv360pro/Kconfig b/app/boards/arm/adv360pro/Kconfig deleted file mode 100644 index 1840851c2bb..00000000000 --- a/app/boards/arm/adv360pro/Kconfig +++ /dev/null @@ -1,7 +0,0 @@ -# SPDX-License-Identifier: MIT - -config BOARD_ENABLE_DCDC - bool "Enable DCDC mode" - select SOC_DCDC_NRF52X - default y - depends on BOARD_ADV360PRO_LEFT || BOARD_ADV360PRO_RIGHT diff --git a/app/boards/arm/adv360pro/Kconfig.board b/app/boards/arm/adv360pro/Kconfig.board deleted file mode 100644 index 51ebaec0791..00000000000 --- a/app/boards/arm/adv360pro/Kconfig.board +++ /dev/null @@ -1,12 +0,0 @@ -# -# Copyright (c) 2023 The ZMK Contributors -# SPDX-License-Identifier: MIT -# - -config BOARD_ADV360PRO_LEFT - bool "adv360pro_left" - depends on SOC_NRF52840_QIAA - -config BOARD_ADV360PRO_RIGHT - bool "adv360pro_right" - depends on SOC_NRF52840_QIAA diff --git a/app/boards/kinesis/adv360pro/Kconfig.adv360pro_left b/app/boards/kinesis/adv360pro/Kconfig.adv360pro_left new file mode 100644 index 00000000000..0d12a502243 --- /dev/null +++ b/app/boards/kinesis/adv360pro/Kconfig.adv360pro_left @@ -0,0 +1,7 @@ +# +# Copyright (c) 2023 The ZMK Contributors +# SPDX-License-Identifier: MIT +# + +config BOARD_ADV360PRO_LEFT + select SOC_NRF52840_QIAA \ No newline at end of file diff --git a/app/boards/kinesis/adv360pro/Kconfig.adv360pro_right b/app/boards/kinesis/adv360pro/Kconfig.adv360pro_right new file mode 100644 index 00000000000..d9e3c6594c5 --- /dev/null +++ b/app/boards/kinesis/adv360pro/Kconfig.adv360pro_right @@ -0,0 +1,7 @@ +# +# Copyright (c) 2023 The ZMK Contributors +# SPDX-License-Identifier: MIT +# + +config BOARD_ADV360PRO_RIGHT + select SOC_NRF52840_QIAA \ No newline at end of file diff --git a/app/boards/arm/adv360pro/Kconfig.defconfig b/app/boards/kinesis/adv360pro/Kconfig.defconfig similarity index 100% rename from app/boards/arm/adv360pro/Kconfig.defconfig rename to app/boards/kinesis/adv360pro/Kconfig.defconfig diff --git a/app/boards/arm/adv360pro/README.md b/app/boards/kinesis/adv360pro/README.md similarity index 100% rename from app/boards/arm/adv360pro/README.md rename to app/boards/kinesis/adv360pro/README.md diff --git a/app/boards/arm/adv360pro/adv360pro-layouts.dtsi b/app/boards/kinesis/adv360pro/adv360pro-layouts.dtsi similarity index 100% rename from app/boards/arm/adv360pro/adv360pro-layouts.dtsi rename to app/boards/kinesis/adv360pro/adv360pro-layouts.dtsi diff --git a/app/boards/arm/adv360pro/adv360pro-pinctrl.dtsi b/app/boards/kinesis/adv360pro/adv360pro-pinctrl.dtsi similarity index 100% rename from app/boards/arm/adv360pro/adv360pro-pinctrl.dtsi rename to app/boards/kinesis/adv360pro/adv360pro-pinctrl.dtsi diff --git a/app/boards/arm/adv360pro/adv360pro.dtsi b/app/boards/kinesis/adv360pro/adv360pro.dtsi similarity index 98% rename from app/boards/arm/adv360pro/adv360pro.dtsi rename to app/boards/kinesis/adv360pro/adv360pro.dtsi index ca7eaacca07..23f1bf5fffb 100644 --- a/app/boards/arm/adv360pro/adv360pro.dtsi +++ b/app/boards/kinesis/adv360pro/adv360pro.dtsi @@ -71,6 +71,10 @@ }; +®1 { + regulator-initial-mode = ; +}; + &pwm0 { status = "okay"; pinctrl-0 = <&pwm0_default>; diff --git a/app/boards/arm/adv360pro/adv360pro.keymap b/app/boards/kinesis/adv360pro/adv360pro.keymap similarity index 100% rename from app/boards/arm/adv360pro/adv360pro.keymap rename to app/boards/kinesis/adv360pro/adv360pro.keymap diff --git a/app/boards/arm/adv360pro/adv360pro.yaml b/app/boards/kinesis/adv360pro/adv360pro.yaml similarity index 100% rename from app/boards/arm/adv360pro/adv360pro.yaml rename to app/boards/kinesis/adv360pro/adv360pro.yaml diff --git a/app/boards/arm/adv360pro/adv360pro.zmk.yml b/app/boards/kinesis/adv360pro/adv360pro.zmk.yml similarity index 100% rename from app/boards/arm/adv360pro/adv360pro.zmk.yml rename to app/boards/kinesis/adv360pro/adv360pro.zmk.yml diff --git a/app/boards/arm/adv360pro/adv360pro_left.dts b/app/boards/kinesis/adv360pro/adv360pro_left.dts similarity index 100% rename from app/boards/arm/adv360pro/adv360pro_left.dts rename to app/boards/kinesis/adv360pro/adv360pro_left.dts diff --git a/app/boards/arm/adv360pro/adv360pro_left_defconfig b/app/boards/kinesis/adv360pro/adv360pro_left_defconfig similarity index 92% rename from app/boards/arm/adv360pro/adv360pro_left_defconfig rename to app/boards/kinesis/adv360pro/adv360pro_left_defconfig index b6c22884138..7a8db4dc14f 100644 --- a/app/boards/arm/adv360pro/adv360pro_left_defconfig +++ b/app/boards/kinesis/adv360pro/adv360pro_left_defconfig @@ -3,10 +3,6 @@ # SPDX-License-Identifier: MIT # -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_ADV360PRO_LEFT=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/app/boards/arm/adv360pro/adv360pro_right.dts b/app/boards/kinesis/adv360pro/adv360pro_right.dts similarity index 100% rename from app/boards/arm/adv360pro/adv360pro_right.dts rename to app/boards/kinesis/adv360pro/adv360pro_right.dts diff --git a/app/boards/arm/adv360pro/adv360pro_right_defconfig b/app/boards/kinesis/adv360pro/adv360pro_right_defconfig similarity index 92% rename from app/boards/arm/adv360pro/adv360pro_right_defconfig rename to app/boards/kinesis/adv360pro/adv360pro_right_defconfig index 4138f008342..1cda90c0c30 100644 --- a/app/boards/arm/adv360pro/adv360pro_right_defconfig +++ b/app/boards/kinesis/adv360pro/adv360pro_right_defconfig @@ -3,10 +3,6 @@ # SPDX-License-Identifier: MIT # -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_ADV360PRO_RIGHT=y - # Enable MPU CONFIG_ARM_MPU=y diff --git a/app/boards/arm/adv360pro/board.cmake b/app/boards/kinesis/adv360pro/board.cmake similarity index 100% rename from app/boards/arm/adv360pro/board.cmake rename to app/boards/kinesis/adv360pro/board.cmake diff --git a/app/boards/kinesis/adv360pro/board.yml b/app/boards/kinesis/adv360pro/board.yml new file mode 100644 index 00000000000..1332451e5fb --- /dev/null +++ b/app/boards/kinesis/adv360pro/board.yml @@ -0,0 +1,9 @@ +boards: + - name: adv360pro_left + vendor: kinesis + socs: + - name: nrf52840 + - name: adv360pro_right + vendor: kinesis + socs: + - name: nrf52840 diff --git a/app/boards/arm/adv360pro/pre_dt_board.cmake b/app/boards/kinesis/adv360pro/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/adv360pro/pre_dt_board.cmake rename to app/boards/kinesis/adv360pro/pre_dt_board.cmake From b8788205943fe84b9a2133898959d871eeb4e7c7 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 6 Aug 2025 00:47:37 -0600 Subject: [PATCH 53/61] refactor(boards): Move Glove80 to HMWv2 Refactor the MoErgo Glove80 left/right to HWMv2. --- app/boards/arm/glove80/Kconfig | 8 -------- app/boards/arm/glove80/Kconfig.board | 10 ---------- app/boards/{arm => moergo}/glove80/CMakeLists.txt | 0 app/boards/{arm => moergo}/glove80/Kconfig.defconfig | 0 app/boards/moergo/glove80/Kconfig.glove80_lh | 5 +++++ app/boards/moergo/glove80/Kconfig.glove80_rh | 5 +++++ app/boards/{arm => moergo}/glove80/board.cmake | 0 app/boards/moergo/glove80/board.yml | 9 +++++++++ .../{arm => moergo}/glove80/glove80-layouts.dtsi | 0 app/boards/{arm => moergo}/glove80/glove80.dtsi | 4 ++++ app/boards/{arm => moergo}/glove80/glove80.keymap | 0 app/boards/{arm => moergo}/glove80/glove80.yaml | 0 app/boards/{arm => moergo}/glove80/glove80.zmk.yml | 0 .../{arm => moergo}/glove80/glove80_lh-pinctrl.dtsi | 0 app/boards/{arm => moergo}/glove80/glove80_lh.dts | 0 app/boards/{arm => moergo}/glove80/glove80_lh.keymap | 0 .../{arm => moergo}/glove80/glove80_lh_defconfig | 4 ---- .../{arm => moergo}/glove80/glove80_rh-pinctrl.dtsi | 0 app/boards/{arm => moergo}/glove80/glove80_rh.dts | 0 app/boards/{arm => moergo}/glove80/glove80_rh.keymap | 0 .../{arm => moergo}/glove80/glove80_rh_defconfig | 4 ---- app/boards/{arm => moergo}/glove80/pre_dt_board.cmake | 0 app/boards/{arm => moergo}/glove80/readme.md | 0 app/boards/{arm => moergo}/glove80/usb_serial_number.c | 0 24 files changed, 23 insertions(+), 26 deletions(-) delete mode 100644 app/boards/arm/glove80/Kconfig delete mode 100644 app/boards/arm/glove80/Kconfig.board rename app/boards/{arm => moergo}/glove80/CMakeLists.txt (100%) rename app/boards/{arm => moergo}/glove80/Kconfig.defconfig (100%) create mode 100644 app/boards/moergo/glove80/Kconfig.glove80_lh create mode 100644 app/boards/moergo/glove80/Kconfig.glove80_rh rename app/boards/{arm => moergo}/glove80/board.cmake (100%) create mode 100644 app/boards/moergo/glove80/board.yml rename app/boards/{arm => moergo}/glove80/glove80-layouts.dtsi (100%) rename app/boards/{arm => moergo}/glove80/glove80.dtsi (97%) rename app/boards/{arm => moergo}/glove80/glove80.keymap (100%) rename app/boards/{arm => moergo}/glove80/glove80.yaml (100%) rename app/boards/{arm => moergo}/glove80/glove80.zmk.yml (100%) rename app/boards/{arm => moergo}/glove80/glove80_lh-pinctrl.dtsi (100%) rename app/boards/{arm => moergo}/glove80/glove80_lh.dts (100%) rename app/boards/{arm => moergo}/glove80/glove80_lh.keymap (100%) rename app/boards/{arm => moergo}/glove80/glove80_lh_defconfig (96%) rename app/boards/{arm => moergo}/glove80/glove80_rh-pinctrl.dtsi (100%) rename app/boards/{arm => moergo}/glove80/glove80_rh.dts (100%) rename app/boards/{arm => moergo}/glove80/glove80_rh.keymap (100%) rename app/boards/{arm => moergo}/glove80/glove80_rh_defconfig (96%) rename app/boards/{arm => moergo}/glove80/pre_dt_board.cmake (100%) rename app/boards/{arm => moergo}/glove80/readme.md (100%) rename app/boards/{arm => moergo}/glove80/usb_serial_number.c (100%) diff --git a/app/boards/arm/glove80/Kconfig b/app/boards/arm/glove80/Kconfig deleted file mode 100644 index f1c12e7e314..00000000000 --- a/app/boards/arm/glove80/Kconfig +++ /dev/null @@ -1,8 +0,0 @@ -# Copyright (c) 2021 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_ENABLE_DCDC - bool "Enable DCDC mode" - select SOC_DCDC_NRF52X - default y - depends on (BOARD_GLOVE80_LH || BOARD_GLOVE80_RH) diff --git a/app/boards/arm/glove80/Kconfig.board b/app/boards/arm/glove80/Kconfig.board deleted file mode 100644 index f689103710f..00000000000 --- a/app/boards/arm/glove80/Kconfig.board +++ /dev/null @@ -1,10 +0,0 @@ -# Copyright (c) 2021 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_GLOVE80_LH - bool "Glove80 LH" - depends on SOC_NRF52840_QIAA - -config BOARD_GLOVE80_RH - bool "Glove80 RH" - depends on SOC_NRF52840_QIAA diff --git a/app/boards/arm/glove80/CMakeLists.txt b/app/boards/moergo/glove80/CMakeLists.txt similarity index 100% rename from app/boards/arm/glove80/CMakeLists.txt rename to app/boards/moergo/glove80/CMakeLists.txt diff --git a/app/boards/arm/glove80/Kconfig.defconfig b/app/boards/moergo/glove80/Kconfig.defconfig similarity index 100% rename from app/boards/arm/glove80/Kconfig.defconfig rename to app/boards/moergo/glove80/Kconfig.defconfig diff --git a/app/boards/moergo/glove80/Kconfig.glove80_lh b/app/boards/moergo/glove80/Kconfig.glove80_lh new file mode 100644 index 00000000000..087097ec8f5 --- /dev/null +++ b/app/boards/moergo/glove80/Kconfig.glove80_lh @@ -0,0 +1,5 @@ +# Copyright (c) 2021 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config BOARD_GLOVE80_LH + select SOC_NRF52840_QIAA diff --git a/app/boards/moergo/glove80/Kconfig.glove80_rh b/app/boards/moergo/glove80/Kconfig.glove80_rh new file mode 100644 index 00000000000..50b7bee4c4b --- /dev/null +++ b/app/boards/moergo/glove80/Kconfig.glove80_rh @@ -0,0 +1,5 @@ +# Copyright (c) 2021 The ZMK Contributors +# SPDX-License-Identifier: MIT + +config BOARD_GLOVE80_RH + select SOC_NRF52840_QIAA diff --git a/app/boards/arm/glove80/board.cmake b/app/boards/moergo/glove80/board.cmake similarity index 100% rename from app/boards/arm/glove80/board.cmake rename to app/boards/moergo/glove80/board.cmake diff --git a/app/boards/moergo/glove80/board.yml b/app/boards/moergo/glove80/board.yml new file mode 100644 index 00000000000..fcbd7cf577d --- /dev/null +++ b/app/boards/moergo/glove80/board.yml @@ -0,0 +1,9 @@ +boards: + - name: glove80_rh + vendor: moergo + socs: + - name: nrf52840 + - name: glove80_lh + vendor: moergo + socs: + - name: nrf52840 diff --git a/app/boards/arm/glove80/glove80-layouts.dtsi b/app/boards/moergo/glove80/glove80-layouts.dtsi similarity index 100% rename from app/boards/arm/glove80/glove80-layouts.dtsi rename to app/boards/moergo/glove80/glove80-layouts.dtsi diff --git a/app/boards/arm/glove80/glove80.dtsi b/app/boards/moergo/glove80/glove80.dtsi similarity index 97% rename from app/boards/arm/glove80/glove80.dtsi rename to app/boards/moergo/glove80/glove80.dtsi index ae760163205..e3c73e507d5 100644 --- a/app/boards/arm/glove80/glove80.dtsi +++ b/app/boards/moergo/glove80/glove80.dtsi @@ -47,6 +47,10 @@ }; }; +®1 { + regulator-initial-mode = ; +}; + &adc { status = "okay"; }; diff --git a/app/boards/arm/glove80/glove80.keymap b/app/boards/moergo/glove80/glove80.keymap similarity index 100% rename from app/boards/arm/glove80/glove80.keymap rename to app/boards/moergo/glove80/glove80.keymap diff --git a/app/boards/arm/glove80/glove80.yaml b/app/boards/moergo/glove80/glove80.yaml similarity index 100% rename from app/boards/arm/glove80/glove80.yaml rename to app/boards/moergo/glove80/glove80.yaml diff --git a/app/boards/arm/glove80/glove80.zmk.yml b/app/boards/moergo/glove80/glove80.zmk.yml similarity index 100% rename from app/boards/arm/glove80/glove80.zmk.yml rename to app/boards/moergo/glove80/glove80.zmk.yml diff --git a/app/boards/arm/glove80/glove80_lh-pinctrl.dtsi b/app/boards/moergo/glove80/glove80_lh-pinctrl.dtsi similarity index 100% rename from app/boards/arm/glove80/glove80_lh-pinctrl.dtsi rename to app/boards/moergo/glove80/glove80_lh-pinctrl.dtsi diff --git a/app/boards/arm/glove80/glove80_lh.dts b/app/boards/moergo/glove80/glove80_lh.dts similarity index 100% rename from app/boards/arm/glove80/glove80_lh.dts rename to app/boards/moergo/glove80/glove80_lh.dts diff --git a/app/boards/arm/glove80/glove80_lh.keymap b/app/boards/moergo/glove80/glove80_lh.keymap similarity index 100% rename from app/boards/arm/glove80/glove80_lh.keymap rename to app/boards/moergo/glove80/glove80_lh.keymap diff --git a/app/boards/arm/glove80/glove80_lh_defconfig b/app/boards/moergo/glove80/glove80_lh_defconfig similarity index 96% rename from app/boards/arm/glove80/glove80_lh_defconfig rename to app/boards/moergo/glove80/glove80_lh_defconfig index a93f27cd8f2..9973e953e00 100644 --- a/app/boards/arm/glove80/glove80_lh_defconfig +++ b/app/boards/moergo/glove80/glove80_lh_defconfig @@ -1,10 +1,6 @@ # Copyright (c) 2021 The ZMK Contributors # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_GLOVE80_LH=y - # Enable both USB and BLE CONFIG_ZMK_USB=y CONFIG_ZMK_BLE=y diff --git a/app/boards/arm/glove80/glove80_rh-pinctrl.dtsi b/app/boards/moergo/glove80/glove80_rh-pinctrl.dtsi similarity index 100% rename from app/boards/arm/glove80/glove80_rh-pinctrl.dtsi rename to app/boards/moergo/glove80/glove80_rh-pinctrl.dtsi diff --git a/app/boards/arm/glove80/glove80_rh.dts b/app/boards/moergo/glove80/glove80_rh.dts similarity index 100% rename from app/boards/arm/glove80/glove80_rh.dts rename to app/boards/moergo/glove80/glove80_rh.dts diff --git a/app/boards/arm/glove80/glove80_rh.keymap b/app/boards/moergo/glove80/glove80_rh.keymap similarity index 100% rename from app/boards/arm/glove80/glove80_rh.keymap rename to app/boards/moergo/glove80/glove80_rh.keymap diff --git a/app/boards/arm/glove80/glove80_rh_defconfig b/app/boards/moergo/glove80/glove80_rh_defconfig similarity index 96% rename from app/boards/arm/glove80/glove80_rh_defconfig rename to app/boards/moergo/glove80/glove80_rh_defconfig index ef29d682a54..d45e0ded8d3 100644 --- a/app/boards/arm/glove80/glove80_rh_defconfig +++ b/app/boards/moergo/glove80/glove80_rh_defconfig @@ -1,10 +1,6 @@ # Copyright (c) 2021 The ZMK Contributors # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_GLOVE80_RH=y - # Enable both USB and BLE CONFIG_ZMK_USB=y CONFIG_ZMK_BLE=y diff --git a/app/boards/arm/glove80/pre_dt_board.cmake b/app/boards/moergo/glove80/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/glove80/pre_dt_board.cmake rename to app/boards/moergo/glove80/pre_dt_board.cmake diff --git a/app/boards/arm/glove80/readme.md b/app/boards/moergo/glove80/readme.md similarity index 100% rename from app/boards/arm/glove80/readme.md rename to app/boards/moergo/glove80/readme.md diff --git a/app/boards/arm/glove80/usb_serial_number.c b/app/boards/moergo/glove80/usb_serial_number.c similarity index 100% rename from app/boards/arm/glove80/usb_serial_number.c rename to app/boards/moergo/glove80/usb_serial_number.c From 6839722113c10a03d0cbf65bcae0c2ac36126e82 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 6 Aug 2025 01:07:46 -0600 Subject: [PATCH 54/61] refactor(boards): Move Mikoto to HMWv2. Migrate Mikoto to HWMv2, with non-exact matching, tweaks to I2C selection to imply it for the 7.2.0 revision for the fuel gauge. --- app/boards/arm/mikoto/Kconfig.board | 8 -------- app/boards/arm/mikoto/revision.cmake | 7 ------- app/boards/{arm => zhiayang}/mikoto/CMakeLists.txt | 0 app/boards/{arm => zhiayang}/mikoto/Kconfig | 12 ------------ .../{arm => zhiayang}/mikoto/Kconfig.defconfig | 3 --- app/boards/zhiayang/mikoto/Kconfig.mikoto | 6 ++++++ .../mikoto/arduino_pro_micro_pins_v5.dtsi | 0 .../mikoto/arduino_pro_micro_pins_v6.dtsi | 0 app/boards/{arm => zhiayang}/mikoto/board.cmake | 0 app/boards/zhiayang/mikoto/board.yml | 14 ++++++++++++++ .../{arm => zhiayang}/mikoto/mikoto-pinctrl.dtsi | 0 app/boards/{arm => zhiayang}/mikoto/mikoto.dts | 4 ++++ app/boards/{arm => zhiayang}/mikoto/mikoto.yaml | 0 app/boards/{arm => zhiayang}/mikoto/mikoto.zmk.yml | 0 .../{arm => zhiayang}/mikoto/mikoto_5_20_0.overlay | 0 .../{arm => zhiayang}/mikoto/mikoto_6_1_0.overlay | 0 .../{arm => zhiayang}/mikoto/mikoto_7_2_0.conf | 0 .../{arm => zhiayang}/mikoto/mikoto_7_2_0.overlay | 0 .../{arm => zhiayang}/mikoto/mikoto_defconfig | 4 ---- app/boards/{arm => zhiayang}/mikoto/pinmux.c | 0 .../{arm => zhiayang}/mikoto/pre_dt_board.cmake | 0 21 files changed, 24 insertions(+), 34 deletions(-) delete mode 100644 app/boards/arm/mikoto/Kconfig.board delete mode 100644 app/boards/arm/mikoto/revision.cmake rename app/boards/{arm => zhiayang}/mikoto/CMakeLists.txt (100%) rename app/boards/{arm => zhiayang}/mikoto/Kconfig (74%) rename app/boards/{arm => zhiayang}/mikoto/Kconfig.defconfig (91%) create mode 100644 app/boards/zhiayang/mikoto/Kconfig.mikoto rename app/boards/{arm => zhiayang}/mikoto/arduino_pro_micro_pins_v5.dtsi (100%) rename app/boards/{arm => zhiayang}/mikoto/arduino_pro_micro_pins_v6.dtsi (100%) rename app/boards/{arm => zhiayang}/mikoto/board.cmake (100%) create mode 100644 app/boards/zhiayang/mikoto/board.yml rename app/boards/{arm => zhiayang}/mikoto/mikoto-pinctrl.dtsi (100%) rename app/boards/{arm => zhiayang}/mikoto/mikoto.dts (97%) rename app/boards/{arm => zhiayang}/mikoto/mikoto.yaml (100%) rename app/boards/{arm => zhiayang}/mikoto/mikoto.zmk.yml (100%) rename app/boards/{arm => zhiayang}/mikoto/mikoto_5_20_0.overlay (100%) rename app/boards/{arm => zhiayang}/mikoto/mikoto_6_1_0.overlay (100%) rename app/boards/{arm => zhiayang}/mikoto/mikoto_7_2_0.conf (100%) rename app/boards/{arm => zhiayang}/mikoto/mikoto_7_2_0.overlay (100%) rename app/boards/{arm => zhiayang}/mikoto/mikoto_defconfig (80%) rename app/boards/{arm => zhiayang}/mikoto/pinmux.c (100%) rename app/boards/{arm => zhiayang}/mikoto/pre_dt_board.cmake (100%) diff --git a/app/boards/arm/mikoto/Kconfig.board b/app/boards/arm/mikoto/Kconfig.board deleted file mode 100644 index b51dce8adb2..00000000000 --- a/app/boards/arm/mikoto/Kconfig.board +++ /dev/null @@ -1,8 +0,0 @@ -# mikoto board configuration - -# Copyright (c) 2020 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_MIKOTO - bool "mikoto" - depends on SOC_NRF52840_QIAA diff --git a/app/boards/arm/mikoto/revision.cmake b/app/boards/arm/mikoto/revision.cmake deleted file mode 100644 index 12fd4bd4da0..00000000000 --- a/app/boards/arm/mikoto/revision.cmake +++ /dev/null @@ -1,7 +0,0 @@ -board_check_revision(FORMAT MAJOR.MINOR.PATCH - DEFAULT_REVISION 5.20.0 - VALID_REVISIONS - 5.20.0 # first public release - 6.1.0 6.3.0 # incompatible pinout change from v5+ - 7.2.0 # addition of MAX17048; compatible pinout with v6+ -) diff --git a/app/boards/arm/mikoto/CMakeLists.txt b/app/boards/zhiayang/mikoto/CMakeLists.txt similarity index 100% rename from app/boards/arm/mikoto/CMakeLists.txt rename to app/boards/zhiayang/mikoto/CMakeLists.txt diff --git a/app/boards/arm/mikoto/Kconfig b/app/boards/zhiayang/mikoto/Kconfig similarity index 74% rename from app/boards/arm/mikoto/Kconfig rename to app/boards/zhiayang/mikoto/Kconfig index b40fdcff510..0313f68b1c7 100644 --- a/app/boards/arm/mikoto/Kconfig +++ b/app/boards/zhiayang/mikoto/Kconfig @@ -1,15 +1,3 @@ -config BOARD_ENABLE_DCDC - bool "Enable DCDC mode" - select SOC_DCDC_NRF52X - default y - depends on (BOARD_MIKOTO) - -config BOARD_ENABLE_DCDC_HV - bool "High voltage DCDC converter" - select SOC_DCDC_NRF52X_HV - default n - depends on (BOARD_MIKOTO) - choice BOARD_MIKOTO_CHARGER_CURRENT prompt "Charge current to supply to attached batteries" depends on (BOARD_MIKOTO) diff --git a/app/boards/arm/mikoto/Kconfig.defconfig b/app/boards/zhiayang/mikoto/Kconfig.defconfig similarity index 91% rename from app/boards/arm/mikoto/Kconfig.defconfig rename to app/boards/zhiayang/mikoto/Kconfig.defconfig index 0710f6fde84..ec6ee532dd1 100644 --- a/app/boards/arm/mikoto/Kconfig.defconfig +++ b/app/boards/zhiayang/mikoto/Kconfig.defconfig @@ -5,9 +5,6 @@ if BOARD_MIKOTO -config BOARD - default "mikoto" - if USB config USB_NRFX diff --git a/app/boards/zhiayang/mikoto/Kconfig.mikoto b/app/boards/zhiayang/mikoto/Kconfig.mikoto new file mode 100644 index 00000000000..64b2bfd05d2 --- /dev/null +++ b/app/boards/zhiayang/mikoto/Kconfig.mikoto @@ -0,0 +1,6 @@ +# Copyright (c) 2020 The ZMK Contributors +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_MIKOTO + select SOC_NRF52840_QIAA + imply I2C if BOARD_REVISION="7.2.0" diff --git a/app/boards/arm/mikoto/arduino_pro_micro_pins_v5.dtsi b/app/boards/zhiayang/mikoto/arduino_pro_micro_pins_v5.dtsi similarity index 100% rename from app/boards/arm/mikoto/arduino_pro_micro_pins_v5.dtsi rename to app/boards/zhiayang/mikoto/arduino_pro_micro_pins_v5.dtsi diff --git a/app/boards/arm/mikoto/arduino_pro_micro_pins_v6.dtsi b/app/boards/zhiayang/mikoto/arduino_pro_micro_pins_v6.dtsi similarity index 100% rename from app/boards/arm/mikoto/arduino_pro_micro_pins_v6.dtsi rename to app/boards/zhiayang/mikoto/arduino_pro_micro_pins_v6.dtsi diff --git a/app/boards/arm/mikoto/board.cmake b/app/boards/zhiayang/mikoto/board.cmake similarity index 100% rename from app/boards/arm/mikoto/board.cmake rename to app/boards/zhiayang/mikoto/board.cmake diff --git a/app/boards/zhiayang/mikoto/board.yml b/app/boards/zhiayang/mikoto/board.yml new file mode 100644 index 00000000000..d1f7155762b --- /dev/null +++ b/app/boards/zhiayang/mikoto/board.yml @@ -0,0 +1,14 @@ +board: + name: mikoto + vendor: zhiayang + revision: + format: major.minor.patch + default: 5.20.0 + exact: false + revisions: + - name: 5.20.0 + - name: 6.1.0 + - name: 6.3.0 + - name: 7.2.0 + socs: + - name: nrf52840 diff --git a/app/boards/arm/mikoto/mikoto-pinctrl.dtsi b/app/boards/zhiayang/mikoto/mikoto-pinctrl.dtsi similarity index 100% rename from app/boards/arm/mikoto/mikoto-pinctrl.dtsi rename to app/boards/zhiayang/mikoto/mikoto-pinctrl.dtsi diff --git a/app/boards/arm/mikoto/mikoto.dts b/app/boards/zhiayang/mikoto/mikoto.dts similarity index 97% rename from app/boards/arm/mikoto/mikoto.dts rename to app/boards/zhiayang/mikoto/mikoto.dts index b8dca950308..b416d2b73c7 100644 --- a/app/boards/arm/mikoto/mikoto.dts +++ b/app/boards/zhiayang/mikoto/mikoto.dts @@ -40,6 +40,10 @@ }; }; +®1 { + regulator-initial-mode = ; +}; + &adc { status = "okay"; }; diff --git a/app/boards/arm/mikoto/mikoto.yaml b/app/boards/zhiayang/mikoto/mikoto.yaml similarity index 100% rename from app/boards/arm/mikoto/mikoto.yaml rename to app/boards/zhiayang/mikoto/mikoto.yaml diff --git a/app/boards/arm/mikoto/mikoto.zmk.yml b/app/boards/zhiayang/mikoto/mikoto.zmk.yml similarity index 100% rename from app/boards/arm/mikoto/mikoto.zmk.yml rename to app/boards/zhiayang/mikoto/mikoto.zmk.yml diff --git a/app/boards/arm/mikoto/mikoto_5_20_0.overlay b/app/boards/zhiayang/mikoto/mikoto_5_20_0.overlay similarity index 100% rename from app/boards/arm/mikoto/mikoto_5_20_0.overlay rename to app/boards/zhiayang/mikoto/mikoto_5_20_0.overlay diff --git a/app/boards/arm/mikoto/mikoto_6_1_0.overlay b/app/boards/zhiayang/mikoto/mikoto_6_1_0.overlay similarity index 100% rename from app/boards/arm/mikoto/mikoto_6_1_0.overlay rename to app/boards/zhiayang/mikoto/mikoto_6_1_0.overlay diff --git a/app/boards/arm/mikoto/mikoto_7_2_0.conf b/app/boards/zhiayang/mikoto/mikoto_7_2_0.conf similarity index 100% rename from app/boards/arm/mikoto/mikoto_7_2_0.conf rename to app/boards/zhiayang/mikoto/mikoto_7_2_0.conf diff --git a/app/boards/arm/mikoto/mikoto_7_2_0.overlay b/app/boards/zhiayang/mikoto/mikoto_7_2_0.overlay similarity index 100% rename from app/boards/arm/mikoto/mikoto_7_2_0.overlay rename to app/boards/zhiayang/mikoto/mikoto_7_2_0.overlay diff --git a/app/boards/arm/mikoto/mikoto_defconfig b/app/boards/zhiayang/mikoto/mikoto_defconfig similarity index 80% rename from app/boards/arm/mikoto/mikoto_defconfig rename to app/boards/zhiayang/mikoto/mikoto_defconfig index 4b3bc7d9758..56aa9526f66 100644 --- a/app/boards/arm/mikoto/mikoto_defconfig +++ b/app/boards/zhiayang/mikoto/mikoto_defconfig @@ -1,9 +1,5 @@ # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_MIKOTO=y - # Enable MPU CONFIG_ARM_MPU=y CONFIG_PINCTRL=y diff --git a/app/boards/arm/mikoto/pinmux.c b/app/boards/zhiayang/mikoto/pinmux.c similarity index 100% rename from app/boards/arm/mikoto/pinmux.c rename to app/boards/zhiayang/mikoto/pinmux.c diff --git a/app/boards/arm/mikoto/pre_dt_board.cmake b/app/boards/zhiayang/mikoto/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/mikoto/pre_dt_board.cmake rename to app/boards/zhiayang/mikoto/pre_dt_board.cmake From b585c99733863fa4f839efde7b5093f6bfd705fe Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 6 Aug 2025 01:38:10 -0600 Subject: [PATCH 55/61] refactor(boards): Move kbdfans Tofu65 2.0 to HMWv2 Move Tofu65 2.0 to HMWv2, with ID of just `tofu65`. --- app/boards/arm/kbdfans_tofu65/Kconfig.board | 6 ------ .../tofu65}/Kconfig.defconfig | 4 ++-- app/boards/kbdfans/tofu65/Kconfig.tofu65 | 5 +++++ app/boards/kbdfans/tofu65/board.yml | 5 +++++ .../tofu65/tofu65.dts} | 21 ++++++++++++------- .../tofu65/tofu65.keymap} | 0 .../tofu65/tofu65.yaml} | 2 +- .../tofu65/tofu65.zmk.yml} | 2 +- .../tofu65/tofu65_defconfig} | 5 +---- 9 files changed, 29 insertions(+), 21 deletions(-) delete mode 100644 app/boards/arm/kbdfans_tofu65/Kconfig.board rename app/boards/{arm/kbdfans_tofu65 => kbdfans/tofu65}/Kconfig.defconfig (74%) create mode 100644 app/boards/kbdfans/tofu65/Kconfig.tofu65 create mode 100644 app/boards/kbdfans/tofu65/board.yml rename app/boards/{arm/kbdfans_tofu65/kbdfans_tofu65_v2.dts => kbdfans/tofu65/tofu65.dts} (93%) rename app/boards/{arm/kbdfans_tofu65/kbdfans_tofu65_v2.keymap => kbdfans/tofu65/tofu65.keymap} (100%) rename app/boards/{arm/kbdfans_tofu65/kbdfans_tofu65_v2.yaml => kbdfans/tofu65/tofu65.yaml} (84%) rename app/boards/{arm/kbdfans_tofu65/kbdfans_tofu65_v2.zmk.yml => kbdfans/tofu65/tofu65.zmk.yml} (88%) rename app/boards/{arm/kbdfans_tofu65/kbdfans_tofu65_v2_defconfig => kbdfans/tofu65/tofu65_defconfig} (83%) diff --git a/app/boards/arm/kbdfans_tofu65/Kconfig.board b/app/boards/arm/kbdfans_tofu65/Kconfig.board deleted file mode 100644 index 954166b715f..00000000000 --- a/app/boards/arm/kbdfans_tofu65/Kconfig.board +++ /dev/null @@ -1,6 +0,0 @@ -# Copyright (c) 2023 The ZMK Contributors -# SPDX-License-Identifier: Apache-2.0 - -config BOARD_KBDFANS_TOFU65_V2 - bool "KBDfans Tofu65 2.0" - depends on SOC_RP2040 diff --git a/app/boards/arm/kbdfans_tofu65/Kconfig.defconfig b/app/boards/kbdfans/tofu65/Kconfig.defconfig similarity index 74% rename from app/boards/arm/kbdfans_tofu65/Kconfig.defconfig rename to app/boards/kbdfans/tofu65/Kconfig.defconfig index 0444f510105..0a524c4e23f 100644 --- a/app/boards/arm/kbdfans_tofu65/Kconfig.defconfig +++ b/app/boards/kbdfans/tofu65/Kconfig.defconfig @@ -1,7 +1,7 @@ # Copyright (c) 2023 The ZMK Contributors # SPDX-License-Identifier: MIT -if BOARD_KBDFANS_TOFU65_V2 +if BOARD_TOFU65 config ZMK_KEYBOARD_NAME default "kbdfans tofu65" @@ -9,4 +9,4 @@ config ZMK_KEYBOARD_NAME config RP2_FLASH_W25Q080 default y -endif # BOARD_KBDFANS_TOFU65_V2 +endif # BOARD_TOFU65 diff --git a/app/boards/kbdfans/tofu65/Kconfig.tofu65 b/app/boards/kbdfans/tofu65/Kconfig.tofu65 new file mode 100644 index 00000000000..484c56ca65e --- /dev/null +++ b/app/boards/kbdfans/tofu65/Kconfig.tofu65 @@ -0,0 +1,5 @@ +# Copyright (c) 2023 The ZMK Contributors +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_TOFU65 + select SOC_RP2040 diff --git a/app/boards/kbdfans/tofu65/board.yml b/app/boards/kbdfans/tofu65/board.yml new file mode 100644 index 00000000000..a044fea2592 --- /dev/null +++ b/app/boards/kbdfans/tofu65/board.yml @@ -0,0 +1,5 @@ +board: + name: tofu65 + vendor: kbdfans + socs: + - name: rp2040 diff --git a/app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.dts b/app/boards/kbdfans/tofu65/tofu65.dts similarity index 93% rename from app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.dts rename to app/boards/kbdfans/tofu65/tofu65.dts index bc6a9d02b4b..221ddc4ed1f 100644 --- a/app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.dts +++ b/app/boards/kbdfans/tofu65/tofu65.dts @@ -5,7 +5,7 @@ /dts-v1/; -#include +#include #include #include @@ -15,17 +15,12 @@ chosen { zephyr,sram = &sram0; zephyr,flash = &flash0; + zephyr,flash-controller = &ssi; zephyr,code-partition = &code_partition; zmk,kscan = &kscan0; zmk,physical-layout = &layout_65_ansi; }; - xtal_clk: xtal-clk { - compatible = "fixed-clock"; - clock-frequency = <12000000>; - #clock-cells = <0>; - }; - default_transform: keymap_transform_0 { compatible = "zmk,matrix-transform"; columns = <15>; @@ -107,11 +102,23 @@ RC(4,0) RC(4,1) RC(4,2) RC(4,6) RC(4,8) RC(4,9) }; }; +&timer { + status = "okay"; +}; + +&rtc { + clocks = <&clocks RPI_PICO_CLKID_CLK_RTC>; + status = "okay"; +}; zephyr_udc0: &usbd { status = "okay"; }; +&vreg { + regulator-always-on; + regulator-allowed-modes = ; +}; &gpio0 { status = "okay"; diff --git a/app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.keymap b/app/boards/kbdfans/tofu65/tofu65.keymap similarity index 100% rename from app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.keymap rename to app/boards/kbdfans/tofu65/tofu65.keymap diff --git a/app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.yaml b/app/boards/kbdfans/tofu65/tofu65.yaml similarity index 84% rename from app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.yaml rename to app/boards/kbdfans/tofu65/tofu65.yaml index e1089766da2..458b157f005 100644 --- a/app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.yaml +++ b/app/boards/kbdfans/tofu65/tofu65.yaml @@ -1,4 +1,4 @@ -identifier: kbdfans_tofu65_v2 +identifier: tofu65 name: KBDfans Tofu65 2.0 type: mcu arch: arm diff --git a/app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.zmk.yml b/app/boards/kbdfans/tofu65/tofu65.zmk.yml similarity index 88% rename from app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.zmk.yml rename to app/boards/kbdfans/tofu65/tofu65.zmk.yml index 382e7dd3603..b8ef43b362f 100644 --- a/app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2.zmk.yml +++ b/app/boards/kbdfans/tofu65/tofu65.zmk.yml @@ -1,5 +1,5 @@ file_format: "1" -id: kbdfans_tofu65_v2 +id: tofu65 name: KBDfans Tofu65 2.0 type: board arch: arm diff --git a/app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2_defconfig b/app/boards/kbdfans/tofu65/tofu65_defconfig similarity index 83% rename from app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2_defconfig rename to app/boards/kbdfans/tofu65/tofu65_defconfig index 57014acf37a..a0ac1c3b92f 100644 --- a/app/boards/arm/kbdfans_tofu65/kbdfans_tofu65_v2_defconfig +++ b/app/boards/kbdfans/tofu65/tofu65_defconfig @@ -1,10 +1,6 @@ # Copyright (c) 2023 The ZMK Contributors # SPDX-License-Identifier: MIT -CONFIG_SOC_SERIES_RP2XXX=y -CONFIG_SOC_RP2040=y -CONFIG_BOARD_KBDFANS_TOFU65_V2=y - CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=125000000 # Enable USB CDC ACM logging for debugging @@ -12,6 +8,7 @@ CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=125000000 # Enable reset by default CONFIG_RESET=y +CONFIG_CLOCK_CONTROL=y # Code partition needed to target the correct flash range CONFIG_USE_DT_CODE_PARTITION=y From f809e8cbb569ea5f638d3e8c315f46d0f4346099 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Wed, 6 Aug 2025 01:55:29 -0600 Subject: [PATCH 56/61] refactor(boards): Remove dz60rgb board Remove dz60rgb, it's no longer readily available and we have other current stm32 reference designs for testing. --- app/boards/arm/dz60rgb/Kconfig.board | 6 -- app/boards/arm/dz60rgb/Kconfig.defconfig | 11 --- app/boards/arm/dz60rgb/board.cmake | 7 -- app/boards/arm/dz60rgb/dz60rgb_rev1.dts | 86 ------------------- app/boards/arm/dz60rgb/dz60rgb_rev1.keymap | 25 ------ app/boards/arm/dz60rgb/dz60rgb_rev1.yaml | 19 ---- app/boards/arm/dz60rgb/dz60rgb_rev1_defconfig | 26 ------ 7 files changed, 180 deletions(-) delete mode 100644 app/boards/arm/dz60rgb/Kconfig.board delete mode 100644 app/boards/arm/dz60rgb/Kconfig.defconfig delete mode 100644 app/boards/arm/dz60rgb/board.cmake delete mode 100644 app/boards/arm/dz60rgb/dz60rgb_rev1.dts delete mode 100644 app/boards/arm/dz60rgb/dz60rgb_rev1.keymap delete mode 100644 app/boards/arm/dz60rgb/dz60rgb_rev1.yaml delete mode 100644 app/boards/arm/dz60rgb/dz60rgb_rev1_defconfig diff --git a/app/boards/arm/dz60rgb/Kconfig.board b/app/boards/arm/dz60rgb/Kconfig.board deleted file mode 100644 index ba09e2dd43e..00000000000 --- a/app/boards/arm/dz60rgb/Kconfig.board +++ /dev/null @@ -1,6 +0,0 @@ -# Copyright (c) 2020 The ZMK Contributors -# SPDX-License-Identifier: MIT - -config BOARD_DZ60RGB_REV1 - bool "DZ60RGB Keyboard" - depends on SOC_STM32F303XC diff --git a/app/boards/arm/dz60rgb/Kconfig.defconfig b/app/boards/arm/dz60rgb/Kconfig.defconfig deleted file mode 100644 index 6e0592569de..00000000000 --- a/app/boards/arm/dz60rgb/Kconfig.defconfig +++ /dev/null @@ -1,11 +0,0 @@ -# DZ60RGB keyboard configuration - -# Copyright (c) 2020 The ZMK Contributors -# SPDX-License-Identifier: MIT - -if BOARD_DZ60RGB_REV1 - -config ZMK_KEYBOARD_NAME - default "DZ60RGB Rev 1" - -endif # BOARD_DZ60RGB_REV1 diff --git a/app/boards/arm/dz60rgb/board.cmake b/app/boards/arm/dz60rgb/board.cmake deleted file mode 100644 index 9da8ea91122..00000000000 --- a/app/boards/arm/dz60rgb/board.cmake +++ /dev/null @@ -1,7 +0,0 @@ -# SPDX-License-Identifier: MIT - -board_runner_args(dfu-util "--pid=0483:df11" "--alt=0" "--dfuse") -board_runner_args(jlink "--device=STM32F303CC" "--speed=4000") - -include(${ZEPHYR_BASE}/boards/common/dfu-util.board.cmake) -include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake) diff --git a/app/boards/arm/dz60rgb/dz60rgb_rev1.dts b/app/boards/arm/dz60rgb/dz60rgb_rev1.dts deleted file mode 100644 index b8fac4e2807..00000000000 --- a/app/boards/arm/dz60rgb/dz60rgb_rev1.dts +++ /dev/null @@ -1,86 +0,0 @@ -/* - * Copyright (c) 2020 The ZMK Contributors - * - * SPDX-License-Identifier: MIT - */ - -/dts-v1/; -#include - -#include - -/ { - model = "DZ60RGB, Rev 1"; - compatible = "dz60rgb,rev1", "st,stm32f303"; - - chosen { - zephyr,sram = &sram0; - zephyr,flash = &flash0; - zmk,kscan = &kscan0; - zmk,matrix-transform = &default_transform; - }; - - default_transform: keymap_transform_0 { - compatible = "zmk,matrix-transform"; - columns = <14>; - rows = <5>; - map = < -RC(0,0) RC(0,1) RC(0,2) RC(0,3) RC(0,4) RC(0,5) RC(0,6) RC(0,7) RC(0,8) RC(0,9) RC(0,10) RC(0,11) RC(0,12) RC(0,13) -RC(1,0) RC(1,1) RC(1,2) RC(1,3) RC(1,4) RC(1,5) RC(1,6) RC(1,7) RC(1,8) RC(1,9) RC(1,10) RC(1,11) RC(1,12) RC(1,13) -RC(2,0) RC(2,1) RC(2,2) RC(2,3) RC(2,4) RC(2,5) RC(2,6) RC(2,7) RC(2,8) RC(2,9) RC(2,10) RC(2,11) RC(2,13) -RC(3,0) RC(3,1) RC(3,2) RC(3,3) RC(3,4) RC(3,5) RC(3,6) RC(3,7) RC(3,8) RC(3,9) RC(3,10) RC(3,11) RC(3,13) -RC(4,0) RC(4,1) RC(4,2) RC(4,5) RC(4,8) RC(4,9) RC(4,10) RC(4,11) RC(4,13) - >; - }; - - kscan0: kscan { - compatible = "zmk,kscan-gpio-matrix"; - - diode-direction = "col2row"; - row-gpios - = <&gpioa 9 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&gpiob 10 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&gpiob 11 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&gpiob 14 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - , <&gpiob 12 (GPIO_ACTIVE_HIGH | GPIO_PULL_DOWN)> - ; - col-gpios - = <&gpioa 6 GPIO_ACTIVE_HIGH> - , <&gpioa 7 GPIO_ACTIVE_HIGH> - , <&gpiob 0 GPIO_ACTIVE_HIGH> - , <&gpiob 13 GPIO_ACTIVE_HIGH> - , <&gpiob 15 GPIO_ACTIVE_HIGH> - , <&gpioa 8 GPIO_ACTIVE_HIGH> - , <&gpioa 15 GPIO_ACTIVE_HIGH> - , <&gpiob 3 GPIO_ACTIVE_HIGH> - , <&gpiob 4 GPIO_ACTIVE_HIGH> - , <&gpiob 5 GPIO_ACTIVE_HIGH> - , <&gpiob 8 GPIO_ACTIVE_HIGH> - , <&gpiob 9 GPIO_ACTIVE_HIGH> - , <&gpioc 13 GPIO_ACTIVE_HIGH> - , <&gpioc 14 GPIO_ACTIVE_HIGH> - ; - }; - -}; - -zephyr_udc0: &usb { - status = "okay"; -}; - -&flash0 { - /* - * For more information, see: - * http://docs.zephyrproject.org/latest/guides/dts/index.html#flash-partitions - */ - partitions { - compatible = "fixed-partitions"; - #address-cells = <1>; - #size-cells = <1>; - - /* Set 6Kb of storage at the end of the 256Kb of flash */ - storage_partition: partition@3e800 { - reg = <0x0003e800 0x00001800>; - }; - }; -}; diff --git a/app/boards/arm/dz60rgb/dz60rgb_rev1.keymap b/app/boards/arm/dz60rgb/dz60rgb_rev1.keymap deleted file mode 100644 index eaf5d5daba0..00000000000 --- a/app/boards/arm/dz60rgb/dz60rgb_rev1.keymap +++ /dev/null @@ -1,25 +0,0 @@ -#include -#include - -/ { - keymap { - compatible = "zmk,keymap"; - - default_layer { -// ------------------------------------------------------------------------------------------ -// | ESC | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BSPC | -// | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | "|" | -// | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER | -// | SHIFT | Z | X | C | V | B | N | M | , | . | SHIFT(/) | ^ | DEL | -// | CTL | WIN | ALT | SPACE | ALT | MO(1) | <- | v | -> | -// ------------------------------------------------------------------------------------------ - bindings = < - &kp ESC &kp N1 &kp N2 &kp N3 &kp N4 &kp N5 &kp N6 &kp N7 &kp N8 &kp N9 &kp N0 &kp MINUS &kp EQUAL &kp BSPC - &kp TAB &kp Q &kp W &kp E &kp R &kp T &kp Y &kp U &kp I &kp O &kp P &kp LBKT &kp RBKT &kp BSLH - &kp CLCK &kp A &kp S &kp D &kp F &kp G &kp H &kp J &kp K &kp L &kp SEMI &kp SQT &kp RET - &kp LSHFT &kp Z &kp X &kp C &kp V &kp B &kp N &kp M &kp COMMA &kp DOT &mt RSHFT FSLH &kp UP &kp DEL - &kp LCTRL &kp LGUI &kp LALT &kp SPACE &kp RALT &mo 1 &kp LEFT &kp DOWN &kp RIGHT - >; - }; - }; -}; \ No newline at end of file diff --git a/app/boards/arm/dz60rgb/dz60rgb_rev1.yaml b/app/boards/arm/dz60rgb/dz60rgb_rev1.yaml deleted file mode 100644 index d2836218a78..00000000000 --- a/app/boards/arm/dz60rgb/dz60rgb_rev1.yaml +++ /dev/null @@ -1,19 +0,0 @@ -identifier: DZ60RGB_rev1 -name: DZ60RGBREV1 -type: keyboard -arch: arm -toolchain: - - zephyr - - gnuarmemb - - xtools -ram: 40 -supported: - - gpio - - i2c - - counter - - spi - - usb_device - - lsm303dlhc - - nvs - - can - - kscan diff --git a/app/boards/arm/dz60rgb/dz60rgb_rev1_defconfig b/app/boards/arm/dz60rgb/dz60rgb_rev1_defconfig deleted file mode 100644 index 6b6c8a48de6..00000000000 --- a/app/boards/arm/dz60rgb/dz60rgb_rev1_defconfig +++ /dev/null @@ -1,26 +0,0 @@ -# SPDX-License-Identifier: MIT - -CONFIG_SOC_SERIES_STM32F3X=y -CONFIG_SOC_STM32F303XC=y -# 72MHz system clock -CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=72000000 - -# enable GPIO -CONFIG_GPIO=y - -# clock configuration -CONFIG_CLOCK_CONTROL=y - -# Clock configuration for Cube Clock control driver -CONFIG_CLOCK_STM32_HSE_CLOCK=8000000 -CONFIG_CLOCK_STM32_SYSCLK_SRC_PLL=y -# use HSE as PLL input -CONFIG_CLOCK_STM32_PLL_SRC_HSE=y -# produce 72MHz clock at PLL output -CONFIG_CLOCK_STM32_PLL_PREDIV=1 -CONFIG_CLOCK_STM32_PLL_MULTIPLIER=9 -CONFIG_CLOCK_STM32_AHB_PRESCALER=1 -CONFIG_CLOCK_STM32_APB1_PRESCALER=2 -CONFIG_CLOCK_STM32_APB2_PRESCALER=1 - -CONFIG_ZMK_USB=y \ No newline at end of file From 6609c1c94ff0290e8ace4041404caf2cc8a806f1 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Sat, 9 Aug 2025 23:09:06 -0600 Subject: [PATCH 57/61] refactor(boards): Move Corneish Zen to HMWv2 Move Corneish Zen to HMWv2, with IDs of `corneish_zen_left`/`corneish_zen_right`. --- app/boards/arm/corneish_zen/Kconfig | 10 -------- app/boards/arm/corneish_zen/Kconfig.board | 24 ------------------- .../arm/corneish_zen/corneish_zen_v1.zmk.yml | 16 ------------- .../arm/corneish_zen/corneish_zen_v2.yaml | 20 ---------------- .../corneish_zen/CMakeLists.txt | 0 .../corneish_zen/Kconfig.corneish_zen_left | 7 ++++++ .../corneish_zen/Kconfig.corneish_zen_right | 7 ++++++ .../corneish_zen/Kconfig.defconfig | 7 ------ .../corneish_zen/board.cmake | 0 app/boards/lowprokb/corneish_zen/board.yml | 23 ++++++++++++++++++ .../corneish_zen/corneish_zen.conf | 0 .../corneish_zen/corneish_zen.dtsi | 0 .../corneish_zen/corneish_zen.keymap | 0 .../corneish_zen/corneish_zen.yaml | 0 .../corneish_zen/corneish_zen.zmk.yml} | 7 ++++-- .../corneish_zen/corneish_zen_left.dts | 8 +++++++ .../corneish_zen_left_1_0_0.overlay} | 1 - .../corneish_zen_left_1_0_0_defconfig} | 23 ++++++++---------- .../corneish_zen_left_2_0_0.overlay} | 2 -- .../corneish_zen_left_2_0_0_defconfig} | 23 ++++++++---------- .../corneish_zen/corneish_zen_right.dts | 8 +++++++ .../corneish_zen_right_1_0_0.overlay} | 2 -- .../corneish_zen_right_1_0_0_defconfig} | 23 ++++++++---------- .../corneish_zen_right_2_0_0.overlay} | 2 -- .../corneish_zen_right_2_0_0_defconfig} | 23 ++++++++---------- .../corneish_zen/custom_status_screen.c | 0 .../corneish_zen/custom_status_screen.h | 0 .../corneish_zen/pre_dt_board.cmake | 0 .../corneish_zen/widgets/battery_status.c | 0 .../corneish_zen/widgets/battery_status.h | 0 .../corneish_zen/widgets/icons/CMakeLists.txt | 0 .../widgets/icons/USB_connected.c | 0 .../corneish_zen/widgets/icons/batt_0.c | 0 .../corneish_zen/widgets/icons/batt_0_chg.c | 0 .../corneish_zen/widgets/icons/batt_100.c | 0 .../corneish_zen/widgets/icons/batt_100_chg.c | 0 .../corneish_zen/widgets/icons/batt_25.c | 0 .../corneish_zen/widgets/icons/batt_25_chg.c | 0 .../corneish_zen/widgets/icons/batt_5.c | 0 .../corneish_zen/widgets/icons/batt_50.c | 0 .../corneish_zen/widgets/icons/batt_50_chg.c | 0 .../corneish_zen/widgets/icons/batt_5_chg.c | 0 .../corneish_zen/widgets/icons/batt_75.c | 0 .../corneish_zen/widgets/icons/batt_75_chg.c | 0 .../widgets/icons/bluetooth_advertising.c | 0 .../widgets/icons/bluetooth_advertising_1.c | 0 .../widgets/icons/bluetooth_advertising_2.c | 0 .../widgets/icons/bluetooth_advertising_3.c | 0 .../widgets/icons/bluetooth_advertising_4.c | 0 .../widgets/icons/bluetooth_advertising_5.c | 0 .../widgets/icons/bluetooth_connected_1.c | 0 .../widgets/icons/bluetooth_connected_2.c | 0 .../widgets/icons/bluetooth_connected_3.c | 0 .../widgets/icons/bluetooth_connected_4.c | 0 .../widgets/icons/bluetooth_connected_5.c | 0 .../widgets/icons/bluetooth_connected_right.c | 0 .../icons/bluetooth_disconnected_right.c | 0 .../corneish_zen/widgets/icons/layers.c | 0 .../corneish_zen/widgets/icons/layers2.c | 0 .../corneish_zen/widgets/icons/zenlogo.c | 0 .../corneish_zen/widgets/layer_status.c | 0 .../corneish_zen/widgets/layer_status.h | 0 .../corneish_zen/widgets/output_status.c | 0 .../corneish_zen/widgets/output_status.h | 0 .../corneish_zen/widgets/peripheral_status.c | 0 .../corneish_zen/widgets/peripheral_status.h | 0 66 files changed, 98 insertions(+), 138 deletions(-) delete mode 100644 app/boards/arm/corneish_zen/Kconfig delete mode 100644 app/boards/arm/corneish_zen/Kconfig.board delete mode 100644 app/boards/arm/corneish_zen/corneish_zen_v1.zmk.yml delete mode 100644 app/boards/arm/corneish_zen/corneish_zen_v2.yaml rename app/boards/{arm => lowprokb}/corneish_zen/CMakeLists.txt (100%) create mode 100644 app/boards/lowprokb/corneish_zen/Kconfig.corneish_zen_left create mode 100644 app/boards/lowprokb/corneish_zen/Kconfig.corneish_zen_right rename app/boards/{arm => lowprokb}/corneish_zen/Kconfig.defconfig (89%) rename app/boards/{arm => lowprokb}/corneish_zen/board.cmake (100%) create mode 100644 app/boards/lowprokb/corneish_zen/board.yml rename app/boards/{arm => lowprokb}/corneish_zen/corneish_zen.conf (100%) rename app/boards/{arm => lowprokb}/corneish_zen/corneish_zen.dtsi (100%) rename app/boards/{arm => lowprokb}/corneish_zen/corneish_zen.keymap (100%) rename app/boards/{arm => lowprokb}/corneish_zen/corneish_zen.yaml (100%) rename app/boards/{arm/corneish_zen/corneish_zen_v2.zmk.yml => lowprokb/corneish_zen/corneish_zen.zmk.yml} (75%) create mode 100644 app/boards/lowprokb/corneish_zen/corneish_zen_left.dts rename app/boards/{arm/corneish_zen/corneish_zen_v1_left.dts => lowprokb/corneish_zen/corneish_zen_left_1_0_0.overlay} (99%) rename app/boards/{arm/corneish_zen/corneish_zen_v1_left_defconfig => lowprokb/corneish_zen/corneish_zen_left_1_0_0_defconfig} (78%) rename app/boards/{arm/corneish_zen/corneish_zen_v2_left.dts => lowprokb/corneish_zen/corneish_zen_left_2_0_0.overlay} (98%) rename app/boards/{arm/corneish_zen/corneish_zen_v2_left_defconfig => lowprokb/corneish_zen/corneish_zen_left_2_0_0_defconfig} (77%) create mode 100644 app/boards/lowprokb/corneish_zen/corneish_zen_right.dts rename app/boards/{arm/corneish_zen/corneish_zen_v1_right.dts => lowprokb/corneish_zen/corneish_zen_right_1_0_0.overlay} (99%) rename app/boards/{arm/corneish_zen/corneish_zen_v1_right_defconfig => lowprokb/corneish_zen/corneish_zen_right_1_0_0_defconfig} (77%) rename app/boards/{arm/corneish_zen/corneish_zen_v2_right.dts => lowprokb/corneish_zen/corneish_zen_right_2_0_0.overlay} (98%) rename app/boards/{arm/corneish_zen/corneish_zen_v2_right_defconfig => lowprokb/corneish_zen/corneish_zen_right_2_0_0_defconfig} (77%) rename app/boards/{arm => lowprokb}/corneish_zen/custom_status_screen.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/custom_status_screen.h (100%) rename app/boards/{arm => lowprokb}/corneish_zen/pre_dt_board.cmake (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/battery_status.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/battery_status.h (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/CMakeLists.txt (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/USB_connected.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_0.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_0_chg.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_100.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_100_chg.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_25.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_25_chg.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_5.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_50.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_50_chg.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_5_chg.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_75.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/batt_75_chg.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_advertising.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_advertising_1.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_advertising_2.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_advertising_3.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_advertising_4.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_advertising_5.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_connected_1.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_connected_2.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_connected_3.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_connected_4.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_connected_5.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_connected_right.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/bluetooth_disconnected_right.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/layers.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/layers2.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/icons/zenlogo.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/layer_status.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/layer_status.h (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/output_status.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/output_status.h (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/peripheral_status.c (100%) rename app/boards/{arm => lowprokb}/corneish_zen/widgets/peripheral_status.h (100%) diff --git a/app/boards/arm/corneish_zen/Kconfig b/app/boards/arm/corneish_zen/Kconfig deleted file mode 100644 index 33d926092ee..00000000000 --- a/app/boards/arm/corneish_zen/Kconfig +++ /dev/null @@ -1,10 +0,0 @@ -# -# Copyright (c) 2022 The ZMK Contributors -# SPDX-License-Identifier: MIT -# - -config BOARD_CORNEISH_ZEN_LEFT - bool - -config BOARD_CORNEISH_ZEN_RIGHT - bool diff --git a/app/boards/arm/corneish_zen/Kconfig.board b/app/boards/arm/corneish_zen/Kconfig.board deleted file mode 100644 index ffb3ab1f4d5..00000000000 --- a/app/boards/arm/corneish_zen/Kconfig.board +++ /dev/null @@ -1,24 +0,0 @@ -# -# Copyright (c) 2022 Darryl deHaan -# SPDX-License-Identifier: MIT -# - -config BOARD_CORNEISH_ZEN_V1_LEFT - bool "corneish zen left v1" - depends on SOC_NRF52840_QIAA - select BOARD_CORNEISH_ZEN_LEFT - -config BOARD_CORNEISH_ZEN_V1_RIGHT - bool "corneish zen right v1" - depends on SOC_NRF52840_QIAA - select BOARD_CORNEISH_ZEN_RIGHT - -config BOARD_CORNEISH_ZEN_V2_LEFT - bool "corneish zen left v2" - depends on SOC_NRF52840_QIAA - select BOARD_CORNEISH_ZEN_LEFT - -config BOARD_CORNEISH_ZEN_V2_RIGHT - bool "corneish zen right v2" - depends on SOC_NRF52840_QIAA - select BOARD_CORNEISH_ZEN_RIGHT diff --git a/app/boards/arm/corneish_zen/corneish_zen_v1.zmk.yml b/app/boards/arm/corneish_zen/corneish_zen_v1.zmk.yml deleted file mode 100644 index 8bb5e18ec6a..00000000000 --- a/app/boards/arm/corneish_zen/corneish_zen_v1.zmk.yml +++ /dev/null @@ -1,16 +0,0 @@ -file_format: "1" -id: corneish_zen_v1 -name: Corneish Zen v1 -url: https://lowprokb.ca/collections/keyboards/products/corne-ish-zen -type: board -arch: arm -features: - - keys - - display - - studio -outputs: - - usb - - ble -siblings: - - corneish_zen_v1_left - - corneish_zen_v1_right diff --git a/app/boards/arm/corneish_zen/corneish_zen_v2.yaml b/app/boards/arm/corneish_zen/corneish_zen_v2.yaml deleted file mode 100644 index 46a213d9c60..00000000000 --- a/app/boards/arm/corneish_zen/corneish_zen_v2.yaml +++ /dev/null @@ -1,20 +0,0 @@ -identifier: corneish_zen_v2 -name: Corne-ish Zen v2 -type: keyboard -arch: arm -toolchain: - - zephyr - - gnuarmemb - - xtools -supported: - - gpio - - i2c - - counter - - spi - - usb_device - - lsm303dlhc - - nvs - - can - - kscan - - ble - - adc diff --git a/app/boards/arm/corneish_zen/CMakeLists.txt b/app/boards/lowprokb/corneish_zen/CMakeLists.txt similarity index 100% rename from app/boards/arm/corneish_zen/CMakeLists.txt rename to app/boards/lowprokb/corneish_zen/CMakeLists.txt diff --git a/app/boards/lowprokb/corneish_zen/Kconfig.corneish_zen_left b/app/boards/lowprokb/corneish_zen/Kconfig.corneish_zen_left new file mode 100644 index 00000000000..5420dfca64d --- /dev/null +++ b/app/boards/lowprokb/corneish_zen/Kconfig.corneish_zen_left @@ -0,0 +1,7 @@ +# +# Copyright (c) 2022 Darryl deHaan +# SPDX-License-Identifier: MIT +# + +config BOARD_CORNEISH_ZEN_LEFT + select SOC_NRF52840_QIAA diff --git a/app/boards/lowprokb/corneish_zen/Kconfig.corneish_zen_right b/app/boards/lowprokb/corneish_zen/Kconfig.corneish_zen_right new file mode 100644 index 00000000000..0ddec3d9175 --- /dev/null +++ b/app/boards/lowprokb/corneish_zen/Kconfig.corneish_zen_right @@ -0,0 +1,7 @@ +# +# Copyright (c) 2022 Darryl deHaan +# SPDX-License-Identifier: MIT +# + +config BOARD_CORNEISH_ZEN_RIGHT + select SOC_NRF52840_QIAA diff --git a/app/boards/arm/corneish_zen/Kconfig.defconfig b/app/boards/lowprokb/corneish_zen/Kconfig.defconfig similarity index 89% rename from app/boards/arm/corneish_zen/Kconfig.defconfig rename to app/boards/lowprokb/corneish_zen/Kconfig.defconfig index 11f932b5302..461c288e325 100644 --- a/app/boards/arm/corneish_zen/Kconfig.defconfig +++ b/app/boards/lowprokb/corneish_zen/Kconfig.defconfig @@ -79,10 +79,3 @@ menuconfig CUSTOM_WIDGET_PERIPHERAL_STATUS bool "custom peripheral status widget" endif # BOARD_CORNEISH_ZEN_LEFT || BOARD_CORNEISH_ZEN_RIGHT - -if BOARD_CORNEISH_ZEN_V1_LEFT || BOARD_CORNEISH_ZEN_V1_RIGHT - -config BQ274XX - default y - -endif # BOARD_CORNEISH_ZEN_V1_LEFT || BOARD_CORNEISH_ZEN_V1_RIGHT diff --git a/app/boards/arm/corneish_zen/board.cmake b/app/boards/lowprokb/corneish_zen/board.cmake similarity index 100% rename from app/boards/arm/corneish_zen/board.cmake rename to app/boards/lowprokb/corneish_zen/board.cmake diff --git a/app/boards/lowprokb/corneish_zen/board.yml b/app/boards/lowprokb/corneish_zen/board.yml new file mode 100644 index 00000000000..97d63ec6819 --- /dev/null +++ b/app/boards/lowprokb/corneish_zen/board.yml @@ -0,0 +1,23 @@ +boards: + - name: corneish_zen_left + vendor: lowprokb + socs: + - name: nrf52840 + revision: + format: major.minor.patch + default: 2.0.0 + exact: false + revisions: + - name: 2.0.0 + - name: 1.0.0 + - name: corneish_zen_right + vendor: lowprokb + socs: + - name: nrf52840 + revision: + format: major.minor.patch + default: 2.0.0 + exact: false + revisions: + - name: 2.0.0 + - name: 1.0.0 diff --git a/app/boards/arm/corneish_zen/corneish_zen.conf b/app/boards/lowprokb/corneish_zen/corneish_zen.conf similarity index 100% rename from app/boards/arm/corneish_zen/corneish_zen.conf rename to app/boards/lowprokb/corneish_zen/corneish_zen.conf diff --git a/app/boards/arm/corneish_zen/corneish_zen.dtsi b/app/boards/lowprokb/corneish_zen/corneish_zen.dtsi similarity index 100% rename from app/boards/arm/corneish_zen/corneish_zen.dtsi rename to app/boards/lowprokb/corneish_zen/corneish_zen.dtsi diff --git a/app/boards/arm/corneish_zen/corneish_zen.keymap b/app/boards/lowprokb/corneish_zen/corneish_zen.keymap similarity index 100% rename from app/boards/arm/corneish_zen/corneish_zen.keymap rename to app/boards/lowprokb/corneish_zen/corneish_zen.keymap diff --git a/app/boards/arm/corneish_zen/corneish_zen.yaml b/app/boards/lowprokb/corneish_zen/corneish_zen.yaml similarity index 100% rename from app/boards/arm/corneish_zen/corneish_zen.yaml rename to app/boards/lowprokb/corneish_zen/corneish_zen.yaml diff --git a/app/boards/arm/corneish_zen/corneish_zen_v2.zmk.yml b/app/boards/lowprokb/corneish_zen/corneish_zen.zmk.yml similarity index 75% rename from app/boards/arm/corneish_zen/corneish_zen_v2.zmk.yml rename to app/boards/lowprokb/corneish_zen/corneish_zen.zmk.yml index 26981e05d16..206019f4eb6 100644 --- a/app/boards/arm/corneish_zen/corneish_zen_v2.zmk.yml +++ b/app/boards/lowprokb/corneish_zen/corneish_zen.zmk.yml @@ -11,6 +11,9 @@ features: outputs: - usb - ble +revisions: + - 2.0.0 + - 1.0.0 siblings: - - corneish_zen_v2_left - - corneish_zen_v2_right + - corneish_zen_left + - corneish_zen_right diff --git a/app/boards/lowprokb/corneish_zen/corneish_zen_left.dts b/app/boards/lowprokb/corneish_zen/corneish_zen_left.dts new file mode 100644 index 00000000000..6849efa39fd --- /dev/null +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_left.dts @@ -0,0 +1,8 @@ +/* +* +* Copyright (c) 2025 The ZMK Contributors +* SPDX-License-Identifier: MIT +* +*/ + +#include "corneish_zen.dtsi" \ No newline at end of file diff --git a/app/boards/arm/corneish_zen/corneish_zen_v1_left.dts b/app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0.overlay similarity index 99% rename from app/boards/arm/corneish_zen/corneish_zen_v1_left.dts rename to app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0.overlay index 4230147ecd9..9b6617b1db7 100644 --- a/app/boards/arm/corneish_zen/corneish_zen_v1_left.dts +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0.overlay @@ -5,7 +5,6 @@ * */ -#include "corneish_zen.dtsi" /{ chosen { diff --git a/app/boards/arm/corneish_zen/corneish_zen_v1_left_defconfig b/app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0_defconfig similarity index 78% rename from app/boards/arm/corneish_zen/corneish_zen_v1_left_defconfig rename to app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0_defconfig index d4de8ed3ca3..ade6942c3f9 100644 --- a/app/boards/arm/corneish_zen/corneish_zen_v1_left_defconfig +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0_defconfig @@ -3,11 +3,8 @@ # SPDX-License-Identifier: MIT # -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_CORNEISH_ZEN_V1_LEFT=y CONFIG_ZMK_SLEEP=y -CONFIG_ZMK_DISPLAY=y +# CONFIG_ZMK_DISPLAY=y # Enable MPU CONFIG_ARM_MPU=y @@ -45,15 +42,15 @@ CONFIG_ZMK_BLE=y # enable display drivers CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=4096 -CONFIG_LV_Z_BITS_PER_PIXEL=1 -CONFIG_LV_COLOR_DEPTH_1=y -CONFIG_LV_DPI_DEF=145 -CONFIG_LV_Z_VDB_SIZE=100 -CONFIG_LV_USE_THEME_MONO=y -CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 -CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y -CONFIG_LV_FONT_MONTSERRAT_26=y -CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y +# CONFIG_LV_Z_BITS_PER_PIXEL=1 +# CONFIG_LV_COLOR_DEPTH_1=y +# CONFIG_LV_DPI_DEF=145 +# CONFIG_LV_Z_VDB_SIZE=100 +# CONFIG_LV_USE_THEME_MONO=y +# CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 +# CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y +# CONFIG_LV_FONT_MONTSERRAT_26=y +# CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y # custom status screens CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y diff --git a/app/boards/arm/corneish_zen/corneish_zen_v2_left.dts b/app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0.overlay similarity index 98% rename from app/boards/arm/corneish_zen/corneish_zen_v2_left.dts rename to app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0.overlay index 42839b61646..a72c9be23ec 100644 --- a/app/boards/arm/corneish_zen/corneish_zen_v2_left.dts +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0.overlay @@ -5,8 +5,6 @@ * */ -#include "corneish_zen.dtsi" - /{ chosen { zephyr,display = &epd; diff --git a/app/boards/arm/corneish_zen/corneish_zen_v2_left_defconfig b/app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0_defconfig similarity index 77% rename from app/boards/arm/corneish_zen/corneish_zen_v2_left_defconfig rename to app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0_defconfig index b6670fd8df5..3a7a4f49878 100644 --- a/app/boards/arm/corneish_zen/corneish_zen_v2_left_defconfig +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0_defconfig @@ -3,11 +3,8 @@ # SPDX-License-Identifier: MIT # -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_CORNEISH_ZEN_V2_LEFT=y CONFIG_ZMK_SLEEP=y -CONFIG_ZMK_DISPLAY=y +# CONFIG_ZMK_DISPLAY=y # Enable MPU CONFIG_ARM_MPU=y @@ -41,15 +38,15 @@ CONFIG_ZMK_BLE=y # enable display drivers CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=4096 -CONFIG_LV_Z_BITS_PER_PIXEL=1 -CONFIG_LV_COLOR_DEPTH_1=y -CONFIG_LV_DPI_DEF=145 -CONFIG_LV_Z_VDB_SIZE=100 -CONFIG_LV_USE_THEME_MONO=y -CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 -CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y -CONFIG_LV_FONT_MONTSERRAT_26=y -CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y +# CONFIG_LV_Z_BITS_PER_PIXEL=1 +# CONFIG_LV_COLOR_DEPTH_1=y +# CONFIG_LV_DPI_DEF=145 +# CONFIG_LV_Z_VDB_SIZE=100 +# CONFIG_LV_USE_THEME_MONO=y +# CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 +# CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y +# CONFIG_LV_FONT_MONTSERRAT_26=y +# CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y # custom status screens CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y diff --git a/app/boards/lowprokb/corneish_zen/corneish_zen_right.dts b/app/boards/lowprokb/corneish_zen/corneish_zen_right.dts new file mode 100644 index 00000000000..6849efa39fd --- /dev/null +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_right.dts @@ -0,0 +1,8 @@ +/* +* +* Copyright (c) 2025 The ZMK Contributors +* SPDX-License-Identifier: MIT +* +*/ + +#include "corneish_zen.dtsi" \ No newline at end of file diff --git a/app/boards/arm/corneish_zen/corneish_zen_v1_right.dts b/app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0.overlay similarity index 99% rename from app/boards/arm/corneish_zen/corneish_zen_v1_right.dts rename to app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0.overlay index 820d316378b..2059485694b 100644 --- a/app/boards/arm/corneish_zen/corneish_zen_v1_right.dts +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0.overlay @@ -5,8 +5,6 @@ * */ -#include "corneish_zen.dtsi" - /{ chosen { zephyr,display = &epd; diff --git a/app/boards/arm/corneish_zen/corneish_zen_v1_right_defconfig b/app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0_defconfig similarity index 77% rename from app/boards/arm/corneish_zen/corneish_zen_v1_right_defconfig rename to app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0_defconfig index ad78217f654..4026faf37ea 100644 --- a/app/boards/arm/corneish_zen/corneish_zen_v1_right_defconfig +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0_defconfig @@ -3,11 +3,8 @@ # SPDX-License-Identifier: MIT # -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_CORNEISH_ZEN_V1_RIGHT=y CONFIG_ZMK_SLEEP=y -CONFIG_ZMK_DISPLAY=y +# CONFIG_ZMK_DISPLAY=y # Enable MPU CONFIG_ARM_MPU=y @@ -45,15 +42,15 @@ CONFIG_ZMK_BLE=y # enable display drivers CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=4096 -CONFIG_LV_Z_BITS_PER_PIXEL=1 -CONFIG_LV_COLOR_DEPTH_1=y -CONFIG_LV_DPI_DEF=145 -CONFIG_LV_Z_VDB_SIZE=100 -CONFIG_LV_USE_THEME_MONO=y -CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 -CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y -CONFIG_LV_FONT_MONTSERRAT_26=y -CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y +# CONFIG_LV_Z_BITS_PER_PIXEL=1 +# CONFIG_LV_COLOR_DEPTH_1=y +# CONFIG_LV_DPI_DEF=145 +# CONFIG_LV_Z_VDB_SIZE=100 +# CONFIG_LV_USE_THEME_MONO=y +# CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 +# CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y +# CONFIG_LV_FONT_MONTSERRAT_26=y +# CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y # custom status screens CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y diff --git a/app/boards/arm/corneish_zen/corneish_zen_v2_right.dts b/app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0.overlay similarity index 98% rename from app/boards/arm/corneish_zen/corneish_zen_v2_right.dts rename to app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0.overlay index b47d122fe54..dc8ef626c20 100644 --- a/app/boards/arm/corneish_zen/corneish_zen_v2_right.dts +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0.overlay @@ -5,8 +5,6 @@ * */ -#include "corneish_zen.dtsi" - /{ chosen { zephyr,display = &epd; diff --git a/app/boards/arm/corneish_zen/corneish_zen_v2_right_defconfig b/app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0_defconfig similarity index 77% rename from app/boards/arm/corneish_zen/corneish_zen_v2_right_defconfig rename to app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0_defconfig index 90cfe7698d1..c22cf096c2a 100644 --- a/app/boards/arm/corneish_zen/corneish_zen_v2_right_defconfig +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0_defconfig @@ -3,11 +3,8 @@ # SPDX-License-Identifier: MIT # -CONFIG_SOC_SERIES_NRF52X=y -CONFIG_SOC_NRF52840_QIAA=y -CONFIG_BOARD_CORNEISH_ZEN_V2_RIGHT=y CONFIG_ZMK_SLEEP=y -CONFIG_ZMK_DISPLAY=y +# CONFIG_ZMK_DISPLAY=y # Enable MPU CONFIG_ARM_MPU=y @@ -41,15 +38,15 @@ CONFIG_ZMK_BLE=y # enable display drivers CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=4096 -CONFIG_LV_Z_BITS_PER_PIXEL=1 -CONFIG_LV_COLOR_DEPTH_1=y -CONFIG_LV_DPI_DEF=145 -CONFIG_LV_Z_VDB_SIZE=100 -CONFIG_LV_USE_THEME_MONO=y -CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 -CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y -CONFIG_LV_FONT_MONTSERRAT_26=y -CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y +# CONFIG_LV_Z_BITS_PER_PIXEL=1 +# CONFIG_LV_COLOR_DEPTH_1=y +# CONFIG_LV_DPI_DEF=145 +# CONFIG_LV_Z_VDB_SIZE=100 +# CONFIG_LV_USE_THEME_MONO=y +# CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 +# CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y +# CONFIG_LV_FONT_MONTSERRAT_26=y +# CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y # custom status screens CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y diff --git a/app/boards/arm/corneish_zen/custom_status_screen.c b/app/boards/lowprokb/corneish_zen/custom_status_screen.c similarity index 100% rename from app/boards/arm/corneish_zen/custom_status_screen.c rename to app/boards/lowprokb/corneish_zen/custom_status_screen.c diff --git a/app/boards/arm/corneish_zen/custom_status_screen.h b/app/boards/lowprokb/corneish_zen/custom_status_screen.h similarity index 100% rename from app/boards/arm/corneish_zen/custom_status_screen.h rename to app/boards/lowprokb/corneish_zen/custom_status_screen.h diff --git a/app/boards/arm/corneish_zen/pre_dt_board.cmake b/app/boards/lowprokb/corneish_zen/pre_dt_board.cmake similarity index 100% rename from app/boards/arm/corneish_zen/pre_dt_board.cmake rename to app/boards/lowprokb/corneish_zen/pre_dt_board.cmake diff --git a/app/boards/arm/corneish_zen/widgets/battery_status.c b/app/boards/lowprokb/corneish_zen/widgets/battery_status.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/battery_status.c rename to app/boards/lowprokb/corneish_zen/widgets/battery_status.c diff --git a/app/boards/arm/corneish_zen/widgets/battery_status.h b/app/boards/lowprokb/corneish_zen/widgets/battery_status.h similarity index 100% rename from app/boards/arm/corneish_zen/widgets/battery_status.h rename to app/boards/lowprokb/corneish_zen/widgets/battery_status.h diff --git a/app/boards/arm/corneish_zen/widgets/icons/CMakeLists.txt b/app/boards/lowprokb/corneish_zen/widgets/icons/CMakeLists.txt similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/CMakeLists.txt rename to app/boards/lowprokb/corneish_zen/widgets/icons/CMakeLists.txt diff --git a/app/boards/arm/corneish_zen/widgets/icons/USB_connected.c b/app/boards/lowprokb/corneish_zen/widgets/icons/USB_connected.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/USB_connected.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/USB_connected.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_0.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_0.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_0.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_0_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0_chg.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_0_chg.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_0_chg.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_100.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_100.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_100.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_100_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100_chg.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_100_chg.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_100_chg.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_25.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_25.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_25.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_25_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25_chg.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_25_chg.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_25_chg.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_5.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_5.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_5.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_50.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_50.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_50.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_50_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50_chg.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_50_chg.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_50_chg.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_5_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5_chg.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_5_chg.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_5_chg.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_75.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_75.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_75.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/batt_75_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75_chg.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/batt_75_chg.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/batt_75_chg.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_1.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_1.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_1.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_1.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_2.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_2.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_2.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_2.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_3.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_3.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_3.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_3.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_4.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_4.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_4.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_4.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_5.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_5.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_advertising_5.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_5.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_1.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_1.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_1.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_1.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_2.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_2.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_2.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_2.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_3.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_3.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_3.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_3.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_4.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_4.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_4.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_4.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_5.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_5.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_5.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_5.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_right.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_right.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_connected_right.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_right.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/bluetooth_disconnected_right.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_disconnected_right.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/bluetooth_disconnected_right.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_disconnected_right.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/layers.c b/app/boards/lowprokb/corneish_zen/widgets/icons/layers.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/layers.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/layers.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/layers2.c b/app/boards/lowprokb/corneish_zen/widgets/icons/layers2.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/layers2.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/layers2.c diff --git a/app/boards/arm/corneish_zen/widgets/icons/zenlogo.c b/app/boards/lowprokb/corneish_zen/widgets/icons/zenlogo.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/icons/zenlogo.c rename to app/boards/lowprokb/corneish_zen/widgets/icons/zenlogo.c diff --git a/app/boards/arm/corneish_zen/widgets/layer_status.c b/app/boards/lowprokb/corneish_zen/widgets/layer_status.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/layer_status.c rename to app/boards/lowprokb/corneish_zen/widgets/layer_status.c diff --git a/app/boards/arm/corneish_zen/widgets/layer_status.h b/app/boards/lowprokb/corneish_zen/widgets/layer_status.h similarity index 100% rename from app/boards/arm/corneish_zen/widgets/layer_status.h rename to app/boards/lowprokb/corneish_zen/widgets/layer_status.h diff --git a/app/boards/arm/corneish_zen/widgets/output_status.c b/app/boards/lowprokb/corneish_zen/widgets/output_status.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/output_status.c rename to app/boards/lowprokb/corneish_zen/widgets/output_status.c diff --git a/app/boards/arm/corneish_zen/widgets/output_status.h b/app/boards/lowprokb/corneish_zen/widgets/output_status.h similarity index 100% rename from app/boards/arm/corneish_zen/widgets/output_status.h rename to app/boards/lowprokb/corneish_zen/widgets/output_status.h diff --git a/app/boards/arm/corneish_zen/widgets/peripheral_status.c b/app/boards/lowprokb/corneish_zen/widgets/peripheral_status.c similarity index 100% rename from app/boards/arm/corneish_zen/widgets/peripheral_status.c rename to app/boards/lowprokb/corneish_zen/widgets/peripheral_status.c diff --git a/app/boards/arm/corneish_zen/widgets/peripheral_status.h b/app/boards/lowprokb/corneish_zen/widgets/peripheral_status.h similarity index 100% rename from app/boards/arm/corneish_zen/widgets/peripheral_status.h rename to app/boards/lowprokb/corneish_zen/widgets/peripheral_status.h From fdc59a28d404ef4a772ef5017d880831697e0bd0 Mon Sep 17 00:00:00 2001 From: Cem Aksoylar Date: Mon, 11 Aug 2025 23:39:09 -0700 Subject: [PATCH 58/61] refactor(boards): Migrate Corne-ish Zen status screen --- .../lowprokb/corneish_zen/Kconfig.defconfig | 2 +- .../corneish_zen_left_1_0_0_defconfig | 18 ++++++------- .../corneish_zen_left_2_0_0_defconfig | 18 ++++++------- .../corneish_zen_right_1_0_0_defconfig | 18 ++++++------- .../corneish_zen_right_2_0_0_defconfig | 18 ++++++------- .../corneish_zen/custom_status_screen.c | 8 +++--- .../corneish_zen/widgets/battery_status.c | 14 +++++----- .../widgets/icons/USB_connected.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_0.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_0_chg.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_100.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_100_chg.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_25.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_25_chg.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_5.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_50.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_50_chg.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_5_chg.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_75.c | 16 +++++++----- .../corneish_zen/widgets/icons/batt_75_chg.c | 16 +++++++----- .../widgets/icons/bluetooth_advertising.c | 16 +++++++----- .../widgets/icons/bluetooth_advertising_1.c | 16 +++++++----- .../widgets/icons/bluetooth_advertising_2.c | 16 +++++++----- .../widgets/icons/bluetooth_advertising_3.c | 16 +++++++----- .../widgets/icons/bluetooth_advertising_4.c | 16 +++++++----- .../widgets/icons/bluetooth_advertising_5.c | 16 +++++++----- .../widgets/icons/bluetooth_connected_1.c | 16 +++++++----- .../widgets/icons/bluetooth_connected_2.c | 16 +++++++----- .../widgets/icons/bluetooth_connected_3.c | 16 +++++++----- .../widgets/icons/bluetooth_connected_4.c | 16 +++++++----- .../widgets/icons/bluetooth_connected_5.c | 16 +++++++----- .../widgets/icons/bluetooth_connected_right.c | 16 +++++++----- .../icons/bluetooth_disconnected_right.c | 16 +++++++----- .../corneish_zen/widgets/icons/layers.c | 16 +++++++----- .../corneish_zen/widgets/icons/layers2.c | 16 +++++++----- .../corneish_zen/widgets/icons/zenlogo.c | 16 +++++++----- .../corneish_zen/widgets/output_status.c | 26 +++++++++---------- .../corneish_zen/widgets/peripheral_status.c | 6 ++--- app/boards/shields/nice_view/widgets/art.c | 4 +-- app/boards/shields/nice_view/widgets/bolt.c | 15 ++++++----- .../nice_view/widgets/peripheral_status.c | 2 +- 41 files changed, 366 insertions(+), 247 deletions(-) diff --git a/app/boards/lowprokb/corneish_zen/Kconfig.defconfig b/app/boards/lowprokb/corneish_zen/Kconfig.defconfig index 461c288e325..e4ff579a49e 100644 --- a/app/boards/lowprokb/corneish_zen/Kconfig.defconfig +++ b/app/boards/lowprokb/corneish_zen/Kconfig.defconfig @@ -40,7 +40,7 @@ config ZMK_DISPLAY select LV_FONT_MONTSERRAT_26 select LV_FONT_MONTSERRAT_16 select LV_USE_LABEL - select LV_USE_IMG + select LV_USE_IMAGE choice ZMK_DISPLAY_STATUS_SCREEN default ZMK_DISPLAY_STATUS_SCREEN_CUSTOM diff --git a/app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0_defconfig b/app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0_defconfig index ade6942c3f9..cba717e3971 100644 --- a/app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0_defconfig +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_left_1_0_0_defconfig @@ -4,7 +4,7 @@ # CONFIG_ZMK_SLEEP=y -# CONFIG_ZMK_DISPLAY=y +CONFIG_ZMK_DISPLAY=y # Enable MPU CONFIG_ARM_MPU=y @@ -42,15 +42,15 @@ CONFIG_ZMK_BLE=y # enable display drivers CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=4096 -# CONFIG_LV_Z_BITS_PER_PIXEL=1 -# CONFIG_LV_COLOR_DEPTH_1=y -# CONFIG_LV_DPI_DEF=145 -# CONFIG_LV_Z_VDB_SIZE=100 -# CONFIG_LV_USE_THEME_MONO=y +CONFIG_LV_Z_BITS_PER_PIXEL=1 +CONFIG_LV_COLOR_DEPTH_1=y +CONFIG_LV_DPI_DEF=145 +CONFIG_LV_Z_VDB_SIZE=100 +CONFIG_LV_USE_THEME_MONO=y # CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 -# CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y -# CONFIG_LV_FONT_MONTSERRAT_26=y -# CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y +CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y +CONFIG_LV_FONT_MONTSERRAT_26=y +CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y # custom status screens CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y diff --git a/app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0_defconfig b/app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0_defconfig index 3a7a4f49878..a549c29c717 100644 --- a/app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0_defconfig +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_left_2_0_0_defconfig @@ -4,7 +4,7 @@ # CONFIG_ZMK_SLEEP=y -# CONFIG_ZMK_DISPLAY=y +CONFIG_ZMK_DISPLAY=y # Enable MPU CONFIG_ARM_MPU=y @@ -38,15 +38,15 @@ CONFIG_ZMK_BLE=y # enable display drivers CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=4096 -# CONFIG_LV_Z_BITS_PER_PIXEL=1 -# CONFIG_LV_COLOR_DEPTH_1=y -# CONFIG_LV_DPI_DEF=145 -# CONFIG_LV_Z_VDB_SIZE=100 -# CONFIG_LV_USE_THEME_MONO=y +CONFIG_LV_Z_BITS_PER_PIXEL=1 +CONFIG_LV_COLOR_DEPTH_1=y +CONFIG_LV_DPI_DEF=145 +CONFIG_LV_Z_VDB_SIZE=100 +CONFIG_LV_USE_THEME_MONO=y # CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 -# CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y -# CONFIG_LV_FONT_MONTSERRAT_26=y -# CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y +CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y +CONFIG_LV_FONT_MONTSERRAT_26=y +CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y # custom status screens CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y diff --git a/app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0_defconfig b/app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0_defconfig index 4026faf37ea..e44e010a419 100644 --- a/app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0_defconfig +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_right_1_0_0_defconfig @@ -4,7 +4,7 @@ # CONFIG_ZMK_SLEEP=y -# CONFIG_ZMK_DISPLAY=y +CONFIG_ZMK_DISPLAY=y # Enable MPU CONFIG_ARM_MPU=y @@ -42,15 +42,15 @@ CONFIG_ZMK_BLE=y # enable display drivers CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=4096 -# CONFIG_LV_Z_BITS_PER_PIXEL=1 -# CONFIG_LV_COLOR_DEPTH_1=y -# CONFIG_LV_DPI_DEF=145 -# CONFIG_LV_Z_VDB_SIZE=100 -# CONFIG_LV_USE_THEME_MONO=y +CONFIG_LV_Z_BITS_PER_PIXEL=1 +CONFIG_LV_COLOR_DEPTH_1=y +CONFIG_LV_DPI_DEF=145 +CONFIG_LV_Z_VDB_SIZE=100 +CONFIG_LV_USE_THEME_MONO=y # CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 -# CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y -# CONFIG_LV_FONT_MONTSERRAT_26=y -# CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y +CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y +CONFIG_LV_FONT_MONTSERRAT_26=y +CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y # custom status screens CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y diff --git a/app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0_defconfig b/app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0_defconfig index c22cf096c2a..63b098e1369 100644 --- a/app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0_defconfig +++ b/app/boards/lowprokb/corneish_zen/corneish_zen_right_2_0_0_defconfig @@ -4,7 +4,7 @@ # CONFIG_ZMK_SLEEP=y -# CONFIG_ZMK_DISPLAY=y +CONFIG_ZMK_DISPLAY=y # Enable MPU CONFIG_ARM_MPU=y @@ -38,15 +38,15 @@ CONFIG_ZMK_BLE=y # enable display drivers CONFIG_ZMK_DISPLAY_WORK_QUEUE_DEDICATED=y CONFIG_ZMK_DISPLAY_DEDICATED_THREAD_STACK_SIZE=4096 -# CONFIG_LV_Z_BITS_PER_PIXEL=1 -# CONFIG_LV_COLOR_DEPTH_1=y -# CONFIG_LV_DPI_DEF=145 -# CONFIG_LV_Z_VDB_SIZE=100 -# CONFIG_LV_USE_THEME_MONO=y +CONFIG_LV_Z_BITS_PER_PIXEL=1 +CONFIG_LV_COLOR_DEPTH_1=y +CONFIG_LV_DPI_DEF=145 +CONFIG_LV_Z_VDB_SIZE=100 +CONFIG_LV_USE_THEME_MONO=y # CONFIG_LV_COLOR_CHROMA_KEY_HEX=0x00FF00 -# CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y -# CONFIG_LV_FONT_MONTSERRAT_26=y -# CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y +CONFIG_ZMK_LV_FONT_DEFAULT_SMALL_MONTSERRAT_16=y +CONFIG_LV_FONT_MONTSERRAT_26=y +CONFIG_LV_FONT_DEFAULT_MONTSERRAT_26=y # custom status screens CONFIG_ZMK_DISPLAY_STATUS_SCREEN_CUSTOM=y diff --git a/app/boards/lowprokb/corneish_zen/custom_status_screen.c b/app/boards/lowprokb/corneish_zen/custom_status_screen.c index 492239c8a57..86c1a226521 100644 --- a/app/boards/lowprokb/corneish_zen/custom_status_screen.c +++ b/app/boards/lowprokb/corneish_zen/custom_status_screen.c @@ -56,9 +56,9 @@ lv_obj_t *zmk_display_status_screen() { #if IS_ENABLED(CONFIG_CUSTOM_WIDGET_LAYER_STATUS) lv_obj_t *LayersHeading; - LayersHeading = lv_img_create(screen); + LayersHeading = lv_image_create(screen); lv_obj_align(LayersHeading, LV_ALIGN_BOTTOM_MID, 0, -30); - lv_img_set_src(LayersHeading, &layers2); + lv_image_set_src(LayersHeading, &layers2); zmk_widget_layer_status_init(&layer_status_widget, screen); lv_obj_set_style_text_font(zmk_widget_layer_status_obj(&layer_status_widget), @@ -68,8 +68,8 @@ lv_obj_t *zmk_display_status_screen() { #if !IS_ENABLED(CONFIG_ZMK_SPLIT_ROLE_CENTRAL) lv_obj_t *zenlogo_icon; - zenlogo_icon = lv_img_create(screen); - lv_img_set_src(zenlogo_icon, &zenlogo); + zenlogo_icon = lv_image_create(screen); + lv_image_set_src(zenlogo_icon, &zenlogo); lv_obj_align(zenlogo_icon, LV_ALIGN_BOTTOM_MID, 0, -5); #endif diff --git a/app/boards/lowprokb/corneish_zen/widgets/battery_status.c b/app/boards/lowprokb/corneish_zen/widgets/battery_status.c index 622e39df6f0..044d3cee067 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/battery_status.c +++ b/app/boards/lowprokb/corneish_zen/widgets/battery_status.c @@ -45,17 +45,17 @@ static void set_battery_symbol(lv_obj_t *icon, struct battery_status_state state #if IS_ENABLED(CONFIG_USB_DEVICE_STACK) if (level > 95) { - lv_img_set_src(icon, state.usb_present ? &batt_100_chg : &batt_100); + lv_image_set_src(icon, state.usb_present ? &batt_100_chg : &batt_100); } else if (level > 74) { - lv_img_set_src(icon, state.usb_present ? &batt_75_chg : &batt_75); + lv_image_set_src(icon, state.usb_present ? &batt_75_chg : &batt_75); } else if (level > 49) { - lv_img_set_src(icon, state.usb_present ? &batt_50_chg : &batt_50); + lv_image_set_src(icon, state.usb_present ? &batt_50_chg : &batt_50); } else if (level > 24) { - lv_img_set_src(icon, state.usb_present ? &batt_25_chg : &batt_25); + lv_image_set_src(icon, state.usb_present ? &batt_25_chg : &batt_25); } else if (level > 5) { - lv_img_set_src(icon, state.usb_present ? &batt_5_chg : &batt_5); + lv_image_set_src(icon, state.usb_present ? &batt_5_chg : &batt_5); } else { - lv_img_set_src(icon, state.usb_present ? &batt_0_chg : &batt_0); + lv_image_set_src(icon, state.usb_present ? &batt_0_chg : &batt_0); } #endif /* IS_ENABLED(CONFIG_USB_DEVICE_STACK) */ } @@ -85,7 +85,7 @@ ZMK_SUBSCRIPTION(widget_battery_status, zmk_usb_conn_state_changed); #endif /* IS_ENABLED(CONFIG_USB_DEVICE_STACK) */ int zmk_widget_battery_status_init(struct zmk_widget_battery_status *widget, lv_obj_t *parent) { - widget->obj = lv_img_create(parent); + widget->obj = lv_image_create(parent); sys_slist_append(&widgets, &widget->node); widget_battery_status_init(); diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/USB_connected.c b/app/boards/lowprokb/corneish_zen/widgets/icons/USB_connected.c index b3b60422257..266eaead996 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/USB_connected.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/USB_connected.c @@ -31,11 +31,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_USB_CONNECTED uint8_t USB_connecte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t USB_connected = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 164, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t USB_connected = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(USB_connected_map), .data = USB_connected_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0.c index a6066b95aac..4df34e652a0 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_0 ui 0x00, 0x00, 0x7c, 0x00, 0x00, }; -const lv_img_dsc_t batt_0 = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_0 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_0_map), .data = batt_0_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0_chg.c index 368ba288d34..95fd4eae33b 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0_chg.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_0_chg.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_0_CH 0x00, 0x10, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_0_chg = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_0_chg = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_0_chg_map), .data = batt_0_chg_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100.c index e6aa27bab2f..975508c213c 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_100 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_100 = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_100 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_100_map), .data = batt_100_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100_chg.c index 9b2c18d4c8e..7c8b739ae01 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100_chg.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_100_chg.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_100_ 0x00, 0x10, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_100_chg = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_100_chg = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_100_chg_map), .data = batt_100_chg_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25.c index 2445ef39516..aae7338f4b3 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_25 u 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_25 = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_25 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_25_map), .data = batt_25_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25_chg.c index 37c30812fd1..0e1852ee401 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25_chg.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_25_chg.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_25_C 0x00, 0x10, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_25_chg = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_25_chg = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_25_chg_map), .data = batt_25_chg_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5.c index e9824572f6f..e9427a8e506 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_5 ui 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_5 = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_5 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_5_map), .data = batt_5_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50.c index bbb0af48555..1e606bfc864 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_50 u 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_50 = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_50 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_50_map), .data = batt_50_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50_chg.c index c2ced92e6ab..9e31d934df6 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50_chg.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_50_chg.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_50_C 0x00, 0x10, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_50_chg = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_50_chg = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_50_chg_map), .data = batt_50_chg_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5_chg.c index 6a6d9d44604..5ed20b10cc1 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5_chg.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_5_chg.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_5_CH 0x00, 0x10, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_5_chg = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_5_chg = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_5_chg_map), .data = batt_5_chg_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75.c index 9918386d025..eaa78c750e1 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_75 u 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_75 = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_75 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_75_map), .data = batt_75_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75_chg.c b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75_chg.c index 422aaabc7b4..5b2d796d84a 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75_chg.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/batt_75_chg.c @@ -33,11 +33,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BATT_75_C 0x00, 0x10, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t batt_75_chg = { - .header.always_zero = 0, - .header.w = 40, - .header.h = 31, - .data_size = 163, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t batt_75_chg = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 40, + .h = 31, + .stride = 5, + }, + .data_size = sizeof(batt_75_chg_map), .data = batt_75_chg_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising.c index daeee223a92..b57b59c8c03 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising.c @@ -32,11 +32,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BLUETOOTH 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_advertising = { - .header.always_zero = 0, - .header.w = 29, - .header.h = 35, - .data_size = 148, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_advertising = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 29, + .h = 35, + .stride = 4, + }, + .data_size = sizeof(bluetooth_advertising_map), .data = bluetooth_advertising_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_1.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_1.c index cf5b8197454..28a65ac29f3 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_1.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_1.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_1 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_advertising_1 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_advertising_1 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_advertising_1_map), .data = bluetooth_advertising_1_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_2.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_2.c index 184a5ce856b..4c7447cce79 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_2.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_2.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_2 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_advertising_2 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_advertising_2 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_advertising_2_map), .data = bluetooth_advertising_2_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_3.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_3.c index e9665ff91cb..e2072eec2a6 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_3.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_3.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_3 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_advertising_3 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_advertising_3 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_advertising_3_map), .data = bluetooth_advertising_3_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_4.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_4.c index d591f17f316..a92310770ff 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_4.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_4.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_4 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_advertising_4 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_advertising_4 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_advertising_4_map), .data = bluetooth_advertising_4_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_5.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_5.c index 88213158197..53cb37895f2 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_5.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_advertising_5.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_ADVERTISING_5 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_advertising_5 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_advertising_5 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_advertising_5_map), .data = bluetooth_advertising_5_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_1.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_1.c index a3cb5a2cd2d..179b7f6fa83 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_1.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_1.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_1 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_connected_1 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_connected_1 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_connected_1_map), .data = bluetooth_connected_1_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_2.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_2.c index 2ce5b939425..29122930e3a 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_2.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_2.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_2 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_connected_2 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_connected_2 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_connected_2_map), .data = bluetooth_connected_2_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_3.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_3.c index edac091f618..c25c163bf9f 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_3.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_3.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_3 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_connected_3 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_connected_3 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_connected_3_map), .data = bluetooth_connected_3_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_4.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_4.c index e79d6cb6d6c..83ae53c2a68 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_4.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_4.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_4 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_connected_4 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_connected_4 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_connected_4_map), .data = bluetooth_connected_4_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_5.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_5.c index b567aa2dfe0..9dbbcea9406 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_5.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_5.c @@ -37,11 +37,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_IMG_BLUETOOTH_CONNECTED_5 uint8_t 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_connected_5 = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 254, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_connected_5 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_connected_5_map), .data = bluetooth_connected_5_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_right.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_right.c index 2a28a9039a5..6e14c17b08e 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_right.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_connected_right.c @@ -39,11 +39,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BLUETOOTH 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_connected_right = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 253, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_connected_right = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_connected_right_map), .data = bluetooth_connected_right_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_disconnected_right.c b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_disconnected_right.c index 37974d698f6..71c67957475 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_disconnected_right.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/bluetooth_disconnected_right.c @@ -39,11 +39,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BLUETOOTH 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t bluetooth_disconnected_right = { - .header.always_zero = 0, - .header.w = 54, - .header.h = 35, - .data_size = 253, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t bluetooth_disconnected_right = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 54, + .h = 35, + .stride = 7, + }, + .data_size = sizeof(bluetooth_disconnected_right_map), .data = bluetooth_disconnected_right_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/layers.c b/app/boards/lowprokb/corneish_zen/widgets/icons/layers.c index 86bc8dfcfe8..d6f4baabf40 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/layers.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/layers.c @@ -34,11 +34,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_LAYERS ui 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t layers = { - .header.always_zero = 0, - .header.w = 35, - .header.h = 35, - .data_size = 183, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t layers = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 35, + .h = 35, + .stride = 5, + }, + .data_size = sizeof(layers_map), .data = layers_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/layers2.c b/app/boards/lowprokb/corneish_zen/widgets/icons/layers2.c index 068b07576ae..53f6a445e78 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/layers2.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/layers2.c @@ -30,11 +30,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_LAYERS2 u 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t layers2 = { - .header.always_zero = 0, - .header.w = 78, - .header.h = 12, - .data_size = 128, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t layers2 = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 78, + .h = 12, + .stride = 10, + }, + .data_size = sizeof(layers2_map), .data = layers2_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/icons/zenlogo.c b/app/boards/lowprokb/corneish_zen/widgets/icons/zenlogo.c index cc424041645..677df489398 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/icons/zenlogo.c +++ b/app/boards/lowprokb/corneish_zen/widgets/icons/zenlogo.c @@ -48,11 +48,15 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_ZENLOGO u 0x00, 0x00, 0x00, 0x00, 0x00, }; -const lv_img_dsc_t zenlogo = { - .header.always_zero = 0, - .header.w = 80, - .header.h = 38, - .data_size = 388, - .header.cf = LV_IMG_CF_INDEXED_1BIT, +const lv_image_dsc_t zenlogo = { + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 80, + .h = 38, + .stride = 10, + }, + .data_size = sizeof(zenlogo_map), .data = zenlogo_map, }; diff --git a/app/boards/lowprokb/corneish_zen/widgets/output_status.c b/app/boards/lowprokb/corneish_zen/widgets/output_status.c index 8e9457ebefe..a54aaada07e 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/output_status.c +++ b/app/boards/lowprokb/corneish_zen/widgets/output_status.c @@ -54,7 +54,7 @@ static struct output_status_state get_state(const zmk_event_t *_eh) { static void set_status_symbol(lv_obj_t *icon, struct output_status_state state) { switch (state.selected_endpoint.transport) { case ZMK_TRANSPORT_USB: - lv_img_set_src(icon, &USB_connected); + lv_image_set_src(icon, &USB_connected); break; case ZMK_TRANSPORT_BLE: if (state.active_profile_bonded) { @@ -62,40 +62,40 @@ static void set_status_symbol(lv_obj_t *icon, struct output_status_state state) // sprintf(text, LV_SYMBOL_BLUETOOTH "%i " LV_SYMBOL_OK, active_profile_index); switch (state.selected_endpoint.ble.profile_index) { case 0: - lv_img_set_src(icon, &bluetooth_connected_1); + lv_image_set_src(icon, &bluetooth_connected_1); break; case 1: - lv_img_set_src(icon, &bluetooth_connected_2); + lv_image_set_src(icon, &bluetooth_connected_2); break; case 2: - lv_img_set_src(icon, &bluetooth_connected_3); + lv_image_set_src(icon, &bluetooth_connected_3); break; case 3: - lv_img_set_src(icon, &bluetooth_connected_4); + lv_image_set_src(icon, &bluetooth_connected_4); break; case 4: - lv_img_set_src(icon, &bluetooth_connected_5); + lv_image_set_src(icon, &bluetooth_connected_5); break; } } else { - lv_img_set_src(icon, &bluetooth_disconnected_right); + lv_image_set_src(icon, &bluetooth_disconnected_right); } } else { switch (state.selected_endpoint.ble.profile_index) { case 0: - lv_img_set_src(icon, &bluetooth_advertising_1); + lv_image_set_src(icon, &bluetooth_advertising_1); break; case 1: - lv_img_set_src(icon, &bluetooth_advertising_2); + lv_image_set_src(icon, &bluetooth_advertising_2); break; case 2: - lv_img_set_src(icon, &bluetooth_advertising_3); + lv_image_set_src(icon, &bluetooth_advertising_3); break; case 3: - lv_img_set_src(icon, &bluetooth_advertising_4); + lv_image_set_src(icon, &bluetooth_advertising_4); break; case 4: - lv_img_set_src(icon, &bluetooth_advertising_5); + lv_image_set_src(icon, &bluetooth_advertising_5); break; } } @@ -118,7 +118,7 @@ ZMK_SUBSCRIPTION(widget_output_status, zmk_ble_active_profile_changed); #endif int zmk_widget_output_status_init(struct zmk_widget_output_status *widget, lv_obj_t *parent) { - widget->obj = lv_img_create(parent); + widget->obj = lv_image_create(parent); sys_slist_append(&widgets, &widget->node); diff --git a/app/boards/lowprokb/corneish_zen/widgets/peripheral_status.c b/app/boards/lowprokb/corneish_zen/widgets/peripheral_status.c index b94d45f692a..0f7c7c6d0a1 100644 --- a/app/boards/lowprokb/corneish_zen/widgets/peripheral_status.c +++ b/app/boards/lowprokb/corneish_zen/widgets/peripheral_status.c @@ -32,8 +32,8 @@ static struct peripheral_status_state get_state(const zmk_event_t *_eh) { static void set_status_symbol(lv_obj_t *icon, struct peripheral_status_state state) { LOG_DBG("halves connected? %s", state.connected ? "true" : "false"); - lv_img_set_src(icon, - state.connected ? &bluetooth_connected_right : &bluetooth_disconnected_right); + lv_image_set_src(icon, + state.connected ? &bluetooth_connected_right : &bluetooth_disconnected_right); } static void output_status_update_cb(struct peripheral_status_state state) { @@ -47,7 +47,7 @@ ZMK_SUBSCRIPTION(widget_peripheral_status, zmk_split_peripheral_status_changed); int zmk_widget_peripheral_status_init(struct zmk_widget_peripheral_status *widget, lv_obj_t *parent) { - widget->obj = lv_img_create(parent); + widget->obj = lv_image_create(parent); sys_slist_append(&widgets, &widget->node); diff --git a/app/boards/shields/nice_view/widgets/art.c b/app/boards/shields/nice_view/widgets/art.c index 56c8914629f..4d9d3055aa5 100644 --- a/app/boards/shields/nice_view/widgets/art.c +++ b/app/boards/shields/nice_view/widgets/art.c @@ -112,7 +112,7 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BALLOON u const lv_img_dsc_t balloon = { .header.cf = LV_IMG_CF_INDEXED_1BIT, - .header.always_zero = 0, + .header.reserved = 0, .header.w = 140, .header.h = 68, @@ -220,7 +220,7 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_MOUNTAIN const lv_img_dsc_t mountain = { .header.cf = LV_IMG_CF_INDEXED_1BIT, - .header.always_zero = 0, + .header.reserved = 0, .header.w = 140, .header.h = 68, diff --git a/app/boards/shields/nice_view/widgets/bolt.c b/app/boards/shields/nice_view/widgets/bolt.c index 74dcc2b00c6..4a1fd6db369 100644 --- a/app/boards/shields/nice_view/widgets/bolt.c +++ b/app/boards/shields/nice_view/widgets/bolt.c @@ -35,11 +35,14 @@ const LV_ATTRIBUTE_MEM_ALIGN LV_ATTRIBUTE_LARGE_CONST LV_ATTRIBUTE_IMG_BOLT uint }; const lv_img_dsc_t bolt = { - .header.cf = LV_IMG_CF_INDEXED_2BIT, - .header.always_zero = 0, - .header.reserved = 0, - .header.w = 11, - .header.h = 18, - .data_size = 70, + .header = + { + .magic = LV_IMAGE_HEADER_MAGIC, + .cf = LV_COLOR_FORMAT_I1, + .w = 11, + .h = 18, + .stride = 5, + }, + .data_size = sizeof(bolt_map), .data = bolt_map, }; diff --git a/app/boards/shields/nice_view/widgets/peripheral_status.c b/app/boards/shields/nice_view/widgets/peripheral_status.c index e9002b33e75..0768c5f2a3f 100644 --- a/app/boards/shields/nice_view/widgets/peripheral_status.c +++ b/app/boards/shields/nice_view/widgets/peripheral_status.c @@ -116,7 +116,7 @@ int zmk_widget_status_init(struct zmk_widget_status *widget, lv_obj_t *parent) { lv_obj_t *art = lv_img_create(widget->obj); bool random = sys_rand32_get() & 1; - lv_img_set_src(art, random ? &balloon : &mountain); + lv_image_set_src(art, random ? &balloon : &mountain); lv_obj_align(art, LV_ALIGN_TOP_LEFT, 0, 0); sys_slist_append(&widgets, &widget->node); From 5580d0a70a6011837258f2d348a971c1d1ff9312 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Tue, 19 Aug 2025 00:24:03 -0600 Subject: [PATCH 59/61] refactor(boards): Add boot mode to the nice!nano using common dtsi * Add a new .dtsi for setting up nRF52 boot mode/retained memory settings * Adjust XIAO BLE to use the new include file * Add boot mode to to the nice!nano --- .../nicekeyboards/nice_nano/Kconfig.defconfig | 5 ++++ .../nicekeyboards/nice_nano/Kconfig.nice_nano | 3 ++ .../nicekeyboards/nice_nano/nice_nano.dts | 2 ++ app/boards/xiao_ble.overlay | 24 +-------------- .../common/nordic/nrf52840_uf2_boot_mode.dtsi | 29 +++++++++++++++++++ 5 files changed, 40 insertions(+), 23 deletions(-) create mode 100644 app/dts/common/nordic/nrf52840_uf2_boot_mode.dtsi diff --git a/app/boards/nicekeyboards/nice_nano/Kconfig.defconfig b/app/boards/nicekeyboards/nice_nano/Kconfig.defconfig index 780df2659ab..a059646c346 100644 --- a/app/boards/nicekeyboards/nice_nano/Kconfig.defconfig +++ b/app/boards/nicekeyboards/nice_nano/Kconfig.defconfig @@ -3,4 +3,9 @@ if BOARD_NICE_NANO +choice ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE + default ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_ADAFRUIT_NRF52 + +endchoice + endif # BOARD_NICE_NANO diff --git a/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano b/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano index 7f170d1a7a9..d1be26ef973 100644 --- a/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano +++ b/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano @@ -3,3 +3,6 @@ config BOARD_NICE_NANO select SOC_NRF52840_QIAA + imply RETAINED_MEM + imply RETENTION + imply RETENTION_BOOT_MODE \ No newline at end of file diff --git a/app/boards/nicekeyboards/nice_nano/nice_nano.dts b/app/boards/nicekeyboards/nice_nano/nice_nano.dts index c01fb66cc9e..0595ce137ac 100644 --- a/app/boards/nicekeyboards/nice_nano/nice_nano.dts +++ b/app/boards/nicekeyboards/nice_nano/nice_nano.dts @@ -7,9 +7,11 @@ /dts-v1/; #include +#include #include "nice_nano-pinctrl.dtsi" #include "arduino_pro_micro_pins.dtsi" + / { model = "nice!nano"; compatible = "nice,nano"; diff --git a/app/boards/xiao_ble.overlay b/app/boards/xiao_ble.overlay index 328b2717cc0..4c638896fcf 100644 --- a/app/boards/xiao_ble.overlay +++ b/app/boards/xiao_ble.overlay @@ -4,33 +4,11 @@ * SPDX-License-Identifier: MIT */ -&gpregret1 { - adafruit_boot_retention: retention@0 { - compatible = "zephyr,retention"; - status = "okay"; - reg = <0x0 0x1>; - }; -}; +#include / { chosen { zmk,battery = &vbatt; - zephyr,boot-mode = &boot_retention; - zmk,magic-boot-mode = &adafruit_boot_retention; - }; - - magic_mapper { - compatible = "zmk,bootmode-to-magic-mapper"; - status = "okay"; - - #address-cells = <1>; - #size-cells = <1>; - - boot_retention: retention@0 { - compatible = "zephyr,retention"; - status = "okay"; - reg = <0x0 0x1>; - }; }; vbatt: vbatt { diff --git a/app/dts/common/nordic/nrf52840_uf2_boot_mode.dtsi b/app/dts/common/nordic/nrf52840_uf2_boot_mode.dtsi new file mode 100644 index 00000000000..9087426c03a --- /dev/null +++ b/app/dts/common/nordic/nrf52840_uf2_boot_mode.dtsi @@ -0,0 +1,29 @@ + +&gpregret1 { + adafruit_boot_retention: retention@0 { + compatible = "zephyr,retention"; + status = "okay"; + reg = <0x0 0x1>; + }; +}; + +/ { + chosen { + zephyr,boot-mode = &boot_retention; + zmk,magic-boot-mode = &adafruit_boot_retention; + }; + + magic_mapper { + compatible = "zmk,bootmode-to-magic-mapper"; + status = "okay"; + + #address-cells = <1>; + #size-cells = <1>; + + boot_retention: retention@0 { + compatible = "zephyr,retention"; + status = "okay"; + reg = <0x0 0x1>; + }; + }; +}; \ No newline at end of file From 301889255a22d40b041c5faae8e941b169c0e118 Mon Sep 17 00:00:00 2001 From: Peter Johanson Date: Tue, 19 Aug 2025 00:34:27 -0600 Subject: [PATCH 60/61] refactor(boards): Add boot mode support to nice!60 board Enable boot mode for nice!60 board. --- app/boards/nicekeyboards/nice60/Kconfig.defconfig | 5 +++++ app/boards/nicekeyboards/nice60/Kconfig.nice60 | 3 +++ app/boards/nicekeyboards/nice60/nice60.dts | 1 + 3 files changed, 9 insertions(+) diff --git a/app/boards/nicekeyboards/nice60/Kconfig.defconfig b/app/boards/nicekeyboards/nice60/Kconfig.defconfig index 76818e87b0f..2cbb0746a85 100644 --- a/app/boards/nicekeyboards/nice60/Kconfig.defconfig +++ b/app/boards/nicekeyboards/nice60/Kconfig.defconfig @@ -6,6 +6,11 @@ if BOARD_NICE60 config ZMK_KEYBOARD_NAME default "nice!60" +choice ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE + default ZMK_BOOTMODE_MAGIC_VALUE_BOOTLOADER_TYPE_ADAFRUIT_NRF52 + +endchoice + if USB_DEVICE_STACK config USB_NRFX diff --git a/app/boards/nicekeyboards/nice60/Kconfig.nice60 b/app/boards/nicekeyboards/nice60/Kconfig.nice60 index 1760b687be8..bfeedf0f917 100644 --- a/app/boards/nicekeyboards/nice60/Kconfig.nice60 +++ b/app/boards/nicekeyboards/nice60/Kconfig.nice60 @@ -3,3 +3,6 @@ config BOARD_NICE60 select SOC_NRF52840_QIAA + imply RETAINED_MEM + imply RETENTION + imply RETENTION_BOOT_MODE \ No newline at end of file diff --git a/app/boards/nicekeyboards/nice60/nice60.dts b/app/boards/nicekeyboards/nice60/nice60.dts index 7da97ff4fbd..acecda4d8e6 100644 --- a/app/boards/nicekeyboards/nice60/nice60.dts +++ b/app/boards/nicekeyboards/nice60/nice60.dts @@ -6,6 +6,7 @@ /dts-v1/; #include +#include #include #include From da969162ec6150fdac83d21db69341b364ce9042 Mon Sep 17 00:00:00 2001 From: Joel Spadin Date: Sun, 31 Aug 2025 13:04:10 -0500 Subject: [PATCH 61/61] feat(battery): Support fuel gauge API ZMK will now automatically detect whether the zmk,battery chosen node uses the fuel gauge or sensor API and fetch state of charge from it accordingly. --- app/Kconfig | 6 +-- app/src/battery.c | 135 +++++++++++++++++++++++++++++++++++----------- 2 files changed, 108 insertions(+), 33 deletions(-) diff --git a/app/Kconfig b/app/Kconfig index 9cd03b5392d..fe77bb510e0 100644 --- a/app/Kconfig +++ b/app/Kconfig @@ -373,14 +373,14 @@ menu "Power Management" config ZMK_BATTERY_REPORTING bool "Battery level detection/reporting" - select SENSOR select ZMK_LOW_PRIORITY_WORK_QUEUE imply BT_BAS if ZMK_BLE + imply SENSOR -if ZMK_BATTERY_REPORTING +if ZMK_BATTERY_REPORTING && SENSOR choice ZMK_BATTERY_REPORTING_FETCH_MODE - prompt "Battery Reporting Fetch Mode" + prompt "Battery Reporting Sensor Fetch Mode" config ZMK_BATTERY_REPORTING_FETCH_MODE_STATE_OF_CHARGE bool "State of charge" diff --git a/app/src/battery.c b/app/src/battery.c index 811baf8e9bd..c0f4bc044ed 100644 --- a/app/src/battery.c +++ b/app/src/battery.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include @@ -22,6 +23,14 @@ LOG_MODULE_DECLARE(zmk, CONFIG_ZMK_LOG_LEVEL); #include #include +enum battery_device_api { + BATTERY_DEVICE_API_UNKNOWN, + BATTERY_DEVICE_API_SENSOR, + BATTERY_DEVICE_API_FUEL_GAUGE, +}; + +static enum battery_device_api battery_device_api = BATTERY_DEVICE_API_UNKNOWN; + static uint8_t last_state_of_charge = 0; uint8_t zmk_battery_state_of_charge(void) { return last_state_of_charge; } @@ -34,6 +43,24 @@ static const struct device *const battery = DEVICE_DT_GET(DT_CHOSEN(zmk_battery) static const struct device *battery; #endif +#if IS_ENABLED(CONFIG_FUEL_GAUGE) + +static int get_state_of_charge_fuel_gauge(uint8_t *state_of_charge) { + union fuel_gauge_prop_val value; + int ret = fuel_gauge_get_prop(battery, FUEL_GAUGE_ABSOLUTE_STATE_OF_CHARGE, &value); + if (ret != 0) { + LOG_WRN("Failed to read battery state of charge: %d", ret); + return ret; + } + + *state_of_charge = value.absolute_state_of_charge; + return ret; +} + +#endif // IS_ENABLED(CONFIG_FUEL_GAUGE) + +#if IS_ENABLED(CONFIG_SENSOR) + #if IS_ENABLED(CONFIG_ZMK_BATTERY_REPORTING_FETCH_MODE_LITHIUM_VOLTAGE) static uint8_t lithium_ion_mv_to_pct(int16_t bat_mv) { // Simple linear approximation of a battery based off adafruit's discharge graph: @@ -50,49 +77,75 @@ static uint8_t lithium_ion_mv_to_pct(int16_t bat_mv) { #endif // IS_ENABLED(CONFIG_ZMK_BATTERY_REPORTING_FETCH_MODE_LITHIUM_VOLTAGE) -static int zmk_battery_update(const struct device *battery) { - struct sensor_value state_of_charge; - int rc; +static int get_state_of_charge_sensor(uint8_t *state_of_charge) { + struct sensor_value value; + enum sensor_channel channel; #if IS_ENABLED(CONFIG_ZMK_BATTERY_REPORTING_FETCH_MODE_STATE_OF_CHARGE) + channel = SENSOR_CHAN_GAUGE_STATE_OF_CHARGE; +#elif IS_ENABLED(CONFIG_ZMK_BATTERY_REPORTING_FETCH_MODE_LITHIUM_VOLTAGE) + channel = SENSOR_CHAN_VOLTAGE; +#else +#error "Not a supported reporting fetch mode" +#endif - rc = sensor_sample_fetch_chan(battery, SENSOR_CHAN_GAUGE_STATE_OF_CHARGE); - if (rc != 0) { - LOG_DBG("Failed to fetch battery values: %d", rc); - return rc; + int ret = sensor_sample_fetch_chan(battery, channel); + if (ret != 0) { + LOG_WRN("Failed to fetch battery values: %d", ret); + return ret; } - rc = sensor_channel_get(battery, SENSOR_CHAN_GAUGE_STATE_OF_CHARGE, &state_of_charge); - - if (rc != 0) { - LOG_DBG("Failed to get battery state of charge: %d", rc); - return rc; + ret = sensor_channel_get(battery, channel, &value); + if (ret != 0) { + LOG_WRN("Failed to read battery sensor: %d", ret); + return ret; } + +#if IS_ENABLED(CONFIG_ZMK_BATTERY_REPORTING_FETCH_MODE_STATE_OF_CHARGE) + *state_of_charge = value.val1; #elif IS_ENABLED(CONFIG_ZMK_BATTERY_REPORTING_FETCH_MODE_LITHIUM_VOLTAGE) - rc = sensor_sample_fetch_chan(battery, SENSOR_CHAN_VOLTAGE); - if (rc != 0) { - LOG_DBG("Failed to fetch battery values: %d", rc); - return rc; - } + uint16_t mv = value.val1 * 1000 + (value.val2 / 1000); + *state_of_charge = lithium_ion_mv_to_pct(mv); - struct sensor_value voltage; - rc = sensor_channel_get(battery, SENSOR_CHAN_VOLTAGE, &voltage); + LOG_DBG("State of charge = %d%% from %d mv", state_of_charge, mv); +#endif - if (rc != 0) { - LOG_DBG("Failed to get battery voltage: %d", rc); - return rc; - } + return ret; +} - uint16_t mv = voltage.val1 * 1000 + (voltage.val2 / 1000); - state_of_charge.val1 = lithium_ion_mv_to_pct(mv); +#endif // IS_ENABLED(CONFIG_SENSOR) - LOG_DBG("State of change %d from %d mv", state_of_charge.val1, mv); +static int get_state_of_charge(uint8_t *state_of_charge) { + switch (battery_device_api) { + case BATTERY_DEVICE_API_FUEL_GAUGE: +#if IS_ENABLED(CONFIG_FUEL_GAUGE) + return get_state_of_charge_fuel_gauge(state_of_charge); #else -#error "Not a supported reporting fetch mode" + return -ENOTSUP; #endif - if (last_state_of_charge != state_of_charge.val1) { - last_state_of_charge = state_of_charge.val1; + case BATTERY_DEVICE_API_SENSOR: +#if IS_ENABLED(CONFIG_SENSOR) + return get_state_of_charge_sensor(state_of_charge); +#else + return -ENOTSUP; +#endif + + default: + return -ENOTSUP; + } +} + +static int zmk_battery_update(void) { + uint8_t new_state_of_charge; + int rc = get_state_of_charge(&new_state_of_charge); + + if (rc != 0) { + return rc; + } + + if (last_state_of_charge != new_state_of_charge) { + last_state_of_charge = new_state_of_charge; rc = raise_zmk_battery_state_changed( (struct zmk_battery_state_changed){.state_of_charge = last_state_of_charge}); @@ -120,7 +173,7 @@ static int zmk_battery_update(const struct device *battery) { } static void zmk_battery_work(struct k_work *work) { - int rc = zmk_battery_update(battery); + int rc = zmk_battery_update(); if (rc != 0) { LOG_DBG("Failed to update battery value: %d.", rc); @@ -141,6 +194,23 @@ static void zmk_battery_start_reporting() { } } +static int init_battery_device_api(void) { + if (DEVICE_API_IS(fuel_gauge, battery)) { + battery_device_api = BATTERY_DEVICE_API_FUEL_GAUGE; + LOG_DBG("Using fuel gauge API for battery"); + return 0; + } + + if (DEVICE_API_IS(sensor, battery)) { + battery_device_api = BATTERY_DEVICE_API_SENSOR; + LOG_DBG("Using sensor API for battery"); + return 0; + } + + LOG_ERR("Battery device \"%s\" has unsupported API", battery->name); + return -ENOTSUP; +} + static int zmk_battery_init(void) { #if !DT_HAS_CHOSEN(zmk_battery) battery = device_get_binding("BATTERY"); @@ -157,6 +227,11 @@ static int zmk_battery_init(void) { return -ENODEV; } + int ret = init_battery_device_api(); + if (ret != 0) { + return ret; + } + zmk_battery_start_reporting(); return 0; }