How switch between LDO and DCDC in prj.conf or during runtime with C?

Hi,

I use nrfconnect SDK 3.1.1 and nRF52840 (as a dongle, DK etc)

Using the power profiler kit 2 I see legacy advertising (TX/RX) peaks of about 32mA (with txpwr=8dBm, 3.2V, 100ms).

Checking your online power profiler this tells me I must be using LDO (eating 40.38µC for a payload of 23bytes).

How can I switch to DCDC regulator in my prj.conf, or even better, in my C code?

According to your online calculator this would reduce peaks to 15.5mA (eating only 21.36µC).

Parents Reply
  • Thank you for the details.

    In my C code, I switch now between LDO and DC/DC with these calls:

    #include <hal/nrf_power.h>
    // query:
    bool wasDcdc = nrf_power_dcdcen_get(NRF_POWER);
    ...
    // set:
    nrf_power_dcdcen_set(NRF_POWER, true); // false for LDO
    nrf_power_dcdcen_vddh_set(NRF_POWER, true);

    It seems to work fine on my nRF52840-DK, - reduced current to about half.

    I will, as next step, try the same on my nRF52840-Dongle (hoping it has some LC food around to support REG1 DCDC).
    The dongle has no USB power (no REG0) and is running with external regulated source (SB2 cut, SB1 soldered)
    ...

Children
Related