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
esp32c6 gpio wakeup stop working if CONFIG_PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP=y (IDFGH-12693) #13683
Comments
@AxelLin In the design of the esp32c6 chip, GPIO (Digital IO is located in the TOP power domain), Configuring CONFIG_PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP=y means that the TOP domain will power down during sleep, it means that Digital IO cannot be used as a wake source, In this case you can use LPIO or EXT1 as the wake source, behaving in the same way as GPIO (Digital IO). Use of EXT1 or LPIO wake configurations can be found sleep_modes.html#external-wakeup-ext1 |
@esp-lis |
@AxelLin Our recently optimized power domain management strategy (which should be included in version 5.3+), I guess on esp-idf-5.2 branch, CONFIG_PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP=y doesn't really power down TOP domain. You can you the follow code to check the TOP domain state during system go to sleep. |
v5.2: pd_flags:2c15 so the pd_flags is the same for v5.2 and master. BTW, I have apply this fix for my v5.2. (#11858 (comment) to make modem_domain_pd_allowed() return true) |
This is strange, pd_flags:2c15 means that the TOP domain will be powered down during sleep.
Based on the above code, I can't see any more problems, Can you share more information about GPIO wakeup configuration? |
There is nothing special for the GPIO wakeup configuration. |
I'm unable to construct a case like this, could you please provide the simplest project that has this issue? It can help me locate the problem. |
Answers checklist.
IDF version.
v5.3-dev-3593-g64a1ed07d9, v5.4-dev-12-g3d813afa01
Espressif SoC revision.
ESP32C6
Operating System used.
Linux
How did you build your project?
Command line with idf.py
If you are using Windows, please specify command line type.
None
Development Kit.
Custom Board
Power Supply used.
USB
What is the expected behavior?
esp32c6 gpio wakeup stop working if CONFIG_PM_POWER_DOWN_PERIPHERAL_IN_LIGHT_SLEEP=y
Note, this was working in v5.2.1-443-g2ba5320112
What is the actual behavior?
press the gpio button seems has no effect.(device does not wake up from sleep)
Steps to reproduce.
I test it with my application code which I cannot share here.
The gpio wakeup related code are as below:
It should be easy to reproduce it with some modification of examples/system/light_sleep/ example code.
Debug Logs.
No response
More Information.
No response
The text was updated successfully, but these errors were encountered: