NEWS
Sonoff RF Bridge Tasmota mit NodeRed/MQTT Problem
-
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 . -
@ralla66 Ich hab schon mal geschrieben - der sonoff Adapter ist für sonoff Geräte gedacht. Alles was darüber hinausgeht kann der Adapter nicht. Da gibts dann aber so kluge Leute, die mir sagen dass sonoff=Tasmota ist.
Ich weiß, dass sich Tasmota von sonoff Leuten entwickelt wurde, aber es wird von einer viel breiteren HW nun unterstützt und das kann ein Adapter nicht, der die mqtt Punkte aufbereitet.
Solche Kommentare aus
https://forum.iobroker.net/topic/46244/gelöst-esp8266-tasmota-wert-wird-nicht-aktualisiert/5?_=1626520886516wie von @Wal kommen dann und ich kann Dir noch ein paar andere Threads zeigen, bei den Tasmota mit dem mqtt Adapter tut mit dem sonoff nicht.
Aber habe echt keine Lust mehr das zu diskutieren - deswegen habe ich auch gesagt, dass ich bei sonoff Adapter hier raus bin - auch wenn der Adapter in dem zitierten Thread nicht die Ursache war.
-
ja die Leut, mir egal, für meine kleine Welt ist der Sonoff Adapter in Verbindung mit Tasmota ESP Top.
Die Anbindemöglichkeiten sind eben enorm ohne fundierte Kenntnisse irgendwelcher Protokolle zu haben.
Selbst hatte ich keinen Fall wo etwas nicht lief was gefordert war.
Markise per 433 Mhz immer nicht so einfach. -
@mickym sagte in Sonoff RF Bridge Tasmota mit NodeRed/MQTT Problem:
wie von @Wal kommen dann und ich kann Dir noch ein paar andere Threads zeigen, bei den Tasmota mit dem mqtt Adapter tut mit dem sonoff nicht.
Aber habe echt keine Lust mehr das zu diskutieren - deswegen habe ich auch gesagt, dass ich bei sonoff Adapter hier raus bin - auch wenn der Adapter in dem zitierten Thread nicht die Ursache war.Wenn du raus bist, dann unterlasse bitte auch meinen Namen zu nennen. Ich kann dir sagen, das ich keinen einzigen Sonoff mit dem Adapter verwende. Bei mir hängen in der Mehrzahl Tuya-Thermostate mit Tasmota am Sonoff-Adapter die mit Script eingebunden sind. Das ist ja wohl klar, das auch Geräte nicht direkt eingebunden werden können. Tasmota wird z.Z. weiter entwickelt, der Sonoff-Adapter nicht.
Edit: Der Hauptgrund das ich den MQTT-Adapter für Tasmota nicht nutzen möchte ist der Objektbaum der erzeugt wird.
Ich muss mit cmnd und stat arbeiten, das brauche ich beim Sonoff-Adapter nicht. Stelle ich mein Sollwert am Gerät ein, wird auf stat aktualisiert und in cmnd steht noch der alte Wert. Im ioBroker muss ich den Wert unter cmnd ändern. Man braucht nicht als ersten Kommentar denn Sonoff-Adapter zu verteufeln, sondern erstellt einfach einen anderen Lösungsweg. Das war auch nicht als persönlicher Angriff auf dich gedacht, sorry wenn du das so aufgefasst hast.