Sonoff RF Bridge

Geflasht oder ungeflasht ...

Moderatoren: Cyrelian, udo1toni

Don Stefano
Beiträge: 83
Registriert: 24. Mär 2018 23:02
Answers: 1

Sonoff RF Bridge

Beitrag von Don Stefano »

Um meine bestehenden IT Aktoren auch zentral steuern zu können, habe ich mir die Sonoff RF Bridge zugelegt und openHAB auf einer neuen Ubuntu-VM meines Homeservers installiert.

Zunächst hatte ich ESPEasy drauf geflasht, weil ich dachte, es wäre mächtiger und böte mir damit mehr Möglichkeiten. Die Anbindung des RF-Chips auf der Bridge ist damit aber nicht möglich, also wurde sie wieder umgeflasht auf Tasmota. Bei openHAB war die Einbindung der bestehenden Homematic Rolladenaktoren und 2er Funktaster dazu ein Kinderspiel (alles über PaperUI). Für Sonoff muss zunächst der Message-Broker Mosquitto installiert werden. Für diesen ist es unbedingt empfehlenswert auch einen Monitor (z.B. MQTT.fx) zu installieren. Danach konnte ich sehen, was die Bridge so von sich gibt. Die Befehle und Antworten sind zwar im Tasmota-Wiki ausführlich beschrieben aber gerade der Pfad, der ja noch konfiguriert werden kann, hat mich eine Weile beschäftigt. Als die Konfiguration der Bridge gepasst hat, ging es an die Einbindung in openHAB (darum soll es hier vornehmlich gehen). Für den Test habe ich mir eine Diagnose-Konfiguration angelegt. In dieser sind auch zwei Items zum senden und empfangen über Mosquitto enthalten.
diagnostic.items:

Code: Alles auswählen

DateTime Datum "Datum und Zeit [%1$tA, %1$td.%1$tm.%1$tY %1$tT]"		{channel="ntp:ntp:local:dateTime"}

Switch MQTT_Test                  "Testing"                    			{mqtt="<[mosquitto:testing/mqtt/Test:state:default], >[mosquitto:testing/mqtt/Test:command:*:default]"}
String MQTT_String                "String"         		<switch>        {mqtt="<[mosquitto:testing/mqtt/String:state:default]"}

String RFBridge1_Reachable        "RFBrigde1 [%s]" 		<switch>		{mqtt="<[mosquitto:openHAB1_RFBridge1/tele/LWT:state:default]"}
String RFBridge1_STATE            "State"         		<switch>		{mqtt="<[mosquitto:openHAB1_RFBridge1/tele/STATE:state:default]"}
// Switch RFBridge1_Power            "Power"          		<switch>		{mqtt="<[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:JSONPATH($.POWER):.*POWER.*], >[mosquitto:openHAB1_RFBridge1/cmnd/POWER:command:ON:ON], >[mosquitto:openHAB1_RFBridge1/cmnd/POWER:command:OFF:OFF]", autoupdate="false"} //
Number RfBridge1_RSSI 			  "RSSI [%d %%]"      	<network>	    {mqtt="<[mosquitto:openHAB1_RFBridge1/tele/STATE:state:JSONPATH($.Wifi.RSSI)]:.*\"RSSI\".*"}
String RfBridge1_Uptime			  "Uptime [%s]"       	<time>			  {mqtt="<[mosquitto:openHAB1_RFBridge1/tele/STATE:state:JSONPATH($.Uptime):.*\"Uptime\".*], <[mosquitto:openHAB1_RFBridge1/tele/UPTIME:state:JSONPATH($.Uptime):.*\"Uptime\".*]"}
String RfBridge1_RfSync       "Sync [%s]"                         {mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:JSONPATH($.RfReceived.Sync):.*\"RfReceived\".*]"}
String RfBridge1_RfLow        "Low [%s]"                          {mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:JSONPATH($.RfReceived.Low):.*\"RfReceived\".*]"}
String RfBridge1_RfHigh       "High [%s]"                         {mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:JSONPATH($.RfReceived.High):.*\"RfReceived\".*]"}
String RfBridge1_RfData 		  "Data [#%s]"                   	    {mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:JSONPATH($.RfReceived.Data):.*\"RfReceived\".*]"}
String RfBridge1_RfKey 		    "RfKey [%s]"                   	    {mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:JSONPATH($.RfReceived.RfKey):.*\"RfReceived\".*]"}

