LPUARTE
The LPUARTE sample demonstrates how to configure and use the LPUARTE driver as a low power alternative to regular UART.
Requirements
The sample supports the following development kits:
The following board variants do not have DFU capabilities:
S115:
Hardware platform
PCA
Board target
PCA10156
bm_nrf54l15dk/nrf54l15/cpuapp/s115_softdevice
nRF54L15 DK (emulating nRF54L10)
PCA10156
bm_nrf54l15dk/nrf54l10/cpuapp/s115_softdevice
nRF54L15 DK (emulating nRF54L05)
PCA10156
bm_nrf54l15dk/nrf54l05/cpuapp/s115_softdevice
PCA10184
bm_nrf54lm20dk/nrf54lm20a/cpuapp/s115_softdevice
PCA10214
bm_nrf54ls05dk/nrf54ls05b/cpuapp/s115_softdevice
PCA10188
bm_nrf54lv10dk/nrf54lv10a/cpuapp/s115_softdevice
S145:
Hardware platform
PCA
Board target
PCA10156
bm_nrf54l15dk/nrf54l15/cpuapp/s145_softdevice
nRF54L15 DK (emulating nRF54L10)
PCA10156
bm_nrf54l15dk/nrf54l10/cpuapp/s145_softdevice
nRF54L15 DK (emulating nRF54L05)
PCA10156
bm_nrf54l15dk/nrf54l05/cpuapp/s145_softdevice
PCA10184
bm_nrf54lm20dk/nrf54lm20a/cpuapp/s145_softdevice
PCA10214
bm_nrf54ls05dk/nrf54ls05b/cpuapp/s145_softdevice
PCA10188
bm_nrf54lv10dk/nrf54lv10a/cpuapp/s145_softdevice
The following board variants have DFU capabilities:
S115:
Hardware platform
PCA
Board target
PCA10156
bm_nrf54l15dk/nrf54l15/cpuapp/s115_softdevice/mcuboot
nRF54L15 DK (emulating nRF54L10)
PCA10156
bm_nrf54l15dk/nrf54l10/cpuapp/s115_softdevice/mcuboot
nRF54L15 DK (emulating nRF54L05)
PCA10156
bm_nrf54l15dk/nrf54l05/cpuapp/s115_softdevice/mcuboot
PCA10184
bm_nrf54lm20dk/nrf54lm20a/cpuapp/s115_softdevice/mcuboot
PCA10214
bm_nrf54ls05dk/nrf54ls05b/cpuapp/s115_softdevice/mcuboot
PCA10188
bm_nrf54lv10dk/nrf54lv10a/cpuapp/s115_softdevice/mcuboot
S145:
Hardware platform
PCA
Board target
PCA10156
bm_nrf54l15dk/nrf54l15/cpuapp/s145_softdevice/mcuboot
nRF54L15 DK (emulating nRF54L10)
PCA10156
bm_nrf54l15dk/nrf54l10/cpuapp/s145_softdevice/mcuboot
nRF54L15 DK (emulating nRF54L05)
PCA10156
bm_nrf54l15dk/nrf54l05/cpuapp/s145_softdevice/mcuboot
PCA10184
bm_nrf54lm20dk/nrf54lm20a/cpuapp/s145_softdevice/mcuboot
PCA10214
bm_nrf54ls05dk/nrf54ls05b/cpuapp/s145_softdevice/mcuboot
PCA10188
bm_nrf54lv10dk/nrf54lv10a/cpuapp/s145_softdevice/mcuboot
The sample also requires the following pins to be connected, as defined in the boards board-config.h header:
LPUARTE pin connections (board-config.h). Development Kit
nRF54L15 DK
nRF54LM20 DK
nRF54LS05 DK
nRF54LV10 DK
LPUARTE TX
P1.11
P1.12
P1.17
P1.17
LPUARTE RX
P1.12
P1.13
P1.18
P1.18
LPUARTE REQ
P0.04
P1.14
P1.19
P1.19
LPUARTE RDY
P1.14
P1.15
P1.20
P1.20
For two-device setup:
Device 1 LPUARTE TX → Device 2 LPUARTE RX
Device 1 LPUARTE RX → Device 2 LPUARTE TX
Device 1 LPUARTE REQ → Device 2 LPUARTE RDY
Device 1 LPUARTE RDY → Device 2 LPUARTE REQ
Connect GND between both devices.
For single-device loopback setup:
LPUARTE TX → LPUARTE RX
LPUARTE REQ → LPUARTE RDY
Additionally, the sample requires a logic analyzer to observe the LPUARTE activity and a current measurement instrument to measure the current.
Overview
The sample initializes the application LPUARTE instance, specified in the board-config.h file in the board.
It then implements a simple loopback using a single LPUARTE instance.
By default, the console and logging are disabled to demonstrate low power consumption when UART is active.
User interface
- LED 0:
If configured, lit when the device is initialized. (Configurable using the
CONFIG_SAMPLE_LPUARTE_INIT_LEDkconfig option)
Building and running
This sample can be found under samples/peripherals/lpuarte/ in the Bare Metal folder structure.
For details on how to create, configure, and program a sample, see Getting Started with the samples.
Testing
You can test this sample by performing the following steps:
Compile and program the application.
Connect the logic analyzer to the LPUARTE pins, to confirm UARTE activity. The request/response pins are HIGH in the idle state. When a transmission starts, the pins are pulled LOW to signal the start of data transfer. At the same time, activity should be visible on the UART RX/TX pins.
Configure the logic analyzer to use an
asynchronous serial (UART) protocolon the RX/TX connection. With the default sample configuration, use a baud rate of115200, and verify that a5-byte messageis transmitted with the decimal values1,2,3,4, and5.Measure the current to confirm that the power consumption indicates that high-frequency clock is disabled during the idle stage.
During the idle stage, the UARTE receiver is ready to start reception, as the request pin wakes it up.