-
Notifications
You must be signed in to change notification settings - Fork 7.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PowerManagement support #9083
base: master
Are you sure you want to change the base?
PowerManagement support #9083
Conversation
👋 Hello tshcherban, we appreciate your contribution to this project! Click to see more instructions ...
Review and merge process you can expect ...
|
@SuGlider @VojtechBartoska is it possible to migrate from patching SDK-Config in github actions to just copy corresponding sdkconfig.defaults.target? that would be a bit more easy editing defaults, separate them for different targets and reuse for some other purposes (i.e. copy for examples, use in CMake build checks). |
Actually we need to add this IDF sdkconfig changes to the Lib Builder scripts. The only way to changed sdkconfig and test it is by using Arduino as IDF Component and then build some examples that will verify how PM and light sleep will work. |
Found an issue IDFGH-11870 with IDF's UART implementation , it prevents UART usage with automatic llight sleep in some cases. |
@igrr @VojtechBartoska @SuGlider for a BLE PowerManagement - i dont have ESP32 board with an external crystal, so for that part I would need your help in testing. On an ESP32S3 I'm planning to use Main XTAL as low power source by default. |
@tshcherban - This is part of another Task which also wants to add Power Management feature based on automatic Dynamic Frequency Scaling (DFS). The proposal is that the user will be able to set the Clock Source for each peripheral and also set it in a Global way whenever necessary in order to increase DFS applicability. This should be ready for Arduino 3.0.0 final release. |
Yes, for sure. |
Test Results 62 files 62 suites 4m 34s ⏱️ Results for commit 80bcb52. |
Description of Change
Enables Power Management support for arduino sketches.
API changes
Extended
WiFi.setSleep
function to accept listenIntervalAdded
setAutomaticLightSleep
function to enable/disable automatic LightSleep (without changing the CPU frequency)Tests scenarios
Tested WiFi connectivity, BLE scanning, OneWire, TwoWire, SPI, Serial on ESP32, ESP32-S3, ESP32-C3 boards.
Related links
Solves #6563 partially