Changelog for nRF Connect SDK v2.2.99-dev3

The most relevant changes that are present on the main branch of the nRF Connect SDK, as compared to the latest official release, are tracked in this file.

Note

This file is a work in progress and might not cover all relevant changes.

Known issues

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

Changelog

The following sections provide detailed lists of changes by component.

Application development

No changes since the latest nRF Connect SDK release.

RF Front-End Modules

No changes since the latest nRF Connect SDK release.

Build system

  • Removed:

    • Manifest file entry mbedtls-nrf (ZEPHYR_MBEDTLS_NRF_MODULE_DIR) checked out at path mbedtls.

    • Manifest file entry tfm-mcuboot (ZEPHYR_TFM_MCUBOOT_MODULE_DIR) checked out at path modules/tee/tfm-mcuboot.

  • Updated:

    • Manifest file entry mbedtls (ZEPHYR_MBEDTLS_MODULE_DIR) checked out at path modules/crypto/mbedtls now points to nRF Connect SDK’s fork of MbedTLS instead of Zephyr’s fork.

Protocols

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

Bluetooth LE

No changes since the latest nRF Connect SDK release.

Bluetooth mesh

No changes since the latest nRF Connect SDK release.

Matter

  • Added:

    • Support for Wi-Fi Network Diagnostic Cluster (which counts the number of packets received and transmitted on the Wi-Fi interface).

    • Default support for nRF7002 revision B.

    • Specific QR code and onboarding information in the documentation for each Matter sample and the Matter weather station.

    • The Bluetooth LE advertising arbiter class that enables easier coexistence of application components that want to advertise their Bluetooth LE services.

    • Support for erasing settings partition during DFU over Bluetooth LE SMP for the Nordic nRF52 Series’ SoCs.

    • Enabled Wi-Fi and Bluetooth LE coexistence.

  • Updated:

    • The default heap implementation to use Zephyr’s sys_heap (CONFIG_CHIP_MALLOC_SYS_HEAP) to better control the RAM usage of Matter applications.

    • Matter certification page with a section about certification document templates.

    • Matter network commissioning page with information about Onboarding information formats.

    • Default retry intervals used by Matter Reliability Protocol for Matter over Thread to account for longer round-trip times in Thread networks with multiple intermediate nodes.

    • The Bluetooth LE connection timeout parameters and the update timeout parameters to make communication over Bluetooth LE more reliable.

  • Fixed the issue of connection timing out when attaching to a Wi-Fi access point that requires Wi-Fi Protected Access 3 (WPA3).

See Matter samples for the list of changes for the Matter samples.

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 1.0.0.2 tag.

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

  • Added:

    • The initial implementation of Matter’s cryptographic operations based on PSA crypto API.

    • Build-time generation of some Zigbee Cluster Library (ZCL) source files using the codegen.py Python script.

    • An alternative factory reset implementation that erases the entire non-volatile storage flash partition.

  • Updated:

    • Basic cluster has been renamed to Basic Information cluster to match the specification.

Thread

No changes since the latest nRF Connect SDK release.

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

Zigbee

No changes since the latest nRF Connect SDK release.

See Zigbee samples for the list of changes for the Zigbee samples.

Enhanced ShockBurst (ESB)

  • Added support for front-end modules. The ESB module requires linking the MPSL library.

  • Updated:

    • Number of PPI/DPPI channels used from three to six.

    • Events 6 and 7 from the EGU0 instance by assigning them to the ESB module.

    • The type parameter of the function esb_set_tx_power() to int8_t.

nRF IEEE 802.15.4 radio driver

No changes since the latest nRF Connect SDK release.

Wi-Fi

Applications

This section provides detailed lists of changes by application.

nRF9160: Asset Tracker v2

  • Added:

    • Wi-Fi support for nRF9160 DK + nRF7002 EK configuration.

  • Updated:

    • Replaced deprecated LwM2M API calls with calls to new functions.

nRF9160: Serial LTE modem

  • Added:

    • RFC1350 TFTP client, currently supporting only READ REQUEST.

    • AT command #XSHUTDOWN to put nRF9160 SiP to System Off mode.

    • Support of nRF Cloud C2D appId MODEM and DEVICE.

  • Updated:

    • The response for the #XDFUGET command, using unsolicited notification to report download progress.

nRF5340 Audio

  • Added:

    • Support for Front End Module nRF21540.

    • Possibility to create a Public Broadcast Announcement (PBA) needed for Auracast.

    • Encryption for BISes.

  • Updated:

nRF Machine Learning (Edge Impulse)

  • Removed the usage of ml_runner_signin_event from the application.

