Guten Morgen!
Ich versuche gerade mittels ESP32 auf einen Server zuzugreifen und diesem über JSON Status zu senden und dabei auch Befehle zu empfangen.
Ich verwende hierfür Arduino IDE v2 und den ESP32-Core 3.3.10 (aktuell). Getestet habe ich aber auch den Core 2.0.17 sowie 2.0.9
Die Verbindung baue ich über SSL auf. Ich habe einen merkwürdigen Fehler, den ich nur durch Falschinitialisierung meines Codes erklären kann, diesen Fehler aber nicht finde:
Der ESP resetet sich dabei selbst, wenn er die Funktion:
1 |
http.addHeader("Content-Type", "application/json"); |
aufruft. Kommentiere ich das aus (z.B.: durch ein return; davor), läuft der ESP32 stabil. Wichtig: der Reset tritt erst Minuten oder Stunden später auf. Die Abfrage erfolgt aber alle 10 Sekunden. Der Heap wird auch nicht fortlaufend kleiner sondern stabilisiert sich.
Der Resetcode für CPU0/1 sowie den ESP selbst sind dann 12/12 und 4
Der Server liefert die JSON nur als SSL aus und die json.php loggt mir auch die JSON-Frames vom ESP32. Bedeutet für mich, die Verbindung funktioniert.
Dabei spielt es keine Rolle ob ich
1 |
WiFiClientSecure server_client; |
2 |
server_client.setInsecure(); |
setze oder nicht! Hier müsste eigentlich dann keine Daten ausgetauscht werden?
Frage: Könnte jemand über den Code drüber schauen und eventuell einen groben Schnitzer sehen der das Verhalten des ESP32 erklärt?