DECT NR+ USB Dongle
Overview
The Norik DECT NR+ USB Dongle is a compact development platform built around the Nordic Semiconductor nRF9151 System-in-Package (SiP). It is intended for evaluating and prototyping DECT NR+ (also known as DECT-2020 New Radio) applications, and can operate either as a child node or as a gateway.
The dongle plugs directly into a USB-A port and requires no external programmer or cables: an onboard Raspberry Pi RP2040 acts as a CMSIS-DAP debug probe and a USB-to-serial bridge for the nRF9151.
More information about the board can be found on the DECT NR+ USB Dongle Product Page [1] and in the DECT NR+ USB Dongle Datasheet [2].
Hardware
Nordic Semiconductor nRF9151 SiP
Arm Cortex-M33 running at up to 64 MHz
1 MB flash and 256 KB RAM
Arm TrustZone and Arm CryptoCell security
DECT NR+ radio with support for bands 1, 2, 9 and 22
Onboard omnidirectional chip antenna
Raspberry Pi RP2040 interface MCU providing:
CMSIS-DAP debug access to the nRF9151 over SWD
USB-to-serial bridge to the nRF9151 UART
USB Device Firmware Upgrade (DFU) of the interface MCU
USB-A connector for power, programming and communication
One user LED
USB powered, operating supply voltage 4.75 V to 5.25 V
Operating temperature range -40 to +85 degrees Celsius
Board dimensions: 53.35 mm x 21.59 mm
Supported Features
The dect_nr_plus_usb_dongle board supports the hardware features listed below.
- on-chip / on-board
- Feature integrated in the SoC / present on the board.
- 2 / 2
-
Number of instances that are enabled / disabled.
Click on the label to see the first instance of this feature in the board/SoC DTS files. -
vnd,foo -
Compatible string for the Devicetree binding matching the feature.
Click on the link to view the binding documentation.
dect_nr_plus_usb_dongle/nrf9151 target
On-target memory for this board target: 88 KiB of RAM, 1 MiB of Flash.
Type |
Location |
Description |
Compatible |
|---|---|---|---|
CPU |
on-chip |
ARM Cortex-M33F CPU1 |
|
ADC |
on-chip |
Nordic Semiconductor nRF family SAADC node1 |
|
ARM architecture |
on-chip |
Nordic EGU (Event Generator Unit)6 |
|
on-chip |
Nordic KMU (Key Management Unit)1 |
||
on-chip |
Nordic nRF family CTRL-AP (Control Access Port)1 |
||
on-chip |
Nordic SPU (System Protection Unit)1 |
||
on-chip |
Nordic UICR (User Information Configuration Registers)1 |
||
Audio |
on-chip |
Nordic PDM (Pulse Density Modulation interface)1 |
|
Clock control |
on-chip |
Nordic nRF clock control node1 |
|
on-chip |
Nordic nRF HFCLK clock control node1 |
||
on-chip |
Nordic nRF LFCLK clock control node1 |
||
Counter |
on-chip |
Nordic nRF timer node3 |
|
Cryptographic accelerator |
on-chip |
ARM TrustZone CryptoCell 3101 |
|
Flash controller |
on-chip |
Nordic NVMC (Non-Volatile Memory Controller)1 |
|
GPIO & Headers |
on-chip |
NRF5 GPIO1 |
|
on-chip |
|||
I2C |
on-chip |
Nordic nRF family TWIM (TWI master with EasyDMA)4 |
|
I2S |
on-chip |
Nordic I2S (Inter-IC sound interface)1 |
|
Interrupt controller |
on-chip |
ARMv8-M NVIC (Nested Vectored Interrupt Controller)1 |
|
IPC |
on-chip |
Nordic nRF family IPC (Interprocessor Communication)1 |
|
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
Miscellaneous |
on-chip |
Nordic DPPIC (Distributed Programmable Peripheral Interconnect Controller)1 |
|
on-chip |
Nordic FICR (Factory Information Configuration Registers)1 |
||
MMU / MPU |
on-chip |
ARMv8-M MPU (Memory Protection Unit)1 |
|
MTD |
on-chip |
Flash node1 |
|
on-chip |
Tags secure flash partitions in an ARM TrustZone-M layout on Nordic SoCs1 |
||
on-chip |
Tags non-secure flash partitions in an ARM TrustZone-M layout on Nordic SoCs1 |
||
Pin control |
on-chip |
Nordic nRF family Pin Controller1 |
|
Power management |
on-chip |
Nordic VMC (Volatile Memory Controller)1 |
|
on-chip |
Nordic nRF power control node1 |
||
PWM |
on-chip |
nRF PWM4 |
|
on-chip |
nRFx S/W PWM1 |
||
Regulator |
on-chip |
Nordic REGULATORS (voltage regulators control module) on nRF91X1 |
|
Retained memory |
on-chip |
Nordic GPREGRET (General Purpose Register Retention) device2 |
|
RTC |
on-chip |
Nordic nRF RTC (Real-Time Counter)2 |
|
Serial controller |
on-chip |
||
SPI |
on-chip |
Nordic nRF family SPIM (SPI master with EasyDMA)4 |
|
SRAM |
on-chip |
Generic on-chip SRAM1 |
|
Timer |
on-chip |
ARMv8-M System Tick1 |
|
Watchdog |
on-chip |
Nordic nRF family WDT (Watchdog Timer)1 |
dect_nr_plus_usb_dongle/nrf9151/ns target
On-target memory for this board target: 128 KiB of RAM, 1 MiB of Flash.
Type |
Location |
Description |
Compatible |
|---|---|---|---|
CPU |
on-chip |
ARM Cortex-M33F CPU1 |
|
ADC |
on-chip |
Nordic Semiconductor nRF family SAADC node1 |
|
ARM architecture |
on-chip |
Nordic EGU (Event Generator Unit)6 |
|
on-chip |
Nordic KMU (Key Management Unit)1 |
||
Audio |
on-chip |
Nordic PDM (Pulse Density Modulation interface)1 |
|
Clock control |
on-chip |
Nordic nRF clock control node1 |
|
on-chip |
Nordic nRF HFCLK clock control node1 |
||
on-chip |
Nordic nRF LFCLK clock control node1 |
||
Counter |
on-chip |
Nordic nRF timer node3 |
|
Flash controller |
on-chip |
Nordic NVMC (Non-Volatile Memory Controller)1 |
|
GPIO & Headers |
on-chip |
NRF5 GPIO1 |
|
on-chip |
NRF5 GPIOTE1 |
||
I2C |
on-chip |
Nordic nRF family TWIM (TWI master with EasyDMA)4 |
|
I2S |
on-chip |
Nordic I2S (Inter-IC sound interface)1 |
|
Interrupt controller |
on-chip |
ARMv8-M NVIC (Nested Vectored Interrupt Controller)1 |
|
IPC |
on-chip |
Nordic nRF family IPC (Interprocessor Communication)1 |
|
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
Miscellaneous |
on-chip |
Nordic DPPIC (Distributed Programmable Peripheral Interconnect Controller)1 |
|
MMU / MPU |
on-chip |
ARMv8-M MPU (Memory Protection Unit)1 |
|
MTD |
on-chip |
Flash node1 |
|
on-chip |
Tags secure flash partitions in an ARM TrustZone-M layout on Nordic SoCs1 |
||
on-chip |
Tags non-secure flash partitions in an ARM TrustZone-M layout on Nordic SoCs1 |
||
Pin control |
on-chip |
Nordic nRF family Pin Controller1 |
|
Power management |
on-chip |
Nordic VMC (Volatile Memory Controller)1 |
|
on-chip |
Nordic nRF power control node1 |
||
PWM |
on-chip |
nRF PWM4 |
|
on-chip |
nRFx S/W PWM1 |
||
Regulator |
on-chip |
Nordic REGULATORS (voltage regulators control module) on nRF91X1 |
|
Retained memory |
on-chip |
Nordic GPREGRET (General Purpose Register Retention) device2 |
|
RTC |
on-chip |
Nordic nRF RTC (Real-Time Counter)2 |
|
Serial controller |
on-chip |
||
SPI |
on-chip |
Nordic nRF family SPIM (SPI master with EasyDMA)4 |
|
SRAM |
on-chip |
Generic on-chip SRAM1 |
|
Timer |
on-chip |
ARMv8-M System Tick1 |
|
Watchdog |
on-chip |
Nordic nRF family WDT (Watchdog Timer)1 |
Connections and IOs
LED
LED0 (green) = P0.20
UART
The nRF9151 uart0 is connected to the onboard RP2040 interface MCU, which
exposes it to the USB host as a serial port (CDC ACM). It is used as the Zephyr
console and shell backend at 115200 baud (8N1).
UART0 TX = P0.01
UART0 RX = P0.00
Security
The nRF9151 supports Arm TrustZone. By default the dect_nr_plus_usb_dongle/nrf9151
board target builds a single Secure image, while the /ns variant builds a
Non-Secure application that runs alongside Trusted Firmware-M (TF-M) as the
Secure firmware. Most DECT NR+ and modem applications require the /ns
variant, since the modem firmware and its security services are only reachable
from Non-Secure firmware through TF-M.
Programming and Debugging
The dect_nr_plus_usb_dongle board supports the runners and associated west commands listed below.
| flash | debug | debugserver | reset | rtt | attach | |
|---|---|---|---|---|---|---|
| pyocd | ✅ (default) | ✅ (default) | ✅ | ✅ | ✅ | ✅ |
The DECT NR+ USB Dongle integrates a Raspberry Pi RP2040 acting as a CMSIS-DAP debug probe, so no external debugger is required. Simply plug the dongle into a USB-A port; the nRF9151 can then be programmed and debugged over the onboard probe, and its console is available on the serial port presented by the dongle.
Building an application
Applications that use the modem and DECT NR+ features must be built for the
Non-Secure board target dect_nr_plus_usb_dongle/nrf9151/ns. Applications
that do not require Non-Secure execution can be built for the Secure target
dect_nr_plus_usb_dongle/nrf9151.
Flashing
Use the Blinky sample to verify that Zephyr runs correctly on the board. Build and flash it with:
# From the root of the zephyr repository
west build -b dect_nr_plus_usb_dongle/nrf9151 samples/basic/blinky
west flash
To connect to the console, open the serial port presented by the dongle (for
example /dev/ttyACM0 on Linux) at 115200 baud.
Note
Holding the BOOT button while plugging in the dongle puts the RP2040
interface MCU into its USB mass-storage (UF2) bootloader, which is used to
update the interface firmware itself. It does not affect the nRF9151
application.
Debugging
The onboard CMSIS-DAP probe can also be used for debugging. After building an application, start a debug session with:
# From the root of the zephyr repository
west build -b dect_nr_plus_usb_dongle/nrf9151 samples/basic/blinky
west debug