Feedback
Feedback

If you are having issues with the exercises, please create a ticket on DevZone: devzone.nordicsemi.com
Drag & Drop Files, Choose Files to Upload You can upload up to 2 files.

nRF54L power consumption demo – part 1

In this demo, we will see how to obtain the power consumption numbers that were listed in Lesson 1 – Processing performance and power consumption, for the following use case scenarios:

  1. Bluetooth LE Advertising
    • Different advertising intervals: 30ms, 200ms, 2000ms
  2. Bluetooth LE Connection
    • Different throughputs: 0 kbps, Low, Medium, High, Max.
  3. General CPU Processing
    • Solving ~1M quadratic equations every 2.5s, goes idle when done.
  4. System ON mode – IDLE (aka : sleep mode)
    • With full memory retention, 192 KB RAM, 96 KB RAM.
  5. System OFF mode (aka: deep sleep mode)
    • With and without GRTC

The demo is optionally hands-on, so if you’d like to follow along and reproduce the steps for yourself, you will need the following hardware and software.

Hardware

  • 1x nRF54L15 DK
  • 1x PPK2
  • 1x 4-pin jumper cable(Included with the PPK2)
  • 1x USB-C cable
  • 1x Micro-USB cable
  • A smartphone, or a computer running the web app, or another Nordic DK (needed as a Bluetooth LE central device)

Software

We will start by flashing the demo firmware onto the nRF54L15 Development Kit and then connecting the kit to a Power Profiler Kit II (PPK2) to monitor power consumption under different case scenarios. The four buttons on the development kit allow us to switch between these scenarios. The Power Profiler desktop application will read and display the measurements of the PPK2.

Throughout this demo, we will introduce several powerful Nordic tools that can assist you with developing and debugging Bluetooth LE projects.

Demo setup

For the Bluetooth LE connection test, we will need a device for the DK to connect to. You can use another Nordic DK, a mobile phone running nRF Connect for Mobile, or a web application named “Bluetooth LE Throughput Monitor” running on a compatible browser. This application will act as a Bluetooth LE central device, displaying the content of the packets received over Bluetooth LE and monitoring the throughput in real time while we measure power.

Bluetooth LE Throughput Monitor web application

The exercise is divided into two parts for clarity and structured learning:

  • Part 1 focuses on preparing the development kit and conducting the Bluetooth LE Advertising testing.
  • Part 2 covers the remaining test cases.

Demo steps

Step 1 – Flashing the demo firmware to the development kit

1.1 Connect your nRF54L15 DK to your computer using a USB-C cable. Make sure it is powered on.

1.2 Download the demo’s binary file from the course GitHub repository. Use the file demo.hex if you plan to use another DK or a mobile phone running nRF Connect for Mobile for the connection testing. Use demo_webapp_optimized.hex if you plan to use the web app for connection testing.

1.3 Make sure you have installed the nRF Connect for Desktop application with its following apps (Programmer app, Board Configurator app, and Power Profiler app).

More on this

nRF Connect for Desktop is a cross‑platform framework and launcher application that runs on Windows, macOS, and Linux. It bundles a collection of modular desktop applications, such as Bluetooth Low Energy tools, Programmer, Power Profiler, RSSI Viewer, Board Configurator.

1.4 Open nRF Connect for Desktop, and launch the Programmer desktop application.

nRF Connect for Desktop

1.5 From the Select Device menu, choose your nRF54L15 DK, then click on Add file. Select the binary file downloaded in the step 1.2.

1.6 Click Erase & write.

Programmer app available through nRF Connect for Desktop

1.7 Examine the log. On a successful write, you should see a log similar to the following:

 INFO Writing HEX to Application core
 INFO Writing HEX to Application core 0%
 INFO Writing HEX to Application core 50%
 INFO Writing HEX to Application core 50%
 INFO Writing HEX to Application core 63%
 INFO Writing HEX to Application core 75%
 INFO Writing HEX to Application core 88%
 INFO Writing HEX to Application core 100%
 INFO Writing HEX to Application core completed
 INFO Reading memory for Application core
 INFO Reading memory for Application core 0%
 INFO Reading memory for Application core 100%
 INFO Reading memory for Application core completed
 INFO Parse memory regions for Application core
 DEBUG Sending event "programmer: running nrfutil device"
 DEBUG Sending event "programmer: running nrfutil device"
 DEBUG Sending event "programmer: running nrfutil device"
 INFO Reading readback protection status for Application core
 INFO Reading readback protection status for Application core 0%
 INFO Reading readback protection status for Application core 100%
