Hardware Problems
Hardware Problems - Bugs are not limited to software
The EP8266 is great: It gives your IoT device WLAN and IP connectivity for only a few bucks.
On the other hand, the ESP8266 is quite a hand full: It creates power spikes that have negative impact on its own operation and possibly that of your circuit, it experiences out-of-the-blue resets that have to be dealt with, and it suffers hang-ups that can only be cured with a hardware reset or uttering "The IT Crowd" mantra ("have you tried turning it off and on again"; https://www.youtube.com/watch?v=nn2FB1P_Mn8).
I have had A LOT of problems with the ESP8266 before I had a lot of fun. Some can be solved with the proper power supply, a bit of hardware, and somewhat sophisticated error handling. Other, more persistent problems can only be addressed with resetting the chip or even cycling the power.
- Sufficient power-supply - Some chips suck (power)
- Staying well-grounded - Why not everybody can have their own GND (ground)
- Flaky ESP8266 Behavior - It's not always you, sometime the ESP8266 has it's own mind
- C++ is not Java - C++ can be harsh for people used to Java. Especially memory handling holds a number of surprises.
- Fun with power LAN adapters (don't plug your fridge into one)