void loop() stops running after an hour or so
A year ago I had the same problem, it seems there is a bug with the String library. I recomed you this:
1- Easy: use the String library on development, but for the &quot;release&quot; change everything to use C native strings (char name [SIZE])
2- Complex (and worse in my op.): set an interrupt every half an hour (or whenever with margin before it crashes) that activates an output connected to the reset pin of the Arduino. I've seen this on the internet but couldn't make it work.
Link to Arduino Forum's thread