Günstige Tür/Fenstersensoren

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
Stachi
Beiträge: 125
Registriert: 8. Dez 2020 19:29
Answers: 0

Re: Günstige Tür/Fenstersensoren

Beitrag von Stachi »

Hast du mal mit mqttfx geschaut, was so alles auf deinem Broker gesendet wird?

Und: welchen Broker verwendest du?
Falls es der embedded Broker (also moquette) ist: deinstallieren, mosquitto installieren und weitermachen [emoji6]

hsdneo
Beiträge: 52
Registriert: 26. Mär 2020 14:48
Answers: 0

Re: Günstige Tür/Fenstersensoren

Beitrag von hsdneo »

Mosquitto habe ich laufen ja als Dienst auf meinem Windows Server. Kämpfe gerade damit dort das Logging zu aktivieren aber das Ding wirft gerade mal keine Logs!

Werd mir das mqttfx gleich mal anschauen

hsdneo
Beiträge: 52
Registriert: 26. Mär 2020 14:48
Answers: 0

Re: Günstige Tür/Fenstersensoren

Beitrag von hsdneo »

So, also das mqttfx scheint mir das Thema mit dem Logging zu ersparen (siehe Anhang). Es kommt also genau das im Broker an, was ich auch in der Tasmota Konsole sehe. Soweit so gut - nun also daraus in OH "nur" noch was verwertbares machen...
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

steinadler
Beiträge: 65
Registriert: 29. Apr 2020 19:15
Answers: 0

Re: Günstige Tür/Fenstersensoren

Beitrag von steinadler »

so habe ich das gemacht
also, deine sensoren senden den code an die bridge
deine bridge musst du dann auslesen, und in einer rule auswerten
things

Code: Alles auswählen

Thing topic Sonoff_bridge_Dach  "SonoffRF03" @ "Sonoff_Bridge" {  
    Channels:  
        Type string : LWT03         [stateTopic="tele/Sonoff_bridge_Dach/LWT"]
        Type string : RfTime03      [stateTopic="tele/Sonoff_bridge_Dach/STATE", transformationPattern="JSONPATH:$.Time"]
        Type number : Signal03      [stateTopic="tele/Sonoff_bridge_Dach/STATE", transformationPattern="JSONPATH:$.Wifi.Signal"]
        Type number : RfSync03      [stateTopic="tele/Sonoff_bridge_Dach/RESULT", transformationPattern="JSONPATH:$.RfReceived.Sync"]
        Type number : RfLow03       [stateTopic="tele/Sonoff_bridge_Dach/RESULT", transformationPattern="JSONPATH:$.RfReceived.Low"]
        Type number : RfHigh03      [stateTopic="tele/Sonoff_bridge_Dach/RESULT", transformationPattern="JSONPATH:$.RfReceived.High"]
        Type string : RfData03      [stateTopic="tele/Sonoff_bridge_Dach/RESULT", transformationPattern="JSONPATH:$.RfReceived.Data"]
      }           
hier habe ich alle daten von der bridge gelistet
items

Code: Alles auswählen

String  RfData03  "Daten [%s ]"        { channel="mqtt:topic:b8fd5e5c:Sonoff_bridge_Dach:RfData03" }
String  RfTime03  "Zeit [%s ]"         { channel="mqtt:topic:b8fd5e5c:Sonoff_bridge_Dach:RfTime03" }
Number  Signal03  "Signal [%s ]"       { channel="mqtt:topic:b8fd5e5c:Sonoff_bridge_Dach:Signal03" }
Number  RfSync03  "Sync [%s ]"         { channel="mqtt:topic:b8fd5e5c:Sonoff_bridge_Dach:RfSync03" }
Number  RfLow03   "Low [%s ]"          { channel="mqtt:topic:b8fd5e5c:Sonoff_bridge_Dach:RfLow03" }
Number  RfHigh03  "High [%s ]"         { channel="mqtt:topic:b8fd5e5c:Sonoff_bridge_Dach:RfHigh03" }
hier liegen dann die daten
rules

Code: Alles auswählen

var Timer tZeit = null                                              // Objekt für Timer anlegen

rule "sonoffRF Kontakt Auswahl"                                     // Ruletitel dürfen Leerzeichen und Sonderzeichen enthalten
when
    Item RfData03 received update                                   // falls 2 mal der gleiche Befehl kommt
then
    if (RfData03.state == NULL) {
        logInfo("RfBridge.rules", "Item is null, cancelling...")
        return;
    }
    val sonoffRfData = RfData03.state.toString
    logInfo("rfbridge.rules", "Received IT Codes: {}", sonoffRfData)
    switch(sonoffRfData) {
        case "4A65E7":  {
               badfensterOben2.sendCommand(OFF)
        }
        case "4A65EE":  {
               badfensterOben2.sendCommand(ON)
        }  
       case "3E2867":  {
               badfensterOben1.sendCommand(OFF)
        }
        case "3E286E":  {
               badfensterOben1.sendCommand(ON)
        }  
        }
        end
das sind nur auszüge
hoffe, konnte dir helfen

Stachi
Beiträge: 125
Registriert: 8. Dez 2020 19:29
Answers: 0

Re: Günstige Tür/Fenstersensoren

Beitrag von Stachi »


hsdneo
Beiträge: 52
Registriert: 26. Mär 2020 14:48
Answers: 0

Re: Günstige Tür/Fenstersensoren

Beitrag von hsdneo »

So, bin nun etwas weiter gekommen. Bin gerade mal auf die Config via PaperUI umgestiegen. Es ist einfach nur die JSONPATH Umwandlung zusammen mit Regex, damit das Log sauber bleibt.

Ich habe jetzt ein Generic MQTT Thing konfiguriert mit 1 Channel (Number). Dort dann als MQTT mein tele/tasmota/SENSOR, was ja überall gleich ist. Und dann im Bereich Value Transformation das hier: REGEX:(.*Temperature.*)∩JSONPATH:$.ZbReceived.Temp_Garage.Temperature

Damit kriege ich von dem Sensor, den ich Temp_Garage genannt habe die Temperatur ausgelesen. Im PaperUI habe ich dann an diesen Channel noch ein neues item geknüpft und das habe ich mir in die Sitemap gepackt. Das tut schon mal. Ich denke, dass ich damit die Sensoren hinkriegen werde.

Spannend wird jetzt dann noch, wie der umgekehrte Weg funktioniert, also in meinem Fall für den Schalter. Das wird der nächste Test....

Danke schon mal!!!

hsdneo
Beiträge: 52
Registriert: 26. Mär 2020 14:48
Answers: 0

Re: Günstige Tür/Fenstersensoren

Beitrag von hsdneo »

Auf zum nächsten....
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

hsdneo
Beiträge: 52
Registriert: 26. Mär 2020 14:48
Answers: 0

Re: Günstige Tür/Fenstersensoren

Beitrag von hsdneo »

So...auch der Schalter klappt. Nachdem ich gemerkt habe, dass ich Outgoing Value Format nutzen muss und nicht Outgoing Value Transformation, gings dann schnell....

Der Rest sollte dann machbar sein (Lampe, diverse Türsensoren, Wandschalter)....

Antworten