nRF Connect SDK v2.6.0 Release Notes

nRF Connect SDK delivers reference software and supporting libraries for developing low-power wireless applications with Nordic Semiconductor products in the nRF52, nRF53, nRF70, and nRF91 Series. The SDK includes open source projects (TF-M, MCUboot, OpenThread, Matter, and the Zephyr RTOS), which are continuously integrated and redistributed with the SDK.

Release notes might refer to “experimental” support for features, which indicates that the feature is incomplete in functionality or verification, and can be expected to change in future releases. To learn more, see Software maturity levels.

Highlights

Added the following features as supported:

  • Bluetooth® LE:

    • Isochronous channels feature that was introduced in nRF Connect SDK 2.5.0 as experimental is now supported.

  • Bluetooth Mesh:

  • Wi-Fi®:

    • nRF70 Series firmware patches can now optionally reside in external NVM memory instead of on-board, releasing up to 70 KB of space for the application running on the host device (nRF5340 or nRF52840).

    • Raw Wi-Fi packet transmission.

    • New samples: Wi-Fi: Raw TX packet and Wi-Fi: Throughput.

    • Wi-Fi: Zephyr networking samples can be built with Trusted Firmware-M (TF-M) for enhanced security.

  • Matter:

    • Matter 1.2, bringing support for nine new device types such as refrigerators, robotic vacuums, air quality sensors, and more.

    • The Matter bridge application that was introduced in nRF Connect SDK 2.5.0 as experimental is now supported.

    • Matter over Thread now uses PSA Certified Secure Storage API to enable secure storage of keys and certificates.

  • Power Management (nPM1300):

    • New nPM1300: One button sample that demonstrates how to support wake-up, shutdown, and user interactions through a single button connected to the nPM1300.

    • LDO and load-switches soft start configuration to limit voltage fluctuations, and PFM mode configuration for added user flexibility.

  • Amazon Sidewalk:

    • Multi-link (autonomous link switching), which provides more flexibility and optimized control of radio links and message transfers based on application profiles.

    • On-device key generation, enhancing the security of IoT products at manufacturing.

  • Cellular IoT:

    • Support for nRF9151 DK on the majority of cellular IoT samples.

    • The Serial LTE modem application can now be used to turn an nRF91 Series SiP into a standalone modem that can be used through Zephyr’s cellular modem driver.

  • Security:

    • Introduced the new Trusted storage library which uses Hardware Unique Key to provide an implementation of PSA Certified Secure Storage API without the use of TF-M Platform Root of Trust (PRoT).

  • Other:

Added the following features as experimental:

  • Wi-Fi:

    • Raw Wi-Fi reception in both Monitor and Promiscuous modes.

    • Software-enabled Access Point (SoftAP) with the primary use case being provisioning over Wi-Fi instead of the existing provisioning over Bluetooth LE solution.

    • New samples: Wi-Fi: SoftAP and Wi-Fi: Monitor.

  • Amazon Sidewalk:

    • Downlink File Transfer over Bluetooth LE, providing Sidewalk bulk transfer mode and integration of AWS IoT FUOTA (Firmware Updates over-the-air) service.

  • Thread:

    • Thread commissioning over authenticated TLS (TCAT) to address the needs of professional installation and commercial building scenarios, where scanning physical install codes is an inadequate solution.

  • DFU:

  • nRF Cloud:

    • The Cellular: nRF Cloud multi-service sample now includes experimental support for the following:

      • Runtime installation of TLS certificates using the TLS Credentials Shell when built for Wi-Fi connectivity on an nRF5340 DK with an nRF7002 EK.

      • Communication using either MQTT or CoAP over Wi-Fi.

      • Better out-of-box experience by using the new nRF Cloud Security Services auto-onboarding feature. This makes it easier to connect a new device to nRF Cloud, including installation of security credentials.

    • The Cellular: nRF Cloud REST Device Message sample also includes experimental support for the new nRF Cloud Security Services auto-onboarding feature.

  • Other:

    • Link Time Optimization that brings flash usage improvements. This has been tested on Matter over Wi-Fi template sample and it reduced flash by 73 KB (931 KB to 858 KB) for debug build and 64 KB (840 KB to 776 KB) on release build.

