XIAO nRF54LM20B
Overview
Seeed Studio XIAO nRF54LM20B is a compact, high-performance development board featuring the Nordic nRF54LM20B chip. This SoC integrates an ultra-low power multiprotocol 2.4 GHz radio and an MCU with a 128 MHz Arm(R) Cortex(R)-M33 processor. It offers 2 MB RRAM and 512 KB RAM.
The board features a built-in PMIC (Nordic NPM1300) with battery charging support, an RGB LED, an LSM6DS3TR-C 6-axis IMU, a USB 2.0 high-speed interface, NFCT, and an external SPI flash (PY25Q128HA, 128 Mbit). The XIAO form factor provides 28 pins (D0-D27) with support for GPIO, I2C, SPI, UART, ADC, PWM, and more.
Designed for exceptional ultra-low power consumption, it significantly extends battery life. Its robust radio supports Bluetooth(R), Matter, Thread, Zigbee, and a high-throughput 2.4 GHz proprietary mode. The board is ideal for compact, secure, and energy-efficient IoT solutions such as smart wearables, industrial sensors, and advanced human-machine interfaces.
Hardware
128 MHz Arm(R) Cortex(R)-M33 processor
2 MB RRAM (non-volatile memory)
512 KB RAM
Multiprotocol 2.4 GHz radio supporting Bluetooth Low Energy, 802.15.4-2020, and 2.4 GHz proprietary modes
Comprehensive set of peripherals including 14-bit ADC, high-speed serial interfaces, PDM/DMIC, and PWM
Built-in PMIC (Nordic NPM1300) with battery charging
RGB LED (red, blue, green)
LSM6DS3TR-C 6-axis IMU (accelerometer + gyroscope)
USB 2.0 high-speed interface
NFCT (Near Field Communication)
External SPI flash (PY25Q128HA, 128 Mbit)
28-pin XIAO connector (D0-D27)
Advanced security including TrustZone(R) isolation and cryptographic engine protection
For more information about the nRF54LM20B SoC and XIAO nRF54LM20B board, refer to these documents:
Supported Features
The xiao_nrf54lm20b 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.
xiao_nrf54lm20b/nrf54lm20b/cpuapp target
On-target memory for this board target: 511 KiB of RAM, 2036 KiB 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 UICR (User Information Configuration Registers)1 |
|
on-chip |
Nordic EGU (Event Generator Unit)2 |
||
Audio |
on-chip |
Nordic PDM (Pulse Density Modulation interface)2 |
|
Clock control |
on-chip |
Generic fixed-rate clock provider4 |
|
on-chip |
Nordic nRF low-frequency crystal oscillator (nRF54L series)1 |
||
on-chip |
Nordic nRF high-frequency crystal oscillator (nRF54L series)1 |
||
on-chip |
Nordic nRF clock control node1 |
||
on-chip |
Nordic nRF XO clock control node1 |
||
on-chip |
Nordic nRF LFCLK clock control node1 |
||
on-chip |
Nordic nRF XO24M clock control node1 |
||
Comparator |
on-chip |
Nordic nRF COMP (analog COMParator)1 |
|
Counter |
on-chip |
Nordic nRF timer node7 |
|
Debug |
on-chip |
ARMv8 instrumentation trace macrocell1 |
|
Flash controller |
on-chip |
Nordic RRAMC (Resistive random access memory controller)1 |
|
GPIO & Headers |
on-chip |
||
on-chip |
NRF5 GPIOTE2 |
||
on-board |
GPIO pins exposed on Seeeduino Xiao (and compatible devices) headers1 |
||
I2C |
on-chip |
||
on-board |
I2C via GPIO bitbanging1 |
||
I2S |
on-chip |
Nordic TDM (Time division multiplexed audio interface)1 |
|
IEEE 802.15.4 |
on-chip |
Nordic nRF IEEE 802.15.4 node1 |
|
Input |
on-board |
Group of GPIO-bound input keys1 |
|
Interrupt controller |
on-chip |
ARMv8-M NVIC (Nested Vectored Interrupt Controller)1 |
|
LED |
on-board |
Group of GPIO-controlled LEDs1 |
|
on-board |
Group of PWM-controlled LEDs1 |
||
on-board |
Nordic nPM1300 LED controller1 |
||
Mailbox |
on-chip |
Nordic VEVIF (VPR Event Interface) - EVENT RX MODE1 |
|
on-chip |
Nordic VEVIF (VPR Event Interface) - TASK TX MODE1 |
||
Multi-Function Device |
on-board |
Nordic nPM13001 |
|
Miscellaneous |
on-chip |
Nordic FICR (Factory Information Configuration Registers)1 |
|
on-chip |
Nordic DPPIC (Distributed Programmable Peripheral Interconnect Controller)4 |
||
on-chip |
Nordic PPIB (Programmable Peripheral Interconnect Bridge)8 |
||
on-chip |
Nordic Axon1 |
||
on-chip |
Nordic Memory Privilege Controller (MPC)1 |
||
MTD |
on-board |
Properties supporting Zephyr spi-nor flash driver (over the Zephyr SPI API) control of serial flash memories using the standard M25P80-based command set1 |
|
on-chip |
Flash node1 |
||
Networking |
on-chip |
Nordic nRF family RADIO peripheral1 |
|
on-chip |
Nordic nRF family NFCT (Near Field Communication Tag)1 |
||
Pin control |
on-chip |
Nordic nRF family Pin Controller1 |
|
Power management |
on-chip |
Nordic nRF power control node1 |
|
PWM |
on-chip |
||
Regulator |
on-chip |
Nordic REGULATORS (voltage regulators control module) on nRF54L1 |
|
on-chip |
Nordic nRF5X regulator (fixed stage of the core supply)1 |
||
on-chip |
Nordic VBUS regulator for USB peripheral1 |
||
on-board |
Nordic nPM1300 PMIC1 |
||
Retained memory |
on-chip |
Nordic GPREGRET (General Purpose Register Retention) device11 |
|
RISC-V architecture |
on-chip |
VPR coprocessor1 |
|
RNG |
on-chip |
Nordic nRF CRACEN CTR_DRBG based (Random Number Generator)1 |
|
Sensors |
on-chip |
Nordic nRF family TEMP node1 |
|
on-chip |
Nordic nRF quadrature decoder (QDEC) node2 |
||
on-board |
STMicroelectronics LSM6DSL 6-axis accelerometer and gyrometer accessed through I2C bus1 |
||
on-board |
NPM1300 PMIC Charger1 |
||
Serial controller |
on-chip |
||
SPI |
on-chip |
||
SRAM |
on-chip |
Generic on-chip SRAM2 |
|
Timer |
on-chip |
Nordic GRTC (Global RTC)1 |
|
on-chip |
ARMv8-M System Tick1 |
||
USB |
on-chip |
Nordic USBHS Type 2 PHY configuration1 |
|
on-chip |
Nordic wrapper for USB controller and PHY hardware1 |
||
on-chip |
DesignWare OTG USB 2.0 controller1 |
||
on-chip |
Nordic USB PD Charging-Type Detector1 |
||
Watchdog |
on-chip |
Nordic nRF family WDT (Watchdog Timer)2 |
Connections and IOs
In the following table, the column Name contains Pin names. For example, P1_0 means Pin number 0 on PORT1, as used in the board’s datasheets and manuals.
Name |
Function |
Usage |
|---|---|---|
P1_22 |
GPIO |
LED1 (Red) |
P1_23 |
GPIO |
LED0 (Blue) |
P1_24 |
GPIO |
LED2 (Green) |
P0_9 |
GPIO |
Button 0 |
P1_11 |
USART20_TX |
UART20 TX (test pad) |
P1_10 |
USART20_RX |
UART20 RX (test pad) |
P1_8 |
USART21_TX |
XIAO Serial TX |
P1_9 |
USART21_RX |
XIAO Serial RX |
P1_3 |
TWIM22_SDA |
XIAO I2C SDA |
P1_7 |
TWIM22_SCL |
XIAO I2C SCL |
P1_4 |
SPIM23_SCK |
XIAO SPI SCK |
P1_6 |
SPIM23_MOSI |
XIAO SPI MOSI |
P1_5 |
SPIM23_MISO |
XIAO SPI MISO |
P0_8 |
TWIM30_SDA |
IMU I2C SDA |
P0_7 |
TWIM30_SCL |
IMU I2C SCL |
P1_0 |
GPIO |
XIAO D0 |
P1_31 |
GPIO |
XIAO D1 |
P1_30 |
GPIO |
XIAO D2 |
P1_29 |
GPIO |
XIAO D3 |
P1_3 |
GPIO |
XIAO D4 |
P1_7 |
GPIO |
XIAO D5 |
P1_8 |
GPIO |
XIAO D6 |
P1_9 |
GPIO |
XIAO D7 |
P1_4 |
GPIO |
XIAO D8 |
P1_5 |
GPIO |
XIAO D9 |
P1_6 |
GPIO |
XIAO D10 |
P1_18 |
GPIO |
PMIC I2C SDA |
P1_17 |
GPIO |
PMIC I2C SCL |
P1_13 |
PDM20_CLK |
DMIC Clock |
P1_14 |
PDM20_DIN |
DMIC Data |
P2_1 |
SPIM00_SCK |
External SPI Flash SCK |
P2_2 |
SPIM00_MOSI |
External SPI Flash MOSI |
P2_4 |
SPIM00_MISO |
External SPI Flash MISO |
The board has a single USB-C connector, wired to the SoC’s USB 2.0 high-speed controller. The console is available over USB CDC ACM on this connector.
Programming and Debugging
The xiao_nrf54lm20b board supports the runners and associated west commands listed below.
| flash | debug | debugserver | rtt | reset | attach | |
|---|---|---|---|---|---|---|
| jlink | ✅ | ✅ (default) | ✅ | ✅ | ✅ | ✅ |
| nrfutil | ✅ (default) |
Bootloader and firmware updates
The board ships from the factory with an MCUboot firmware-updater bootloader in the first
24 KiB of RRAM. Applications are therefore linked by default into the bootloader’s application
slot at 0x6000 (CONFIG_BOOTLOADER_MCUBOOT defaults to y), and the USB CDC ACM console
described below is provided by the application; the bootloader itself has no console.
The factory bootloader verifies Ed25519 image signatures (PURE format) against a key provisioned in the board’s KMU, so applications flashed to the application slot must be signed accordingly; see the XIAO nRF54LM20B Wiki for signing details and factory firmware updates.
To update the application over USB, keep Button 0 pressed while powering or resetting the board: the bootloader then runs its slot1 USB loader, which accepts an MCUmgr image upload over the USB CDC ACM port.
Flashing
Connect the XIAO nRF54LM20B board to your host computer using the USB port. A USB CDC ACM serial port should appear on the host, that can be used to view logs from the flashed application.
Here is an example for the Hello World application.
# From the root of the zephyr repository
west build -b xiao_nrf54lm20b/nrf54lm20b/cpuapp samples/hello_world
west flash
Open a serial terminal (minicom, putty, etc.) connecting to the USB CDC ACM serial port.
Reset the board and you should see the following message in the terminal:
Hello World! xiao_nrf54lm20b/nrf54lm20b/cpuapp