Ankündigung

Einklappen
Keine Ankündigung bisher.

openhab 3 KNX Ntp Zeit in knx.things einbinden

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

    openhab 3 KNX Ntp Zeit in knx.things einbinden

    Continuing the discussion from KNX Datetime from openhab:

    Hallo,
    wie füge ich den Code in meine knx.things ein ?https://community.openhab.org/images...smile.png?v=12
    Bei mir läuft openhab 3 ich verstehe nicht so ganz wie ich das ganze in meine knx.things einbinden kann
    meine sieht zur Zeit so aus.

    Bridge knx:ip:bridge “Raspi3Tunnel” [
    ipAddress=“192.168.2.150”,
    localIp=“192.168.2.192”,
    type=“TUNNEL”,
    portNumber=3671,
    readingPause=50,
    responseTimeout=10,
    readRetriesLimit=3,
    autoReconnectPeriod=60,
    localSourceAddress=“0.0.0” // this physical address must be unused (even used by tunnel is not allowed!)
    ]
    {
    Thing device 1 “AKS-1216.03 Schaltaktor 12-fach, 8TE, 16A” [
    address=“1.1.5”,
    fetch=false,
    pingInterval=600,
    readInterval=0
    ] {
    Type switch : Kanal_A “Flur” [ga=“1/0/6”]
    Type switch : Kanal_B “Wohnen_OG” [ga=“2/0/0”]
    Type switch : Kanal_C “Computer_OG” [ga=“2/0/2”]
    //Type switch : Kanal_D “” [ga=“”]
    Type switch : Kanal_E “Ufo” [ga=“1/0/16”]
    //Type switch : Kanal_F “” [ga=“”]
    //Type switch : Kanal_G “” [ga=“”]
    //Type switch : Kanal_H “” [ga=“”]
    //Type switch : Kanal_I “” [ga=“”]
    Type switch : Kanal_J “Gäste_WC” [ga=“1/0/10”]
    //Type switch : Kanal_K “” [ga=“”]
    //Type switch : Kanal_L “” [ga=“”]

    //Type switch : ch3 "Channel 3" [ga="1/1/5+<1/1/6"] }
    Thing device 2 “AKU-1616.02 Universalaktor 16-fach, 16A, 230VAC” [
    address=“1.1.6”,
    fetch=false,
    pingInterval=600,
    readInterval=0
    ] {
    //Type switch : Kanal_A “Channel 2” [ga=“1/2/1+<1/2/2”]
    //Type switch : Kanal_B “Channel 2” [ga=“1/2/3+<1/2/4”]
    //Type switch : Kanal_C “Channel 3” [ga=“1/2/5+<1/2/6”]
    //Type switch : Kanal_D “Channel 1” [ga=“1/2/1+<1/2/2”]
    //Type switch : Kanal_E “Channel 2” [ga=“1/2/3+<1/2/4”]
    Type switch : Kanal_F “Beleuchtung_Eingang” [ga=“1/4/1”]
    Type switch : Kanal_G “Beleuchtung_Terrasse” [ga=“1/4/7”]
    //Type switch : Kanal_H “Channel 2” [ga=“1/2/3+<1/2/4”]
    //Type switch : Kanal_I “Channel 3” [ga=“1/2/5+<1/2/6”]
    //Type switch : Kanal_J “Channel 1” [ga=“1/2/1+<1/2/2”]
    Type switch : Kanal_K “Schlafzimmer” [ga=“1/2/0”]
    //Type switch : Kanal_L “” [ga=“1/2/5+<1/2/6”]
    Type switch : Kanal_M “Miles” [ga=“1/2/2”]
    //Type switch : Kanal_N “Channel 2” [ga=“1/2/3+<1/2/4”]
    Type switch : Kanal_O “Bad” [ga=“1/2/4”]
    //Type switch : Kanal_P “Channel 1” [ga=“1/2/1+<1/2/2”]
    }
    Thing device 3 “AKD-0401.01 Dimmaktor1 4-fach, 8TE, 230VAC, 250W” [
    address=“1.1.7”,
    fetch=false,
    pingInterval=600,
    readInterval=0
    ] {
    Type dimmer : Kanal_A “Schlafzimmer” [ switch=“1/1/0+<1/1/2”, position=“1/1/30+<1/1/3”, increaseDecrease=“1/1/1” ]
    Type dimmer : Kanal_B “Miles” [ switch=“1/1/4+<1/1/6”, position=“1/1/32+<1/1/7”, increaseDecrease=“1/1/5” ]
    Type dimmer : Kanal_C “Bad” [ switch=“1/1/8+<1/1/10”, position=“1/1/34+<1/1/11”, increaseDecrease=“1/1/9” ]
    Type dimmer : Kanal_D “Kueche” [ switch=“1/1/12+<1/1/14”, position=“1/1/36+<1/1/15”, increaseDecrease=“1/1/13” ]
    }
    Thing device 4 “AKD-0401.01 Dimmaktor2 4-fach, 8TE, 230VAC, 250W” [
    address=“1.1.8”,
    fetch=false,
    pingInterval=600,
    readInterval=0
    ] {
    Type dimmer : Kanal_A “Wohnzimmer” [ switch=“1/1/16+<1/1/18”, position=“1/1/28+<1/1/19”, increaseDecrease=“1/1/17” ]
    Type dimmer : Kanal_B “Esstisch” [ switch=“1/1/20+<1/1/22”, position=“1/1/29+<1/1/23”, increaseDecrease=“1/1/21” ]
    Type dimmer : Kanal_C “Totesstern” [ switch=“1/1/24+<1/1/26”, position=“1/1/33+<1/1/27”, increaseDecrease=“1/1/25” ]
    Type dimmer : Kanal_D “Bad2” [ switch=“1/1/37+<1/1/39”, position=“1/1/35+<1/1/40”, increaseDecrease=“1/1/38” ]

    }
    Thing device Date_Device {

    Type datetime-control : knxTime [ ga="10.001:1/3/0" ] Type datetime-control : knxDate [ ga="11.001:1/3/1" ] Type datetime-control : datumzeit "Datum und Zeit" [ ga="19.001:1/3/2" ]
    }
    }
    wenn ich den code einfüge funktioniert meine ganze knx.things nicht mehr hab es noch nicht so ganz verstanden wie das mit der knx.things funktioniert es gibt aber nur eine knx.things bzw es darf nur eine geben oder?. Wäre echt sehr nett wenn es mir jemand erklären könnte. Mit dem versuch unten bekomme ich zwar alles angezeigt aber die Zeit wird nicht zum Bus gesendet als gateway fungiert ein zweiter Pi als Tunnel da ich nur eine MDT USB Schnittstelle besitze auf openhab 2 lief es so.
    Kann es sein das meine veraltet ist mit den ganzen Klammern usw ?
    Sorry bin totaler Anfänger.


    In der Openhab Log wird es angezeigt, nur in der ets beim Bus Monitor kommt nichts an.
    die 192.168.2.150 ist der pi der als Schnittstelle dient.

    Schönes Wochenende euch allen.
    Gruß
    Zuletzt geändert von StukaAss; 01.10.2023, 13:01.

    #2
    Hallo,
    so ist es bei mir im funktionierenden Einsatz.

    Code:
    Things Datei:
    
    Thing ntp:ntp:local "Lokale Zeit" [ hostname="de.pool.ntp.org", refreshInterval=60, refreshNtp=30, timeZone="Europe/Berlin"]
    
    // die KNX-Bridge hab ich jetzt mal weggelassen .....
    
    Thing device Generic "KNX" @ "KNX" {
            Type datetime-control : Datum      "Datum"   [ ga="11.001:0/0/5" ]
            Type datetime-control : Zeit           "Zeit"       [ ga="10.001:0/0/4" ]​
            }
    
    
    Items Datei:
    
    DateTime Zeit "Zeit [%s]" (Astro) {channel="knx:device:bridge:Generic:Zeit",channel="ntp:ntp:local:dateTime"}
    DateTime Datum "Datum [%s]" (Astro) {channel="knx:device:bridge:Generic:Datum",channel="ntp:ntp:local:dateTime"}​
    - openHAB 3.4.4 auf WIN11/64

    Kommentar


      #3
      Wichtig wäre vor allem, dass Du den Code im Forum auch als Code markierst, da die Forensoftware sonst eigenmächtig Änderungen vornimmt (z.B. Einrückungen entfernt, aus einem Doppelpunkt mit nachfolgendem P ein zungestreckendes Smiley erzeugen und anderen Unsinn...)

      Du kannst die Things grundsätzlich auf beliebig viele Dateien aufteilen, auch knx . Es ist allerdings in meinen Augen höchst sinnvoll, alle knx Things (eines knx Systems) in einer Datei zu halten, weil die Things ja "Kinder" der knx Bridge sind. Wenn man die Things getrennt von der Bridge konfiguriert, muss man bei jedem Thing nicht nur angeben, dass es sich um ein knx Thing handelt, man muss zusätzlich auch noch die vollständige Brige UID mit angeben (obwohl die sich aus der Thing UID konstruieren ließe).
      Das ist also total umständlich. Innerhalb der selben Datei, in der auch die Bridge angelegt ist, reicht es hingegen, das Thing als Kind zu definieren (so wie Du das in Deiner Datei schon gemacht hast)

      Ansonsten hat tallman ja schon das Beispiel eines generic knx Things für Datum und Uhrzeit gepostet.

      EDIT: Gerade noch aufgefallen... eine einzelne Ziffer als Thing ID ist keine gute Idee besser ist ein kurzer NAme aus Kleinbuchstaben, und sei es dev_1 bis dev_5...

      EDIT2: Es gibt pro Channel immer nur exakt eine Statusquelle, das ist bei Dimmern die position. Lass also am besten den Rückmelde-GA für switch komplett weg, increaseDecrease kannst Du gewöhnlich ebenfalls weg lassen, da openHAB die Dimmer normalerweise immer absolut steuert.
      Zuletzt geändert von udo1toni; 01.10.2023, 14:50.

      Kommentar


        #4
        Danke für die Antwort aber ich denke es geht irgendwie nicht an den Bus in der log wird die Zeit gesetzt.

        Kommentar


          #5
          Hab das System vor längerem aufgesetzt für die Sprachsteuerung, und jetzt zeigen die mdt Glastaster nach längerer Zeit immer die falsche Uhrzeit an.
          Wenn man da lange nicht dran war sieht man den Wald vor lauter Bäumen nicht.
          Steh total auf dem Schlauch, sorry verstehe nur nicht warum es von heute auf morgen nicht mehr ging

          Kommentar


            #6
            Könntest du mir das mal sauber zusammen fassen, oder kannst du mit meinem Code so nix anfangen. Natürlich nur wenn es keine Umstände macht.
            ich muss mich da echt mal weiter dran setzen ist ja schlimm wenn man nix mehr raft, ab 45 fängt es wohl an ohhhhjeeee

            Kommentar


              #7
              Code:
              Bridge knx:ip:bridge "Raspi3Tunnel" [
              ipAddress="192.168.2.150",
              localIp="192.168.2.192",
              type="TUNNEL",
              portNumber=3671,
              readingPause=50,
              responseTimeout=10,
              readRetriesLimit=3,
              autoReconnectPeriod=60,
              localSourceAddress="" // this physical address must be unused (even used by tunnel is not allowed!)
              ]
              {
              Thing device 1 "AKS-1216.03 Schaltaktor 12-fach, 8TE, 16A" [
              address="1.1.5",
              fetch=false,
              pingInterval=600,
              readInterval=0
              ] {
              Type switch : Kanal_A "Flur" [ga="1/0/6"]
              Type switch : Kanal_B "Wohnen_OG" [ga="2/0/0"]
              Type switch : Kanal_C "Computer_OG" [ga="2/0/2"]
              //Type switch : Kanal_D "" [ga=""]
              Type switch : Kanal_E "Ufo" [ga="1/0/16"]
              //Type switch : Kanal_F "" [ga=""]
              //Type switch : Kanal_G "" [ga=""]
              //Type switch : Kanal_H "" [ga=""]
              //Type switch : Kanal_I "" [ga=""]
              Type switch : Kanal_J "Gäste_WC" [ga="1/0/10"]
              //Type switch : Kanal_K "" [ga=""]
              //Type switch : Kanal_L "" [ga=""]
              
              
              //Type switch : ch3 "Channel 3" [ga="1/1/5+<1/1/6"]
              }
              
              Thing device 2 "AKU-1616.02 Universalaktor 16-fach, 16A, 230VAC" [
              address="1.1.6",
              fetch=false,
              pingInterval=600,
              readInterval=0
              ] {
              //Type switch : Kanal_A "Channel 2" [ga="1/2/1+<1/2/2"]
              //Type switch : Kanal_B "Channel 2" [ga="1/2/3+<1/2/4"]
              //Type switch : Kanal_C "Channel 3" [ga="1/2/5+<1/2/6"]
              //Type switch : Kanal_D "Channel 1" [ga="1/2/1+<1/2/2"]
              //Type switch : Kanal_E "Channel 2" [ga="1/2/3+<1/2/4"]
              Type switch : Kanal_F "Beleuchtung_Eingang" [ga="1/4/1"]
              Type switch : Kanal_G "Beleuchtung_Terrasse" [ga="1/4/7"]
              //Type switch : Kanal_H "Channel 2" [ga="1/2/3+<1/2/4"]
              //Type switch : Kanal_I "Channel 3" [ga="1/2/5+<1/2/6"]
              //Type switch : Kanal_J "Channel 1" [ga="1/2/1+<1/2/2"]
              Type switch : Kanal_K "Schlafzimmer" [ga="1/2/0"]
              //Type switch : Kanal_L "" [ga="1/2/5+<1/2/6"]
              Type switch : Kanal_M "Miles" [ga="1/2/2"]
              //Type switch : Kanal_N "Channel 2" [ga="1/2/3+<1/2/4"]
              Type switch : Kanal_O "Bad" [ga="1/2/4"]
              //Type switch : Kanal_P "Channel 1" [ga="1/2/1+<1/2/2"]
              }
              Thing device 3 "AKD-0401.01 Dimmaktor1 4-fach, 8TE, 230VAC, 250W" [
              address="1.1.7",
              fetch=false,
              pingInterval=600,
              readInterval=0
              ] {
              Type dimmer : Kanal_A "Schlafzimmer" [ switch="1/1/0+<1/1/2", position="1/1/30+<1/1/3", increaseDecrease="1/1/1" ]
              Type dimmer : Kanal_B "Miles" [ switch="1/1/4+<1/1/6", position="1/1/32+<1/1/7", increaseDecrease="1/1/5" ]
              Type dimmer : Kanal_C "Bad" [ switch="1/1/8+<1/1/10", position="1/1/34+<1/1/11", increaseDecrease="1/1/9" ]
              Type dimmer : Kanal_D "Kueche" [ switch="1/1/12+<1/1/14", position="1/1/36+<1/1/15", increaseDecrease="1/1/13" ]
              }
              Thing device 4 "AKD-0401.01 Dimmaktor2 4-fach, 8TE, 230VAC, 250W" [
              address="1.1.8",
              fetch=false,
              pingInterval=600,
              readInterval=0
              ] {
              Type dimmer : Kanal_A "Wohnzimmer" [ switch="1/1/16+<1/1/18", position="1/1/28+<1/1/19", increaseDecrease="1/1/17" ]
              Type dimmer : Kanal_B "Esstisch" [ switch="1/1/20+<1/1/22", position="1/1/29+<1/1/23", increaseDecrease="1/1/21" ]
              Type dimmer : Kanal_C "Totesstern" [ switch="1/1/24+<1/1/26", position="1/1/33+<1/1/27", increaseDecrease="1/1/25" ]
              Type dimmer : Kanal_D "Bad2" [ switch="1/1/37+<1/1/39", position="1/1/35+<1/1/40", increaseDecrease="1/1/38" ]
              
              }
              Thing device Date_Device {
              
              Type datetime-control : knxTime [ ga="10.001:1/3/0" ]
              Type datetime-control : knxDate [ ga="11.001:1/3/1" ]
              Type datetime-control : datumzeit "Datum und Zeit" [ ga="19.001:1/3/2" ]
              
              }
              }​
              Ist es so richtig?
              Zuletzt geändert von StukaAss; 01.10.2023, 15:27.

              Kommentar


                #8
                eher so:
                Code:
                Bridge knx:ip:bridge "Raspi3Tunnel" [
                    ipAddress="192.168.2.150",
                    localIp="192.168.2.192",
                    type="TUNNEL",
                    portNumber=3671,
                    readingPause=50,
                    responseTimeout=10,
                    readRetriesLimit=3,
                    autoReconnectPeriod=60,
                    localSourceAddress="0.0.0" // this physical address must be unused (even used by tunnel is not allowed!)
                 ] {
                    Thing device 1 "AKS-1216.03 Schaltaktor 12-fach, 8TE, 16A" [
                        address="1.1.5",
                        fetch=false,
                        pingInterval=600,
                        readInterval=0
                    ] {
                        Type switch : Kanal_A "Flur"        [ga="1/0/6"]
                        Type switch : Kanal_B "Wohnen_OG"   [ga="2/0/0"]
                        Type switch : Kanal_C "Computer_OG" [ga="2/0/2"]
                      //Type switch : Kanal_D ""            [ga=""]
                        Type switch : Kanal_E "Ufo"         [ga="1/0/16"]
                      //Type switch : Kanal_F ""            [ga=""]
                      //Type switch : Kanal_G ""            [ga=""]
                      //Type switch : Kanal_H ""            [ga=""]
                      //Type switch : Kanal_I ""            [ga=""]
                        Type switch : Kanal_J "Gäste_WC"    [ga="1/0/10"]
                      //Type switch : Kanal_K ""            [ga=""]
                      //Type switch : Kanal_L ""            [ga=""]
                      //Type switch : ch3     "Channel 3"   [ga="1/1/5+<1/1/6"]
                    }
                    Thing device 2 "AKU-1616.02 Universalaktor 16-fach, 16A, 230VAC" [
                        address="1.1.6",
                        fetch=false,
                        pingInterval=600,
                        readInterval=0
                    ] {
                      //Type switch : Kanal_A "Channel 2"            [ga="1/2/1+<1/2/2"]
                      //Type switch : Kanal_B "Channel 2"            [ga="1/2/3+<1/2/4"]
                      //Type switch : Kanal_C "Channel 3"            [ga="1/2/5+<1/2/6"]
                      //Type switch : Kanal_D "Channel 1"            [ga="1/2/1+<1/2/2"]
                      //Type switch : Kanal_E "Channel 2"            [ga="1/2/3+<1/2/4"]
                        Type switch : Kanal_F "Beleuchtung_Eingang"  [ga="1/4/1"]
                        Type switch : Kanal_G "Beleuchtung_Terrasse" [ga="1/4/7"]
                      //Type switch : Kanal_H "Channel 2"            [ga="1/2/3+<1/2/4"]
                      //Type switch : Kanal_I "Channel 3"            [ga="1/2/5+<1/2/6"]
                      //Type switch : Kanal_J "Channel 1"            [ga="1/2/1+<1/2/2"]
                        Type switch : Kanal_K "Schlafzimmer"         [ga="1/2/0"]
                      //Type switch : Kanal_L ""                     [ga="1/2/5+<1/2/6"]
                        Type switch : Kanal_M "Miles"                [ga="1/2/2"]
                      //Type switch : Kanal_N "Channel 2"            [ga="1/2/3+<1/2/4"]
                        Type switch : Kanal_O "Bad"                  [ga="1/2/4"]
                      //Type switch : Kanal_P "Channel 1"            [ga="1/2/1+<1/2/2"]
                    }
                    Thing device 3 "AKD-0401.01 Dimmaktor1 4-fach, 8TE, 230VAC, 250W" [
                        address="1.1.7",
                        fetch=false,
                        pingInterval=600,
                        readInterval=0
                    ] {
                        Type dimmer : Kanal_A "Schlafzimmer" [ switch="1/1/0+<1/1/2",   position="1/1/30+<1/1/3",  increaseDecrease="1/1/1" ]
                        Type dimmer : Kanal_B "Miles"        [ switch="1/1/4+<1/1/6",   position="1/1/32+<1/1/7",  increaseDecrease="1/1/5" ]
                        Type dimmer : Kanal_C "Bad"          [ switch="1/1/8+<1/1/10",  position="1/1/34+<1/1/11", increaseDecrease="1/1/9" ]
                        Type dimmer : Kanal_D "Kueche"       [ switch="1/1/12+<1/1/14", position="1/1/36+<1/1/15", increaseDecrease="1/1/13" ]
                    }
                    Thing device 4 "AKD-0401.01 Dimmaktor2 4-fach, 8TE, 230VAC, 250W" [
                        address="1.1.8",
                        fetch=false,
                        pingInterval=600,
                        readInterval=0
                    ] {
                        Type dimmer : Kanal_A "Wohnzimmer" [ switch="1/1/16+<1/1/18", position="1/1/28+<1/1/19", increaseDecrease="1/1/17" ]
                        Type dimmer : Kanal_B "Esstisch"   [ switch="1/1/20+<1/1/22", position="1/1/29+<1/1/23", increaseDecrease="1/1/21" ]
                        Type dimmer : Kanal_C "Totesstern" [ switch="1/1/24+<1/1/26", position="1/1/33+<1/1/27", increaseDecrease="1/1/25" ]
                        Type dimmer : Kanal_D "Bad2"       [ switch="1/1/37+<1/1/39", position="1/1/35+<1/1/40", increaseDecrease="1/1/38" ]
                    }
                    Thing device Date_Device {
                        Type datetime-control : knxTime                    [ ga="10.001:1/3/0" ]
                        Type datetime-control : knxDate                    [ ga="11.001:1/3/1" ]
                        Type datetime-control : datumzeit "Datum und Zeit" [ ga="19.001:1/3/2" ]
                    }
                ​}​
                Zuletzt geändert von udo1toni; 02.10.2023, 14:14.

                Kommentar


                  #9
                  Stimmen die IP-Adressen? (beide, 192.168.2.150 ist die Adresse des knx/IP Gateways auf Port 3671, 192.168.2.192 ist die Adresse von openHAB selbst).
                  Grundsätzlich musst und solltest Du keine Default Werte setzen, also besser
                  Code:
                  Bridge knx:ip:bridge "Raspi3Tunnel" [
                      ipAddress="192.168.2.150",
                      localIp="192.168.2.192",
                      type="TUNNEL"
                  ] {​

                  Kommentar


                    #10
                    Ja IP-Adressen stimmen, wenn ich deinen Code Kopiere bekomme ich einen Error, stimmt was mit den Klammern nicht. Vielen Dank für deine Mühe.
                    Hier ein Bild von der ETS und der log 2023-10-02 (1).png
                    2023-10-02.png
                    Zuletzt geändert von StukaAss; 02.10.2023, 09:13.

                    Kommentar


                      #11
                      Zitat von StukaAss Beitrag anzeigen
                      Ja IP-Adressen stimmen, wenn ich deinen Code Kopiere bekomme ich einen Error, stimmt was mit den Klammern nicht.
                      Ja, beim Einfügen hat sich eine überzählige schließende geschwungene Klammer eingemogelt. Allerdings sind solche Fehler wirklich trivial, das sollte auch direkt im Editor hervorgehoben werden.

                      Falls Du nur mit einem einfachen Texteditor unterwegs bist, möchte ich Dir dringend VisualStudio Code ans Herz legen. Die Software ist OpenSource und kostenlos. Es gibt buchstäblich tausende Plugins, unter anderem eines für openHAB, mit dem (korrekte Einstellungen mal vorausgesetzt) der Code von DSL Rules online geprüft wird (er wird also zum openHAB Server geschickt, der den Code prüft).
                      Triviale Fehler wie die überzählige Klammer findet VS Code ohnehin selbst und macht diese dann auch direkt mit rot kenntlich.
                      Außerdem beherrscht VS Code Folding, Du kannst bei korrekter Formatierung (siehe oben) einfach die Things einzeln "zuklappen", was bei umfangreichen Dateien enorm zur Übersichtlichkeit beiträgt.

                      Das openHAB Plugin unterstützt außerdem mit einer Things- und Itemliste, beide dynamisch, Things werden mit Online/Offline Status angezeigt, man kann direkt aus der Liste heraus die textliche Item Definition für einzelne Channel oder ganze Things erzeugen lassen, Items werden mit Status angezeigt, hierarchisch angeordnet nach Gruppenzugehörigkeit, innerhalb des Codes wird beim Mouseover über Itemnamen ebenfalls der Status sowie weiter Informationen angezeigt. Code Snippets gehören genauso dazu wie automatische Vervollständigung der Eingaben.

                      Kommentar

                      Lädt...
                      X