Improved:

  • Bluetooth LE Audio:

    • The application nRF5340 Audio is now called nRF5340 Audio applications and it has been refactored, expanded, and improved, using Nordic Semiconductor’s SoftDevice Controller instead of the previous dedicated LE Audio Controller subsystem. This application is still of experimental maturity.

  • Matter:

    • Reduction of flash utilization for Matter over Thread template application:

      • nRF52840: Reduction of 48 KB (813 KB to 765 KB) for debug build and 50 KB (719 KB to 669 KB) for release build.

      • nRF5340: Reduction of 36 KB (732 KB to 696 KB) for debug build and 39 KB (637 KB to 598 KB) for release build.

Sign up for the nRF Connect SDK v2.6.0 webinar to learn more about the new features.

See Changelog for the complete list of changes.

Release tag

The release tag for the nRF Connect SDK manifest repository (https://github.com/nrfconnect/sdk-nrf) is v2.6.0. Check the west.yml file for the corresponding tags in the project repositories.

To use this release, check out the tag in the manifest repository and run west update. See Get the nRF Connect SDK code and Updating the repositories for more information.

For information on the included repositories and revisions, see Repositories and revisions for v2.6.0.

IDE and tool support

nRF Connect extension for Visual Studio Code is the recommended IDE for nRF Connect SDK v2.6.0. See the Installation section for more information about supported operating systems and toolchain.

Supported modem firmware

See Modem firmware compatibility matrix for an overview of which modem firmware versions have been tested with this version of the nRF Connect SDK.

Use the latest version of the nRF Programmer app of nRF Connect for Desktop to update the modem firmware. See Updating the modem firmware for instructions.

Known issues

Known issues are only tracked for the latest official release. See known issues for nRF Connect SDK v2.6.0 for the list of issues valid for the latest release.

Migration notes

See the Migration guide for nRF Connect SDK v2.6.0 for the changes required or recommended when migrating your application from nRF Connect SDK v2.5.0 to nRF Connect SDK v2.6.0.

Changelog

The following sections provide detailed lists of changes by component.

IDE and tool support

Working with nRF91 Series

Working with nRF70 Series

Working with nRF53 Series

Working with RF front-end modules

Protocols

This section provides detailed lists of changes by protocol. See Samples for lists of changes for the protocol-related samples.

Amazon Sidewalk

  • Added:

    • An application behavior that selects the Bluetooth LE only library when the CONFIG_SIDEWALK_SUBGHZ_SUPPORT option is disabled. The library has a limited set of Sidewalk features and does not include multi-link.

    • The sensor monitoring support for Thingy:53 with Sidewalk over Bluetooth LE.

    • Amazon Sidewalk libraries v1.16.2, that include the following:

      • Autonomous link switching (multi-link) - Enables applications to configure a policy for optimizing radio links usage based on the application profiles. A device with only one or all link types (Bluetooth LE, LoRa, FSK radio) can benefit from this feature.

      • On-device certificate generation - Enhances the security of IoT products at manufacturing through the on-device key generation and creation of the manufacturing page.

      • Downlink file transfer over Bluetooth LE (experimental) - The Sidewalk Bulk Data Transfer mode and Integration of the AWS IoT FUOTA service allow sending files (up to 1 MB) to a fleet of IoT devices from the AWS IoT FUOTA task. The current implementation covers a basic scenario that shows the transferred data in the logs with minimal callback implementation. There is no Device Firmware Update (DFU) integration.

    • Amazon Sidewalk Sample IoT App to the codebase (sidewalk/tools) as an original tool for provisioning.

  • Updated the entire samples model to include a common, configurable codebase.

Bluetooth LE

  • Added host extensions for Nordic Semiconductor-only vendor-specific command APIs. Implementation and integration of the host APIs can be found in the host_extensions.h header file.

Bluetooth Mesh

Matter

  • For devices that use Matter over Thread, the default cryptography backend is now Arm PSA Crypto API instead of Mbed TLS, which was used in earlier versions. You can still build all examples with deprecated Mbed TLS support by setting the CONFIG_CHIP_CRYPTO_PSA Kconfig option to n, but you must build the Thread libraries from sources. To inherit Thread certification from Nordic Semiconductor, you must use the PSA Crypto API backend.

  • Added:

    • The Kconfig option CONFIG_CHIP_ENABLE_READ_CLIENT for disabling or enabling Read Client functionality.

    • Support for PSA Crypto API for devices that use Matter over Thread. It is enabled by default and can be disabled by setting the CONFIG_CHIP_CRYPTO_PSA Kconfig option to n.

    • VERSION file implementation to manage versioning for DFU over SMP as well as Matter OTA. Backward compatibility is maintained for users who use the prj.conf file for versioning.

    • Migration of the Device Attestation Certificate (DAC) private key from the factory data set to the PSA ITS secure storage.

      The DAC private key can be removed from the factory data set after the migration. You can enable this experimental functionality by setting the CONFIG_CHIP_CRYPTO_PSA_MIGRATE_DAC_PRIV_KEY Kconfig option to y.

    • Redefinition of thermostat sample measurement process, deleted CONFIG_THERMOSTAT_EXTERNAL_SENSOR. By default, the thermostat sample generates simulated temperature measurements. The generated measurements simulate local temperature changes. Additionally, you can enable periodic outdoor temperature measurements by binding the thermostat with an external temperature sensor device.

    • Migration of the Node Operational Key Pair (NOK) from the generic Matter persistent storage to the PSA ITS secure storage. All existing NOKs for all Matter fabrics will be migrated to the PSA ITS secure storage at boot. After the migration, generic Matter persistent storage entries in the settings storage will be removed and are no longer available. To enable operational keys migration, set the CONFIG_NCS_SAMPLE_MATTER_OPERATIONAL_KEYS_MIGRATION_TO_ITS Kconfig option to y.

      In nRF Connect SDK Matter samples, the default reaction to migration failure is a factory reset of the device. To change the default reaction, set the CONFIG_NCS_SAMPLE_MATTER_FACTORY_RESET_ON_KEY_MIGRATION_FAILURE Kconfig option to n.

    • Experimental support for building Matter samples and applications with Link Time Optimization (LTO). To enable it, set the CONFIG_LTO and CONFIG_ISR_TABLES_LOCAL_DECLARATION Kconfig options to y.

    • Documentation page about Matter APIs.

  • Updated:

Matter fork

The Matter fork in the nRF Connect SDK (sdk-connectedhomeip) contains all commits from the upstream Matter repository up to, and including, the v1.2.0.1 tag.

The following list summarizes the most important changes inherited from the upstream Matter:

  • Added:

  • Updated:

    • The following Kconfig options have been renamed:

  • The Factory Data Guide regarding the changes for the SPAKE2+ verifier, and generation of the Unique ID for Rotating Device ID.

  • The factory data default usage has been changed:

    • The SPAKE2+ verifier is now generated by default with each build, and it will change if any of the related Kconfig options are modified. This resolves the known issue related to the SPAKE2+ verifier not regenerating (KRKNWK-18315).

    • The Test Certification Declaration can now be generated independently from the generation of the DAC and PAI certificates.

    • The Unique ID for Rotating Device ID can now only be generated if the CONFIG_CHIP_ROTATING_DEVICE_ID Kconfig option is set to y.

Thread

  • Updated:

    • The default cryptography backend for Thread is now Arm PSA Crypto API instead of Mbed TLS, which was used in earlier versions. You can still build all examples with deprecated Mbed TLS support by setting the CONFIG_OPENTHREAD_NRF_SECURITY_CHOICE Kconfig option to y, but you must build the Thread libraries from sources. To inherit Thread certification from Nordic Semiconductor, you must use the PSA Crypto API backend.

    • nRF5340 SoC targets that do not include Trusted Firmware-M now use Hardware Unique Key (HUK, see the Hardware unique key library) for PSA Internal Trusted Storage (ITS).

See Thread samples for the list of changes in the Thread samples.

Zigbee

Gazell

Wi-Fi

  • Added:

    • The CONFIG_NRF_WIFI_FW_PATCH_DFU Kconfig option that enables DFU support for nRF70 Series devices. This allows firmware patches for signed images to be sent to multi-image targets over Wi-Fi.

    • Support for the CSP package.

    • Modification to the application of edge backoff. Previously, it was subtracted from the regulatory power limit. Now, backoff is subtracted from the data rate-dependent power ceiling.

  • Updated:

    • WPA supplicant now reserves libc heap memory rather than using leftover RAM. This does not affect the overall memory used, but now the RAM footprint as reported by the build shows higher usage.

    • The Wi-Fi interface is renamed from wlan0 to nordic_wlan0 and is available as zephyr_wifi in the DTS. Use the DT APIs to get the handle to the Wi-Fi interface.

HomeKit

HomeKit is now removed, as announced in the nRF Connect SDK v2.5.0 Release Notes.

Applications

This section provides detailed lists of changes by application.

  • The Matter bridge application is now supported instead of being experimental.

  • Added the IPC radio firmware application.

Asset Tracker v2

  • Added:

  • Updated:

    • The following power optimizations to the LwM2M configuration overlay:

      • Enable DTLS Connection Identifier.

      • Perform the LwM2M update once an hour and request for a similar update interval of the periodic tracking area from the LTE network.

      • Request the same active time as the QUEUE mode polling time.

      • Enable eDRX with shortest possible interval and a short paging window.

      • Enable tickless mode in the LwM2M engine.

      • Enable LTE Release Assist Indicator.

      • The application documentation by separating the Application modules to its own page.

  • Removed the nRF7002 EK devicetree overlay file nrf91xxdk_with_nrf7002ek.overlay, because UART1 is disabled through the shield configuration.

Connectivity bridge

  • Updated the handling of the README.txt file to support multiple boards. The README.txt file now contains also version information.

Serial LTE modem

  • Added:

    • Support for the CMUX protocol in order to multiplex multiple data streams through a single serial link. The #XCMUX AT command is added to set up CMUX.

    • Support for PPP in order to use the external MCU’s own IP stack instead of offloaded sockets used through AT commands. It can be used in conjunction with CMUX to use a single UART for both AT data and PPP. The #XPPP AT command is added to manage the PPP link.

    • #XMQTTCFG AT command to configure the MQTT client before connecting to the broker.

    • The CONFIG_SLM_AUTO_CONNECT Kconfig option to support automatic LTE connection at start-up or reset.

    • The CONFIG_SLM_CUSTOMER_VERSION Kconfig option for customers to define their own version string after customization.

    • The optional path parameter to the #XCARRIEREVT AT notification.

    • #XCARRIERCFG AT command to configure the LwM2M carrier library using the LwM2M carrier settings (see the CONFIG_LWM2M_CARRIER_SETTINGS Kconfig option).

    • Support for Zephyr’s cellular modem driver, which allows a Zephyr application running on an external MCU to seamlessly use Zephyr’s IP stack instead of AT commands for connectivity. See nRF91 Series as a Zephyr-compatible modem for more information.

  • Updated:

    • The CONFIG_SLM_WAKEUP_PIN Kconfig option has been renamed to CONFIG_SLM_POWER_PIN. In addition to its already existing functionality, it can now be used to power off the SiP.

    • #XMQTTCON AT command to exclude MQTT client ID from the parameter list.

    • #XSLMVER AT command to report CONFIG_SLM_CUSTOMER_VERSION if it is defined.

    • The #XTCPCLI, #XUDPCLI, and #XHTTPCCON AT commands with options for the following purposes:

      • Set the PEER_VERIFY socket option. Set to TLS_PEER_VERIFY_REQUIRED by default.

      • Set the TLS_HOSTNAME socket option to NULL to disable the hostname verification.

    • You can now build the application on nRF9160 DK boards with revisions older than 0.14.0.

    • #XCMNG AT command to store credentials in Zephyr settings storage. The command is activated with the overlay-native_tls.conf overlay file.

    • The documentation for the #XCARRIER and #XCARRIERCFG commands by adding more detailed information.

  • Removed the Kconfig options CONFIG_SLM_CUSTOMIZED and CONFIG_SLM_SOCKET_RX_MAX.

nRF5340 Audio applications

  • Added:

    • Support for Filter Accept List (enabled by default).

    • Metadata used in Auracast, such as active_state and parental_rating.

    • Support for converting the audio sample rate between 48 kHz, 24 kHz, and 16 kHz.

  • Updated:

    • LE Audio controller for nRF5340 from v3424 to v18929.

    • The default controller has been changed from the LE Audio controller for nRF5340 library to the SoftDevice Controller. See the nRF5340 Audio applications section in the Migration guide for nRF Connect SDK v2.6.0 for information about how this affects your application.

    • Sending of the ISO data, which is now done in a single file bt_le_audio_tx.

    • Application structure, which is now split into four separate, generic applications with separate main.c files.

    • Advertising process by reverting back to slower advertising after a short burst (1.28 s) of directed advertising.

    • Scan process for broadcasters by adding ID as a searchable parameter.

nRF Machine Learning (Edge Impulse)

  • Updated:

    • The MCUboot and HCI RPMsg child images debug configurations to disable the CONFIG_RESET_ON_FATAL_ERROR Kconfig option. Disabling this Kconfig option improves the debugging experience.

    • The MCUboot and HCI RPMsg child images release configurations to explicitly enable the CONFIG_RESET_ON_FATAL_ERROR Kconfig option. Enabling this Kconfig option improves the reliability of the firmware.

nRF Desktop

Thingy:53: Matter weather station

  • Updated by changing the deployment of configuration files to align with other Matter applications.

  • Removed instantiation of OTATestEventTriggerDelegate, which was usable only for Matter Test Event purposes.

Matter bridge

  • Added:

    • Support for groupcast communication to the On/Off Light device implementation.

    • Support for controlling the OnOff Light simulated data provider by using shell commands.

    • Support for Matter Generic Switch bridged device type.

    • Support for On/Off Light Switch bridged device type.

    • Support for bindings to the On/Off Light Switch device implementation.

    • Guide about extending the application by adding support for a new Matter device type, a new Bluetooth LE, service or a new protocol.

    • Support for Bluetooth LE Security Manager Protocol that allows to establish secure session with bridged Bluetooth LE devices.

    • Callback to indicate the current state of Bluetooth LE Connectivity Manager. The current state is indicated by LED 2.

    • Support for the nRF5340 DK with the nRF7002 EK attached.

    • Support for Wi-Fi firmware patch upgrades on external memory. This is only available for the nRF5340 DK with the nRF7002 EK.

Samples

This section provides detailed lists of changes by sample.

Bluetooth samples

Bluetooth Mesh samples

Cellular samples

  • Added support for the nRF9151 DK in all cellular samples except for the following samples:

  • Cellular: TLS cipher suites sample:

    • Updated:

      • The format of the .pem file to the PEM format.

      • The sample to automatically convert the .pem file to HEX format so it can be included.

  • Cellular: Location sample:

    • Removed the nRF7002 EK devicetree overlay file nrf91xxdk_with_nrf7002ek.overlay, because UART1 is disabled through the shield configuration.

  • Cellular: Modem Shell sample:

    • Added:

      • Support for full modem FOTA.

      • Printing of the last reset reason when the sample starts.

      • Support for printing the sample version information using the version command.

      • Support for counting pulses from a GPIO pin using the gpio_count command.

      • Support for changing shell UART baudrate using the uart baudrate command.

      • Support for DNS query using the sock getaddrinfo command.

      • Support for PDN CID 0 in the -I argument for the sock connect command.

      • Support for listing interface addresses using the link ifaddrs command.

      • Support for the MSG_WAITACK send flag using the sock send command.

      • Support for connect with SO_KEEPOPEN using the sock connect command.

    • Updated:

      • The MQTT and CoAP overlays to enable the Kconfig option CONFIG_NRF_CLOUD_SEND_SERVICE_INFO_UI. The sample no longer sends a device shadow update for MQTT and CoAP builds; this is now handled by the nRF Cloud library.

      • To use the new nrf_cloud_location_config structure when calling the nrf_cloud_location_request() function.

      • The connect subcommand to use the connect() function on non-secure datagram sockets. This sets the peer address for the non-secure datagram socket. This fixes a bug where using the connect subcommand and then using the rai_no_data option with the rai subcommand on a non-secure datagram socket would lead to an error. The rai_no_data option requires the socket to be connected and have a peer address set. This bug is caused by the non-secure datagram socket not being connected when using the connect subcommand.

      • The send subcommand to use the send() function for non-secure datagram sockets that are connected and have a peer address set.

      • The modem_trace command has been moved to Modem library integration layer. See Modem trace shell command for information about modem trace commands.

      • The sample to allow TLS/DTLS security tag values up to 4294967295.

    • Removed:

      • The nRF7002 EK devicetree overlay file nrf91xxdk_with_nrf7002ek.overlay, because UART1 is disabled through the shield configuration.

      • The modem_trace send memfault shell command.

  • Cellular: nRF Cloud multi-service sample:

    • Added:

      • A generic processing example for application-specific shadow data.

      • Configuration and overlay files to enable MCUboot to use the external flash on the nRF1961 DK.

      • The CONFIG_COAP_ALWAYS_CONFIRM Kconfig option to select CON or NON CoAP transfers for functions that previously used NON transfers only.

      • Support for the nRF Cloud device provisioning library.

      • Two overlay files overlay-http_nrf_provisioning.conf and overlay-coap_nrf_provisioning.conf to enable the nRF Cloud device provisioning library with HTTP and CoAP connectivity, respectively. Both overlays specify UUID-style device IDs (not ‘nrf-IMEI‘-style) for compatibility with nRF Cloud auto-onboarding.

      • An overlay file overlay_nrf7002ek_wifi_coap_no_lte.conf for experimental CoAP over Wi-Fi support.

    • Updated:

    • Fixed:

      • The sample now waits for a successful connection before printing Connected to nRF Cloud!.

      • Building for the Thingy:91.

      • The PSM Requested Active Time is now reduced from 1 minute to 20 seconds. The old value was too long for PSM to activate.

    • Removed the nRF7002 EK devicetree overlay file nrf91xxdk_with_nrf7002ek.overlay, because UART1 is disabled through the shield configuration.

  • Cellular: nRF Cloud REST FOTA sample:

    • Added credential check before connecting to the network.

    • Updated:

      • The sample now uses the functions in the nrf_cloud_fota_poll.c and nrf_cloud_fota_common.c files.

      • The CONFIG_AT_HOST_STACK_SIZE Kconfig option value has been increased to 2048 bytes since nRF Cloud credentials are sometimes longer than 1024 bytes.

  • Cellular: nRF Cloud REST cellular location sample:

    • Added:

      • Credential check before connecting to the network.

      • Use of the nrf_cloud_location_config structure to modify the ground fix results.

    • Updated by increasing the CONFIG_AT_HOST_STACK_SIZE Kconfig option value to 2048 bytes since nRF Cloud credentials are sometimes longer than 1024 bytes.

  • Cellular: nRF Device provisioning sample:

    • Added event handling for events from device mode callback.

  • Cellular: GNSS sample:

    • Added the configuration overlay file overlay-supl.conf for building the sample with SUPL assistance support.

  • Cellular: UDP sample:

  • Cellular: LwM2M carrier sample:

    • Updated:

      • The format of the .pem files to the PEM format.

      • The sample to automatically convert the .pem files to HEX format so they can be included.

  • Cellular: LwM2M Client sample:

    • Added:

      • A workaround for ground fix location assistance queries in AVSystem Coiote by using the fixed Connectivity Monitor object version. This is enabled in the overlay-assist-cell.conf configuration overlay.

      • Release Assistance Indication (RAI) feature. This helps to save power by releasing the network connection faster on a network that supports it.

    • Updated:

      • The eDRX cycle to 5.12 s for both LTE-M and NB-IoT.

      • The periodic TAU (RPTAU) to 12 hours.

  • Cellular: nRF Cloud REST Device Message sample:

    • Updated:

      • The overlay-nrf_provisioning.conf overlay to specify UUID-style device IDs for compatibility with nRF Cloud auto-onboarding.

      • The values of CONFIG_AT_HOST_STACK_SIZE and CONFIG_AT_MONITOR_HEAP_SIZE Kconfig options have been increased to 2048 bytes since nRF Cloud credentials are sometimes longer than 1024 bytes.

Cryptography samples

  • Added the Crypto: PBKDF2 sample.

  • Updated:

    • All crypto samples to use psa_key_id_t instead of psa_key_handle_t. These concepts have been merged and psa_key_handle_t is removed from the PSA API specification.

Debug samples

  • Memfault sample:

    • Added support for the nRF9151 development kit.

Matter samples

  • Unified common code for buttons, LEDs, and events in all Matter samples:

    • Created the task executor module that is responsible for posting and dispatching tasks.

    • Moved common methods for managing buttons and LEDs that are located on the DK to the board module.

    • Divided events to application and system events.

    • Defined common LED and button constants in the dedicated board configuration files.

    • Created the Kconfig file for the Matter common directory.

    • Created a CMake file in the Matter common directory to centralize the sourcing of all common software module source code.

  • Disabled the following features:

    • Read Client functionality in most Matter samples using the new CONFIG_CHIP_ENABLE_READ_CLIENT Kconfig option.

    • WPA supplicant advanced features in all Matter samples using the CONFIG_WPA_SUPP_ADVANCED_FEATURES Kconfig option. This saves roughly 25 KB of flash memory for firmware images with Wi-Fi support.

  • Added matter_shell shell commands set to gather the current information about the NVS settings backend, such as current usage, free space, and peak usage value. You can enable them by setting the NCS_SAMPLE_MATTER_SETTINGS_SHELL Kconfig option to y. To read more, see the Matter Settings shell commands section.

  • Matter: Light bulb sample:

  • Matter: Template sample:

    • Added support for DFU over Bluetooth LE SMP. The functionality is disabled by default. To enable it, set the CONFIG_CHIP_DFU_OVER_BT_SMP Kconfig option to y.

  • Matter: Door lock sample:

    • Added support for Wi-Fi firmware patch upgrade on external memory, only for the combination of the nRF5340 DK with the nRF7002 EK.

    • Updated the design of the Thread and Wi-Fi switching feature so that support for both Matter over Thread and Matter over Wi-Fi is included in a single firmware image.

    • Fixed an issue that prevented nRF Toolbox for iOS in version 5.0.9 from controlling the sample using Nordic UART Service (NUS).

Networking samples

  • Added:

    • A new sample HTTP Server.

    • Support for the nRF9151 development kit.

  • Updated the networking samples to build using the non-secure target when building for the nRF7002DK. The CONFIG_TFM_PROFILE_TYPE_SMALL profile type is used for Trusted Firmware-M (TF-M) to optimize its memory footprint.

  • CoAP Client sample:

    • Added support for Wi-Fi and LTE connectivity through the connection manager API.

    • Updated:

      • The sample is moved from the cellular/coap_client folder to net/coap_client. The documentation is now found in the Networking samples section.

      • The sample to use the CoAP client library.

  • HTTPS Client sample:

    • Updated:

      • The .pem certificate for example.com.

      • The format of the .pem file to the PEM format.

      • The sample to automatically convert the .pem file to HEX format so it can be included.

      • The sample to gracefully bring down the network interfaces.

      • Renamed overlay-pdn_ipv4.conf to overlay-pdn-nrf91-ipv4.conf and overlay-tfm_mbedtls.conf to overlay-tfm-nrf91.conf.

  • Download client sample:

    • Updated:

      • The format of the .pem file to the PEM format.

      • The sample to automatically convert the .pem file to HEX format so it can be included.

      • The sample to gracefully bring down the network interfaces.

nRF5340 samples

  • Added the nRF5340: SMP Server with external XIP sample that demonstrates how to split an application that uses internal flash and Quad Serial Peripheral Interface (QSPI) flash with the Simple Management Protocol (SMP) server.

Peripheral samples

  • Radio test (short-range) sample:

    • Updated:

      • The start_tx_modulated_carrier command, when used without an additional parameter, does not enable the radio end interrupt.

      • Corrected the way of setting the TX power with FEM.

PMIC samples

Thread samples

  • Added experimental support for Thread Over Authenticated TLS.

  • Updated the building method to use Snippets for predefined configuration.

  • Removed:

    • In the Feature sets provided as part of the nRF Connect SDK, the following features have been removed from the FTD and MTD variants:

      • DHCP6_CLIENT

      • JOINER

      • SNTP_CLIENT

      • LINK_METRICS_INITIATOR

      All mentioned features are still available in the master variant.

Wi-Fi samples

  • Added:

  • Wi-Fi: Shell sample:

    • Updated the sample by adding the following extensions to the Wi-Fi command line:

      • raw_tx extension. It adds the subcommands to configure and sends raw TX packets.

      • promiscuous_set extension. It adds the subcommand to configure Promiscuous mode.

  • Wi-Fi: Bluetooth LE coexistence sample:

    • Updated the sample folder name from sr_coex to ble_coex to accurately represent the functionality of the sample.

  • Wi-Fi: Radio test sample:

    • Updated:

      • The sample now has added support for runtime configuration of antenna gain and edge backoff parameters.

      • Antenna gain and edge backoff values are not applied if regulatory is bypassed.

Drivers

This section provides detailed lists of changes by driver.

Wi-Fi drivers

  • Added the following features to the nRF70 Series devices:

    • TX injection feature.

    • Monitor feature.

    • Promiscuous mode.

  • Updated:

  • OS agnostic code is moved to nRF Connect SDK (sdk-nrfxlib) repository.

    • Low-level API documentation is now available on the Wi-Fi driver API.

  • The Wi-Fi interface is now renamed and registered as a devicetree instance.

Libraries

This section provides detailed lists of changes by library.

Binary libraries

Bluetooth libraries and services

DFU libraries

Debug libraries

  • Memfault library:

    • Added more default LTE metrics, such as band, operator, RSRP, and kilobytes sent and received.

    • Updated the default metric names to follow the standard nRF Connect SDK variable name convention.

Modem libraries

Libraries for networking

Libraries for NFC

  • Fixed an issue with handling zero size data (when receiving empty I-blocks from poller) in the platform_internal_thread file.

Security libraries

  • Added the Trusted storage library.

  • nRF Security library:

    • Updated:

      • The library no longer enables RSA keys by default, which reduces the code size by 30 kB for those that are not using RSA keys. The RSA key size must be explicitly enabled to avoid breaking the configuration when using the RSA keys, for example, by setting the CONFIG_PSA_WANT_RSA_KEY_SIZE_2048 Kconfig option if 2048-bit RSA keys are required.

      • The PSA config is now validated by the ncs/nrf/ext/oberon/psa/core/library/check_crypto_config.h file. Users with invalid configurations must update their PSA configuration according to the error messages that the check_crypto_config.h file provides.

Other libraries

  • adp536x library:

    • Fixed the issue where the adp536x driver was included in the immutable bootloader on Thingy:91 when the CONFIG_SECURE_BOOT Kconfig option was enabled.

  • Date-Time library:

  • DK Buttons and LEDs library:

    • Added an experimental no interrupts mode for button handling. To enable this mode, use the CONFIG_DK_LIBRARY_BUTTON_NO_ISR Kconfig option. You can use this mode as a workaround to avoid using the GPIO interrupts. However, it increases the power consumption.

Common Application Framework (CAF)

sdk-nrfxlib

See the changelog for each library in the nrfxlib documentation for additional information.

Scripts

This section provides detailed lists of changes by script.

  • Added the cert_tool.py script. This is a script to generate EC private keys, create CSRs, create root CA and subordinate CA certificates and sign CSRs.

  • HID configurator for nRF Desktop:

    • Separated functions that are specific to handling the dfu_application.zip file format. The ZIP format is used for update images in the nRF Connect SDK. The change simplifies integrating new update image file formats.

MCUboot

The MCUboot fork in nRF Connect SDK (sdk-mcuboot) contains all commits from the upstream MCUboot repository up to and including 11ecbf639d826c084973beed709a63d51d9b684e, with some nRF Connect SDK specific additions.

The code for integrating MCUboot into nRF Connect SDK is located in the ncs/nrf/modules/mcuboot folder.

The following list summarizes both the main changes inherited from upstream MCUboot and the main changes applied to the nRF Connect SDK specific additions:

  • Added:

    • The CONFIG_XIP_SPLIT_IMAGE Kconfig option that enables build system support for relocating part of the application to external memory using hardware QSPI XIP feature and MCUboot third image on nRF5340 SoC.

    • MCUboot procedure that performs clean up of content in all the secondary slots, which contain valid header but cannot be assigned to any of supported primary images. This behavior is desired when the configuration (CONFIG_MCUBOOT_CLEANUP_UNUSABLE_SECONDARY) allows to use one secondary slot for collecting image for multiple primary slots.

Zephyr

The Zephyr fork in nRF Connect SDK (sdk-zephyr) contains all commits from the upstream Zephyr repository up to and including 23cf38934c0f68861e403b22bc3dd0ce6efbfa39, with some nRF Connect SDK specific additions.

For the list of upstream Zephyr commits (not including cherry-picked commits) incorporated into nRF Connect SDK since the most recent release, run the following command from the ncs/zephyr repository (after running west update):

git log --oneline 23cf38934c ^a768a05e62

For the list of nRF Connect SDK specific commits, including commits cherry-picked from upstream, run:

git log --oneline manifest-rev ^23cf38934c

The current nRF Connect SDK main branch is based on revision 23cf38934c of Zephyr.

Note

For possible breaking changes and changes between the latest Zephyr release and the current Zephyr version, refer to the Zephyr release notes.

zcbor

zcbor has been updated from 0.7.0 to 0.8.1. For more information see the zcbor 0.8.0 release notes and the zcbor 0.8.1 release notes.

  • Added:

    • Support for unordered maps.

    • Performance improvements.

    • Naming improvements for generated code.

    • Bugfixes.

Trusted Firmware-M

  • Updated:

    • The minimal TF-M build profile no longer silences TF-M logs by default.

      Note

      This can be a breaking change if the UART instance used by TF-M is already in use, for example, by modem trace with a UART backend.

    • The TF-M version is updated to TF-M v2.0.0.

Mbed TLS

  • Updated the Mbed TLS version to v3.5.2.

Documentation