Wieso funktioniert mein Code nur auf dem Arduino Mega

So eine Zeile wie:

client.println("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=5 value='einschalten'></form></td>");

verbraucht alleine schon 113 Bytes RAM-Speicher. Das ist in Anbetracht der Tatsache, dass ein UNO überhaupt nur 2048 Bytes RAM-Seicher hat, eine Menge Holz.

Darüber hinaus verwendest Du im Programm die speicherverschwendenden String-Objekte.

Ich schätze mal: Für Deine RAM-verschwenderische Art der Programmierung hat ein UNO viel zu wenig RAM.

Versuche mal, konstante Texte wie die oben genannte Zeile mit dem F-Makro zu senden, so daß der Text nur Flash-Speicher aber keinen RAM-Speicher benötigt. Beispiel:

client.println(F("<td align='center' bgcolor='#222222'><form method=get><input type=submit name=5 value='einschalten'></form></td>"));