Code: Alles auswählen

sitemap diagnostic label="Diagnose" {
	Frame label="Datum / Zeit" {
        	Text item=Datum
    }

	Frame label="MQTT Test"{
        	Default item=MQTT_Test
		Default item=MQTT_String
	}

	Frame label="RFBridge1"{
		Text    item=RFBridge1_Reachable
		Default item=RFBridge1_Power

		Default item=RfBridge1_RSSI
		Default item=RfBridge1_Uptime

		Default item=RfBridge1_RfSync
		Default item=RfBridge1_RfLow
		Default item=RfBridge1_RfHigh
		Default item=RfBridge1_RfData
		Default item=RfBridge1_RfKey
	}
}
Mir war es wichtig, dass bei Benutzung der IT-Fernbedienung ebenfalls der Status korrekt in openHAB angezeigt wird. Daher habe ich die Items mit autoupdate=false angelegt und die Rückmeldung von der Bridge genutzt, um den Status umzustellen. Dann ist wenigstens sichergestellt, dass die Bridge etwas gesendet hat. Über die Fernbedienung von IT habe ich nun die einzelnen Codes der Tasten ausprobiert und notiert. Diese wurden dann in individuelle Items für die einzelnen Aktoren eingebaut.Sync, Low, und High sind alle mit Tasmota als feste Werte geändert. Der Code wird jeweils versendet und der Speicher (1-16) der Bridge nicht verwendet. Mit dem Filter wird verhindert, dass Fehler im openHAB.log protokolliert werden. Nun sieht meine Konfiguration so aus:

Code: Alles auswählen

...
Switch         Garden_Gartenhaus_Light     	"Licht Gartenhaus"     	<light>        	(Garden, gLight)                 {mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:OFF:.*\"RfReceived\".*\"550114\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:OFF:.*\"RfCode\".*\"#550114\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:OFF:#550114], <[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:ON:.*\"RfReceived\".*\"550115\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:ON:.*\"RfCode\".*\"#550115\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:ON:#550115]", autoupdate="false"}

Switch         Garden_Gabbione_Light		"Licht Gabbione"		<light>         (Garden, gLight, Garden_Spots_Light)	{mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:OFF:.*\"RfReceived\".*\"554114\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:OFF:.*\"RfCode\".*\"#554114\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:OFF:#554114], <[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:ON:.*\"RfReceived\".*\"554115\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:ON:.*\"RfCode\".*\"#554115\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:ON:#554115]", autoupdate="false"}
Switch         Garden_Baum_Light         	"Licht Baum"         	<light>         (Garden, gLight, Garden_Spots_Light)	{mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:OFF:.*\"RfReceived\".*\"551114\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:OFF:.*\"RfCode\".*\"#551114\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:OFF:#551114], <[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:ON:.*\"RfReceived\".*\"551115\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:ON:.*\"RfCode\".*\"#551115\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:ON:#551115]", autoupdate="false"}
Switch         Garden_Zaun_Light         	"Licht Zaun"         	<light>         (Garden, gLight, Garden_Spots_Light)	{mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:OFF:.*\"RfReceived\".*\"550514\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:OFF:.*\"RfCode\".*\"#550514\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:OFF:#550514], <[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:ON:.*\"RfReceived\".*\"550515\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:ON:.*\"RfCode\".*\"#550515\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:ON:#550515]", autoupdate="false"}

Switch         Garden_Weihnachtsbaum_Light  "Licht Weihnachtsbaum"  <light>         (Garden, gLight)                 {mqtt="<[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:OFF:.*\"RfReceived\".*\"555114\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:OFF:.*\"RfCode\".*\"#555114\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:OFF:#555114], <[mosquitto:openHAB1_RFBridge1/tele/RESULT:state:ON:.*\"RfReceived\".*\"555115\".*], <[mosquitto:openHAB1_RFBridge1/stat/RESULT:state:ON:.*\"RfCode\".*\"#555115\".*], >[mosquitto:openHAB1_RFBridge1/cmnd/RfCode:command:ON:#555115]", autoupdate="false"}
...
Die Sitemap dazu ist völlig unspektakulär:

