High current consumption during idle_state

nRF52810, sdk 17.0.2, softdevice s112

I am working on a modified ble_app_uart.c example on a custom board that has a motion sensor.

The task is to start advertising for 15 seconds when a movement occurs. The motion sensor sends an interrupt to the nRF when motion is detected.

I am trying to reduce the current consumption during advertising and hope to get any hints on what to check.

To see what draws power I have disabled ad converter, advertising, spi module so I think the nRF is not doing anything at all.

I am OK with the "sleep mode enter()" which call upon "sd_power_system_off();"  which reduces the consumption to < 20uA and the nRF wakes up if an interrupt from the motion sensor is detected. But I would like the "idle_state_handle();"which calls "nrf_pwr_mgmt_run();" to lower the consumption to less than 0.7mA. Anyway it does something good because if "idle_state_handle(); is not executed the currrent consumption is 4.5mA

So, is there a way to lower the current consumption more calling the idle_state_handle() routine? 

for (;;)
{
    if ((!advertising_is_on) && (!BLE_is_connected))
    {
        sleep_mode_enter(); // Lowers current consumption to less than 20uA
    }
   else
   {
        idle_state_handle(); // This lowers the consumption from about 4.5mA to 0.7mA
   }
}

Related