I'm working on a low power application using EFR32 and Flex Gecko demo board. I need to reduce the current consumption of my system, turning on the radio only for a brief period. For the most of the time the radio should be shut down. However I don't find any function in the RAIL API to shut down the radio. I've tried to change the state (from RX to IDLE) but my current consumption is always around 10 mA. I need to reach the current consumption shown in the table below. Is there any way to shut down the radio? Thanks
Setting the radio to Idle brings down its energy consumption to almost nothing. There could be other causes for power consumption. A simple method to diagnose this would be to enter EM2 right after Chip_Init() and measure power, and then increasingly enable parts of the system while repeating this measurement.
10mA is a large amount of current to be consumed continuously; you'll surely get to its root cause as you enable modules used by your application in small steps.
Finally I solved the problem: as you have said, the idle mode is not enough to reduce the current consumption. The solution is to shut down the radio calling the idle function with the shutdown flag option: