knxd als Router nutzen

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
PSch
Beiträge: 20
Registriert: 3. Okt 2018 09:53
Answers: 0

knxd als Router nutzen

Beitrag von PSch »

Moin,

als ich noch Openhab 1.8 zusammen mit dem eibd genutzt habe, war es möglich, Openhab aktiv zu haben und trotzdem mit der ETS über den Gateway die KNX devices programieren zu können.

Mit dem Umstieg auf Openhab 2.x habe ich auf den knxd gewechselt, habe es aber nicht hinbekommen, diesen Zustand wieder zu erreichen. Ich muß immer den knxd stoppen, um mit der ETS auf den Bus zugreifen zu können.

Derzeitige Konfig ist:

KNX/IP Gateway ist ein Busch Jäger 6186/32... alt, hat aber immer gut funktioniert
- IP ist 192.168.102.138 / 24

Der knxd (auf der Maschine mit der IP 192.168.152.151) wird aufgerufen (parameter aus der /etc/knxd.conf)

Code: Alles auswählen

     KNXD_OPTS="-e 0.0.1 -E 0.0.2:8 -u /tmp/eib  -R  -D -T -S -b ipt:192.168.102.138"
In der knx.things Datei auf der Openhab Maschine (192.168.152.151) findet sich diese Config:

Code: Alles auswählen

Bridge knx:ip:bridge [ 
    ipAddress="192.168.152.151", 
    portNumber=3671, 
    localIp="192.168.152.151", 
    type="TUNNEL", 
    readingPause=50, 
    responseTimeout=10, 
    readRetriesLimit=3, 
    autoReconnectPeriod=1,
    localSourceAddr="0.0.0"
] {
    Thing device generic [

      ] { ...
Das funktioniert auch, aber eben nicht zusammen mit der ETS.

Deshalb hab ich die knx.things Datei so geändert:

Code: Alles auswählen

Bridge knx:ip:bridge [ 
    localIp="192.168.152.151", 
    type="ROUTER",             
    readingPause=50, 
    responseTimeout=10, 
    readRetriesLimit=3, 
    autoReconnectPeriod=1,
    localSourceAddr="0.0.0"
] {
    Thing device generic [
       ] { ...
    
Anschließend Openhab neu gestartet...ohne Fehlermeldungen...aber gehen tut es nicht. Alles schalten per UI gibt zwar Ausgaben im Log, aber nichts in der Wirklichkeit. Also: irgendwas ist falsch, aber ich komme nicht dahinter, was es seien könnte.

Hat da irgend jemand eine Idee? Oder bin ich gar auf dem ganz falschen Dampfer und der knxd muß anders konfiguriert werden?

Für jede Hilfe dankbar...
Peter

Benutzeravatar
udo1toni
Beiträge: 15248
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: knxd als Router nutzen

Beitrag von udo1toni »

Dein Gateway ist in einem anderen Subnetz. Hast Du da einen IP-Router dazwischen? Multicast Pakete werden grundsätzlich nicht geroutet, knx-Routing läuft über Multicast.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

PSch
Beiträge: 20
Registriert: 3. Okt 2018 09:53
Answers: 0

Re: knxd als Router nutzen

Beitrag von PSch »

Moin Udo1Toni,

wieder was dazu gelernt...aber immernoch ohne Erfolg.

Ich habe den Gateway ins gleiche Netz wie die Openhabinstanz geschoben (192.168.152.157), die knxd.conf entsprechend angepasst:

Code: Alles auswählen

 KNXD_OPTS="-e 0.0.1 -E 0.0.2:8 -u /tmp/eib  -R  -D -T -S -b ipt:192.168.152.157"
und auch die KNX.things angepasst:

Code: Alles auswählen

Bridge knx:ip:bridge [ 
    ipAddress="192.168.152.151", 
    portNumber=3671, 
    localIp="192.168.152.151", 
    type="TUNNEL", 
    readingPause=50, 
    responseTimeout=10, 
    readRetriesLimit=3, 
    autoReconnectPeriod=1,
    localSourceAddr="0.0.0"
    
] {...
Dann funktioniert auch alles so wie vorher.


Ändere ich das auf:

Code: Alles auswählen

Bridge knx:ip:bridge [ 
    // ipAddress="192.168.152.151", 
    // portNumber=3671, 
    localIp="192.168.152.151", 
    type="ROUTER", 
    readingPause=50, 
    responseTimeout=10, 
    readRetriesLimit=3, 
    autoReconnectPeriod=1,
    localSourceAddr="0.0.0"
    
] {...
Funktioniert es nicht mehr...egal ob mit Neustart oder ohne. Es gibt auch keine Fehlermeldung in /var/log/openhab/openhab.log

Adressen sind jetzt:
192.168.152.157 = KNX Gateway
192.168.152.151 = Openhab / knxd Maschine

Noch irgendwelche Ideen? z.B. eine Beschreibung, was der knxd eigentlich tut. Die Beschreibung im GIT habe ich mir durchgelesen, leider nur sehr wenig verstanden, da sie (für mein Empfinden) schon vorraussetzen, was der Daemon eigentlich tut und wie man dazu die einzelnen Parameter benutzt. Mir wird da nur nicht klar, welche der Parameter ich eigentlich brauche. Z.B. denke ich, dass ich die Adresse mit ip: statt mit ipt: angeben muß...sieht der knxd aber total anders und stellt die Funktion ein.

Gruß
Peter

Benutzeravatar
udo1toni
Beiträge: 15248
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: knxd als Router nutzen

Beitrag von udo1toni »

knxd spielt Gateway. Es ist der Nachfolger des nicht mehr weiterentwickelten eibd.
Dabei unterstützt es auf der knx-Seite verschiedene Interfaces, von UART und FT1.2 bis knx/IP (TUNNEL und ROUTER Mode) ist alles dabei. Auf der anderen Seite bietet es UNIX-Sockets sowie knx/IP TUNNEL und knx/IP ROUTER Mode an.

Ich bin kein Experte, was knxd betrifft, für mich sieht die Konfiguration erst mal gut aus.

Die autoreconnectPeriod solltest Du allerdings auf einen Wert über 30 ändern (eine aktuelle Version von openHAB tut dies automatisch), abeer das hat natürlich nichts mit Deinem konkreten Problem zu tun, dass der ROUTER Mode offensichtlich nicht funktioniert.
Ich bin mir auch nicht sicher, ob der Deine Probleme lösen würde.

Hast Du schon mal versucht, ob die ETS per Router Mode über knxd funktioniert?
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Antworten