NEWS
Gelöst (MQTT): HTTP-Zugriff von Arduino langsam
-
Hallo, habe die letzten Tage einen Arduino über LAN an den ioBroker angebunden. Soweit funktioniert alles, ist aber leider für meine Zwecke sehr langsam.
Problem: Ich möchte einen ioBroker-Datenpunkt (String mit 2 Bytes "Nutzlast") vom Arduino aus über LAN "pollen", und das ca. alle 250ms.
Das Lesen des Strings dauert ca 25ms, weil nicht nur die 3 Bytes, sondern jede Menge "HTTP-Ballast" übertragen werden muß.
Ich bin NICHT an HTTP gebunden, die beiden Rechner "kennen sich" und es findet alles im Heimnetz statt - gibt es andere Möglichkeiten, damit die Variablenpollerei (es kann statt des Strings auch nur ein Byte sein) über LAN schneller geht ?Mit 10ms/Poll wäre ich schon zufrieden
Bin für alle Anregungen offen, vielen Dank im Voraus.
Willyiobroker
-
@WillyIobrok ich würde MQTT verwenden, wenn das geht. Da musst du gar nicht pollen sondern erhälst die Updates automatisch.
-
@UncleSam
Ahaa, interessant ... auf Arduino Seite habe ich alle Möglichkeiten ... aber gibt's ein MQTT Interface auf der ioBroker Seite? Muss ich da noch einen Adapter(welchen) laden ? Oder kann das das Simple Restful API auch ?WillyioBroker
-
@WillyIobrok sagte in HTTP-Zugriff von Arduino über Simple Restful API langsam:
Muss ich da noch einen Adapter(welchen) laden ?
Versuch es mal mit dem MQTT Adapter ;-). Du kannst dann noch entscheiden, ob du ioBroker oder den Arduino als Server benutzen willst.
-
@UncleSam
OK, hätt ich auch drauf kommen könnenwerd ich versuchen - danke!
WillyIobrok
-
Cool - erste Tests mit MQTT sind sehr vielversprechend :
das, was mit HTTP > 27 ... 60ms gedauert hat, scheint mit MQTT in <1ms abgearbeitet zu werden =Aber warum sehe ich in der Objektansicht des iobrokers zwar die angelegten Variablen, aber nicht deren Inhalt ?!? Dass da das richtige drinsteht habe ich mit vis-widgets verifiziert ... aber in der Objektansicht ist das Wertefeld leer .
Morgen gehts weiter ...
Danke noch mal, viele Grüsse,
WillyIobrok