Code: Alles auswählen

...
	Frame label="Außenanlagen" icon="garden" {
        	Default item=Garden_Gartenhaus_Light
		
		Default item=Garden_Gabbione_Light
		Default item=Garden_Baum_Light
		Default item=Garden_Zaun_Light
		
		Default item=Garden_Weihnachtsbaum_Light
	}
...
Um alle Strahler gemeinsam schalten zu können, hab ich mir noch eine Gruppe für diese definiert:
Items:

Code: Alles auswählen

...
		Switch item=Garden_Spots_Light label="Garten Strahler"
...
Sitemap:

Code: Alles auswählen

...
Group:Switch:OR(ON, OFF)	Garden_Spots_Light	"Licht Strahler"	<light>			(Garden, gLight)	
...
Die Gruppenzugehörigkeit ist bei den Items oben schon angegeben.

Wenn ich jetzt allerdings die Gruppe über das BasicUI einschalte, wird nur einer der Strahler angehen aber die restlichen auch als angeschaltet angezeigt, weil die Bridge die Daten zu schnell verarbeitet und der RF-Chip diese nicht schnell genug senden kann. Bisher habe ich keine Möglichkeit gefunden, das ohne Rule umzusetzen.

Was mir noch aufgefallen ist: Die blaue LED, die bei der Bridge die WLAN-Verbindung anzeigt, ist in Tasmota falsch konfiguriert. In ESPEasy hat sie noch geleuchtet, in Tasmota blinkt sie nur beim Start kurz auf.

StefanH.
Beiträge: 162
Registriert: 28. Dez 2017 11:37
Answers: 0

Re: Sonoff RF Bridge

Beitrag von StefanH. »

ich stehe gerade auf dem Schlauch. Was war hier dein Ziel, welches vorher nicht erreichbar war? Von der RF Bridge habe ich noch nie gehört. Wieso will ich die einbinden und RF Fernbedienungen nutzen, wenn ich auch das Smartphone nutzen kann?

Don Stefano
Beiträge: 83
Registriert: 24. Mär 2018 23:02
Answers: 1

Re: Sonoff RF Bridge

Beitrag von Don Stefano »

StefanH. hat geschrieben:ich stehe gerade auf dem Schlauch. Was war hier dein Ziel, welches vorher nicht erreichbar war? Von der RF Bridge habe ich noch nie gehört. Wieso will ich die einbinden und RF Fernbedienungen nutzen, wenn ich auch das Smartphone nutzen kann?
Es geht um die Einbindung von Intertechno (IT) Aktoren. Diese waren eine kostengünstige Lösung, bevor die Sonoff-Teile auf den Markt kamen. Dazu gehört auch die 433 MHz Fernbedienung. Die Bedienbarkeit über mechanische Schalter ist auch weiterhin wichtig, um den WAF zu erhalten.

Gesendet von meinem SM-A530F mit Tapatalk


StefanH.
Beiträge: 162
Registriert: 28. Dez 2017 11:37
Answers: 0

Re: Sonoff RF Bridge

Beitrag von StefanH. »

aaaaah, diese Aktoren kannte ich auch nicht ;-) Danke für die Erklärung

Don Stefano
Beiträge: 83
Registriert: 24. Mär 2018 23:02
Answers: 1

Re: Sonoff RF Bridge

Beitrag von Don Stefano »

Inzwischen habe ich eine Rule umgesetzt, welche alle in der Gruppe befindlichen Aktoren schaltet. Diese kann ich auch mit der Astro-Automatik ansteuern. Aber zunächst habe ich ein virtuelles Item zum Schalten erstellt:

default.items

Code: Alles auswählen

...
Switch          Garden_Spots                    "Garten Strahler"	    <light>
...
Diese kann ich dann auf der Oberfläche ansteuern:

