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

Queries on Current measurement & how to reduce the same

Hello,

In addition to previous ticket I have further queries. I have a stringent requirement for reduction of Current consumption.

https://devzone.nordicsemi.com/support/230962

1) In ‘ble_app_blinky’ since SoftDevice is enabled, whether DCDC enabled by default or need to enabled explicitly by calling

                sd_power_dcdc_mode_set(NRF_POWER_DCDC_ENABLE) 

2) As mentioned below do I need to enable DC-DC only during BLE active and disable after BLE inactive.

https://devzone.nordicsemi.com/f/nordic-q-a/4211/nrf51822-power-consumption-when-ble-advertising-connected#post-id-18589

 

3) To my understanding, keeping build in “Release” mode will disable UART.

a) Below are the macros enabled in Release mode & Debug mode. But when I keep in “Release” mode still I am seeing debug prints on Terminal. Then what is the difference between “Release” & “Debug” builds.

"DEBUG; DEBUG_NRF" from solution in Debug configuration

"NDEBUG" from solution in Release configuration

b) As mentioned in below link, at the same time do I need to disable NRF_LOG_ENABLE explicitly do reduce current consumption. Please confirm.

                https://devzone.nordicsemi.com/f/nordic-q-a/35042/current-consumption-in-nrf52

 c) How to disable UART if still I am seeing debug prints on Terminal. Do I need to disable NRFX_UARTE_ENABLED macro or just disconnecting debug cable is good enough during current measurement.

 

4) Do I need to explicitly disable FPU unit. I have floating point calculations. But before going to sleep (System ON or System OFF) do I need to clear FPU as mentioned in below link.

                https://devzone.nordicsemi.com/f/nordic-q-a/15243/high-power-consumption-when-using-fpu

 

5) Before going to System OFF I called nrf_gpio_cfg_default() with all pins expect pin 13 & 14 (Buttons to wake-up the device). This function will configure pullup as NRF_GPIO_PIN_NOPULL. But as per below link, not sure with development kit whether do I need to change to Pullup or Pulldown.

https://devzone.nordicsemi.com/f/nordic-q-a/4505/system-power-off

 

Please let me know your inputs.

Thanks & Regards

Vishnu Beema

Parents
  • Hello,

     

    Thank you for your inputs. I have further queries.

     

    1) To my understanding, as part of Development kit Current measurement procedure, it’s only the current consumed by chip but not entire board. So even if chip control LED or any external sensor over TWI it will not measure entire current consumed. Please correct if I am wrong.

    a) But assume for my custom board if I want to measure entire current consumed by board (rather than just chip) then even pull-up in circuit will have some leakage currents even though nrf_gpio_cfg_default() is called.

     

    2) What should be the default pin configuration (input / output, pullup  / pulldown) if there are unused pins.

    3) After TWI operations I am calling nrf_drv_twi_disable(). But before going to deep sleep I want to configure SDA and SCL to proper state. So do I need to call explicitly nrf_gpio_cfg_default() or nrf_drv_twi_disable() is good enough.

    4) Similarly even for UART (Used for debug prints in ble_app_blinky), I am calling nrfx_uarte_uninit() which intern configure GPIO pins using pins_to_default(). In this function all are configured to input by calling nrf_gpio_cfg_default(). But as per table "Table 81:" in Product Specification, I am seeing RXD & CTS as Input and RTS & TXD as Output. Is this fine. If not then it is a bug in code. Please correct me.

    5) To my understanding, Low Power mode is set. If not do I need to call explicitly.

    sd_power_mode_set(NRF_POWER_MODE_LOWPWR);

     

    6) Whether do I need to configure unused pins as inputs or outputs. How about other settings with respect to unused pins so that Current consumption will not impact.

     

    7)  What is the default BLE Tx power output. Do I need to explicitly call sd_ble_gap_tx_power_set(0);

    8) Even if debug prints are enabled in “Release” mode, then what is the purpose of “NDEBUG” and “DEBUG; DEBUG_NRF”. Is this only for assertion validation.

    9) Whether can I use 1 ohm resistor rather than 10 ohm resister so that instead of dividing Voltage by 10 (V/10) to get current, I can consider Voltage directly as current.

      

    10) Whether current at 0.3 micro Amp (System OFF) & 2 micro Amp (System ON) be measured using Power Analyzer N6705B.

     

    Thanks & Regards

    Vishnu Beema

Reply
  • Hello,

     

    Thank you for your inputs. I have further queries.

     

    1) To my understanding, as part of Development kit Current measurement procedure, it’s only the current consumed by chip but not entire board. So even if chip control LED or any external sensor over TWI it will not measure entire current consumed. Please correct if I am wrong.

    a) But assume for my custom board if I want to measure entire current consumed by board (rather than just chip) then even pull-up in circuit will have some leakage currents even though nrf_gpio_cfg_default() is called.

     

    2) What should be the default pin configuration (input / output, pullup  / pulldown) if there are unused pins.

    3) After TWI operations I am calling nrf_drv_twi_disable(). But before going to deep sleep I want to configure SDA and SCL to proper state. So do I need to call explicitly nrf_gpio_cfg_default() or nrf_drv_twi_disable() is good enough.

    4) Similarly even for UART (Used for debug prints in ble_app_blinky), I am calling nrfx_uarte_uninit() which intern configure GPIO pins using pins_to_default(). In this function all are configured to input by calling nrf_gpio_cfg_default(). But as per table "Table 81:" in Product Specification, I am seeing RXD & CTS as Input and RTS & TXD as Output. Is this fine. If not then it is a bug in code. Please correct me.

    5) To my understanding, Low Power mode is set. If not do I need to call explicitly.

    sd_power_mode_set(NRF_POWER_MODE_LOWPWR);

     

    6) Whether do I need to configure unused pins as inputs or outputs. How about other settings with respect to unused pins so that Current consumption will not impact.

     

    7)  What is the default BLE Tx power output. Do I need to explicitly call sd_ble_gap_tx_power_set(0);

    8) Even if debug prints are enabled in “Release” mode, then what is the purpose of “NDEBUG” and “DEBUG; DEBUG_NRF”. Is this only for assertion validation.

    9) Whether can I use 1 ohm resistor rather than 10 ohm resister so that instead of dividing Voltage by 10 (V/10) to get current, I can consider Voltage directly as current.

      

    10) Whether current at 0.3 micro Amp (System OFF) & 2 micro Amp (System ON) be measured using Power Analyzer N6705B.

     

    Thanks & Regards

    Vishnu Beema

Children
No Data
Related