Ankündigung

Einklappen
Keine Ankündigung bisher.

OpenHab2 mit MQTT items anlegen im SmartHome Designer

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    OpenHab2 mit MQTT items anlegen im SmartHome Designer

    Hallo,
    ich bewege mich jetzt seit 2 Tagen in Bereich der OpenHab2 Umgebung. Ziel ist es, meine Z-Wave Komponenten mit Edomi zu nutzen, weil alles bei mir mit KNX umgesetzt ist/wird. Hier bin ich gerade dran, die Items im Designer anzulegen bzw. ich versuche es zu verstehen. Da scheitere ich im Moment dran.
    Ich lege eine Gruppe an Group gSensoren z. B. mit ggfs. Untergruppen usw. Einige Geräte haben jedoch mehrere Sensoren. Wie halte ich diese auseinander?
    Aktuell habe ich - um es zu verstehen, aber funktioniert nicht - es mit einer schaltbaren Steckdose probiert. Ich bekomme auch was auf Edomi angezeigt aber eigentlich ist es Glücksache welche Statuswerte des z-wave device dort ankommen.
    Irgendwie fehlt mir noch der Durchblick. Hat jemand mal sein ein kleines Beispiel für mich, wie er/sie im Designer die Item-Struktur aufbaut und die Befehle an den mqtt-broker übergibt?

    Ich danke euch

    #2
    Ich habe mal weiter mit den .items rumgespielt. Da ich mit der aktullen grafischen Oberfläche zum konfigurieren der items nicht klar komme (PaperUI), würde ich das gerne in der Config machen. Es sei denn, mir kann jemand sagen wie es leichter in der grafischen Oberfläche geht. Aktuell sieht mein .items file, nach Schritt 1 des nicht verstehens, wie folgt aus:
    Code:
    Group ZwaveTV_Stecker                    "Stecker Strom"                                            (Zwave)
    Switch ZwaveTV_Stecker_Switch            "Stecker Strom [%s]"                                    (ZwaveTV_Stecker)        { channel="zwave:device:ce77210a:node4:switch_binary" }
    Number ZwaveTV_Stecker_Power            "Stecker Strom Power [%f W]"         <power>            (ZwaveTV_Stecker)        { channel="zwave:device:ce77210a:node4:sensor_power" }
    Number ZwaveTV_Stecker_Watts            "Stecker Strom Watt [%f W]"            <power>            (ZwaveTV_Stecker)        { channel="zwave:device:ce77210a:node4:meter_watts" }
    Number ZwaveTV_Stecker_kwh                "Stecker Strom KWh [%f kwh]"        <power>            (ZwaveTV_Stecker)        { channel="zwave:device:ce77210a:node4:meter_kwh" }
    Switch ZwaveTV_Stecker_Reset            "Stecker Strom Reset [%s]"                                (ZwaveTV_Stecker)        { channel="zwave:device:ce77210a:node4:meter_reset" }
    Switch ZwaveTV_Stecker_Alarm            "Stecker Strom Alarm Power [%s]"                        (ZwaveTV_Stecker)        { channel="zwave:device:ce77210a:node4:alarm_power" }
    Code:
    Item myItem {mqtt="<direction>[<broker>:<topic>:<type>:<transformer>], <direction>[<broker>:<topic>:<type>:<transformation>], ..."}
    Also z. B.: Switch ZwaveTV_Stecker_Switch "Stecker Strom" {mqtt="<[mosquitto: jetzt weiß ich nicht weiter/command:command:OFF:0]....

    Number ZwaveTV_Stecker_Power "Stecker Strom Power [%f W]" <power> (ZwaveTV_Stecker) {mqtt="<[mosquitto:wz/sensor_power:state:default]" }

    Ich würde das gerne in die mqtt Syntax umwandeln. Leider ist mir dort nicht klar, wie ich jeden Channel/topic/type explizit auf den Broker schicke.
    Hat jemand einen Latthammer um mir das Brett vor der Birne zu entfernen?

    Vielen Dank
    Zuletzt geändert von Stanis; 27.07.2017, 12:03.

    Kommentar


      #3
      Schau dir mal domoticz an.
      Da hab ich früher mit zwave ganz viel gemacht.
      Wesentlich einfacher als openhab (sorry.. Bin im openhab forum.. :-) )
      Domoticz hat auch mqtt.

      LG
      Jean-Luc Picard: "Things are only impossible until they are not."

      Kommentar


        #4
        Werde ich machen. Ich benötige eigentlich einfach nur ein Gateway von z-wave auf KNX bzw. auf Edomi. Was mir z-wave auf mqtt und somit auf Edomi bringt, ist mir egal. ObenHAB ist halt interessant um mir auch dort die Visualisierung mal anzuschauen und somit eine zweite zu haben.

        Kommentar


          #5
          So wie ich das sehe, unterstützt domoticz kein knx, mehr noch, es gibt nur einen einzigen Artikel im wiki, der knx überhaupt erwähnt, und dort versteht man offenbar nicht, was knx ist, nämlich ein Industriestandard, ein älterer, ein Methusalem im Vergleich zu fast allem, was heute so auf dem Markt unterwegs ist.

          Eigentlich kann es sich ein Automationssystem, welches "offen" sein will, nicht leisten, keine Unterstützung für knx anzubieten.

          Kommentar


            #6
            Im Endeffekt will ich ja nur meine z-wave Geräte auf Edomi bekommen. OH2 ist so gut ausgestattet, dass ich eventuell dann auch auf EnOcean zurückgreifen kann. Die Visu ist auch nicht schlecht aber Edomi soll es dann doch bleiben. Mal davon abgesehen, dass ich Probleme mit dem Fibaro Motion Sensor habe, weil der nicht erkannt wird im z-wave binding, habe ich noch so meine Probleme mit der mqtt Syntax. Es ist halt schwierig, weil ich neu in der Materie bin und die Wiki von OH2 nicht die tollste ist - finde ich zumindest.
            Zuletzt geändert von Stanis; 28.07.2017, 09:26.

            Kommentar


              #7
              Mein Vorschlag war.

              Domoticz zwave Anbindung.
              Dann domoticz via mqtt zu edomi.

              Domoticz hat viele wikis und ein super Support forum.
              ​​​​​​Ich habe mit openhab gespielt. Geil aber kompliziert.Habe da zwave nicht zum laufen bekommen


              Domoticz super aber wesentlich einfacher.
              Fibaro oder andere sachen via zwave USB innerhalb von ner Std zum laufen gekriegt.

              Genug OT für openhab

              Lg
              Zuletzt geändert von trollmar; 28.07.2017, 09:42.
              Jean-Luc Picard: "Things are only impossible until they are not."

              Kommentar


                #8
                Hallo,
                ich habe mal was probiert aber so richtig lauffähig ist es nicht. Parallel teste ich weiter Domoticz. Will aber auch nicht so richtig.

                Number Detektor01_Temp "Temperature [%.1f °C]" <temperature> (groupDetektorMotion, groupTemperature)
                { channel ="zwave:device:0abd47e1:node2:sensor_temperatur e" }

                wie kombiniere ich den Channel mit dem mqtt-broker bzw. muss ich den Channel durch das z. B. ersetzen?

                {mqtt=">[mosquitto:groupTemperature/Temp_Bad:state:default]"}

                Danke für die Hilfe

                Kommentar


                  #9
                  Vielleicht herrscht hier auch nur ein Missverständnis. Was ich verstanden habe, ist, Du möchtest zwave-Geräte nach mqtt "durchreichen", um sie dann in Edomi zu nutzen, also openHAB quasi nur als Relaisstation verwenden.

                  Dann musst Du für jeden Kanal ein Item anlegen, welches Du jeweils mit zwei Bindings koppelst. Eigentlich sollte das funktionieren, es kann aber sein, dass diese Art der Kopplung nicht einwandfrei klappt, dann bleibt Dir nichts anderes übrig, als jeweils 2 Items anzulegen, eines mit zwave und ein zweites mit mqtt Binding. Anschließend brauchst Du dann natürlich eine Rule, die auf Kommandos auf einem Item reagiert und das passende Item entsprechend ändert. Also entweder
                  Code:
                  Number Item0001 {channel="zwave:...",mqtt="mosquitto:..."}
                  oder
                  Code:
                  Number Item0001a {channel="zwave:..."}
                  Number Item0001b {mqtt="mosquitto:..."}
                  Code:
                  rule "Items durchreichen"
                  when
                      Item Item0001a received command
                  then
                      Item0001b.sendCommand(receivedCommand)
                  end
                  Bei der 2. Variante ist mit ein bisschen Nachdenken sofort ein Problem erkennbar, das funktioniert so nur in jeweils eine Richtung. Wenn es in beide Richtungen gehen soll, muss man mehr Aufwand treiben und sich merken, aus welcher Richtung der Befehl kam, sonst werden sich die Rules für beide Richtungen gegenseitig triggern.
                  Ebenso möchte man natürlich nicht für alle Items eine eigene Rule schreiben, das kann man dann über Gruppen erschlagen, also alle Items eines Typs in eine Gruppe (z.B. alle Number Items), und dann in der Rule die Gruppe filtern auf den Namen, der zuletzt etwas gesendet hat. Dann das passende Gegenstück "berechnen" (weshalb man bei der Namenswahl der Items von Beginn an sehr genau planen sollte) und das Kommando absetzen. Insgesamt wird dadurch die Rule erheblich länge, dafür braucht man dann nur eine für alle Items eines Gruppentyps.
                  Das aber nur als Ausblick, vielleicht funktioniert das Durchreichen ohne Stress direkt mit den Items.

                  Die Definition des Bindingeintrags, also ob man channel="..." oder mqtt="..." schreibt, ist davon abhängig, ob es sich um ein OH1 oder OH2 Binding handelt, weiterhin ist die Schreibweise für die einzelnen Signale vom Binding selbst abhängig.
                  Das Things Modell wurde mit OH2 eingeführt, also die virtuelle Nachbildung von Geräten.
                  Vorher gab es nur Items, wobei ein Item einen logischen Kanal bildet, das heißt, z.B. ein Dimmer wird durch ein einzelnes Item repräsentiert, während ein Dimmer-Thing also zwei Channels für Helligkeit und Schaltzustand besitzen kann, reicht ein Item.
                  Ebenso wird bei einem Rollladen sowohl Steuerrichtung als auch aktuelle oder Sollposition durch ein einzelnes Item repräsentiert, während das Thing dort auch mehrere Channels verwendet.
                  Ein Thing kann aber noch mehr Channels beinhalten, z.B. die aktuelle abgerufene Leistung, Betriebsstunden, Zwangssteuerung... das passt nicht mehr in ein einzelnes Item rein.
                  Um mit der alten Welt kompatibel zu sein, müssen also wieder Channels auf Items gemapped (bzw. gelinkt) werden.
                  Wenn man openHAB entsprechend konfiguriert, werden die Links sogar automatisch erzeugt, das nutzt aber nur begrenzt, weil man solche Items nicht miteinander verknüpfen kann, um Signale von einem Bus auf einen anderen zu bringen, da führt derzeit kein Weg an der Textkonfiguration vorbei.
                  Zuletzt geändert von udo1toni; 31.07.2017, 09:32.

                  Kommentar


                    #10
                    Ja, ich nutze bzw. möchte OH2 als "Relaisstation" nutzen und mittels dem mqtt Binding zu EDOMI weiterreichen. Ich schätze den Umfang an Binding bei OH2 einfach sehr. So kann man sich günstig, abseits von teurem KNX, für nicht so kritische Bereiche, günstige Lösungen bauen. Ich brauche also für OH2 keine Channels mehr. ICh fand nur die Übersicht im SmartHome Designer einfach viel besser als die GUI.
                    Das Paper UI ist nämlich eine mittelschwere Katastrophe. Also nehme ich HABmin. Auch habe ich sowohl die Erstellung von Things und Items über den HABmin gemacht als auch über den SmartHome Designer.
                    Das mqtt Ding klappt nur noch nicht wirklich - wird schon noch werden.

                    Kommentar


                      #11
                      Wie schon gesagt, die grafischen Oberflächen kannst Du nutzen, musst Du aber nicht, für die OH1-Bindings musst Du zwingend mit dem Designer oder einem Texteditor arbeiten. Items sollten im Designer auch angezeigt werden (in der Liste links unten), sobald sie einer Gruppe angehören.

                      Kommentar


                        #12
                        So, es hat geklappt. Nachdem ich es dann doch geschafft habe, Gruppen im Unternmü Items in der Paper UI zu erstellen, kann ich gescheit die Topics buchen. Danke für die Hilfen.

                        Kommentar


                          #13
                          Hi Stanis

                          Wäre toll wenn du hier deine Lösung teilen könntest.

                          LG
                          Jean-Luc Picard: "Things are only impossible until they are not."

                          Kommentar


                            #14
                            das habe ich ja eigentlich indirekt schon. Unter Paper UI ein neues Item mit der Category = Group anlegen --> die Items den Gruppen zugeordnet und schon funktioniert es ohne Probleme mit dem mqtt Broker und dem LBS von Edomi. Der SmartHome Designer wurde dazu nicht verwendet.

                            Kommentar

                            Lädt...
                            X