This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

REGOUT0 regulation issue in low power mode

Hi,

I have a issue with the output regulation of REGOUT0.

I have a custom board based on the NFR52840-CKAA (revision D).  I designed it in high voltage mode because I have a lipo battery connected on VHHD (3V to 4.2V) and the output voltage desired on VDD is 2.7 V. So I have a LC filter on DCCH and DCC.

I wanted to evaluate the power consumption in low power mode using this simple code:


#include <stdio.h>
#include <stdlib.h>
#include <nrf.h>
#include "nrf_gpio.h"
#include "nrf_timer.h"


void gpio_output_voltage_setup(void);


void main(void) {
  

  SystemInit();
  gpio_output_voltage_setup();

  while (1) {
    __WFI(); //wait for interrupt
  } 


}

void gpio_output_voltage_setup(void)
{
    // Configure UICR_REGOUT0 register only if it is set to default value.
    if ((NRF_UICR->REGOUT0 & UICR_REGOUT0_VOUT_Msk) != (UICR_REGOUT0_VOUT_2V7 << UICR_REGOUT0_VOUT_Pos))
    {
        NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Wen;
        while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}
        

        NRF_UICR->REGOUT0 = (NRF_UICR->REGOUT0 & ~((uint32_t)UICR_REGOUT0_VOUT_Msk)) | (UICR_REGOUT0_VOUT_2V7 << UICR_REGOUT0_VOUT_Pos);

        NRF_NVMC->CONFIG = NVMC_CONFIG_WEN_Ren;
        while (NRF_NVMC->READY == NVMC_READY_READY_Busy){}

        // System reset is needed to update UICR registers.
        NVIC_SystemReset();
    }
}

Using this test code, the output voltage is correct (at 2.7 V) and the current consumption too. But after like 10-20 seconds,  the output voltage drops at 2.5 V and current goes up to few mA instead of uA.

I have also tried this test code with the output configured by default (1.8V) and it works properly.

Could someone help me with this issue ? Did I miss something in the configuration ?

Best regards,

David

Parents
  • Hi,

    Are you testing with only this code, or is this extracted from a larger application? Have you tried reproducing this on a nRF52840 DK, or without the filter?

    Can you give exact current measurements before and after the current increases?

    Best regards,
    Jørgen

  • Hi Jørgen,

    I am testing only with this code, the rest is commented.

    I have done more testes and I found out that our subcontractor sent us the wrong revision on the schematics. An analog part of the schematics was missing. Sorry for the inconveniences.

    So we had an analog part with an enable pin which was floating. This analog part generate a voltage between 0 to 1.5 V to P0.03 of the nRF52840 which wasn't configured.

    When the analog part is on and the MCU IO isn't configured, the MCU is waked up and the voltage drops to 2.5 V or  2.3V.

    But when the IO is configured in input mode, the voltage doesn't drop and stays at 2.7 V.

    Is the IOs in high impedance mode when they aren't configured ?

    I can't explain this voltage drop.

    David

Reply
  • Hi Jørgen,

    I am testing only with this code, the rest is commented.

    I have done more testes and I found out that our subcontractor sent us the wrong revision on the schematics. An analog part of the schematics was missing. Sorry for the inconveniences.

    So we had an analog part with an enable pin which was floating. This analog part generate a voltage between 0 to 1.5 V to P0.03 of the nRF52840 which wasn't configured.

    When the analog part is on and the MCU IO isn't configured, the MCU is waked up and the voltage drops to 2.5 V or  2.3V.

    But when the IO is configured in input mode, the voltage doesn't drop and stays at 2.7 V.

    Is the IOs in high impedance mode when they aren't configured ?

    I can't explain this voltage drop.

    David

Children
No Data
Related