Skip to main content

AN03: How to measure power consumption of the nPZero G1S DevKit

Summary

Ultra-low power operation is the defining capability of the nPZero G1S Development Kit, which integrates the nPZero G1S power-saving IC with an STM32L053C8U6 host MCU and peripheral sensors. The nPZero G1S autonomously powers and polls sensors while gating host power to significantly reduce energy consumption.

To validate, characterize, and optimize these energy-saving features, accurate current and power measurements are required during periods of standby (host-on), idle (host-off) and peripheral polling.

This application note describes a methodology for measuring power consumption of the DevKit using the Joulescope and the Power Profiler Kit II measuring tools. In addition to this, validation and optimization of the system design is discussed.

Equipment

For measurement of power consumption of the nPZero G1S Development Kit, the DevKit, as well as the Joulescope or Power Profiler Kit II (PPK2), are needed. The equipment is demonstrated in Figure 1, Figure 2 and Figure 3.

devkit
Figure 1: nPZero G1S Development Kit
js_2sides
Figure 2: Joulescope JS110 Precision DC Energy Analyzer
ppk2
Figure 3: Power Profiler Kit II

Hardware setup

Make measurements at the voltage level of your final hardware design, considering a sensor voltage range and a power source of the design.

note

Use the Joulescope or PPK2 as the only power source and disconnect all other supply paths.

Connecting Joulescope

  • Connect Power supply to the Joulescope as follows:
    • Power supply + → In+
    • Power supply - → In-
  • Set switch S1 to banana connector position
  • Connect the Joulescope to the DevBoard as follows:
    • Joulescope OUT+ → DevKit 9 (+)
    • Joulescope OUT- → DevKit J10 (-)
  • The Joulescope connection is demonstrated in Figure 4.
dk_js_connected
Figure 4: Power measurements using the Joulescope

Connecting PPK2

  • Connect the power supply to the PPK2 as follows:
    • Power supply + → VIN
    • Power supply - → GND
  • Set switch S1 to the banana connector position
  • Connect the PPK2 to the DevBoard as follows:
    • VOUT → DevKit 9 (+)
    • GND → DevKit J10 (-)
  • The PPK2 connection is demonstrated in Figure 5.
dk_ppk2_connected
Figure 5: Power measurements using the PPK2

Current measurements

Current measurements diagram There are three primary current measurements of the DevKit as a system: Standby, idle and polling current.

Measuring procedure

  1. Flash the code.
  2. Disable all LEDs by disconnecting jumper J20.
  3. Once the host is on, observe the standby current. If the host is not enabled according to the flashed code, press the RESET button on the DevBoard to deliberately enable the host.
  4. Allow host to power down.
  5. Once the nPZero enters idle state, observe the idle current.
  6. Once the nPZero enters polling state, observe the polling current. Expected current behavior depending on the operating states is provided in the below table:
ModeHost statenPZero stateApproximate current
StandbyHost ONnPZero in standby modeseveral mA (host dependent)
PollingHost OFFnPZero in polling mode~ 2-4 µA
IdleHost OFFnPZero in idle mode~ 0.1 - 0.2 µA

Joulescope readings

Example of current reading using the Joulescope is provided below.

note

Polling period for the SPI accelerometer is set to 1 seconds and for the I2C temperature sensor 3 seconds.

Figure 6 shows the average DevKit power measurements over 1 minute of reading using the Joulescope in oscilloscope mode:

Average currentAverage power
0.154 mA0.277 mW
dk_readings_js
Figure 6: Average power measurements using the Joulescope

Figure 7 shows the idle current measurement reading using the Joulescope in Multimeter mode:

Average currentAverage power
0.195 µA0.350 µW
dk_idle_js
Figure 7: Idle current measurements using the Joulescope

Figure 8 shows DevKit power measurements at different operating states using the Joulescope in oscilloscope mode:

