It's the power, stupid!
Power, always power stability issues. I had some really weird problems I couldn't diagnose. When docked, nothing to worry about. Stable for days / weeks.
But when the Roomba was on the move, the connection would drop out and the ESP would need a full reset.
First, I thought it was some software glitch / memory leak. So I made a very simple version of the software running on the ESP. This only has OTA and a MQTT connection with Home Assistant. No Roomba632 library, no positioning, sensorstream or MPU shenanigans. (this would actually be enough for most tinkerers to make your Roomba "connected")
This did not solve the problem. It must be hardware related then...
Next suspect was the WiFi connection / access point. So I implemented a sensor for the signal strength to diagnose. Tried different WiFi access points. Changed out the antenna. But none of this solved the stability.
When closely observing the Roomba, it would mostly drop out when it was bouncing around almost getting stuck. My next hypothesis therefore was power issues. When it would almost get stuck of in a difficult position, the motors draw extra power. I'm sure this does not help for a stable power situation. Because the ESP is running at 160MHz instead of 80MHz, this situation is not helpful.
How about a quick hack to ultimately rule out power stability? All one needs is a separate, stable and mobile power source. AKA batteries:

6 AA batteries in 3 battery holders will do the trick!
Believe it or not, it's ugly but it works! Much rejoicing!
I ordered a big fat 3300 uF 6.3V electrolytic capacitor. This gives a smooth and stable power rail for the ESP.

All problems are solved and power will never be an issue again. Right?
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.