Esp zu esp per tcp/http - update des empfängers

Icb hab 2 ESP, die gegenseitig Daten austauschen - auch Steuerbefehle.
Daten werden per async server zur Verfügung gestellt (/data und da gibt es ein Zeichenfolge mit Trennzeichen)
Der Empfänger holt sich das per GET und soweit funktioniert das uns passt - empfänger durchläuft alle paar sec eine Funktion und holt die Daten.
Nachteil: Empfänger muss bis zum nächsten Zyklus warten, bis er Steuerbefehle bekommt.
Gibt es eine Methode mit der die Empfängerseite sofort die Daten übernimmt wenn sie der Sender zB per POST oder etwas ähnliches.. zur Verfügung stellt.?

(bei den Infos von Werner Rotschopf bin ich mir nicht sicher, ob ich auf der Serverseite wieder regelmäßig eine Abfrage anstoßen muss)

naja wenn der CLIENT sich Daten vom SERVER holt dann stehen die Daten zur Verfügung.
du könntest den "Zyklus" ja auf das runtersetzen was dir geeignet erscheint, auch eine halbe Sekunde ist möglich (um eine Hausnummer zu sagen).

Das was auf meiner Homepage steht, ist immer der Client holt vom Server.
Auch ein POST ist eine Datenübertragung vom Client zum Server die vom Client initiert wird.

Auf einem ESP kann sowohl ein Client wie auch ein Server laufen, dann könnte auch der andere ESP wieder den Datentransfer initieren.

Der umgekehrte Weg wäre eben, dass der Client einen Websocket aufmacht und der Server dann Daten von sich aus zur Verfügung stellt.

Was willst denn genau machen?
Welche Daten in welcher Menge in welchem Intervall fallen am ESP_A an die zum ESP_B gehen sollen?
Welche Daten in welcher Menge in welchem Intervall fallen am ESP_B an die zum ESP_A gehen sollen?

Danke für die Erstinfo
es geht un recht wenig Daten .. ca 40 Zeichen. Darin sind auch ein paar Steuerbefehle, die von einem ESP mit TFT Screen zum anderen gesendet werden.
Das Abholen der Daten dauert so ca 100-300 ms auf der Clientseite - manchmal auch etwas länger - und der macht das alle 3 sec.
Es laufen noch einige andere Funktionen auf dem ESP (4" TFT mit Daten beschreiben - auch 200 ms , Async Server, TemperaturdTen von den Sensoren holen - eh async) und wenn ich das zB auf einen sec runtersetze ist er nur noch mit Datenauatausch beschäftigt. Dachte es gibt da vlt etwas, das zB Serverseitig eine Art Interrupt auslöst oder so ähnlich) und es geht dann triggerabhängig.

das kommt mir sehr langsam vor. Das sollte wesentlich schneller sein.
(eher unter 100ms)

2 Alternative habe ich dir bereits geschrieben, eine war Websocket die andere war die Client-Server Rolle zu duplizieren (in vice versa).

die 3 Fragen in meinem Post hast du nicht beantwortet.

es laufen bereits auf beiden ESP server und clients und sie tauschen gegenseitig Daten aus . wie beschrieben passt das ja alles und funktioniert.
Ich wollte einfach mal nachfragen, ob es eben eine andere Methode gibt - dann könnte ich nämlich den intervall von 3 auf 5 oder 10 sec erhöhen für die Messwertdaten (die , die nur zur Anzeige verwendet werden)
Ja , manchmal gehts auch in 30ms , aber eben nicht immer ..
Ist das bei Websockets besser ? triggert da der Sender den Empfänger?

Hallo,
Du konntest die Datenkommunikation zwischen den ESP auf TCP umstellen. Da kann dann jeweils der Client einfach senden wann immer er will.
Klar das geht bei HTTP auch, dauert aber sicher etwas länger und es braucht einen Request.

Wen es ESP32 sind ging auch ESPNow noch , der kann wohl beides gleichzeitig.

HTTP basiert auf TCP. Ist "nur" etwas mehr an overhead (im wesentlichen die HTTP Header Fields).
Imho wird sich das nicht viel nehmen, wenn man HTTP weglässt und nur TCP/IP macht.

Wenn man nicht daran dreht, fügt der Server nur ca das dazu:

HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 1056
Connection: close

Hallo.

Das ist mir schon klar. Mir ging es um den request auf den man nicht verarbeiten muss.
Eventuell gibt es aber ja auch ein Http ohne. Ich hab das aber noch nie so verwendet.
Da kennst Du dich aber sicher besser aus.

wenn er Daten übertragen will (deshalb machter ja einen Request) wirst am Server die Daten auch übernehmen müssen. Zurückschicken kannst dem Client ja ein einfaches/leeres 204 (no content)

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.