GPIO Settings to achieve low power consumption during sleep

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Anonymous
Not applicable

Hi,

I'm currently trying to reduce power consumption during sleep mode. The current during sleep is now ~40uA which is a little too high

to satisfy our initial requirement of 20uA. With a simpler application I achieved around 30uA which would help us.

I noticed that I can set the GPIO pins that we use to drive LEDs as input with a pull down to achieve relatively low currents compared to leaving them floating.

We also have a number of unconnected pins that I leave unconfigured for now, I would like to know the default configuration of those.

Notice that I'm using gpio_configurePin() instead of whatever is provided with bleprofile_GPIOInit(). Do I have to configure them in any specific way?

Is there any action I should take to configure the GPIO pins before allowing the sleep modus? I would assume setting them as inputs or to 0V would help, but I guess you have some guidelines for this event already.

Would using GPIO_GLOBAL_INPUT_DISABLE help me in anyway? I couldn't find any example code but it sounds interesting.

I'm pretty sure somebody asked this before but I couldn't find any good info with the search engine.

Regards,

Kilian

1 Solution
asridharan
Employee
Employee
10 comments on KBA 5 comments on KBA First comment on KBA

> Would using GPIO_GLOBAL_INPUT_DISABLE help me in anyway?

This will high-z all GPIOs, so I don't think you want to do this.


> We also have a number of unconnected pins that I leave unconfigured for now, I would like to know the default configuration of those.

The default configuration of all GPIOs when coming out of power-on-reset is input enable. GPIOs that are not configured (either using BLE_PROFILE_GPIO_CFG or gpio_*) will be input/output disabled before application create is invoked.


> Is there any action I should take to configure the GPIO pins before allowing the sleep modus?

No, nothing needs to be configured. Input enabled with a pull-down is safe, though if something external to the chip is driving this input, then your system current will go up.

View solution in original post

2 Replies