Terminal

Close the Programmer app.

Now that the DK is running the demo, the next step is to prepare it for power measurements using the PPK2.

Step 2 – Preparing the development kit for power measurements

2.1 Launch the Board Configurator desktop application from nRF Connect for Desktop. We will change the voltage from the default setting of 1.8V to 3V to suit our specific testing requirements.

More on this

The Board Configurator is designed to help you update and manage the configuration of the board controller on your development kit. The board controller, which is the firmware running on the Interface MCU and debugger (nRF5340 SoC), dictates the behavior of the development kit (DK). In this step, we will use the application to adjust the output voltage of the nPM1300 PMIC, which powers the nRF54L15 SoC on the nRF54L15 DK.

nRF54L15 DK – Block Diagram

2.1 From the Select Device menu, choose your device, then change VDD from 1800mV to 3000mV and click on Write config.

Power Profiler app available through nRF Connect for Desktop

2.2 Examine the log. On a successful write, you should see a log similar to the following:

Configuration written
Rendering for nRF54L15 PDK (hw rev. x.x.x)
Terminal

This adjustment will enable us to test the power consumption at 3V, which is the same voltage level used to report the results in Lesson 1. You can also experiment with different voltage levels.

Close the Board Configurator app.

2.3 Connect the Power Profiler Kit II (PPK2) to your computer and make sure it is powered on. You must connect the cable to the DATA/POWER port on the PPK2. Additionally, attach the 4-pin jumper cable (shipped with the PPK2), which is required to measure the power consumption on your device. We will connect the PPK2 in this demo in Ampere meter configuration.

More on this

The Power Profiler Kit II (PPK2) is a standalone, cost-effective tool designed to measure real‑time power consumption for embedded systems. It supports currents from sub‑µA levels up to 1 A with automatic switching across five measurement ranges, offering resolution from roughly 0.2 µA to 1 mA and sampling speeds up to 100 kS/s—enabling detection of both long-term average consumption and short current spikes . The PPK2 can function in two modes: as an ampere‑meter (with an external power source to the Device Under Test (DUT)) or as a source meter supplying VCC from 0.8 to 5 V and up to 1 A directly . Additionally, it includes up to eight digital logic inputs to act as a low‑end logic analyzer, syncing power measurements with code execution. All data is streamed via USB to Nordic’s Power Profiler app in the nRF Connect for Desktop suite, allowing visualization, logging, export, and post‑processing.

DATA/POWER port on the PPK2

Your demo setup should look as follows:

Demo Setup

Note

If the PPK2 and DUT (nRF54L15 DK) are powered from different USB sources, you must connect the PPK2’s ground to the DUT’s ground.

2.8 Open the Power Profiler app in nRF Connect for Desktop. From the Select Device menu, choose your PPK2, and for the Power supply mode, select Ampere meter.

Note

If a message asks whether the development kit needs to be programmed, select the option to program the kit.

Amper Meter mode in Power Profiler

2.9 Enable power output and click Start. You should see an average current of ~ 2.9 µA . This is the System ON—IDLE current consumption (with full memory retention), which we will cover in Step 3.

Sleep current (System ON – IDLE) on nRF54L15 DK 0.8.1

The DK is now prepared for testing. The next step involves examining the various use cases.

Note

Older SoC revisions (Engineering B), used in some early DKs, have higher sleep current (~3 µA – shown in the screenshot above) than newer DKs (v1.0.0 and above) with SoC revision 2, which have lower sleep current (~2.9 µA) . More on SoC revisions can be found here. So the Sleep current (System ON – IDLE) will slightly differ based on the version of the development kit you have.

Also, Be aware that the power consumption numbers are temperature-dependent and will vary slightly depending on the temperature.

Step 3 – Testing

As mentioned before, the device automatically enters the System ON-IDLE state with full memory retention by default upon bootup or reset. In this section, we will use the four buttons available on the development kit to switch between different use case scenarios as outlined in the accompanying table and state machine diagram.

ButtonFirst presssubsequent presses
button 0Enter advertising state at 30 ms interval (non-connectable).Cycle between different advertising intervals 200 ms, 2000 ms , -> 30 ms
button 1Start connection state* (connectable-advertising). Upon connection, zero throughput.Upon connection, cycle between different data throughput Low, Medium, High, Max → 0
button 2Enter processing state, solving ~1M quadratic equations every 2.5ms.No change
button 3Enter System ON – IDLE mode .Enter System OFF Mode. System OFF mode is exited by pressing any button.
Demo state machine diagram