default.sitemap

Code: Alles auswählen

...
Switch item=Garden_Spots
...
Jetzt kommt die eigentliche Magie, es werden nacheinander alle Strahler, die nicht bereits den gewünschten Status haben, mit sendCommand geschaltet und anschließend die Wartezeit pausiert.

Garden_Spots.rules

Code: Alles auswählen

rule "Garden_Spots_Change"
when
	Item Garden_Spots changed
then
	val Garden_Spots_State = Garden_Spots.state.toString
	logInfo("rules.Garden_Spots", "Switch(" + Garden_Spots_State + "): Garden_Spots")
	Garden_Spots_Light.members.filter[spot|spot.state != Garden_Spots_State].forEach[onItem | 
		logInfo("rules.Garden_Spots", "Switch(" + Garden_Spots_State +"): " + onItem.name)
		onItem.sendCommand(Garden_Spots_State)
		Thread::sleep(600)
	]
end
das Ergebnis sieht im Log dann so aus:

Code: Alles auswählen

11:53:50.202 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Garden_Spots' received command ON
11:53:50.205 [INFO ] [smarthome.event.ItemStateChangedEvent] - Garden_Spots changed from OFF to ON
11:53:50.206 [INFO ] [home.event.GroupItemStateChangedEvent] - gLight changed from OFF to ON through Garden_Spots
11:53:50.226 [INFO ] [thome.model.script.rules.Garden_Spots] - Switch(ON): Garden_Spots
11:53:50.228 [INFO ] [thome.model.script.rules.Garden_Spots] - Switch(ON): Garden_Zaun_Light
11:53:50.230 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Garden_Zaun_Light' received command ON
11:53:50.271 [INFO ] [smarthome.event.ItemStateChangedEvent] - Garden_Zaun_Light changed from OFF to ON
11:53:50.272 [INFO ] [home.event.GroupItemStateChangedEvent] - Garden_Spots_Light changed from OFF to ON through Garden_Zaun_Light
11:53:50.832 [INFO ] [thome.model.script.rules.Garden_Spots] - Switch(ON): Garden_Gabbione_Light
11:53:50.838 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Garden_Gabbione_Light' received command ON
11:53:50.887 [INFO ] [smarthome.event.ItemStateChangedEvent] - Garden_Gabbione_Light changed from OFF to ON
11:53:51.440 [INFO ] [thome.model.script.rules.Garden_Spots] - Switch(ON): Garden_Baum_Light
11:53:51.442 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Garden_Baum_Light' received command ON
11:53:51.459 [INFO ] [smarthome.event.ItemStateChangedEvent] - Garden_Baum_Light changed from OFF to ON
...
11:53:57.909 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Garden_Spots' received command OFF
11:53:57.912 [INFO ] [thome.model.script.rules.Garden_Spots] - Switch(OFF): Garden_Spots
11:53:57.913 [INFO ] [smarthome.event.ItemStateChangedEvent] - Garden_Spots changed from ON to OFF
11:53:57.915 [INFO ] [thome.model.script.rules.Garden_Spots] - Switch(OFF): Garden_Zaun_Light
11:53:57.917 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Garden_Zaun_Light' received command OFF
11:53:58.053 [INFO ] [smarthome.event.ItemStateChangedEvent] - Garden_Zaun_Light changed from ON to OFF
11:53:58.519 [INFO ] [thome.model.script.rules.Garden_Spots] - Switch(OFF): Garden_Gabbione_Light
11:53:58.522 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Garden_Gabbione_Light' received command OFF
11:53:58.562 [INFO ] [smarthome.event.ItemStateChangedEvent] - Garden_Gabbione_Light changed from ON to OFF
11:53:59.124 [INFO ] [thome.model.script.rules.Garden_Spots] - Switch(OFF): Garden_Baum_Light
11:53:59.126 [INFO ] [smarthome.event.ItemCommandEvent     ] - Item 'Garden_Baum_Light' received command OFF
11:53:59.181 [INFO ] [smarthome.event.ItemStateChangedEvent] - Garden_Baum_Light changed from ON to OFF
11:53:59.183 [INFO ] [home.event.GroupItemStateChangedEvent] - Garden_Spots_Light changed from ON to OFF through Garden_Baum_Light
11:53:59.184 [INFO ] [home.event.GroupItemStateChangedEvent] - gLight changed from ON to OFF through Garden_Baum_Light
Leider ist meine RF Bridge nicht so besonders zuverlässig. Trotz der ewig langen Wartezeit von einer halben Sekunde zwischen den gesendeten Codes war nach Ausschalten über den Astro-Event ein Strahler noch an. Jetzt habe ich die Wartezeit auf 600ms verlängert. Außerdem ist sie bei meinen Experimenten mehrmals abgeschmiert und offline gegangen. Ich muss das beobachten. Glücklicherweise habe ich noch zwei weitere Bridges im Zulauf.

