Page 1 of 1

Tickless Idle with Light sleep

Posted: Thu Oct 12, 2017 8:49 pm
by Lucas.Hutchinson
Hi Espressif folks,

Just wondering if tickless idle support (with automatic entry and exit of light sleep) is planned (or already implemented) in the IDF?
It would be good it we could get an estimated IDF version in which this might be implemented.
I am sure this has been discussed internally and is probably on the internal wishlist of the espressif staff. I have seen it mentioned in the esp_sleep `esp_light_sleep_start` function comments.

On a related note: Will bluetooth implement some form of automatic light sleeping between connection intervals in the future? If it will, can we get an estimated IDF version this is planned to be implemented in.

Thanks for all your hard work!

Re: Tickless Idle with Light sleep

Posted: Thu Oct 12, 2017 9:41 pm
by ESP_igrr
We will hopefully have the first part of the power management implementation merged next week, however it will not support automatic light sleep yet (only frequency switching). We have already implemented automatic light sleep, but currently it relies on a few hacks, plus it needs much more testing and code cleanup before we can release it. I think the automatic light sleep (including RTOS tickless idle and WiFi sleep) will be coming in 3.1.

Bluetooth sleep (similar to modem sleep of WiFi driver) is planned, but i can't give you a timeline for it. Technically it is more complex to implement than WiFi sleep because BLE needs much lower latency, and going in and out of light sleep can take quite a bit of time (mostly due to PLL and Flash startup time).

Re: Tickless Idle with Light sleep

Posted: Thu Oct 12, 2017 11:30 pm
by Lucas.Hutchinson
Thanks for the quick reply @ESP_iggr.

Sounds great!

A couple more questions:

- With the changes that are coming next week (ish) to reduce the system clocks for sleeping, will this work with BLE to improve power consumption?

- With the automatic light sleep that is currnetly in the works, i take it that if BLE is enabled the processor will not actually enter light sleep mode as the BLE task will hold the system awake? (this is at least until there are some workarounds to the light sleep ble issues you mentioned)


Thanks again!