NEWS
Sonoff RF Bridge Tasmota mit NodeRed/MQTT Problem
-
ein Rätsel warum die Markise fährt. Egal, mal in der Console RfRaw0 eingegeben und ganz wichtig neu booten.
Sonst wird die Änderung nicht übernommen. -
RfRaw 0 scheint der nicht zu wollen. Das klappt ja eben nicht. ;o(
So schaut es nach dem Neustart aus.
Zuvor habe ich RfRaw 0 eingegeben und auch die Quittierung OFF bekommen. Nach Neustart dann dieses Bild in der Konsole.
22:34:26.044 MQT: tele/rfbridge/INFO1 = {"Module":"RF Bridge Portisch","Version":"9.3.1.2(tasmota)","FallbackTopic":"cmnd/Sonoff RF Bridge_fb/","GroupTopic":"cmnd/tasmotas/"} 22:34:26.046 MQT: tele/rfbridge/INFO2 = {"WebServerMode":"Admin","Hostname":"rfbridge-6116","IPAddress":"192.168.178.92"} 22:34:26.048 MQT: tele/rfbridge/INFO3 = {"RestartReason":"Software/System restart"} 22:34:26.312 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.362 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.414 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.463 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.517 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"} 22:34:26.563 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.613 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.663 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.717 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"} 22:34:26.763 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.813 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.863 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 22:34:26.916 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"} 22:34:27.084 MQT: tele/rfbridge/RESULT = {"Time":"2021-07-15T22:34:27","RfRaw":{"Data":"AAA055"}} 22:34:29.495 QPC: Reset
-
lies mal oben im Link da steht was von Raw Sniffing.
Commands dazu hier
Mit RfRaw177 wird ja das sniffen eingeschaltet. Teste mal ob mit RfRaw176 das ausschalten kannst.
Vergiss aber das neu starten nicht nach Befehlseingabe.
Lange her RfRaw176 oder mit Leerzeichen RfRaw 176 .Nachtrag, teste RfRaw 0
21:57:54 CMD: RfRaw 1 21:57:54 MQT: stat/Bridge/RESULT = {"RfRaw":"ON"} 21:58:09 CMD: RfRaw 0 21:58:09 MQT: stat/Bridge/RESULT = {"RfRaw":"OFF"}
-
RfRaw 0 ergibt bei mir das:
00:14:11.285 CMD: RfRaw 0 00:14:11.293 MQT: stat/rfbridge/RESULT = {"RfRaw":"OFF"}
Wenn ich dann neustarte kommt das hier:
00:12:57.070 MQT: tele/rfbridge/INFO3 = {"RestartReason":"Software/System restart"} 00:12:57.338 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.386 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.437 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.486 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.541 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"} 00:12:57.587 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.638 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.688 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.741 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"} 00:12:57.788 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.839 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.889 MQT: stat/rfbridge/RESULT = {"Command":"Error"} 00:12:57.942 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"}
Lasse ich die Konsole ohne Neustart an, schaltet er nach bestätigtem OFF nach einer kurzen Zeit wieder automatisch auf ON
00:14:11.293 MQT: stat/rfbridge/RESULT = {"RfRaw":"OFF"} 00:15:20.809 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"} 00:15:22.061 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"}
Mein Problem scheint mir ähnlich wie dieses hier:
https://forum.iobroker.net/topic/44536/sonoff-433mhz-bridge-automatisch-rfraw-on?_=1626377223745
Allerdings kann ich keinen sauberen Neustart machen wie es scheint...
-
schwierig, teste mal RfRaw 176 und RfRaw 176 mit RfRaw 0.
wenn das nicht hilft mal testen ob der Command Error von außen kommt.
Mal eben Port Mqtt oder Passwort ändern.
Bleibt der Command Error danach noch kommt das aus Tasmota.
Dann prüfen ob eine Rule angelegt worden ist mit Rule .
Mit Rule1 0 kannst du Rule 1 ausschalten, mit Rule1 1 einschalten.Zu Data":"AAA055, das zeigt an das Raw Data empfangsbereit ist. Drückst du ein Fernbedienungsknopf sollte der Raw Code erscheinen. Data":"AAA055 ist nicht dein Markisenrawcode.
Teste rein aus der Console, NodeRed also aus.
Dann sieht das so aus wenn du ein Code empfängst, je nach dem hex oder dec:
07:23:10 CMD: RfRaw 1 07:23:10 MQT: stat/Bridge/RESULT = {"RfRaw":"ON"} 07:23:34 CMD: RfRaw 177 07:23:34 MQT: stat/Bridge/RESULT = {"RfRaw":"ON"} 07:23:34 MQT: tele/Bridge/RESULT = {"RfRaw":{"Data":"AAA055"}} 07:23:40 MQT: tele/Bridge/RESULT = {"RfRaw":{"Data":"AA B1 04 03F2 0208 0BCC 1BF8 01010101101001100101101001100110101010101001100123 55"}} 07:23:40 MQT: tele/Bridge/RESULT = {"RfRaw":{"Data":"AA B1 03 0460 019A 08E8 01010101010110011001100101101001101001011001100112 55"}}
kleiner Nachtrag, hier wie convertiert und gesendet wird:
-
Besten Dank für den schon hotlinemäßigen Support hier. ;o)
Gestern Abend habe ich kurzerhand den Befehl Reset 1 durchgeführt und die Parameter der Bridge wieder eingestellt. Leider gleiches Problem.
Habe heute morgen auch schon dei Gedanken gehabt, sämtliche "Datenzuflüsse" zu kappen und wollte NodeRed und iobroker testweise abstellen. Habe vorhin deinen Rat beherzigt und mal kurzerhand den MQTT Port in der Bridge verändert. Zuvor habe ich per Befehl aus NodeRed die Markise halb ausgefahren. Mit Erfolg. Markise steht still und wird nicht mehr eingefahren.
Also kommt der Impuls schon einmal nicht aus der Bridge.
In NodeRed habe ich gerade in den Settings des MQTT-Node eine Einstellung für Keep-Alive entdeckt. Die habe ich jetzt im Verdacht. Melde mich, wenn ich das getestet habe.
Grüße
Kai
-
ok teste erst, mit Data "Data":"AAA055" fährt aber die Markise nicht das ist ja kein Code.
Denke der Raw Code ist in NodeRed irgendwo verkaspert.
Sonst könntest du ja aus der Console mit cmnd/SonoffRFBridge/Backlog RFRaw AAA055 die Markise fahren
bei NodeRed aus.Ralla
-
kurz NodeRed angelesen, dort wird viel mit RfKey gearbeitet. Also der RfReceived Code entweder in hex oder dec genommen nicht der RfRaw.
Zur Vollständigkeit halber etwas über RfReceived, ein Bild dazu.
-
Also es liegt def. an meinem NodeRed.
Schalte ich die Instanz aus, tritt es nicht auf. RfRaw war zuvor durch mich auf OFF gestellt, NodeRed ausgestellt.
Schalte ich NR ein, wird kurze Zeit später in der Konsole das ausgegeben16:05:14.727 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"} 16:05:15.296 MQT: tele/rfbridge/RESULT = {"Time":"2021-07-16T16:05:15","RfRaw":{"Data":"AAA055"}} 16:05:15.851 MQT: stat/rfbridge/RESULT = {"RfRaw":"ON"} 16:05:16.420 MQT: tele/rfbridge/RESULT = {"Time":"2021-07-16T16:05:16","RfRaw":{"Data":"AAA055"}}
und die Markise fährt rein. Sie fährt aber immer auch nur ein, nie automatisch raus oder so.
Starte ich die Bridge neu, ergibt sich übrigens das gleiche Bild. Die Markise fährt rein. Keine Ahnung, wie ich hier weiter komme. Muss irgendwie in NodeRed an Settings/Formaten liegen, oder?
Dieses Keep-Alive unter Einstellungen der MQTT-Node war es wohl auch nicht. Habe das auf 00 gestellt und keine Verbesserung erzielt.
Ratlos ...
-
wie hast du die Codes in NodeRed angelernt, der letzte Node sendet was über Mqtt raus.
-
@ralla66 sagte in Sonoff RF Bridge Tasmota mit NodeRed/MQTT Problem:
ie Codes in NodeRed angelernt, d
Das ist der Code, den ich zum Einfahren sende bspw.
Angelernt alles per Portisch über die bekannte Art und Weise mit Umwandlung über die entsprechende Website BBconv.
-
leider von NodeRed wenig Ahnung, würde aber in der Console erst einmal testen ob der Code überhaupt geht.
-
Sollte es wohl. Muss los. Prüfe ich nachher. Danke ;o)
-
keine Ahnung bei NodeRed, sieht aber so aus als wenn im Topic der Backlog fehlt.
Deswegen der Error. -
@kilolima Fast richtig was @Ralla66 sagt - der Topic muss nicht in der Debug Node auftauchen, den kann man auch in der mqtt-Out Node direkt setzen. Aber er ist einfach falsch und muss natürlich auf den backlog Topic verweisen.
Der mqtt Punkt um Konsolenkommandos via MQTT abzusetzen ist der Backlog Datenpunkt oder Du gibst das kommando direkt in rfbridge Punkt ein.
Wenn Du wie unten beschrieben
2 Befehle direkt absetzen musst, also einmal RfRaw mit einem Wert und anschließend gleich wieder auf 0 zurücksetzen musst, dann musst Du auch diese beiden Befehle in dem backlog Punkt absetzen:
Nach dem Du also zwingend RfRaw 0 mit absetzen musst gibst Du in die msg.payload den String entspechend an:
RfRaw AAA055; RfRaw 0
So wird das dann ausgeführt.
Das Topic ist dann wenn ich das richtig interpretiere:
cmnd/sonoffRFBridge/Backlog
WIe in der Tasmota Beschreibung steht muss als zwingend nachdem man einen Wert über RfRaw abgesetzt hat - zwingend sofort ein RfRaw 0 hinterher geschickt werden.
Sprich Du musst immer 2 Befehle schicken. Einmal RfRaw <Wert> gefolgt von RfRaw 0. Ob die AAA055 richtig ist, kann ich natürlich nicht beurteilen.
Falls Du mit dem mqtt-Adapter arbeitest kannst Du Dein
RfRaw AAA055; RfRaw 0
auch direkt in den Datenpunkt schreiben, um das erst mal auszuprobieren - falls Du nicht über NodeRed arbeiten willst:
Einfach die Konsolenkommandos mit Strichpunkt getrennt hintereinander schreiben:
So wie ich die PulseTimer gesetzt habe:
-
hatte gestern mal gespielt damit, wenn gesendet wir RfRaw oder RFRaw 0 oder RFRaw 1 wird dieses Command in der Bridge ausgeführt und nicht der Rawcode der eventuell noch dahinter steht.
Backlog RFRaw hat die Bridge nicht erkannt, Command unbekannt. -
@ralla66
EDIT - sorry gerade getestet - Du brauchst doch das backlog commando auf der Kommandozeile - vielleicht klein geschrieben:
Also Kommando auf der Konsole gibst:backlog RfRaw Wert; RfRaw 0
ein.
@ralla66 sagte in Sonoff RF Bridge Tasmota mit NodeRed/MQTT Problem:hatte gestern mal gespielt damit, wenn gesendet wir RfRaw oder RFRaw 0 oder RFRaw 1 wird dieses Command in der Bridge ausgeführt und nicht der Rawcode der eventuell noch dahinter (???) steht.
Und der RawCode muss vor dem RfRaw 0 abgesetzt werden. Also zumindest wenn man sich mal an die Beschreibung von Tasmota hält. ???
und wie gesagt, wenn ihr den Sonoff Adapter als MQTT Broker nehmt, dann bin ich raus - sag da aber nichts mehr dazu, weil - gegen meine Erfahrung hier im Forum - das manchen Leuten hier nicht passt.
-
Danke , die Test von gestern haben gezeigt das dies mit dem Sonoff Adapter nicht lief.
Warum auch immer. Mqtt Adapter lief dann mit RfRaw oder Rule Command.
Dann kann @kilolima ja testen. Ob der Rawcode B1 / B0 auch in hex gewandelt werden kann habe ich nicht getestet.
Nur zum Verständnis, was gehört denn jetzt wo hin.
In den Mqtt Node Topic
cmnd/Backlog RfRaw
und in den Injekt Node dann <value hex>; RFRaw 0 -
@ralla66 Ich sags immer wieder - der sonoff ist kein mqtt ersatz auch nicht für tasmota
leider bekomm ich dann dauernd blöde kommentare wenn ich das sage.
-
Aus Beginner Sicht finde ich den Sonoff Adapter als Broker einfacher.
Solange man ein Host und User/ Pw in Tasmota Mqtt vergeben kann und nicht irgendwo rumfummelt.
Datenpunkte werden Top in IO erstellt. Probleme hatte ich mit der Config nie.
Ja wer mehr mit dem Mqtt Protokoll machen möchte ist der Mqtt Adapter besser.
Für meine kleinen Spielereien ESP / Tasmota reicht der Sonoff Adapter Mqtt voll aus .