*A Bluetooth LE central device is required for testing the connection state. The central device can be a web application, a mobile phone with the nRF Connect for Mobile app, or another development kit. This is covered in part 2.

Step 3.1 – Bluetooth LE Advertising

Now, we will proceed to measure the power consumption when the device is in the mode of advertising non-connectable Bluetooth LE packets.

3.1.1 Press button 0. This will wake up the device from the System ON—IDLE state and put the device in the advertising state.

The device will periodically advertise non-connectable Bluetooth LE packets with the payload below, using TX only (scan response disabled).

RoleAdvertising non-connectable (TX only)
Advertising Interval30 ms – 200 ms – 2000 ms
TX Power0 dBm
TX data payload (excluding headers, CRC, etc..)Advertising Data: 8 Bytes
1B length+ 1B Type+ 6B data

Optional: The advertised packets can be examined over the air using Nordic Semiconductor’s simple and affordable Bluetooth LE sniffer. See the Lesson 6—Bluetooth LE sniffer in the Bluetooth LE Fundamentals course lesson. As detailed in the lesson, you will need another device that supports Bluetooth (Nordic Semiconductor’s DK or a Dongle) to perform the sniffing.

Content of the advertising data obtained using Wireshark+nRF Sniffer for Bluetooth LE

3.1.2 Open the Online Power Profiler and apply the following settings:

Online Power Profiler

The tool predicts a total average current of 121 µA. In the next step, we will validate this on real hardware.

More on this

The Online Power Profiler (OPP), hosted on DevZone, is a web-based estimation tool designed to predict the average current consumption of Nordic chips—such as nRF52, nRF53, nRF54L, and nRF91 Series—across multiple wireless protocols. It offers separate interfaces for Bluetooth LE, Matter over Thread, Wi‑Fi, and LTE‑M/NB‑IoT, letting users input parameters like voltage, payload size, TX power and interval timing. The OPP runs a statistical power model based on lab measurements (typically within ±5 % error for reference boards) to estimate energy use components per wireless event and idle power.

3.1.3 Examine the Power Profiler app to see the average current consumption. It should be around 121 µA for the 30 ms advertising interval.

Power consumption on 30 ms advertising interval (non-connectable)

You can zoom in using the mouse scroll and hold Shift + Left mouse button to measure the delta time between the two advertising events. The time should be around 30 ms:

Delta time between two advertising events

3.1.4 (Optional) Another way to examine the advertising details, such as the interval and data, is to use the nRF Connect for Mobile app, which is available on Android and iOS. From the SCANNER tab, scan for the device and examine the advertising interval and advertising data:

Examine the advertising interval using nRF Connect for Mobile – Android
Examine the advertising data using nRF Connect for Mobile – Android

More on this

nRF Connect for Mobile is a powerful smartphone application for scanning, exploring, and communicating with Bluetooth LE devices. It enables users to scan for Bluetooth LE peripherals, parse advertising data, view live RSSI graphs, and export data. You can connect to any compatible Bluetooth LE device, discover its services and characteristics, and perform read/write operations. The app supports enabling and disabling notifications and indications, configuring a GATT server, and operating in advertising/peripheral mode. It also integrates support for Device Firmware Update (DFU) profiles—allowing over‑the‑air firmware updates from HEX or ZIP file

3.1.5 Press button 0 again to change the advertising interval to 200 ms.

Power consumption on 200 ms advertising interval (non-connectable)

The predicted average current consumption by the Online Power Profiler is 23 µA. Examining the Power Profiler app gives us around 24 µA.

3.1.6 Press button 0 one last time to change the advertising interval to 2 seconds.

Power consumption on 2000 ms advertising interval (non-connectable)

The predicted average current consumption by the Online Power Profiler is 7.1 µA. Examining the Power Profiler app gives us around 5.39 μA.

We have tested the power consumption for non-connectable Bluetooth LE advertising at 30 ms, 200 ms, and 2000ms.

In part 2, we will evaluate the power consumption for Bluetooth LE connection, general CPU processing, and the different sleep modes

Switch language?

Progress is tracked separately for each language. Switching will continue from your progress in that language or start fresh if you haven't begun.

Your current progress is saved, and you can switch back anytime.

Register an account
Already have an account? Log in
(All fields are required unless specified optional)

  • 8 or more characters
  • Upper and lower case letters
  • At least one number or special character

Forgot your password?
Enter the email associated with your account, and we will send you a link to reset your password.