nRF Desktop

  • Added:

    • An application log indicating that the value of a configuration option has been updated in the Motion module.

    • Application-specific Kconfig options CONFIG_DESKTOP_LOG and CONFIG_DESKTOP_SHELL to simplify the debug configurations for the Logging and Shell subsystems. See the debug configuration section of the nRF Desktop application for more details.

  • Updated:

    • Implemented the following adjustments to avoid flooding logs:

      • Set the max compiled-in log level to warning for the Non-Volatile Storage (CONFIG_NVS_LOG_LEVEL).

      • Lowered a log level to debug for the Identity x created log in the Bluetooth LE bond module.

    • Removed separate configurations enabling Shell (prj_shell.conf). Shell support can be enabled for a given configuration with the single Kconfig option (CONFIG_DESKTOP_SHELL).

    • By default, nRF Desktop dongles use the Bluetooth appearance (CONFIG_BT_DEVICE_APPEARANCE) of keyboard. The new default configuration value improves consistency with the used HID boot interface.

Samples

Bluetooth samples

Bluetooth mesh samples

nRF9160 samples

  • nRF9160: Modem Shell sample:

    • Added:

      • External location service handling to test Location library functionality commonly used by applications. The nRF Cloud library is used with MQTT for location requests to the cloud.

      • New command th pipeline for executing several MoSh commands sequentially in one thread.

      • New command sleep for introducing wait periods in between commands when using th pipeline.

    • Updated:

      • Timeout command-line arguments for the location get command changed from integers in milliseconds to floating-point values in seconds.

      • Replaced deprecated LwM2M API calls with calls to new functions.

  • nRF9160: nRF Cloud REST cellular location sample:

    • Added the usage of GCI search option if running modem firmware v1.3.4.

    • Updated the sample, so that it waits for RRC idle mode before requesting neighbor cell measurements.

  • nRF9160: LwM2M Client sample:

    • Added:

      • Support for nRF7002 EK shield and Wi-Fi based location.

      • Location events and event handlers.

    • Updated:

      • The sensor module has been simplified. It does not use application events, filtering, or configurable periods anymore.

      • Replaced deprecated LwM2M API calls with calls to new functions.

  • nRF9160: HTTP application update sample:

  • Removed:

    • Multicell location sample because of the deprecation of the Multicell location library. Relevant functionality is available through the Location library.

  • nRF9160: nRF Cloud MQTT multi-service sample:

    • Added:

      • MCUboot child image files to properly access external flash on newer nRF9160DK versions.

      • An overlay_mcuboot_ext_flash.conf file to enable MCUboot use of external flash.

Peripheral samples

  • Radio test (short-range) sample:

    • Added support for the nRF7002 board.

    • Fixed sample building with support for the Skyworks front-end module.

    • Updated the documentation to clarify that this sample is dedicated for the short-range radio (Bluetooth LE, IEEE 802.15.4, and proprietary modes).

Trusted Firmware-M (TF-M) samples

No changes since the latest nRF Connect SDK release.

Thread samples

  • Added:

    • overlay-low_power.conf and low_power.overlay to the CLI sample to facilitate power consumption measurements.

  • Updated:

    • Overlay structure:

      • overlay-rtt.conf removed from all samples.

      • overlay-log.conf now uses RTT backend by default.

      • Logs removed from default configuration (moved to overlay-logging.conf).

      • Asserts removed from default configuration (moved to overlay-debug.conf).

Matter samples

NFC samples

  • Fixed an issue where NFC samples that use the NFC Reader feature returned false error code with value 1 during the NFC T4T operation.

No changes since the latest nRF Connect SDK release.

nRF5340 samples

No changes since the latest nRF Connect SDK release.

Gazell samples

No changes since the latest nRF Connect SDK release.

Zigbee samples

No changes since the latest nRF Connect SDK release.

Wi-Fi samples

Other samples

Drivers

This section provides detailed lists of changes by driver.

Libraries

This section provides detailed lists of changes by library.

Binary libraries

No changes since the latest nRF Connect SDK release.

Bluetooth libraries and services

Bootloader libraries

No changes since the latest nRF Connect SDK release.

Modem libraries

  • Location library:

    • Added:

      • Support for the application to send the Wi-Fi access point list to the cloud.

      • CONFIG_LOCATION_SERVICE_EXTERNAL Kconfig option that replaces the following configurations:

        • CONFIG_LOCATION_METHOD_GNSS_AGPS_EXTERNAL

        • CONFIG_LOCATION_METHOD_GNSS_PGPS_EXTERNAL

        • CONFIG_LOCATION_METHOD_CELLULAR_EXTERNAL

        The new configuration also handles Wi-Fi positioning.

      • Introduced several new Kconfig options for default location request configurations, including default method priority configuration. These new Kconfig options are applied when location_config_defaults_set() function is called.

    • Updated:

    • Fixed an issue causing the A-GPS data download to be delayed until the RRC connection release.

