Enable Deep Power Down mode of external flash on radio boards using Connect stack
12/341/2018 | 02:26 PM
All Silicon Labs EFR32 radio board equipped with external SPI flash memory. Although, the standby current consumption of these devices are low some application need to eliminate even this amount of current consumption to reach extremely low power consumption (the achievable current consumption of a Connect based application exploiting Connect's lowest power mode (EM2) is ~2-4uA)). This mode of the SPI flash called "Deep Power Down" mode, which is available by sending the 0xB9 command to the flash (on the SPI interface).
First, the SPI Flash plugin must be enabled in AppBuilder (Plugins tab):
Don't forget to re-generate project files.
Beside enabling the SPI Flash plugin it is necessary to add the initialization and deep power down command to the project by calling the two API functions below:
halEepromInit()
halEepromShutdown()
It is practical to call these functions at startup of the application, for example from emberAfMainTickCallback() which located in flex-callbacks.c like in the example below:
Enable Deep Power Down mode of external flash on radio boards using Connect stack
All Silicon Labs EFR32 radio board equipped with external SPI flash memory. Although, the standby current consumption of these devices are low some application need to eliminate even this amount of current consumption to reach extremely low power consumption (the achievable current consumption of a Connect based application exploiting Connect's lowest power mode (EM2) is ~2-4uA)). This mode of the SPI flash called "Deep Power Down" mode, which is available by sending the
0xB9
command to the flash (on the SPI interface).First, the SPI Flash plugin must be enabled in AppBuilder (Plugins tab):
Don't forget to re-generate project files.
Beside enabling the SPI Flash plugin it is necessary to add the initialization and deep power down command to the project by calling the two API functions below:
halEepromInit()
halEepromShutdown()
It is practical to call these functions at startup of the application, for example from
emberAfMainTickCallback()
which located inflex-callbacks.c
like in the example below:After applying the above the current consumption should be reduced by ~8-10uA.