Trying to use deep sleep with advanced features on an esp32-c3

Hi, I am not sure where to start this, it could be related to several things.

I am trying to setup an ESP32-c3 with a wake up from two different pins.

The esp32_ext1_wakeup feature is not too well documented, so first, this could be something to improve in the doc.

After some research, I finally found how to write the code without getting errors at the yaml validation.

Alas, at the compilation level I got errors, Okay… some more research, then I find a post where it says, that, finally it would not work on the C3 devices ???
Here is the link to the github post:

The fatal answer right at the bottom of the post.

Hmm, Where are the limitations listed in the doc ?

And now the big questions:

  • Is there a work around (apart from adding some more circuitry outside).

  • Is there a list of ESP32 devices that really support this feature in ESPHome ?

  • Will there be a change at some point for the c3, or should I request a change ?

From the Expressif doc, I do not see that the limitation is the chip itself (I may be wrong), so I assume this is rather in the ESPHome implementation of ESP32-c3.

Any comment or ideas are welcome.

Sounds like a hardware limitation. Personally I’d just get another board.

Not that I’m aware of. I think part of the issue here is that the new esp32 variants (C3, S2, S3 etc) have added more variety /complexity to the hardware landscape, and the ESPHome docs have struggled a bit to keep up.

Well ssieb who closed that issue knows the project very well. Sounds like it needs a docs update to explain it’s not possible plus some config validation to flag it to users if they try. If you want to contribute to the above I would ping ssieb on Discord, making reference to this thread, and ask if you can be of any help (including confirming if it’s a hardware limitation and raising any change requests wanted).

Thanks a lot for this detailed answer. I already tried to find out if other types would compile without throwing insults at me. Looks like esp32-s3 is a good candidate. But I have already a few c3 boards and if I can avoid buying again, all the better.
As I looked at the Arduino side of things(documentation), I was under the impression that this advanced option for deep sleep is available with c3 chips.
In any case, I will do as you suggest and contact ssieb.

1 Like

S3 is probably fine now. But you will have no problems with an original esp32.

If your project is battery powered you need to be very careful in selecting a board for optimal low power - the circuitry needs to be designed for it.

Maybe this thread is of some help in selecting a board.

Thanks for the additional tips. I sent a direct message to @ssieb on the discord server, but he did not seem to reply. For the time being, I will try to stick to my c3 boards and I will just split the two inputs to one GPIO pin with schottky diodes and try to workaround my problem that way. Not ideal, but I prefer that to buying, again, some new hardware that I do not know yet.

I will update this thread later when I have something relevant.

1 Like

Just send it on the ESPHome Discord “General Support” thread. He’ll quite likely reply there…

Something interesting, but maybe it is already known: I was programming a board, ESP32-c3 super mini. First, I did not use my antistatic mat, and I probably fried one that way. :face_with_open_eyes_and_hand_over_mouth:
Now the second was showing inconsistent results regarding the wifi connection. This was until I noticed that it was bad whenever I put it on the breadboard. Just dangling it on a USB cable, everything was fine.

Apparently, the breadboard has a big dampening effect on the signal. So I bent the pins 90 degrees on one side and installed the circuit vertically. Now everything is OK, I can experiment some programming.

Yes, lots of similar reports on the forum. There are “bad batches” floating around too.

I looked at my c3 boards, and yes, they look like the ones with the small gap, but I suspect this is more complicated than that. If they do not lay flat on a breadboard, they seem to work ok.
Anyway, I ordered s3 boards now and also c6, as I wanted to look at the zigbee
option and realized that it needs again another type. :face_with_raised_eyebrow:
Btw, I think this tread can be closed. The solution is probably to use an S3 board.
Thanks for the help.

1 Like