Hallo an alle, Ich möchte den Funktionsweise des OTA Upgrades verstehen, und da habe ich diesen Beispielprojekt übersetzt [[https://github.com/espressif/esp8266-rtos-sample-code/tree/master/06Cloud/FOTA_Demo]] , und in den Flash heruntergeladen. Es funktioniert, das Modul verbindet sich mit dem Server,die Datenübertragung wird gestartet, aber das Code wird offenbar nicht so ausgeführt, wie erwartet (Siehe Anhang, und readme.md im link). Es wird die Ganze Datei übertragen, und danach bleibt der Kontroller hängen. In der Funktion "upgrade_download" (user_main.c) wird die erste if() Anweisung nicht ausgeführt. Das Problem könnte bei strstr() Funktion liegen. Ist ja auch egal. Was ich eigentlich fragen möchte ist das, wie ich mein eigene Übertragungsprotokoll implementieren könnte. Ich habe keine Quellen gefunden, die erzählen, wie der Update durchgeführt werden soll. Der SDK ist nicht besonders gut dokumentiert. Hat jemand da vielleicht Erfahrung damit? mit Arduino würde ich mich nicht gerne beschäftigen, und bei rBoot bräuchte ich auch selber das Speichern der übertragene Daten zu implementieren, was ich aber nicht ganz genau verstehe. Vielen Dank (: (Entschuldigt mir wegen meiner Grammatik, deutsch ist schwierig)
Habe einen dump gefertigt und es herausgefunden falls jemand das selbe Problem hätte: Die Variable sumlength hatte den Wert 0, weil erst nur 17 byte vom Server verschickt wurde, obwohl Die Content-Length erst in einem späteren Nachricht kommt. Es wird aber die else Anweisung ausgeführt, und da in der if() Anweisung totallen == 0 nicht mehr wahr wird.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.