Libraries for networking

  • Added MQTT helper library that simplifies Zephyr MQTT API and socket handling.

  • Azure IoT Hub library:

    • Pulled out the azure_iot_hub_mqtt.c file that is now implemented by a new library MQTT helper.

  • Multicell location library:

    • This library is now deprecated and relevant functionality is available through the Location library.

  • FOTA download library:

    • Fixed:

      • An issue where the download_client_callback() function was continuing to read the offset value even if dfu_target_offset_get() returned an error.

      • An issue where the cleanup of the downloading state was not happening when an error event was raised.

  • nRF Cloud library:

    • Updated:

      • The MQTT disconnect event is now handled by the FOTA module, allowing for updates to be completed while disconnected and reported properly when reconnected.

      • GCI search results are now encoded in location requests.

      • The neighbor cell’s time difference value is now encoded in location requests.

    • Fixed:

      • An issue where the same buffer was incorrectly shared between caching a P-GPS prediction and loading a new one, when external flash was used.

      • An issue where external flash only worked if the P-GPS partition was located at address 0.

  • LwM2M location assistance library:

    • Added:

      • Support for Wi-Fi based location through LwM2M.

      • API for scanning Wi-Fi access points.

    • Removed location events and event handlers.

Libraries for NFC

  • Added:

    • The possibility of moving an NFC callback to a thread context.

    • Support for zero-latency interrupts for NFC.

  • Updated by aligning the ncs/nrf/subsys/nfc/lib/platform.c file with new library implementation.

  • Parser for Connection Handover records library:

    • Fixed a bug where the AC Record Parser was not functional and returned invalid results.

Other libraries

  • Continuous array library:

    • Updated by separating the library from the nRF5340 Audio application and moving it to lib/contin_array. Updated code and documentation accordingly.

  • PCM Stream Channel Modifier library:

    • Updated by separating the library from the nRF5340 Audio application and moving it to lib/pcm_stream_channel_modifier. Updated code and documentation accordingly.

  • Data FIFO library:

    • Updated by separating the library from the nRF5340 Audio application and moving it to lib/data_fifo. Updated code and documentation accordingly.

  • Quality of Service library:

    • Updated by removing the QOS_MESSAGE_TYPES_REGISTER macro.

  • Secure Partition Manager (SPM):

    • Removed Secure Partition Manager (SPM) and the Kconfig option CONFIG_SPM. It is replaced by the Trusted Firmware-M (TF-M) as the supported trusted execution solution. See Trusted Firmware-M (TF-M) for more information about the TF-M.

  • Pulse Code Modulation audio mixer library:

    • New library. This was previously a component of the nRF5340 Audio application, now moved to lib/pcm_mix.

Common Application Framework (CAF)

  • CAF events:

    • Added:

      • A macro intended to set the size of events member enums to 32 bits when the Event Manager Proxy is enabled. Applied macro to all affected CAF events.

    • Updated:

      • Inter-core compatibility has been improved.

  • CAF: Sensor data aggregator module:

  • CAF: Sensor manager module:

    • Updated by cleaning up sensor_event.h and sensor_manager.h files. Moved unrelated declarations to a separate caf_sensor_common.h file.

Shell libraries

No changes since the latest nRF Connect SDK release.

Libraries for Zigbee

No changes since the latest nRF Connect SDK release.

sdk-nrfxlib

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

DFU libraries

No changes since the latest nRF Connect SDK release.

Scripts

This section provides detailed lists of changes by script.

MCUboot

The MCUboot fork in nRF Connect SDK (sdk-mcuboot) contains all commits from the upstream MCUboot repository up to and including cfec947e0f8be686d02c73104a3b1ad0b5dcf1e6, 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 an option to prevent inclusion of default nRF5340 network core DFU image hook, which allows a custom implementation by users if the CONFIG_BOOT_IMAGE_ACCESS_HOOK_NRF5340 Kconfig option is disabled (enabled by default). CMake can be used to add additional hook files. See modules/mcuboot/hooks/CMakeLists.txt for an example of how to achieve this.

Zephyr

The Zephyr fork in nRF Connect SDK (sdk-zephyr) contains all commits from the upstream Zephyr repository up to and including e1e06d05fa8d1b6ac1b0dffb1712e94e308861f8, 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 cd16a8388f ^71ef669ea4

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

git log --oneline manifest-rev ^cd16a8388f

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

Additions specific to nRF Connect SDK

No changes since the latest nRF Connect SDK release.

zcbor

No changes since the latest nRF Connect SDK release.

Trusted Firmware-M

No changes since the latest nRF Connect SDK release.

cJSON

No changes since the latest nRF Connect SDK release.

Documentation