Changelog for nRF Connect SDK Bare Metal option v2.0.99

This changelog reflects the most relevant changes from the latest official release.

Changelog

The following sections provide detailed lists of changes by component.

SDK installation

No changes since the latest nRF Connect SDK Bare Metal release.

S115 SoftDevice

No changes since the latest nRF Connect SDK Bare Metal release.

S145 SoftDevice

No changes since the latest nRF Connect SDK Bare Metal release.

SoftDevice Handler

  • Fixed:

    • An issue where using the CONFIG_NRF_SDH_LOG_SD_INFO Kconfig option for MCUboot board targets would log invalid SoftDevice version data. The logging now takes the SoftDevice partition offset into account for those board targets.

    • An issue where the SoftDevice handler did not clear its in-progress state after a failed enable or disable operation. Subsequent enable or disable requests then incorrectly returned -EINPROGRESS.

Boards

Added:

  • Support for the nRF54LS05A SoC, emulated on the nRF54LS05 DK through the bm_nrf54ls05dk/nrf54ls05a/cpuapp/* board targets.

  • Support for the nRF54LC10A SoC, running on the nRF54LC10 DK (PCA10226)

  • BOARD_EXTERNAL_MEMORY_* macros to the board-config.h file of the bm_nrf54l15dk and bm_nrf54lm20dk board targets (SPIM instance, SCK/MOSI/MISO/CS, and WP#/RST# strap pins) for on-board SPI external flash. Other BM development kits do not have external flash memory on the board, so their board-config.h files omit these macros.

  • Updated:

    • All boards to use zephyr,mapped-partition instead of zephyr,fixed-partitions and zephyr,fixed-subpartitions. When referencing partition nodes, the code now uses PARTITION_* macros instead of DT_* and FIXED_PARTITION_* macros. The use of the CONFIG_FLASH_LOAD_OFFSET Kconfig option is also replaced by PARTITION_* macros.

    • All boards to use specific J-Link devices from the nRF54L series. This improves debugging in VS Code.

    • The number of required board qualifiers (reduced by one), as of changes in upstream Zephyr.

  • Removed:

    • The override for cpuapp_rram size for all boards as RRAM is no longer reserved for the RISC-V core by default.

Build system

  • Updated:

    • The west.yml file to add memfault-firmware-sdk to the nRF Connect SDK manifest allowlist.

    • The zephyr/module.yml file to declare a build dependency on memfault-firmware-sdk.

DFU

  • Updated the installer application to prevent Out-Of-Bound reads and writes of the new firmware image.

Interrupts

No changes since the latest nRF Connect SDK Bare Metal release.

Logging

No changes since the latest nRF Connect SDK Bare Metal release.

Drivers

No changes since the latest nRF Connect SDK Bare Metal release.

Subsystems

Storage

No changes since the latest nRF Connect SDK Bare Metal release.

Filesystem

No changes since the latest nRF Connect SDK Bare Metal release.

Memfault

  • Added Memfault platform support in subsys/memfault/:

    • CONFIG_BM_MEMFAULT_LOCK - irq_lock()-based memfault_lock() / memfault_unlock() for builds without Zephyr multithreading (default when NCS_BM && MEMFAULT && !MULTITHREADING). Enabling this option also excludes the k_mutex-based memfault_platform_lock.c file of the Memfault SDK from the build, so that Memfault links without CONFIG_MULTITHREADING.

Libraries

  • Added the SPI transaction manager library for queued SPI controller transactions on a single SPIM instance. Enable it using the CONFIG_BM_SPI_MNGR Kconfig option. See SPI transaction manager for an overview and SPI transaction manager API reference for the full API.

  • Bluetooth: Connection Parameters:

    • Added:

      • Support for selecting more than one PHY mode (1M, 2M, and Coded) when setting the PHY mode preference with Kconfig.

      • Support for the BLE_GAP_EVT_CONN_PARAM_UPDATE_REQUEST SoftDevice event.

    • Updated:

      • The ble_conn_params_phy_radio_mode_set() function to return NRF_ERROR_INVALID_PARAM if the phy_pref parameter contains PHY modes not supported by the SoftDevice.

      • The ble_conn_params_override() function to allow runtime overrides of the acceptable connection parameter window used when validating peripheral requests to change the connection parameters. Previously, this window was set statically by Kconfig options and was not possible to override at runtime.

    • Fixed:

  • Bluetooth: Advertising library library:

  • Bluetooth: Scan library:

  • Bluetooth: Peer Manager library:

    • Updated:

      • The pm_init() function to clear the list of event handlers registered with the pm_register() function.

      • The pm_init() function to clear the default security parameters set with the pm_sec_params_set() function.

      • The pm_register() function to return NRF_ERROR_NULL when the event handler parameter is NULL. The check was documented but was missing.

      • The LESC key agreement handling to clear the static RAM copy of the ECDH shared secret after the secret have been handed over to the SoftDevice using the sd_ble_gap_lesc_dhkey_reply() function.

      • The CONFIG_PM_LESC_GENERATE_NEW_KEYS Kconfig option to be enabled by default. This option forces the use of new ECDH key pair for each pairing procedure.

      • The peer_manager_handler.c file with missing logging and asserts where the APP_ERROR_CHECK macro was used in nRF5 SDK.

      • The sources of the PM_EVT_CONN_SEC_CONFIG_REQ event to fill the peer ID field. Use the value of the peer ID field instead of calling the pm_peer_id_get() function when handling this event.

      • The write buffer release function in the peer database submodule to erase the contents of the write buffer record on release.

    • Fixed:

      • An issue where calling the pm_init() function two or more times would cause some of the internal asynchronous operation flags to have incorrect states.

      • The pm_address_resolve() function to return false instead of NRF_ERROR_INVALID_STATE when Peer Manager is not initialized.

      • An issue where the write buffer that holds bonding data before NVM writes was not released in all situations. The impact was minor, as new connections were able to reuse the already-allocated buffer(s).

  • Bluetooth: Queued Writes library:

  • Zephyr queue library:

    • Updated to return NULL on blocking calls to the z_impl_k_queue_get() function.

Bluetooth LE Services

Libraries for NFC

No changes since the latest nRF Connect SDK Bare Metal release.

Utils

No changes since the latest nRF Connect SDK Bare Metal release.

Samples

  • The CONFIG_PSA_CRYPTO Kconfig option is now used to enable cryptography instead of the CONFIG_NRF_SECURITY Kconfig option.

Peripheral samples

Bluetooth LE samples

NFC samples

No changes since the latest nRF Connect SDK Bare Metal release.

DFU samples

No changes since the latest nRF Connect SDK Bare Metal release.

Subsystem samples

No changes since the latest nRF Connect SDK Bare Metal release.

Known issues and limitations

No changes since the latest nRF Connect SDK Bare Metal release.

Documentation