I am about to start new quite complex project with nRF52 and I thought that maybe it is high time to use freeRTOS port from SDK. As the device is going to be powered with a CR2032 battery I wanted to check how the current consumption looks like. There are some similar post on the Nordic DevZone so I have read them first. After that my impression was that there are some problems and the power consumption with FreeRTOS is not well optimized so it is not a good choice for battery devices. None of the posts I have read used SDK15 so I have decided to test it myself based on ble_app_hrs_freertos example.
If I understand correctly tickless idle should be the lowest power mode and there should be no extra interrupts needed normally by any RTOS. I have tried different freeRTOS configurations (for example using RTC instead of SysTick). I have also disabled nrf log module but I am not able to get the DC base under 780 uA.
In nrf52832 product specification I can see that typical ultra-low power current consumption for System ON, Full RAM retention, Wake on any event is less than 2 uA and thats what I would expect in idle state for application running with FreeRTOS and tickless idle enabled. I know that I can easily achieve such low values without RTOS (I already do that in another project) but my question is what is the lowest possible value for current in tickless idle for application with FreeRTOS. Has anyone achieved values that are near to those from product specification? It should be possible to achieve 2 uA with tickless idle, isn't it? If someone knows the recipe for the success it is welcomed to share the FreeRTOS config :).