nPM2100 EK

Browse source code on GitHub

Overview

This sample is provided for evaluation of the nPM2100 EK. It is an example of how the nPM2100 GPIO pins and the shell interface can be used to control the following features:

  • Regulators (BOOST, LDOSW)

  • GPIO

Requirements

The sample supports the following boards: nRF52840 DK, nRF5340 DK

The sample also requires an nPM2100 Evaluation Kit (EK) that you need to connect to the development kit as described in Wiring.

Wiring

With this configuration, the nPM2100 EK is wired to supply power to the DK. This ensures that the TWI communication is at compatible voltage level, and represents a realistic use case for the nPM2100 PMIC.

Note

To prevent leakage currents and program the DK, do not remove the USB connection.

Unplug the battery from the nPM2100 EK and set the DK power switch to “OFF” while applying the wiring. If you have issues communicating with the DK or programming it after applying the wiring, try to power cycle the DK and EK.

To connect your DK to the nPM2100 EK, complete the following steps:

  1. Prepare the DK for being powered by the nPM2100 EK:

    • Set switch SW9 (“nRF power source”) to position “VDD”.

    • Set switch SW10 (“VEXT -> VnRF”) to position “ON”.

  2. Connect the TWI interface and power supply between the chosen DK and the nPM2100 EK as described in the following table:

    nPM2100 EK pins

    SDA

    SCL

    VOUT

    GND

    nRF52840 DK pins

    P0.26

    P0.27

    P21 External supply +

    GND

    nRF5340 DK pins

    P1.02

    P1.03

    P21 External supply +

    GND

  3. Make the following connections on the nPM2100 EK:

    • Remove the USB power supply from the J4 connector.

    • On the P6 pin header, connect pins 1 and 2 with a jumper.

    • On the BOOTMON pin header, select OFF with a jumper.

    • On the VSET pin header, select 3.0V with a jumper.

    • On the VBAT SEL switch, select VBAT position.

    • Connect a battery board to the BATTERY INPUT connector.

Building and Running

To build the sample use the following command:

west build -b nrf52840dk/nrf52840 samples/shields/npm2100_ek

Note

This sample automatically sets the SHIELD to npm2100_ek. Once you have flashed the software to your device, boot into the shell interface. Use the regulator command to test the PMIC. See the following section for details on the subcommands.

Regulator control

If the initialization was successful, the terminal displays the following message with status information:

PMIC device ok

The sample also reports the battery and boost output voltages as well as the die temperature measured every two seconds.

Use the buttons on the EK to control the regulators as follows:

Operation

Outcome

Button GPIO0 pressed

BOOST output forced into HP mode

Button GPIO0 released

BOOST output operates in LP mode

Button GPIO1 pressed

Load Switch on

Button GPIO1 released

Load Switch off

The regulator shell interface provides several subcommand to test the regulators embedded in the PMIC.

To list all supported voltages for a regulator, run the following command:

uart:~$ regulator vlist BOOST
1.800000 V
1.850000 V
...

To enable or disable a regulator, run the following commands:

uart:~$ regulator enable LDOSW
uart:~$ regulator disable LDOSW

Note

The BOOST regulator is always enabled.

To set the output voltage of a regulator, run the following command:

uart:~$ regulator vset BOOST 2.5v
uart:~$ regulator vget BOOST
2.500000 V

Note

The BOOST regulator cannot provide a voltage lower than the battery voltage.

To get the GPIO status, run the following command:

uart:~$ gpio get npm2100_gpio 0
0