Ankündigung

Einklappen
Keine Ankündigung bisher.

Grundsätzliches in knx Binding bei openHAB

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

    Grundsätzliches in knx Binding bei openHAB

    Hallo Experten,
    ich habe meine ersten Schritte mit openHAB gemacht.
    Heute habe ich es mit dem knx-Binding versucht und habe es nicht hinbekommen. Es fehlt mir an ein funktionierendes Beispiel: Licht an/aus.

    Ich habe folgendes gemacht:
    1. item:
    Code:
    Switch Licht_Bad "Badlicht" (room_Bad, type_Licht) {knx="1.001:0/0/1"}
    2. knx-binding installiert. Das start_debug.bat sagt:
    Code:
    ... DEBUG o.o.b.k.internal.KNXActivator[:51] - KNX binding has been started.
    ... DEBUG o.o.m.i.i.GenericItemProvider[:312] - Start processing binding configuration of Item 'Licht_Bad (Type
    =SwitchItem, State=Uninitialized)' with 'KNXGenericBindingProvider' reader.
    3. In der UI gibt es ein Switch: "Badlicht". Wenn man ihn betätigt sagt die Konsole:
    Code:
    INFO  runtime.busevents[:42] - Licht_Bad received command ON
    Das licht geht nicht an. Auf dem Bus gibt es keine entsprechenden Telegramme.
    Die GA 0/0/1 existiert und funktioniert, wenn man Wahr/Falsch mit der ETS4 schreibt.

    Was mache ich falsch?
    Was für eine Rolle spielt das DPT-Type 1.001? Weder 1.001, noch 1.002, noch ganz weglassen ändern etwas.

    Kan jemand den entscheidenden Tip geben?
    Gruß
    Gogo

    P.S.
    Ich habe openHAB als ROUTER und IP-Adresse (auf TCP) konfiguriert.
    Gleichzeitig läuft ETS4 auf UDP. Das Log zeit keine Bus-Telegramme vom openHAB.
    G

    #2
    Hallo,

    mal TUNNEL mode probiert. Siehe dazu auch die openhab.cfg

    Code:
    #######################################################################################
    #####                        Binding configurations                               #####
    #######################################################################################
    
    ################################ KNX Binding ##########################################
    # KNX gateway IP address 
    # (optional, if serialPort or connection type 'ROUTER' is specified)
    knx:ip=192.168.XXX.YYY
    
    # KNX IP connection type. Could be either TUNNEL or ROUTER (optional, defaults to TUNNEL)
    [COLOR="Red"]# Note: If you cannot get the ROUTER mode working (even if it claims it is connected), 
    # use TUNNEL mode instead with setting both the ip of the KNX gateway and the localIp.
    [/COLOR]knx:type=TUNNEL
    Viele Grüße
    Ralf

    Kommentar


      #3
      Welche Anbindung verwendest du an das KNX Gateway? Über netzwerk?

      Du solltest mal prüfen ob beim OH Start im Logfile der nicht nur das Binding geladen wird sonder auch der Connect zustande kommt. Es sollte hier so etwas stehen wie:

      16:44:48.682 INFO o.o.b.k.i.c.KNXConnection[:222]- Established connection to KNX bus on 192.168.1.11:3671 in mode TUNNEL.

      Wenn du einen einfachen IP Connector in KNX hast kann es sein das er nur eine Verbindung zulässt - BUS Monitor oder OH - und jeweils etwas Zeit benötigt wenn der eine oder andere aktiv ist/ war um die leitun wieder frei zu geben.

      Eine weitere Fehlerquelle könnte in der OH Config datei sein:

      ################################ KNX Binding ##########################################
      #
      # KNX gateway IP address
      # (optional, if serialPort or connection type 'ROUTER' is specified)
      knx:ip=192.168.1.11

      # Local endpoint to specify the multicast interface, no port is used (optional)
      #local testing
      knx:localIp=192.168.1.116


      setze mal die OH IP Adresse bei local IP ein.

      dann sollte es klappen.

      Grüsse
      kakaiser

      Kommentar


        #4
        Hallo,
        danke Ralf und kakaiser. Ja, der TUNNEL mode funktioniert.

        Ich habe einen Gira KNX/IP Router 216700.
        Eigentlich möchte ich nur eine IP Adresse haben, da die maximale Anzahl an Geräten für die ETS4 (20) inzwischen erreicht wurde. Ich dachte es wäre der Router mode (UDP und multicasting) dafür notwendig.

        Anyway
        Guten Rutsch und danke
        Gogo

        Kommentar


          #5
          Hallo zusammen,
          ich nehme das Thema nochmal auf, da es meinem Problem am nächsten kommt.

          Beim Start des OH bekomme ich ein timeout beim Verbindungsaufbau zum KNX Bus. Sonderfall bei mir ist, dass sich OH-Server und Siemens KNX-Gateway nicht im gleichen Subnet befinden 172.16.172.0/24=OH 10.6.60.0/24=KNX-Gateway. Netzwerkeinstellungen sind ok, der eibd z.B. kam sofort ans werkeln.

          Nun meine Frage: ist eine solche Konstellation überhaupt vorgesehen, oder kann ich die Fehlersuche einstellen, da mit OH nicht realisierbar?

          Danke

          Dumbo

          Kommentar


            #6
            Kannst du denn vom OH-Server das KNX-Gateway pingen?

            Gruß,
            thoern

            Kommentar


              #7
              Kann sein, dass ich da was durcheinander schmeiße (ist ja schon etwas später...) aber könnte es eventuell sein, dass der dazwischen liegende Router Multicast-fähig sein muss?

              Kommentar


                #8
                Herzlichen Dank für die schnellen Antworten!

                Mit dem Hinweis, dass der eib-daemon sauber funktioniert, scheint sich für mich eine Netzwerk-Infrastruktur Frage nicht zu stellen.

                @thoern: pingen geht (s.o.)
                @udo1toni: Ist m.E hier nicht relevant(s.o.).


                Dumbo

                Kommentar


                  #9
                  Ok, mit "eibd werkeln" war eben für mich nicht ganz ersichtlich, ob er nur gestartet wurde, oder ob du tatsächlich mal versucht hast, mit Kommandos wie "groupswrite" etc. Schaltvorgänge auf dem Bus auszulösen. Ich gehe jetzt davon aus, dass du das getestet hast und dass das funktioniert.

                  Viellieicht kannst du mal die KNX-spezifischen Einträge aus
                  der openhab.cfg posten und die Ausgabe von "ps -ef | grep eibd", so dass man sieht, mit welchen Parametern der eibd gestartet wurde.

                  PS: Mit Multicast hat das nix zu tun.

                  Gruß,
                  thoern

                  Kommentar


                    #10
                    Sorry für die etwas lockere Formulierung, aber in der Tat seh ich mit "groupsocketlisten" die Telegramme und "groupswrite" schaltet auch.

                    ps -ef | grep eibd
                    1001 2362 1 0 Sep07 ? 00:00:01 /usr/bin/eibd --daemon --Server --Tunnelling --Discovery --GroupCache --listen-tcp --pid-file=/var/run/eibd.pid --eibaddr=0.0.1 ipt:10.6.60.120

                    openhab.cfg
                    knx:ip=10.6.60.120
                    knx:type=TUNNEL
                    knx:localIp=172.16.172.120

                    Thx
                    Dumbo

                    Kommentar


                      #11
                      Sorry, aber so ganz durchdrungen habe ich dein Setup noch nicht. Du hast also drei unterschiedliche Systeme im Einsatz, oder?

                      Ein KNX-IP-Gateway,
                      einen Rechner mit eibd,
                      einen weiteren Rechner mit OpenHAB

                      Warum brauchst du eigentlich eibd wenn du ein IP-Gateway hast?
                      Und soll jetzt
                      1. OpenHAB mit eibd kommunizieren und eibd reicht weiter an IP-Gateway oder soll
                      2. openHAB direkt mit dem IP-Gateway kommunizieren

                      Wenn openHAB mit eibd sprechen soll (Fall 1), musst du bei knx:IP die IP von eibd angeben, im Fall 2. müsstest du bei knx:IP hat da Gateway angeben.

                      knx:localIP hab ich gar nicht konfiguriert. Weiss nicht genau, wozu das gut sein soll. Evtl. solltest das vielleicht auch mal deaktivieren

                      Gruß,
                      thoern

                      Kommentar


                        #12
                        Über die Ausgangsfrage oder wie verselbstständigt sich ein Thema
                        Die Ausgangsfrage war: Kann OH in der beschriebenen Form mit zwei Subnetzen umgehen? Sollte das so vom Ansatz nicht funktionieren können, bräuchte ich nicht weiter nach Fehlern suchen. Der Hinweis mit dem EIBDaemon sollte nur dazu dienen, dass im Bereich Infrastruktur Themen wie Routing, Multicast, etc. nicht als Ursache des Problems in Frage kommen! Letztendlich brauch ich den EIBD für den OH nicht.


                        Ich werde noch weiter auf der Anbindung rumdenken, möchte das Thema aber hier schliessen.


                        Herzlichen Dank


                        Dumbo

                        Kommentar

                        Lädt...
                        X