eriksl wrote:I have a whole stack of esp8266's that are running for months without resets. In fact they never reset unless I tell them to.
Issues that come to my mind:
- sloppy programming
* not returing to the SDK in time so the watchdog acts
* memory corruption due to bad pointers or bad programming
* use of malloc() and friends which are known to be buggy
* silent bugs due to insufficient warning level of the compiler
* stack overflow due to too much/large auto variables on the stack (which you can't do on a microcontroller)
* not respecting the 32 bit alignment requirement for flash reads
* too long interrupt service functions
- old SDK version
- problem with the flash memory (replaced it yourself, like I do?)
- problems with the power supply (insufficient regulation or insufficient capacity to satisfy peaks of 500 mA)
- problems with I/O pins, where too much current is drawn, which heats the die (never tie the I/O's to ground or +3.3, always use a resistor)
- RST line insufficiently pulled up (use 10k, don't rely on the internal pullup, it's insufficient)
- Too high or too low voltage.
You missed sunspots.
(kidding)