StandbyIdle
Average current3.49 mAAverage current193 nA
Average power6.26 mWAverage power348 nW
SPI sensor pollingI2C sensor polling
Average current2.70 µAAverage current3.41 µA
Average power4.85 µWAverage power6.14 µW
dk_multi_js
Figure 8: Power measurements at different operating states using the Joulescope

PPK2 readings

Example of current readings using the PPK2 are provided in the figures below.

note

Polling period for the SPI accelerometer is set to 1 seconds and for the I2C temperature sensor 3 seconds.

ReadingResultFigure
1 minute average current0.151 mAFigure 9
Average standby current4.11 mAFigure 10
Average idle current0.16 µAFigure 11
Average SPI sensor polling current2.15 µAFigure 12
Average I2C sensor current2.76 µAFigure 13
dk_ppk2_read_1
Figure 9: Average current over 1 minute using the PPK2
dk_ppk2_read_2
Figure 10: Average standby current using the PPK2
dk_ppk2_read_3
Figure 11: Average idle current using the PPK2
dk_ppk2_read_4
Figure 12: Average SPI sensor polling current using the PPK2
dk_ppk2_read_5
Figure 13: Average I2C sensor polling current using the PPK2

Measurement Recommendations

Best practices for low power measurement

  1. Disconnect coin-cell and USB-C power supplies.
  2. Disable all LEDs by disconnecting jumper J20.
  3. Use short wires to reduce noise.
  4. Allow system to stabilize before measurement.
  5. Measure over long windows (over 10s) for more accurate average values.
  6. Compare firmware builds under identical conditions.

Advised recordings

  • Average and peak current;
  • Average and peak power;
  • Energy over a duration of 1 min or longer.

Optimal operation point

To reveal the optimal operating point, compare:

  • Standby current;
  • Idle current;
  • Polling current;
  • Average power;
  • Energy over time interval.

For better overall evaluation of the system operation, the data can be interpreted into energy per event and estimated battery life as provided below.

Energy per event

Energy=V(t)I(t)dtNumberOfEvents\mathit{Energy}=\frac{\int V(t)*I(t)\,dt}{\mathit{Number Of Events}}
note

The Joulescope directly integrates energy in Joules.

Battery Life Estimation

BatteryLife=Capacity(mAh)TotalSystemAverageCurrent(mA)\mathit{Battery Life}=\frac{\mathit{Capacity (mAh)}}{\mathit{TotalSystemAverageCurrent(mA)}}

Example:

  • 10 µA average current
  • 220 mAh coin cell
  • ~2.5 years estimated battery life

Suggested validation workflow

  1. Measure baseline total system current consumption (Standby, Idle).
  2. Enable sensor polling.
  3. Measure polling currents.
  4. Measure wake events.
  5. Optimize polling frequency.
  6. Compare voltage modes.
  7. Validate battery-life projection.

Common measurement pitfalls

IssueCauseSolution
High sleep currentLEDs enabledDisable LEDs
Host never powers downI2C interferenceDisable external I2C pull-ups on temperature sensor board: set DIP switches 2 and 3 OFF on switch S1
No current spikesIncorrect triggerAdjust threshold
Noisy readingsLong leadsShorten wiring

Conclusion

The nPZero G1S Development Kit is designed for power reduction through Host power gating and autonomous sensor management. The Joulescope enables precise quantification of values such as host-ON and host-OFF currents, polling current, power and energy consumption.

By following the methodology in this document, developers can:

  • Verify ultra-low power claims
  • Optimize firmware configuration
  • Accurately estimate battery life
  • Validate production designs

References

[1] “Joulescope JS110: Precision DC Energy Analyzer,” Joulescope, [Online]. Available: https://www.joulescope.com/products/joulescope-precision-dc-energy-analyzer?srsltid=AfmBOoqJhTwLZcgOeHj9sE3M4u3kNwI8jd33mBG3SNi-xLlqABTEFYl3. [Accessed 16 February 2026]. [2] “Power Profiler Kit II,” Nordic Semiconductor, [Online]. Available: https://www.nordicsemi.com/Products/Development-hardware/Power-Profiler-Kit-2. [Accessed 16 February 2026].