MENU

Fun & Interesting

ESP32 Deep Sleep: Ultra-Low Power Coprocessor

atomic14 32,345 lượt xem 3 years ago
Video Not Working? Fix It Now

We're taking an even deeper loop into deep sleep in this video. As always, big thanks to PCBWay for sponsoring this video - check them out at https://www.PCBWay.com/?from=atomic.

We're following on the previous deep sleep deep dive video (https://youtu.be/YOjgZUg_skU) and taking a look at the Ultra Low Power (ULP) coprocessor.

The ULP coprocessor is a really interesting part of the ESP32 device. It's a really powerful additional processor that can run even when the main device is in deep sleep.

I had to learn how to use this to get deep sleep working well in my DIY e-Reader project (https://youtu.be/VLiCgB0odOQ).

There is a plugin for the Arduino IDE that will add support for the ULP assembler - https://github.com/duff2013/ulptool and there's also a C compiler that will generate ULP assembly code - https://github.com/jasonful/lcc

[0:00] Why are we here?
[1:14] What are we doing in this video?
[2:14] What is this ULP thing anyway?
[3:00] The ULP instruction set
[6:30] How to use it with PlatformIO
[8:50] How to use it with the Arduino IDE
[9:13] Waking up the main processors
[10:13] Reading GPIO pins from the ULP
[13:00] Sharing data between the ULP coprocessor and the main processors
[14:02] Writing to GPIO pins - Blink on the ULP

GitHub repo with the code is here: https://github.com/atomic14/esp32-ulp

Thanks for watching - I'll see you in the next video!

----
Patreon: https://www.patreon.com/atomic14
ko-fi: https://ko-fi.com/atomic14

Comment