Benutzeravatar
djuscha
Beiträge: 130
Registriert: 14. Mai 2016 00:12
Answers: 0

Re: Sonoff RF Bridge

Beitrag von djuscha »

hab jetzt Sonoff Bridge auf Tasmota geflasht kann die Steckdose mit Fernbedienung schalten und ausschalten .Anzeige in der BasicUi ändert sich entsprechend. wenn ich über die BasicUi schalte reagiert die Steckdose nicht. :?:
das ist mein item

Code: Alles auswählen

Switch Garden_Baum_Light     "Licht Baum3"       <light>    {mqtt="<[mosquitto:tele/sonoff_bridge/RESULT:state:OFF:.*\"RfReceived\".*\"401014\".*], <[mosquitto:stat/sonoff_bridge/RESULT:state:OFF:.*\"RfCode\".*\"#401014\".*], >[mosquitto:cmnd/sonoff_bridge/RfCode:command:OFF:#entsprechend], <[mosquitto:tele/sonoff_bridge/RESULT:state:ON:.*\"RfReceived\".*\"401015\".*], <[mosquitto:stat/sonoff_bridge/RESULT:state:ON:.*\"RfCode\".*\"#401015\".*], >[mosquitto:cmnd/sonoff_bridge/RfCode:command:ON:#401015]", autoupdate="false"}
das steht in der Bridge Konsole wenn ich mit Schalter schalte

Code: Alles auswählen

MQT: tele/sonoff_bridge/RESULT = {"RfReceived":{"Sync":10640,"Low":380,"High":1030,"Data":"401015","RfKey":None}}
wenn ich über BasicUi schalte

Code: Alles auswählen

MQT: stat/sonoff_bridge/RESULT = {"RfCode":"#401015"}
das war für einschalten, bei dem ausschalten ist das entsprechend mit Code entsprechend
was mir noch aufgefallen ist der Sync Wert ändert sich ständich wenn ich mit Fernbedienung schalte.10630 ,10640,10670,10670,10650 Muss man den Sync wert auch irgentwie senden?
geht es deswegen nicht über BasicUi?
hab auch versucht die 16 Tasten anzulernen das geht auch nur wird nicht immer geschaltet ...nur ab und zu...ausschalten geht gar nicht.

dassagt Konsole über schalten mit Taste5

Code: Alles auswählen

MQT: stat/sonoff_bridge/RESULT = {"RfKey5":"Learned sent"}
was mache ich denn falsch?

Don Stefano
Beiträge: 83
Registriert: 24. Mär 2018 23:02
Answers: 1

Re: Sonoff RF Bridge

Beitrag von Don Stefano »

Sieht so weit ganz gut aus. Evtl. werden die restlichen Parameter zwischendurch verstellt?
Ich habe die Werte für RfSync, RfLow und RfHigh über die Tasmota-Console eingegeben, damit sie beim Senden verwendet werden. Man kann sie dort auch abfragen.

Gesendet von meinem SM-A530F mit Tapatalk



haegar33
Beiträge: 7
Registriert: 21. Okt 2018 17:43
Answers: 0

Re: Sonoff RF Bridge

Beitrag von haegar33 »

