diff --git a/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano b/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano index d1be26ef9..ae9a61703 100644 --- a/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano +++ b/app/boards/nicekeyboards/nice_nano/Kconfig.nice_nano @@ -3,6 +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 + imply RETAINED_MEM if BOARD_NICE_NANO_NRF52840_ZMK + imply RETENTION if BOARD_NICE_NANO_NRF52840_ZMK + imply RETENTION_BOOT_MODE if BOARD_NICE_NANO_NRF52840_ZMK diff --git a/app/boards/nicekeyboards/nice_nano/board.yml b/app/boards/nicekeyboards/nice_nano/board.yml index 89171957c..13cba4f6b 100644 --- a/app/boards/nicekeyboards/nice_nano/board.yml +++ b/app/boards/nicekeyboards/nice_nano/board.yml @@ -1,11 +1,5 @@ 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 + extend: nice_nano + variants: + - name: zmk + qualifier: nrf52840 diff --git a/app/boards/nicekeyboards/nice_nano/nice_nano.zmk.yml b/app/boards/nicekeyboards/nice_nano/nice_nano.zmk.yml index 2245a89ee..e9b69fffa 100644 --- a/app/boards/nicekeyboards/nice_nano/nice_nano.zmk.yml +++ b/app/boards/nicekeyboards/nice_nano/nice_nano.zmk.yml @@ -1,5 +1,5 @@ file_format: "1" -id: nice_nano +id: nice_nano//zmk name: nice!nano type: board arch: arm diff --git a/app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk.dts b/app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk.dts new file mode 100644 index 000000000..ed5b9b7bb --- /dev/null +++ b/app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk.dts @@ -0,0 +1,11 @@ +/* + * Copyright (c) 2026 The ZMK Contributors + * + * SPDX-License-Identifier: MIT + */ + +/dts-v1/; + +#include <../boards/nicekeyboards/nice_nano/nice_nano.dts> +#include + diff --git a/app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0.overlay b/app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk_1_0_0.overlay similarity index 100% rename from app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0.overlay rename to app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk_1_0_0.overlay diff --git a/app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0_defconfig b/app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk_1_0_0_defconfig similarity index 100% rename from app/boards/nicekeyboards/nice_nano/nice_nano_1_0_0_defconfig rename to app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk_1_0_0_defconfig diff --git a/app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0.overlay b/app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk_2_0_0.overlay similarity index 100% rename from app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0.overlay rename to app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk_2_0_0.overlay diff --git a/app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0_defconfig b/app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk_2_0_0_defconfig similarity index 100% rename from app/boards/nicekeyboards/nice_nano/nice_nano_2_0_0_defconfig rename to app/boards/nicekeyboards/nice_nano/nice_nano_nrf52840_zmk_2_0_0_defconfig diff --git a/app/boards/shields/chalice/boards/nice_nano.overlay b/app/boards/shields/chalice/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/chalice/boards/nice_nano.overlay rename to app/boards/shields/chalice/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/corne/boards/nice_nano.overlay b/app/boards/shields/corne/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/corne/boards/nice_nano.overlay rename to app/boards/shields/corne/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/elephant42/boards/nice_nano.overlay b/app/boards/shields/elephant42/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/elephant42/boards/nice_nano.overlay rename to app/boards/shields/elephant42/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/eternal_keypad/boards/nice_nano.overlay b/app/boards/shields/eternal_keypad/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/eternal_keypad/boards/nice_nano.overlay rename to app/boards/shields/eternal_keypad/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/helix/boards/nice_nano.overlay b/app/boards/shields/helix/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/helix/boards/nice_nano.overlay rename to app/boards/shields/helix/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/jorne/boards/nice_nano.overlay b/app/boards/shields/jorne/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/jorne/boards/nice_nano.overlay rename to app/boards/shields/jorne/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/kyria/boards/nice_nano.overlay b/app/boards/shields/kyria/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/kyria/boards/nice_nano.overlay rename to app/boards/shields/kyria/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/lily58/boards/nice_nano.overlay b/app/boards/shields/lily58/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/lily58/boards/nice_nano.overlay rename to app/boards/shields/lily58/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/microdox/boards/nice_nano.overlay b/app/boards/shields/microdox/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/microdox/boards/nice_nano.overlay rename to app/boards/shields/microdox/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/murphpad/boards/nice_nano.overlay b/app/boards/shields/murphpad/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/murphpad/boards/nice_nano.overlay rename to app/boards/shields/murphpad/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/nibble/boards/nice_nano.overlay b/app/boards/shields/nibble/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/nibble/boards/nice_nano.overlay rename to app/boards/shields/nibble/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/nice_view_adapter/boards/nice_nano.overlay b/app/boards/shields/nice_view_adapter/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/nice_view_adapter/boards/nice_nano.overlay rename to app/boards/shields/nice_view_adapter/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/redox/boards/nice_nano.overlay b/app/boards/shields/redox/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/redox/boards/nice_nano.overlay rename to app/boards/shields/redox/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/reviung41/boards/nice_nano.overlay b/app/boards/shields/reviung41/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/reviung41/boards/nice_nano.overlay rename to app/boards/shields/reviung41/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/reviung53/boards/nice_nano.overlay b/app/boards/shields/reviung53/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/reviung53/boards/nice_nano.overlay rename to app/boards/shields/reviung53/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/romac_plus/boards/nice_nano.overlay b/app/boards/shields/romac_plus/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/romac_plus/boards/nice_nano.overlay rename to app/boards/shields/romac_plus/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/snap/boards/nice_nano.overlay b/app/boards/shields/snap/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/snap/boards/nice_nano.overlay rename to app/boards/shields/snap/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/sofle/boards/nice_nano.overlay b/app/boards/shields/sofle/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/sofle/boards/nice_nano.overlay rename to app/boards/shields/sofle/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/splitkb_aurora_corne/boards/nice_nano.overlay b/app/boards/shields/splitkb_aurora_corne/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/splitkb_aurora_corne/boards/nice_nano.overlay rename to app/boards/shields/splitkb_aurora_corne/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/splitkb_aurora_helix/boards/nice_nano.overlay b/app/boards/shields/splitkb_aurora_helix/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/splitkb_aurora_helix/boards/nice_nano.overlay rename to app/boards/shields/splitkb_aurora_helix/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/splitkb_aurora_lily58/boards/nice_nano.overlay b/app/boards/shields/splitkb_aurora_lily58/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/splitkb_aurora_lily58/boards/nice_nano.overlay rename to app/boards/shields/splitkb_aurora_lily58/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/splitkb_aurora_sofle/boards/nice_nano.overlay b/app/boards/shields/splitkb_aurora_sofle/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/splitkb_aurora_sofle/boards/nice_nano.overlay rename to app/boards/shields/splitkb_aurora_sofle/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/splitkb_aurora_sweep/boards/nice_nano.overlay b/app/boards/shields/splitkb_aurora_sweep/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/splitkb_aurora_sweep/boards/nice_nano.overlay rename to app/boards/shields/splitkb_aurora_sweep/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/tg4x/boards/nice_nano.overlay b/app/boards/shields/tg4x/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/tg4x/boards/nice_nano.overlay rename to app/boards/shields/tg4x/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/tidbit/boards/nice_nano.overlay b/app/boards/shields/tidbit/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/tidbit/boards/nice_nano.overlay rename to app/boards/shields/tidbit/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/boards/shields/two_percent_milk/boards/nice_nano.overlay b/app/boards/shields/two_percent_milk/boards/nice_nano_nrf52840_zmk.overlay similarity index 100% rename from app/boards/shields/two_percent_milk/boards/nice_nano.overlay rename to app/boards/shields/two_percent_milk/boards/nice_nano_nrf52840_zmk.overlay diff --git a/app/core-coverage.yml b/app/core-coverage.yml index 6b66b3b02..beefb2eb6 100644 --- a/app/core-coverage.yml +++ b/app/core-coverage.yml @@ -1,5 +1,5 @@ board: - - nice_nano + - nice_nano//zmk - nrfmicro/nrf52840/zmk - proton_c//zmk shield: @@ -18,43 +18,43 @@ include: - board: planck//zmk - board: proton_c//zmk shield: clueboard_california - - board: nice_nano + - board: nice_nano//zmk shield: kyria_left cmake-args: "-DCONFIG_ZMK_DISPLAY=y" nickname: "display" - - board: nice_nano + - board: nice_nano//zmk shield: kyria_left cmake-args: "-DCONFIG_ZMK_POINTING=y" nickname: "mouse" - board: sparkfun_pro_micro_rp2040//zmk shield: reviung41 cmake-args: "-DSNIPPET='zmk-usb-logging'" - - board: nice_nano + - board: nice_nano//zmk shield: kyria_right cmake-args: "-DCONFIG_ZMK_DISPLAY=y" nickname: "display" - - board: nice_nano + - board: nice_nano//zmk shield: romac_plus cmake-args: "-DCONFIG_ZMK_RGB_UNDERGLOW=y" nickname: "underglow" - - board: nice_nano + - board: nice_nano//zmk shield: lily58_left nice_view_adapter nice_view nickname: "niceview" - board: bdn9//zmk snippet: studio-rpc-usb-uart cmake-args: "-DCONFIG_ZMK_STUDIO=y" nickname: "stm32-studio" - - board: nice_nano + - board: nice_nano//zmk shield: reviung41 snippet: studio-rpc-usb-uart cmake-args: "-DCONFIG_ZMK_STUDIO=y" nickname: "nrf52-studio" - - board: nice_nano + - board: nice_nano//zmk shield: corne_left snippet: studio-rpc-usb-uart cmake-args: "-DCONFIG_ZMK_STUDIO=y" nickname: "split-left-studio" - - board: nice_nano + - board: nice_nano//zmk shield: corne_right snippet: studio-rpc-usb-uart cmake-args: "-DCONFIG_ZMK_STUDIO=y" diff --git a/app/module/boards/nicekeyboards/nice_nano/Kconfig.nice_nano b/app/module/boards/nicekeyboards/nice_nano/Kconfig.nice_nano new file mode 100644 index 000000000..01a9329c4 --- /dev/null +++ b/app/module/boards/nicekeyboards/nice_nano/Kconfig.nice_nano @@ -0,0 +1,5 @@ +# Copyright (c) 2026 The ZMK Contributors +# SPDX-License-Identifier: Apache-2.0 + +config BOARD_NICE_NANO + select SOC_NRF52840_QIAA diff --git a/app/boards/nicekeyboards/nice_nano/arduino_pro_micro_pins.dtsi b/app/module/boards/nicekeyboards/nice_nano/arduino_pro_micro_pins.dtsi similarity index 100% rename from app/boards/nicekeyboards/nice_nano/arduino_pro_micro_pins.dtsi rename to app/module/boards/nicekeyboards/nice_nano/arduino_pro_micro_pins.dtsi diff --git a/app/module/boards/nicekeyboards/nice_nano/board.cmake b/app/module/boards/nicekeyboards/nice_nano/board.cmake new file mode 100644 index 000000000..73fa64a9a --- /dev/null +++ b/app/module/boards/nicekeyboards/nice_nano/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/module/boards/nicekeyboards/nice_nano/board.yml b/app/module/boards/nicekeyboards/nice_nano/board.yml new file mode 100644 index 000000000..89171957c --- /dev/null +++ b/app/module/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/nicekeyboards/nice_nano/nice_nano-pinctrl.dtsi b/app/module/boards/nicekeyboards/nice_nano/nice_nano-pinctrl.dtsi similarity index 100% rename from app/boards/nicekeyboards/nice_nano/nice_nano-pinctrl.dtsi rename to app/module/boards/nicekeyboards/nice_nano/nice_nano-pinctrl.dtsi diff --git a/app/boards/nicekeyboards/nice_nano/nice_nano.dts b/app/module/boards/nicekeyboards/nice_nano/nice_nano.dts similarity index 97% rename from app/boards/nicekeyboards/nice_nano/nice_nano.dts rename to app/module/boards/nicekeyboards/nice_nano/nice_nano.dts index 0595ce137..2788ceaea 100644 --- a/app/boards/nicekeyboards/nice_nano/nice_nano.dts +++ b/app/module/boards/nicekeyboards/nice_nano/nice_nano.dts @@ -7,7 +7,6 @@ /dts-v1/; #include -#include #include "nice_nano-pinctrl.dtsi" #include "arduino_pro_micro_pins.dtsi" diff --git a/app/boards/nicekeyboards/nice_nano/nice_nano.yaml b/app/module/boards/nicekeyboards/nice_nano/nice_nano.yaml similarity index 100% rename from app/boards/nicekeyboards/nice_nano/nice_nano.yaml rename to app/module/boards/nicekeyboards/nice_nano/nice_nano.yaml diff --git a/app/module/boards/nicekeyboards/nice_nano/nice_nano_1_0_0_defconfig b/app/module/boards/nicekeyboards/nice_nano/nice_nano_1_0_0_defconfig new file mode 100644 index 000000000..0779d3590 --- /dev/null +++ b/app/module/boards/nicekeyboards/nice_nano/nice_nano_1_0_0_defconfig @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: MIT + +# Enable MPU +CONFIG_ARM_MPU=y + +# enable GPIO +CONFIG_GPIO=y + +# Use pinctrl +CONFIG_PINCTRL=y + +CONFIG_USE_DT_CODE_PARTITION=y +CONFIG_BUILD_OUTPUT_UF2=y diff --git a/app/module/boards/nicekeyboards/nice_nano/nice_nano_2_0_0_defconfig b/app/module/boards/nicekeyboards/nice_nano/nice_nano_2_0_0_defconfig new file mode 100644 index 000000000..73d6e98a9 --- /dev/null +++ b/app/module/boards/nicekeyboards/nice_nano/nice_nano_2_0_0_defconfig @@ -0,0 +1,13 @@ +# SPDX-License-Identifier: MIT + +# Enable MPU +CONFIG_ARM_MPU=y + +# Use pinctrl +CONFIG_PINCTRL=y + +# enable GPIO +CONFIG_GPIO=y + +CONFIG_USE_DT_CODE_PARTITION=y +CONFIG_BUILD_OUTPUT_UF2=y diff --git a/app/module/boards/nicekeyboards/nice_nano/pre_dt_board.cmake b/app/module/boards/nicekeyboards/nice_nano/pre_dt_board.cmake new file mode 100644 index 000000000..b0c27aa5d --- /dev/null +++ b/app/module/boards/nicekeyboards/nice_nano/pre_dt_board.cmake @@ -0,0 +1,9 @@ +# +# Copyright (c) 2026 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")