I have an ESP01S module with the deep sleep mod, a DHT22 is connected to via GPIO 0.
All connected to my Home Assistant, working but recently giving me loads of -50C readings from my back yard.
It’s configured to wake for 140 seconds, take and submit temperature readings then sleep for 20 minutes, this has been working perfectly.
Gives me just over a week of runtime on 2 18650s.
To fix the sporadic readings I soldered a 4.7K resistor from the DHT22 data pin to 3.3V on the ESP01S. ESP01S GPIO 0 is now pulled high.
This seems to have fixed the sporadic readings but my ESP01S now fails to wake from deep sleep.
All connections look good, the deep sleep mod wire seems connected still.
So I wonder, is the ESP01S failing to wake from deep sleep because it’s GPIO 0 pin is permanently high?
As interesting as your story is and the sequence of events you took, it’s all not very useful information and it’s really hard to tell without seeing your esp config or the logs.
The esp01 pinout sais it uses GPIO0 to enter bootloader mode. It needs GPIO0 pulled to Gnd for bootloader mode but, pulling it High may have negative consequences especially if GPIO0 needs to be in a floating state.
Are you using a dht22 sensor or sensor module? The sensor modules already come with pull-up resistors and dont need an external one.
IDK though, I can only guess with the little information you provided and nobody likes guessing games.
Sorry for not posting any real detail, the esphome log shows the ESP01S going to sleep and that’s all.
No subsequent ‘wake up’ log lines, nothing at all.
My question was really aimed at someone who’d recognise that an ESP01S won’t wake from deep sleep if it’s GPIO0 is high.
To test my theory I have just moved the DHT22 from GPIO0 to GPIO2.
And the ESP01S now wakes from deep sleep.
So I assume my theory was correct that an ESP01S won’t wake from deep sleep if it’s GPIO0 is high.