Super Tutorial, auch bisher das einzige was ich zu diesem Thema gefunden habe.. :shock:
Ich habe versucht das Szenario mit meiner Bridge nachzustellen und es geht ... nur teilweise. Da ich gerade mit OpenHAB angefangen habe vielleicht kein Wunder ;) Ich habe noch ein grundsätzliches Problem wie das MQTT Binding hier funktioniert. Warum ist z.B. beim
Testswitch MQTT_Test sowohl ein Senden als auch Empfangen definiert? Ein Sequence wie:
<[NAS_broker:testing/mqtt/Test:state:default], >[NAS_broker:testing/mqtt/Test:command:*:default]
erwartet erst einen Status und dann gibt es ihn wieder aus? :? ("NAS_broker is mein lokaler MQTT Broker auf meinem NAS).

Gibt es vielleicht irgendwo ausführlicherer Beschreibungen der MQTT Binding in OpenHAB? Bevor ich das nicht verstanden habe brauche ich gar keine speziellen Fragen zur RF Bridge stellen ;)

Danke

Benutzeravatar
sihui
Beiträge: 1827
Registriert: 11. Apr 2018 19:03
Answers: 21

Re: Sonoff RF Bridge

Beitrag von sihui »

haegar33 hat geschrieben: 21. Okt 2018 17:54 erwartet erst einen Status und dann gibt es ihn wieder aus? :?
Das Binding erwartet keinen Status, sondern liest den aktuellen Status (deshalb inbound und state)
Outbound sendet es den von dir gewünschten Befehl (deshalb command)
haegar33 hat geschrieben: 21. Okt 2018 17:54 Gibt es vielleicht irgendwo ausführlicherer Beschreibungen der MQTT Binding in OpenHAB?
Na klar:

https://www.openhab.org/addons/bindings ... tt-binding
openHAB3 mit Zwave, Alexa, ESPEasy, MQTT, Logitech Harmony, Philips HUE und ZigBee Hardware auf Proxmox VE.

haegar33
Beiträge: 7
Registriert: 21. Okt 2018 17:43
Answers: 0

Re: Sonoff RF Bridge

Beitrag von haegar33 »

Danke für die Hilfe aber ich habe wohl nicht konkret genug gefragt. Es geht nicht direkt um das Binding sonder die Anwendung in einem item und wie dann eine Kette von MQTT Kommandos genau wirken. Durch Try and Error und die Beispiele in diesem Thread habe ich nun zumindest auch einen Funkschalter mit der RF Bridge basteln können:

Code: Alles auswählen

Switch Flurlicht  "RfKey1 and RfKey2" <switch> (gLights)
	{ mqtt="<[NAS_broker:stat/sonoff/RESULT:state:OFF:.*RfKey2.*],
			>[NAS_broker:cmnd/sonoff/rfkey2:command:OFF:''],
			<[NAS_broker:stat/sonoff/RESULT:state:ON:.*RfKey1.*],
	        >[NAS_broker:cmnd/sonoff/rfkey1:command:ON:'']", autoupdate="false" }
In dieser Reihenfolge (ist die wichtig?) sorgen die einkommenden Nachrichten für eine korrekte Status Anzeige (Die Bridge melded rfkeyx: learned send") und die ausgehenden Nachrichten sind gekoppelt an den ON(rfkey1) oder OFF(rfkey2) Status.

Wie gesagt, Beispiele oder Erklärungen dieser Art habe ich nicht gefunden...
Und es geht ja noch weiter ;) Wie werden mehrere MQTT Kommandos bei anderen item typen verarbeitet. Z.b. hätte ich gerne die LAN IP der Bridge ausgelesen und dachte mir folgende Def sollte funktionieren:

Code: Alles auswählen

String Sonoff_IP "Status on current IP [%s]"
    { mqtt=">[NAS_broker:cmnd/sonoff/status:command:*:5],
            <[NAS_broker:stat/sonoff/STATUS5:state:JSONPATH($.StatusNET.IPAddress)]" }
cmdn/sonoff/status 5 gibt die WLAN Daten zurück. Geht aber nicht :roll: Wann werden überhaupt diese MQTT Kommandos ausgelöst? Wenn man den String anzeigt im HABPanel? Muss man noch anstossen....?

Antworten