Hallo zusammen,
ich betreibe einen ESP8266 als Webserver, welcher 4 Relais schaltet.
Funktioniert alles soweit nur aus mir unerklärlichen Gründen wird die
Verbindung, nur bei jeder zweiten Übertragung an den Browser,
(unterschiedliche Browser ausprobiert) geschlossen.
Habe vermutet das die bei "AT+CIPSEND=0,888" nicht richtig ist jedoch
habe ich mehr und weniger Zeichen durch probiert und es ändert nichts an
dem genannten Problem.
Bin jetzt nicht so sehr mit HTML vertraut, könnte es an dem HTML CODE
liegen?
Bei jeder Anfrage vom Browser wird folgender Code abgearbeitet:
Wenn du ihm sagst, dass du 888 Bytes senden willst, dann musst du auch
genau 888 Bytes senden.
Du solltest besser vorher ermitteln, wie viele Bytes es denn genau sein
werden.
strlen() wäre dazu zum Beispiel hilfreich.
Außerdem mache Dir mal Gedanken über "Strings im Flash". bei der ob
gezeigten Programmierweise wird Dir nämlich sonst sehr bald das RAM
ausgehen. Alle deine Strings liegen permanent im RAM!
Warum schließt du drei Verbindungen, sendest aber nur auf einer?
So wie ich das hier sehe, empfängt dein Webserver Vebindungsanfragen vom
Web browser und sendet dann HTML Seiten zurück. Du musst dazu schon den
richtigen Kanal (als Variable) benutzen. Wenn der ESP einer Vebindung
zum Beispiel die Nummer 4 zuweist, geht bei Dir gar nichts mehr.
Das mit der Länge ist mir bewusst, habe auch schon mit der zahl der
Zeichen variert.
Sollte nur ein Teilnehmen zugreifen sollte dieser im Normalfall Channel
0 erhalten, dass muss noch genau angepasst werden das ist der erste
Output.
Aber ich bekomme ja jedes mal die Seite nur sie wird halt nur jede
zweite übertragung geschlossen.
> Sollte nur ein Teilnehmen zugreifen sollte dieser im Normalfall> Channel 0 erhalten
Nein, die Kanalnummer hängt vom Glück ab, vor allem, weil jeder Browser
mehrere Verbindungen gleichzeitig zum Server aufbaut. Selbst wenn deine
Seite nur aus HTML Text besteht, versucht der Browser ab und zu das Bild
favicon.ico zu laden.
> nur sie wird halt nur jede zweite übertragung geschlossen.
Woran genau erkennst du das?
Kannst du die Antworten des ESP Moduls protokollieren?
Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.
Wichtige Regeln - erst lesen, dann posten!
Groß- und Kleinschreibung verwenden
Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang