The other day, I was reading a discussion about ESP32 sleep modes. And it seemed to me that things were not very clear, especially about the light sleep mode. So I jumped at the opportunity to do some tests of my own, which I’m sharing with you today in the form of a comprehensive tutorial to try to clear up the fog.
Why Is This Tutorial Of Interest To You?
My initial intention was to do some experimentation with the different sleep modes of the ESP32. But while making the circuit that served as a support to illustrate my experiments, it appeared to me that I could take advantage of it to detail a lot of other things. And notably by taking care to address issues I’ve encountered in other RNT Lab posts over the last few weeks.
So I guess that even if you’re not primarily interested in sleep modes, you’ll find a lot of interesting things in this tutorial that you can use in many other applications. Take a look at it, I’m sure you’ll find something to suit your needs:
To illustrate my point, I chose to implement a rather simple circuit:
But through this relatively simple exercise, I propose to explore some programming techniques that you can reproduce in your own projects, to properly handle buttons, or to control the time flow and regulate the frequency of execution of the main loop, or make your microcontroller able to perform several tasks simultaneously. The ultimate goal of this tutorial will be to address what makes the big difference between the different ESP32 sleep modes.
As a result, this tutorial is finally quite dense, as I tried to detail all the points I covered to be as clear as possible. I hope that I succeeded and that you will be able to apply these concepts in your own projects.
I hope you’ll enjoy it, and that I didn’t make it too boring. I hope that I’ve gone into enough detail to make sure you understand it. If there are still some grey areas, I encourage you to come and discuss with me on this thread. I will be happy to answer your questions and help you resolve your issues.
Thanks for sharing that!
I’ve read all parts of your tutorial and I’ve learned a lot of new stuff. Thank you.
I’ll try to come up with a summary of your tutorial to post on the Random Nerd Tutorials website.