From dd51f450848b497fb88b6a5cb9f9d778662df621 Mon Sep 17 00:00:00 2001 From: Eduard Iten Date: Tue, 19 May 2026 08:51:37 +0200 Subject: [PATCH] moved SETTINGS_RUNTIME to lib --- firmware/boards/buzzy_nrf52840.conf | 4 +- firmware/boards/iten/buzzy/buzzy-pinctrl.dtsi | 72 +++++++-------- firmware/boards/iten/buzzy/buzzy.dts | 88 +++++++++---------- firmware/debug.conf | 4 - firmware/libs/ble_mgmt/Kconfig | 2 +- firmware/libs/fs_mgmt/Kconfig | 2 +- firmware/libs/settings_mgmt/Kconfig | 1 + .../libs/settings_mgmt/src/settings_mgmt.c | 2 +- firmware/src/main.c | 3 +- 9 files changed, 85 insertions(+), 93 deletions(-) diff --git a/firmware/boards/buzzy_nrf52840.conf b/firmware/boards/buzzy_nrf52840.conf index 9f903b0..4ea36fb 100644 --- a/firmware/boards/buzzy_nrf52840.conf +++ b/firmware/boards/buzzy_nrf52840.conf @@ -1,2 +1,2 @@ -# Keep SPI NOR page layout aligned with generated LittleFS block size (4KB). -CONFIG_SPI_NOR_FLASH_LAYOUT_PAGE_SIZE=4096 +# Keep QSPI NOR page layout aligned with generated LittleFS block size (4KB). +CONFIG_NORDIC_QSPI_NOR_FLASH_LAYOUT_PAGE_SIZE=4096 diff --git a/firmware/boards/iten/buzzy/buzzy-pinctrl.dtsi b/firmware/boards/iten/buzzy/buzzy-pinctrl.dtsi index ecad7f9..ccd3ee3 100644 --- a/firmware/boards/iten/buzzy/buzzy-pinctrl.dtsi +++ b/firmware/boards/iten/buzzy/buzzy-pinctrl.dtsi @@ -18,47 +18,47 @@ }; }; - spi3_default: spi3_default { - group1 { - psels = , - , - ; - }; - }; + // spi3_default: spi3_default { + // group1 { + // psels = , + // , + // ; + // }; + // }; - spi3_sleep: spi3_sleep { - group1 { - psels = , - , - ; - low-power-enable; - }; - }; + // spi3_sleep: spi3_sleep { + // group1 { + // psels = , + // , + // ; + // low-power-enable; + // }; + // }; /* * Optional future QSPI pinctrl states (keep disabled for now). * Use these when switching from &spi3 to &qspi in buzzy.dts. */ - // qspi_default: qspi_default { - // group1 { - // psels = , - // , - // , - // , - // , - // ; - // }; - // }; + qspi_default: qspi_default { + group1 { + psels = , + , + , + , + , + ; + }; + }; - // qspi_sleep: qspi_sleep { - // group1 { - // psels = , - // , - // , - // , - // , - // ; - // low-power-enable; - // }; - // }; + qspi_sleep: qspi_sleep { + group1 { + psels = , + , + , + , + , + ; + low-power-enable; + }; + }; }; \ No newline at end of file diff --git a/firmware/boards/iten/buzzy/buzzy.dts b/firmware/boards/iten/buzzy/buzzy.dts index 5446b5c..ca5d40e 100644 --- a/firmware/boards/iten/buzzy/buzzy.dts +++ b/firmware/boards/iten/buzzy/buzzy.dts @@ -137,17 +137,52 @@ * SO/SIO1-> P0.30 * CS -> P0.05 */ -&spi3 { +// &spi3 { +// status = "okay"; +// pinctrl-0 = <&spi3_default>; +// pinctrl-1 = <&spi3_sleep>; +// pinctrl-names = "default", "sleep"; +// cs-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>; + +// mx25r64: flash@0 { +// compatible = "jedec,spi-nor"; +// reg = <0>; +// spi-max-frequency = <8000000>; +// jedec-id = [c2 28 17]; +// size = ; +// has-dpd; +// t-enter-dpd = <10000>; +// t-exit-dpd = <35000>; + +// partitions { +// compatible = "fixed-partitions"; +// #address-cells = <1>; +// #size-cells = <1>; + +// ext_flash_lfs: partition@0 { +// label = "ext-littlefs"; +// reg = <0x00000000 DT_SIZE_M(8)>; +// }; +// }; +// }; +// }; + +/* +* Optional future QSPI variant (keep disabled for now): +* - Disable &spi3 block above. +* - Enable &qspi block below. +* - Keep the same flash partition layout. +*/ +&qspi { status = "okay"; - pinctrl-0 = <&spi3_default>; - pinctrl-1 = <&spi3_sleep>; + pinctrl-0 = <&qspi_default>; + pinctrl-1 = <&qspi_sleep>; pinctrl-names = "default", "sleep"; - cs-gpios = <&gpio0 5 GPIO_ACTIVE_LOW>; mx25r64: flash@0 { - compatible = "jedec,spi-nor"; + compatible = "nordic,qspi-nor"; reg = <0>; - spi-max-frequency = <8000000>; + sck-frequency = <32000000>; jedec-id = [c2 28 17]; size = ; has-dpd; @@ -167,47 +202,6 @@ }; }; -/* -* Optional future QSPI variant (keep disabled for now): -* - Disable &spi3 block above. -* - Enable &qspi block below. -* - Keep the same flash partition layout. -*/ -// &qspi { -// status = "okay"; -// pinctrl-0 = <&qspi_default>; -// pinctrl-1 = <&qspi_sleep>; -// pinctrl-names = "default", "sleep"; - -// mx25r64: flash@0 { -// compatible = "nordic,qspi-nor"; -// reg = <0>; -// jedec-id = [c2 28 17]; -// size = ; -// has-dpd; -// t-enter-dpd = <10000>; -// t-exit-dpd = <35000>; - -// /* Net mapping from hardware: * -// * SCK=P0.02, CSN=P0.05, IO0=P0.29, IO1=P0.30, IO2=P0.31, IO3=P1.13 -// */ -// sck-pin = <2>; -// csn-pins = <5>; -// io-pins = <29>, <30>, <31>, <45>; - -// partitions { -// compatible = "fixed-partitions"; -// #address-cells = <1>; -// #size-cells = <1>; - -// ext_flash_lfs: partition@0 { -// label = "ext-littlefs"; -// reg = <0x00000000 DT_SIZE_M(8)>; -// }; -// }; -// }; -// }; - &gpio0 { status = "okay"; diff --git a/firmware/debug.conf b/firmware/debug.conf index b9fd8a7..3a1b4ee 100644 --- a/firmware/debug.conf +++ b/firmware/debug.conf @@ -8,10 +8,6 @@ CONFIG_DEBUG_OPTIMIZATIONS=y CONFIG_INIT_STACKS=y CONFIG_THREAD_STACK_INFO=y -### Increase logging thread stack to prevent overflow when shell active -CONFIG_LOG_PROCESS_THREAD_STACK_SIZE=2048 -CONFIG_LOG_BUFFER_SIZE=4096 - ### Bluetooth subsystem logging (reduced noise) CONFIG_BT_LOG_LEVEL_WRN=y diff --git a/firmware/libs/ble_mgmt/Kconfig b/firmware/libs/ble_mgmt/Kconfig index 9d73163..1402c24 100644 --- a/firmware/libs/ble_mgmt/Kconfig +++ b/firmware/libs/ble_mgmt/Kconfig @@ -10,7 +10,7 @@ menuconfig BLE_MGMT if BLE_MGMT config BLE_MGMT_DEFAULT_DEVICE_NAME string "Default Bluetooth device name" - default "Edis Buzzer" + default "Edis Buzzer 2.0" help Device name used when ble_mgmt_init() is called with a NULL name. diff --git a/firmware/libs/fs_mgmt/Kconfig b/firmware/libs/fs_mgmt/Kconfig index 56d0dd2..4a702e1 100644 --- a/firmware/libs/fs_mgmt/Kconfig +++ b/firmware/libs/fs_mgmt/Kconfig @@ -7,7 +7,7 @@ menuconfig FS_MGMT select FILE_SYSTEM_LITTLEFS select FILE_SYSTEM_MKFS select FLASH_PAGE_LAYOUT - select SPI_NOR if BOARD_BUZZY + select NORDIC_QSPI_NOR if BOARD_BUZZY select PM_OVERRIDE_EXTERNAL_DRIVER_CHECK if BOARD_BUZZY select NORDIC_QSPI_NOR if BOARD_NRF52840DK_NRF52840 help diff --git a/firmware/libs/settings_mgmt/Kconfig b/firmware/libs/settings_mgmt/Kconfig index 991edb2..e6c17f2 100644 --- a/firmware/libs/settings_mgmt/Kconfig +++ b/firmware/libs/settings_mgmt/Kconfig @@ -2,6 +2,7 @@ menuconfig SETTINGS_MGMT bool "Settings Management" default y select SETTINGS + select SETTINGS_RUNTIME select ZMS help Library for initializing and managing the settings subsystem. diff --git a/firmware/libs/settings_mgmt/src/settings_mgmt.c b/firmware/libs/settings_mgmt/src/settings_mgmt.c index d13010b..a770cb3 100644 --- a/firmware/libs/settings_mgmt/src/settings_mgmt.c +++ b/firmware/libs/settings_mgmt/src/settings_mgmt.c @@ -27,7 +27,7 @@ LOG_MODULE_REGISTER(settings_mgmt, LOG_LEVEL_INF); /* The "Source of Truth" in RAM */ struct app_settings_t app_cfg = { - .dev_name = "Edis Buzzer", + .dev_name = CONFIG_BLE_MGMT_DEFAULT_DEVICE_NAME, .vol = 100, /* 0-100 % */ .shuffle_mode = 0, .ble_timeout = 0xFFFFFFFF, diff --git a/firmware/src/main.c b/firmware/src/main.c index 01c9028..589b281 100644 --- a/firmware/src/main.c +++ b/firmware/src/main.c @@ -3,6 +3,7 @@ #include #include "buzz_proto.h" +#include "settings_mgmt.h" // #include "fw_mgmt.h" // #include "audio.h" @@ -50,7 +51,7 @@ int main(void) { #if IS_ENABLED(CONFIG_BLE_MGMT) /* BLE-Subsystem initialisieren und RX-Callback registrieren */ - int rc = ble_mgmt_init(ble_rx_cb, CONFIG_BLE_MGMT_DEFAULT_DEVICE_NAME); + int rc = ble_mgmt_init(ble_rx_cb, app_cfg.dev_name); if (rc < 0) { LOG_ERR("Failed to initialize BLE management: %d", rc); return rc;