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

Is it possible to verify DCDC is working via Software testing

Dear Support Engineers

I am in the process of designing the automated testing platform for a 52832 based device and would like to test to make sure the components/devices are reflowed properly. Especially, I am concern that if L2 and L3 connected to DCC and DEC4 is not soldered on properly, we would not know as the board would just default to LDO operation. I would like to find out if it is possible to detect that the DC/DC is working properly without additional testing hardware. If this is not possible, how would you recommend the test be conducted automatically? I can think of 2 options:-

1) Having a external probe looking at DCC for buck operation waveforms as specified in the link below.
devzone.nordicsemi.com/.../212990

2) Measuring the current difference when transmitting with DC/DC enable and disabled.

It would seem to me that option 1 would be more complex. I am thinking of using option 2. Can you please let me know if it is possible to detect DCDC operation in software or if there is a simpler option 3 that I missed.

Best regards,

Nelson

 

  • Thank you Andreas,

    My apology I have double checked my test code and the above test was actually run using LDO mode.(NRF_POWER->DCDCEN = 0;) I have included the test code below for your reference. 

    int main(void)
    {
        bool erase_bonds=true;
        uint32_t err_code;
    
        // Initialize logging
        log_init();
    
        NRF_POWER->DCDCEN = 0;
        
        NRF_CLOCK->TASKS_HFCLKSTART = 1;
    
        // Wait for clock to start
        while(NRF_CLOCK->EVENTS_HFCLKSTARTED == 0) ;
        //  Use NRF_CLOCK->TASKS_HFCLKSTOP=1;   to stop later
    ...
    }

    I have therefore re-executed my test with enabling the DCDC at the beginning of the board initialization. Please note the HF clock is started to force the DCDC mode for easy measurement with multimeter. Please let me know if I am wrong that DCDC is active with HF clock active.

    int main(void)
    {
        bool erase_bonds=true;
        uint32_t err_code;
    
        // Initialize logging
        log_init();
    
        NRF_POWER->DCDCEN = 1;
        
        NRF_CLOCK->TASKS_HFCLKSTART = 1;
    
        // Wait for clock to start
        while(NRF_CLOCK->EVENTS_HFCLKSTARTED == 0) ;
        //  Use NRF_CLOCK->TASKS_HFCLKSTOP=1;   to stop later
    ...
    }

    And you are correct, the board won't even start without the inductor installed. After I reinstalled the inductor, the voltage at DCC and DEC4 are both 1217mVDC using my multimeter. So basically, we can be sure that reflow is done properly if we know that that software has enabled DCDC at the beginning of the main function as follows

    NRF_POWER->DCDCEN = 1;

    and the board program starts properly.



    Thank you again for your great insight!

    Best regards,

    Nelson

  • Hi Nelson,

     

    Alright, good catch. The DCDC will run with all sources for both HF and LF clock (depending on the load as mentioned), so this method checks out.

     

    Best regards,

    Andreas

Related