Migration notes for nRF Connect SDK v3.2.0
This document describes the changes required or recommended when migrating your application from nRF Connect SDK v3.1.0 to nRF Connect SDK v3.2.0.
Required changes
The following changes are mandatory to make your application work in the same way as in previous releases.
nRF54L
This section describes the changes specific to the nRF54L series SoCs and DKs support in the nRF Connect SDK.
nRF54L pin cross power-domain use
You must enable the Constant Latency sub-power mode from the application to allow cross power-domain pin mapping. For details, see the nRF54L pin mapping page.
nRF54H20
This section describes the changes specific to the nRF54H20 SoC and DK support in the nRF Connect SDK.
nRF54H20 IronSide SE binaries
The nRF54H20 IronSide SE binaries have been updated to version v23.1.1+20. Starting from the nRF Connect SDK v3.2.0, you should always upgrade your nRF54H20 IronSide SE binaries to the latest version.
For more information, see:
IronSide SE ABI compatibility for details about the SoC binaries.
Updating IronSide SE for instructions on updating the SoC binaries.
nRF54H20 power management
The Kconfig options
CONFIG_PM_S2RAMandCONFIG_PM_S2RAM_CUSTOM_MARKINGhave been reworked to be managed automatically based on the suspend-to-rampower-statesin the devicetree. Any occurrences ofCONFIG_PM_S2RAM=yandCONFIG_PM_S2RAM_CUSTOM_MARKING=ymust be removed.The default value of
CONFIG_PM_S2RAMhas changed fromntoy. If your application explicitly disables S2RAM or relies on S2RAM being disabled, remove any instance ofCONFIG_PM_S2RAM=nand instead disable thes2rampower state in the devicetree.To disable the
s2rampower state, see the following DTS example:&s2ram { status = "disabled"; };
For a correct configuration of power management on your custom nRF54H20-based device, you must define
pm_ramfuncalso for the radio core. For a configuration example, see the pm_ramfunc radio core configuration in thenrf54h20dk_nrf54h20_cpurad.dtsfile.
nRF54H20 entropy provider
PSA RNG is the new default Zephyr entropy provider for the nRF54H20 DK. It is recommended to use PSA RNG as your Zephyr entropy provider also on your custom nRF54H20-based device. For a configuration example, see the new PSA RNG configuration in DTS for both the application and radio cores of the nRF54H20 DK.
Samples and applications
This section describes the changes related to samples and applications.
nRF Desktop
The configuration of the
nrf54h20dk/nrf54h20/cpuappboard target has been updated in the nRF Desktop application to migrate from the SUIT solution to the IronSide SE solution. To migrate the configuration for your nRF Desktop based application, complete the following steps:Remove the Kconfig options related to the SUIT solution in your project configuration files (for example,
prj.conf).Configure the MCUboot bootloader in your sysbuild configuration file:
SB_CONFIG_BOOT_SIGNATURE_KEY_FILEto the path of the private key file which is used to sign the DFU package.SB_CONFIG_MCUBOOT_IMAGES_ROM_END_OFFSET_AUTOtoipc_radio;ipc_radio_secondary_app. In the case of a merged image slot, space for the MCUboot trailer is only reserved in the radio slots.
Note
The nRF Desktop configuration for the
nrf54h20dk/nrf54h20/cpuappboard target uses the MCUboot bootloader in the direct-xip mode. You can configure other MCUboot bootloader modes (for example, the swap mode) in the nRF Desktop application, but they are not used as part of the nRF Desktop configuration for thenrf54h20dk/nrf54h20/cpuappboard target and are not covered by this migration guide. The nRF Desktop application also configures the MCUboot bootloader to use the merged image slot that combines both application and radio core images. The merged image slot is the default configuration for the direct-xip mode. Other ways of partitioning the application and radio core images are not covered by this migration guide.Add the configuration files for the MCUboot bootloader image to your application configuration. See the
nrf/applications/nrf_desktop/configuration/nrf54h20dk_nrf54h20_cpuapp/images/mcubootdirectory for an example.Note the following Kconfig options that are specific to the nRF54H configuration of the MCUboot bootloader:
CONFIG_SOC_EARLY_RESET_HOOKtoy- This option is required to support the Suspend to RAM (S2RAM) functionality in the application. With this Kconfig option, the MCUboot bootloader can detect a wake-up from S2RAM and redirect the execution to the application’s resume routine.CONFIG_POWER_DOMAINton- This option is required to disable the power domain management in the bootloader and simplify its configuration.CONFIG_NRF_SECURITY,CONFIG_MULTITHREADINGandCONFIG_PSA_SSF_CRYPTO_CLIENTtoy- These options are required to support the hardware cryptography in the MCUboot bootloader and its dependencies.
Since the MCUboot bootloader in the direct-xip mode uses a merged image slot for the
nrf54h20dk/nrf54h20/cpuappboard target, define the custom memory layout in DTS (thepartitionsDTS node) and ensure that this DTS customization is propagated to every image that is built as part of the nRF Desktop application. See thenrf/applications/nrf_desktop/configuration/nrf54h20dk_nrf54h20_cpuapp/memory_map.dtsifile for an example of the memory layout file and thenrf/applications/nrf_desktop/configuration/nrf54h20dk_nrf54h20_cpuapp/images/mcuboot/app.overlayfile for an example integration of the custom memory layout into the MCUboot bootloader image. Apart from the MCUboot bootloader image, include the custom memory layout in the following images:The
nrf_desktopimage (the default application image)The
ipc_radioimageThe
uicrimage
To verify that the custom memory layout is propagated to all the images, use the
<build_dir>/<image_name>/zephyr/zephyr.dtsfile and validate it for each image.Note
The nRF Connect SDK v3.2.0 introduces a new image
uicrfor thenrf54h20dk/nrf54h20/cpuappboard target. Include the custom memory layout in theuicrimage as well to prevent runtime issues. See thenrf/applications/nrf_desktop/configuration/nrf54h20dk_nrf54h20_cpuapp/images/uicr/app.overlayfile for an example integration of the custom memory layout into theuicrimage.Assign the secondary image partition to the
secondary_app_partitionDTS label in the DTS configuration of your primary image:For the
nrf_desktop(primary) image and themcuboot_secondary_app(secondary) image, use the following DTS configuration:secondary_app_partition: &cpuapp_slot1_partition {};
For the
ipc_radio(primary) image and theipc_radio_secondary_app(secondary) image, use the following DTS configuration:secondary_app_partition: &cpurad_slot1_partition {};
Optionally, you can enable the following Kconfig options to improve the HID report rate over USB by suspending Bluetooth when USB is connected:
CONFIG_DESKTOP_BLE_ADV_CTRL_ENABLECONFIG_DESKTOP_BLE_ADV_CTRL_SUSPEND_ON_USB
Remove the usage of the following Kconfig options related to the S2RAM functionality:
CONFIG_PM_S2RAM_CUSTOM_MARKING
Note
The S2RAM functionality is now enabled by default for the
nrf54h20dk/nrf54h20/cpuappboard target when theCONFIG_PMKconfig option is enabled. The setting of theCONFIG_PM_S2RAMKconfig option is now controlled by the devicetree (DTS) description.Remove the
pwmledsDTS node from the application configuration to prevent theCONFIG_LED_PWMandCONFIG_CAF_LEDS_PWMKconfig options from being enabled for thenrf54h20dk/nrf54h20/cpuappboard target./ { /delete-node/ pwmleds; aliases { /delete-property/ pwm-led0; }; };
Note
The nRF Desktop configuration for the
nrf54h20dk/nrf54h20/cpuappboard target relies on GPIO LEDs - the PWM LEDs are not used.Disable Link Time Optimization (LTO) as a workaround for linker warnings about the type mismatch (
-Wlto-type-mismatch) that are caused by thedevice_deps.cfile (used by the Zephyr power domain driver):Replace the
interface-nameproperty with thelabelproperty in all DTS nodes that set thecompatibleproperty tozephyr,hid-device. See thenrf/applications/nrf_desktop/configuration/nrf54h20dk_nrf54h20_cpuapp/app.overlayfile for an example.
For more information regarding differences between SUIT and IronSide SE solutions, see the Migrating applications from nRF Connect SDK v3.0.0 (SUIT) to nRF Connect SDK v3.1.0 (IronSide SE) on the nRF54H20 SoC document.
Matter
For the Matter samples and applications:
All Matter over Wi-Fi samples and applications now store a portion of the application code related to the nRF70 Series Wi-Fi firmware in external flash memory by default.
There are two consequences of this change:
The partition map has been changed. You cannot perform DFU between the previous nRF Connect SDK versions and v3.2.0 unless you disable storing of the Wi-Fi firmware patch in external memory.
The application code size is reduced, but the programming process may take longer when performing the full erase, because the entire external flash memory is erased before programming the Wi-Fi firmware patch.
When using the
west flashcommand, the default behavior is to erase the entire external memory before programming the Wi-Fi firmware patch. To reduce programming time, you can add the--ext-erase-mode=rangesoption to erase only the necessary memory ranges:west flash --ext-erase-mode=rangesThe longer programming time also occurs when using the Erase and Flash to Board option in the nRF Connect for VS Code. To speed up the process in the nRF Connect for VS Code, use the Flash button instead of Erase and Flash to Board in the Actions View.
To disable storing the Wi-Fi firmware patch in external memory and revert to the previous approach, complete the following steps:
Remove the Wi-Fi firmware patch partition from the partition list.
Set the
SB_CONFIG_WIFI_PATCHES_EXT_FLASH_STOREKconfig option ton.Set the
SB_CONFIG_DFU_MULTI_IMAGE_PACKAGE_WIFI_FW_PATCHKconfig option ton.Set the
SB_CONFIG_MCUBOOT_UPDATEABLE_IMAGESKconfig option to2.
The Kconfig options
CONFIG_CHIP_SPI_NORandCONFIG_CHIP_QSPI_NORhave been removed. Instead, use the standard optionsCONFIG_SPI_NORandCONFIG_NORDIC_QSPI_NOR. The configuration system will now automatically enable these options when the corresponding SPI or QSPI device is specified in the devicetree. This change ensures more consistent configuration by relying on the standard Kconfig options when external NOR flash devices are present.
All Matter over Wi-Fi samples and applications now enable the
CONFIG_CHIP_WIFIandCONFIG_WIFI_NRF70Kconfig options, depending on the board used. Previously,CONFIG_CHIP_WIFIwas enabled in the Matter stack configuration if the nRF7002 DK or nRF7002 EK was used, which caused issues when building the application with custom boards.To build your custom board with Wi-Fi support, set both the
CONFIG_CHIP_WIFIandCONFIG_WIFI_NRF70Kconfig options toy.The Matter build system is transitioning to a code-driven approach for Data Model and Cluster configuration handling. This approach assumes gradual replacement of the configuration based on the ZAP files and the ZAP-generated code, and handling the configuration in the source code. This change has the following impacts:
The
zap-generateddirectory now includes theCodeDrivenCallback.handCodeDrivenInitShutdown.cppfiles. Invoking thewest zap-generatecommand removes command handler implementations from the existingIMClusterCommandHandler.cppfile. To fix this, you must now manually create theCodeDrivenCallback.handCodeDrivenInitShutdown.cppfiles, and implement theMatterClusterServerInitCallbackandMatterClusterServerShutdownCallbackcallbacks to handle server initialization, shutdown, and Matter cluster commands. Ensure that these callbacks contain your application’s command handling logic.The code-driven approach is not yet fully implemented for all available clusters, but the coverage will be increasing and it is used for the newly created clusters. The following clusters are already ported using the code-driven approach:
Access Control
Administrator Commissioning
Basic Information
Binding
Boolean State
Descriptor
Diagnostic Logs
Ethernet Network Diagnostics
Fixed Label
General Commissioning
General Diagnostics
Group Key Management
Groupcast
Identify
Localization Configuration
OTA Software Update Provider
Operational Credentials
Push AV Stream Transport
Software Diagnostics
Time Format Localization
User Label
Wi-Fi Network Diagnostics
For the full list of clusters and their migration status, see the Matter Clusters Code-Driven support file.
By default, all the mandatory attributes are enabled for the cluster. To enable an optional attribute or set an optional feature in the feature map, you must do that in the source code by calling dedicated methods. For example, to enable the Positioning feature and the
CountdownTimeoptional attribute for the Closure Control cluster, perform the following operations:
Implement a delegate class for the Closure Control cluster. See the
samples/matter/closure/src/closure_control_endpoint.hfile for an example.Enable the attribute and set the feature on cluster initialization. See the
ClosureControlEndpoint::Initfunction in thesamples/matter/closure/src/closure_control_endpoint.cppfile for an example.To enable an optional cluster, you must register it in the source code by calling a dedicated method. For example, to enable the Identify cluster, implement the following code:
#include <data-model-providers/codegen/CodegenDataModelProvider.h> #include <app/clusters/identify-server/IdentifyCluster.h> chip::app::RegisteredServerCluster<chip::app::Clusters::IdentifyCluster> mIdentifyCluster; chip::app::CodegenDataModelProvider::Instance().Registry().Register(mIdentifyCluster.Registration());To enable a cluster extension for the cluster that is already implemented using the code-driven approach, you must inherit from this cluster delegate class and implement the methods to handle the customized part. You also have to unregister the original cluster delegate and register the customized one. For example, to enable a cluster extension for the Basic Information cluster, perform the following operations:
Inherit from the
BasicInformationClusterclass and override the methods to handle the customized part. See thesamples/matter/manufacturer_specific/src/basic_information_extension.hfile for an example.Implement the body of overridden methods to handle the custom attributes, commands, and events. See the
samples/matter/manufacturer_specific/src/basic_information_extension.cppfile for an example.Unregister the original cluster delegate and register the customized one. See the
AppTask::StartAppfunction in thesamples/matter/manufacturer_specific/src/app_task.cppfile for an example.Matter: Door lock sample:
The
CONFIG_BT_FIXED_PASSKEYKconfig option has been deprecated, replace it with theCONFIG_BT_APP_PASSKEYKconfig option. Now, if you want to use a fixed passkey for the Matter Lock NUS service, register thebt_conn_auth_cb.app_passkeycallback in thebt_conn_auth_cbstructure.For example:
static uint32_t AuthAppPasskey(struct bt_conn *conn) { return 123456; } static struct bt_conn_auth_cb sConnAuthCallbacks = { .app_passkey = AuthAppPasskey, };
Serial LTE modem
The Serial LTE modem application has been removed. Instead, use Serial Modem, an nRF Connect SDK add-on application.
Libraries
This section describes the changes related to libraries.
LTE link control library:
The type of the
lte_lc_evt.modem_evtfield has been changed tolte_lc_modem_evt. The modem event type can be determined from thelte_lc_modem_evt.typefield. Applications using modem events need to be updated to read the event type frommodem_evt.typeinstead ofmodem_evt.Modem events
LTE_LC_MODEM_EVT_CE_LEVEL_0,LTE_LC_MODEM_EVT_CE_LEVEL_1,LTE_LC_MODEM_EVT_CE_LEVEL_2andLTE_LC_MODEM_EVT_CE_LEVEL_3have been replaced by eventLTE_LC_MODEM_EVT_CE_LEVEL. The CE level can be read fromlte_lc_modem_evt.ce_level.Changed the order of the
LTE_LC_MODEM_EVT_SEARCH_DONEmodem event, and registration and cell related events. When the modem has completed the network selection, the registration and cell related events (LTE_LC_EVT_NW_REG_STATUS,LTE_LC_EVT_CELL_UPDATE,LTE_LC_EVT_LTE_MODE_UPDATEandLTE_LC_EVT_PSM_UPDATE) are sent first, followed by theLTE_LC_MODEM_EVT_SEARCH_DONEmodem event. If the application depends on the order of the events, it may need to be updated.
nRF Security library:
The
CONFIG_CRACEN_PROVISION_PROT_RAM_INV_DATAKconfig option has been renamed toCONFIG_CRACEN_PROVISION_PROT_RAM_INV_SLOTS_ON_INIT.
Trusted Firmware-M
Trusted Firmware-M changed how data is stored and read in the Protected Storage partition. As a consequence, the applications that build with TF-M (
*/nsboard targets) and want to perform a firmware upgrade to this nRF Connect SDK release will not be able to read the existing Protected Storage data with the default configuration. To enable reading the Protected Storage data from a previous release, make sure that the application enables theCONFIG_TFM_PS_SUPPORT_FORMAT_TRANSITIONKconfig option.
Recommended changes
The following changes are recommended for your application to work optimally after the migration.
Samples and applications
This section describes the changes related to samples and applications.
MCUboot
The default C library for MCUboot has changed to picolibc. Picolibc is recommended over the minimal C library as it is a fully developed and supported C library designed for application usage. If you have not explicitly specified the C library in your sysbuild project for MCUboot using either a
sysbuild/mcuboot/prj.conffile orsysbuild/mcuboot.conffile, picolibc will be used by default. To set picolibc in your project, use theCONFIG_PICOLIBCKconfig option. If you need to use the minimal C library (which is not recommended outside of testing scenarios), use theCONFIG_MINIMAL_LIBCKconfig option.MCUboot image IDs are no longer taken from sysbuild Kconfig options and are instead automatically assigned. See Sysbuild-assigned image IDs for details on how to get the values from the sysbuild cache as these are no longer available in the sysbuild Kconfig tree. Application Kconfig values for image IDs remain present and their functionality is the same as in nRF Connect SDK v3.1.0.
Libraries
This section describes the changes related to libraries.
PDN library
The PDN library has been deprecated in favor of the PDN management functionality provided by the LTE link control library and will be removed in a future nRF Connect SDK release.
To migrate your application to use LTE link control PDN management instead of the PDN library, complete the following steps:
Kconfig options:
Replace:
The
CONFIG_PDNKconfig option with theCONFIG_LTE_LC_PDN_MODULEKconfig option, which is available when theCONFIG_LTE_LINK_CONTROLKconfig option is enabled.The
CONFIG_PDN_DEFAULTS_OVERRIDEand related PDN Kconfig options with the corresponding LTE link control PDN defaults options:
Remove:
The
CONFIG_HEAP_MEM_POOL_ADD_SIZE_PDNKconfig option. Instead, use theCONFIG_HEAP_MEM_POOL_ADD_SIZE_LTE_LINK_CONTROLKconfig option.
Replace header files:
Remove:
#include <modem/pdn.h>
Add:
#include <modem/lte_lc.h>
Replace PDN API calls:
Replace the PDP context management APIs:
Replace the PDN connection control APIs:
Replace the PDN information APIs:
pdn_default_apn_get()withlte_lc_pdn_default_ctx_apn_get()
Replace the ESM error string helper:
pdn_esm_strerror()withlte_lc_pdn_esm_strerror()
Replace the default-context callback registration:
pdn_default_ctx_cb_reg()andpdn_default_ctx_cb_dereg()withlte_lc_register_handler()in combination withlte_lc_pdn_default_ctx_events_enable()andlte_lc_pdn_default_ctx_events_disable(). The PDN events are handled using thelte_lc_evt.pdnmember as documented in the PDN management page.
Integrations
This section provides detailed lists of changes by integration.
Memfault integration
The options have changed for the
CONFIG_MEMFAULT_NCS_DEVICE_ID_*choice, which sets the Memfault Device Serial:CONFIG_MEMFAULT_NCS_DEVICE_ID_HW_ID(new, and default) - Usehw_idprovided device ID, which is also what nRF Cloud uses for device identity. See the Hardware ID library for options for device ID source.CONFIG_MEMFAULT_NCS_DEVICE_ID_STATIC- Used to set a custom build-time defined static device ID, primarily useful for testing.CONFIG_MEMFAULT_NCS_DEVICE_ID_RUNTIME- Use a runtime-applied device ID, commonly used when the serial number of the device is written into settings at manufacturing time, for example.CONFIG_MEMFAULT_NCS_DEVICE_ID_IMEI(deprecated) - Use the LTE modem IMEI as the device ID.CONFIG_MEMFAULT_NCS_DEVICE_ID_NET_MAC(deprecated) - Use the network interface MAC address as the device ID.
Drivers
This section provides detailed lists of changes by drivers.
nrfx
nrfx version has been updated to 4.0. For nrfx changes see nrfx 4.0 migration note.
Additionally, to migrate a Zephyr build system application that uses nrfx API directly, complete the following steps:
Kconfig options:
Replace:
Use
CONFIG_NRFX_GPPIinstead of the following:CONFIG_NRFX_DPPICONFIG_NRFX_DPPI0CONFIG_NRFX_DPPI00CONFIG_NRFX_DPPI10CONFIG_NRFX_DPPI20CONFIG_NRFX_DPPI30CONFIG_NRFX_DPPI020CONFIG_NRFX_DPPI120CONFIG_NRFX_DPPI130CONFIG_NRFX_DPPI131CONFIG_NRFX_DPPI132CONFIG_NRFX_DPPI133CONFIG_NRFX_DPPI134CONFIG_NRFX_DPPI135CONFIG_NRFX_DPPI136CONFIG_NRFX_PPI
Use
CONFIG_NRFX_I2Sinstead of the following:CONFIG_NRFX_I2S0CONFIG_NRFX_I2S20
Use
CONFIG_NRFX_PDMinstead of the following:CONFIG_NRFX_PDM0CONFIG_NRFX_PDM20CONFIG_NRFX_PDM21
Use
CONFIG_NRFX_PWMinstead of the following:CONFIG_NRFX_PWM0CONFIG_NRFX_PWM1CONFIG_NRFX_PWM2CONFIG_NRFX_PWM3CONFIG_NRFX_PWM20CONFIG_NRFX_PWM21CONFIG_NRFX_PWM22CONFIG_NRFX_PWM120CONFIG_NRFX_PWM130CONFIG_NRFX_PWM131CONFIG_NRFX_PWM132CONFIG_NRFX_PWM133
Use
CONFIG_NRFX_QDECinstead of the following:CONFIG_NRFX_QDEC0CONFIG_NRFX_QDEC1CONFIG_NRFX_QDEC20CONFIG_NRFX_QDEC21CONFIG_NRFX_QDEC130CONFIG_NRFX_QDEC131
Use
CONFIG_NRFX_SPIMinstead of the following:CONFIG_NRFX_SPIM0CONFIG_NRFX_SPIM1CONFIG_NRFX_SPIM2CONFIG_NRFX_SPIM3CONFIG_NRFX_SPIM4CONFIG_NRFX_SPIM00CONFIG_NRFX_SPIM01CONFIG_NRFX_SPIM20CONFIG_NRFX_SPIM21CONFIG_NRFX_SPIM22CONFIG_NRFX_SPIM23CONFIG_NRFX_SPIM24CONFIG_NRFX_SPIM30CONFIG_NRFX_SPIM120CONFIG_NRFX_SPIM121CONFIG_NRFX_SPIM130CONFIG_NRFX_SPIM131CONFIG_NRFX_SPIM132CONFIG_NRFX_SPIM133CONFIG_NRFX_SPIM134CONFIG_NRFX_SPIM135CONFIG_NRFX_SPIM136CONFIG_NRFX_SPIM137
Use
CONFIG_NRFX_SPISinstead of the following:CONFIG_NRFX_SPIS0CONFIG_NRFX_SPIS1CONFIG_NRFX_SPIS2CONFIG_NRFX_SPIS3CONFIG_NRFX_SPIS00CONFIG_NRFX_SPIS01CONFIG_NRFX_SPIS20CONFIG_NRFX_SPIS21CONFIG_NRFX_SPIS22CONFIG_NRFX_SPIS23CONFIG_NRFX_SPIS24CONFIG_NRFX_SPIS30CONFIG_NRFX_SPIS120CONFIG_NRFX_SPIS130CONFIG_NRFX_SPIS131CONFIG_NRFX_SPIS132CONFIG_NRFX_SPIS133CONFIG_NRFX_SPIS134CONFIG_NRFX_SPIS135CONFIG_NRFX_SPIS136CONFIG_NRFX_SPIS137
Use
CONFIG_NRFX_TIMERinstead of the following:CONFIG_NRFX_TIMER0CONFIG_NRFX_TIMER1CONFIG_NRFX_TIMER2CONFIG_NRFX_TIMER3CONFIG_NRFX_TIMER4CONFIG_NRFX_TIMER00CONFIG_NRFX_TIMER10CONFIG_NRFX_TIMER20CONFIG_NRFX_TIMER21CONFIG_NRFX_TIMER22CONFIG_NRFX_TIMER23CONFIG_NRFX_TIMER24CONFIG_NRFX_TIMER020CONFIG_NRFX_TIMER021CONFIG_NRFX_TIMER022CONFIG_NRFX_TIMER120CONFIG_NRFX_TIMER121CONFIG_NRFX_TIMER130CONFIG_NRFX_TIMER131CONFIG_NRFX_TIMER132CONFIG_NRFX_TIMER133CONFIG_NRFX_TIMER134CONFIG_NRFX_TIMER135CONFIG_NRFX_TIMER136CONFIG_NRFX_TIMER137
Use
CONFIG_NRFX_TWIMinstead of the following:CONFIG_NRFX_TWIM0CONFIG_NRFX_TWIM1CONFIG_NRFX_TWIM2CONFIG_NRFX_TWIM3CONFIG_NRFX_TWIM20CONFIG_NRFX_TWIM21CONFIG_NRFX_TWIM22CONFIG_NRFX_TWIM23CONFIG_NRFX_TWIM24CONFIG_NRFX_TWIM30CONFIG_NRFX_TWIM120CONFIG_NRFX_TWIM130CONFIG_NRFX_TWIM131CONFIG_NRFX_TWIM132CONFIG_NRFX_TWIM133CONFIG_NRFX_TWIM134CONFIG_NRFX_TWIM135CONFIG_NRFX_TWIM136CONFIG_NRFX_TWIM137
Use
CONFIG_NRFX_TWISinstead of the following:CONFIG_NRFX_TWIS0CONFIG_NRFX_TWIS1CONFIG_NRFX_TWIS2CONFIG_NRFX_TWIS3CONFIG_NRFX_TWIS20CONFIG_NRFX_TWIS21CONFIG_NRFX_TWIS22CONFIG_NRFX_TWIS23CONFIG_NRFX_TWIS24CONFIG_NRFX_TWIS30CONFIG_NRFX_TWIS120CONFIG_NRFX_TWIS130CONFIG_NRFX_TWIS131CONFIG_NRFX_TWIS132CONFIG_NRFX_TWIS133CONFIG_NRFX_TWIS134CONFIG_NRFX_TWIS135CONFIG_NRFX_TWIS136CONFIG_NRFX_TWIS137
Use
CONFIG_NRFX_UARTEinstead of the following:CONFIG_NRFX_UARTE0CONFIG_NRFX_UARTE1CONFIG_NRFX_UARTE2CONFIG_NRFX_UARTE3CONFIG_NRFX_UARTE00CONFIG_NRFX_UARTE20CONFIG_NRFX_UARTE21CONFIG_NRFX_UARTE22CONFIG_NRFX_UARTE23CONFIG_NRFX_UARTE24CONFIG_NRFX_UARTE30CONFIG_NRFX_UARTE120CONFIG_NRFX_UARTE130CONFIG_NRFX_UARTE131CONFIG_NRFX_UARTE132CONFIG_NRFX_UARTE133CONFIG_NRFX_UARTE134CONFIG_NRFX_UARTE135CONFIG_NRFX_UARTE136CONFIG_NRFX_UARTE137
Use
CONFIG_NRFX_WDTinstead of the following:CONFIG_NRFX_WDT0CONFIG_NRFX_WDT1CONFIG_NRFX_WDT30CONFIG_NRFX_WDT31CONFIG_NRFX_WDT010CONFIG_NRFX_WDT011CONFIG_NRFX_WDT130CONFIG_NRFX_WDT131CONFIG_NRFX_WDT132
Remove:
CONFIG_NRFX_PPIBCONFIG_NRFX_PPIB00CONFIG_NRFX_PPIB01CONFIG_NRFX_PPIB10CONFIG_NRFX_PPIB11CONFIG_NRFX_PPIB20CONFIG_NRFX_PPIB21CONFIG_NRFX_PPIB22CONFIG_NRFX_PPIB30