Ankündigung

Einklappen
Keine Ankündigung bisher.

OpenHAB Einstieg - nur Probleme ...

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

    OpenHAB Einstieg - nur Probleme ...

    Hallo zusammen,

    ich versuche derzeit OpenHAB zu starten / zu nutzen. Erstmal hatte ich es auf einem Docker Container auf Linux laufen, nun aktuell nativ unter Windows, da dort das mit den Configdateien fixer geht.

    Also, erstmal hier meine Konfig:
    Demo-Sitemap:
    Sitemap knx label="KNX Demo Sitemap" {
    Frame label="Demo Elements" {
    Switch item=demoSwitch
    Switch item=switchRogerBuero
    Text item=demoTemperature
    }
    }

    Demo-Things:
    Bridge knx:ip:bridge [
    ipAddress="192.168.99.240",
    type="ROUTER",
    localSourceAddr="15.15.251"
    ] {
    Thing device generic []
    {
    Type switch : demoSwitch "Light" [ ga="1/0/7+<1/0/107" ]
    Type switch : switchRogerBuero "LichtRoger" [ ga="1/0/0+<1/0/100" ]
    Type number : demoTemperature "Temperature" [ ga="9.001:<1/3/0" ]
    }
    }

    Demo-Items:
    Switch demoSwitch "Light [%s]" <light> { channel="knx:device:bridge:generic:demoSwitch" }
    Switch switchRogerBuero "Light [%s]" <light> { channel="knx:device:bridge:generic:switchRogerBuer o" }
    Number demoTemperature "Temperature [%.1f °C]" <temperature> { channel="knx:device:bridge:generic:demoTemperature " }

    Was geht?
    Schalten des demoSwitches geht, Temperatur geht, swicthRogerBuero geht nicht.
    Der demoSwitch reagiert auf einen Schaltvorgang nahezu direkt. Ein folgender Schaltvorgang wird jedoch mit Verzögerung ausgeführt.
    Warte ich ein paar Sekunden dazwischen wird ein Folgevorgang auch direkt ausgeführt.

    Im ETS Gruppenmonitor sehe ich die Befehle auf dem Bus nicht, wohl aber die Statusänderungen zum Beispiel (Switch Status ON an 1/0/100)

    Im events.log werden alle Befehle direkt angezeigt nach Drücken

    Im openhab.log kommen immer wieder solche Meldungen:
    2018-12-16 20:24:34.644 [WARN ] [nx.internal.client.AbstractKNXClient] - Value 'OFF' could not be sent to the KNX bus using datapoint 'command DP 1/0/7 'knx:ip:bridge', DPT id 1.001, low priority': no confirmation reply received for 15.15.251->1/0/7 L_Data.req, low priority hop count 6 repeat, tpdu 00 80. Giving up now.
    2018-12-16 20:24:34.644 [WARN ] [.internal.handler.DeviceThingHandler] - An error occurred on channel knx:device:bridge:generic:demoSwitch: no confirmation reply received for 15.15.251->1/0/7 L_Data.req, low priority hop count 6 repeat, tpdu 00 80
    tuwien.auto.calimero.KNXTimeoutException: no confirmation reply received for 15.15.251->1/0/7 L_Data.req, low priority hop count 6 repeat, tpdu 00 80

    Was mache ich falsch?

    Gruß
    Roger


    #2
    Moin

    Dein erster Fehler besteht schon mal darin, den Code nicht als Code gepostet zu haben, nicht nur ist er dadurch schlecht lesbar, die Forensoftware pfuscht auch noch darin herum.

    Mit Docker Containern kenne ich mich nicht gut aus, grundsätzlich aber sollte es nicht weniger fix gehen, wenn Du openHAB unter GNU/Linux laufen lässt, vorausgesetzt, Du hast die Installation korrekt durchgeführt.

    Bei Docker ist, wenn ich es richtig verstanden habe zu beachten, dass die Konfiguration außerhalb des Containers gespeichert wird, damit sie beim Anhalten und anschließendem Neustart des Containers nicht im Orkus verschwindet.
    Dann brauchst Du auf eben diese Konfigurationsdaten Zugriff per Samba (z.B. mittels eines weiteren Containers, oder direkt von dem darunter laufenden System aus).
    Danach kommst Du über die Windows-Freigabe so bequem an die Konfiguration, wie man es sich nur wünschen kann. VSCode als Editor mit openHAB Plugin kann sowohl mit dem UNC-Pfad (\\openHAB-Rechner\openhab-config\) als auch mit auf einen Laufwerksbuchstaben verbundenen Netzwerkfreigaben umgehen.

    Zu Deiner Konfiguration:
    Du setzt den ROUTER Mode, gibst aber eine ipAddress="192.168.99.240" an, das kann nicht funktionieren! Der ROUTER Mode arbeitet per Definition mit MultiCast, die IP lautet dann 224.0.23.12 (die ist für knx Anwendungen reserviert und jeder knx/IP-Router nutzt diese IP, es sei denn, man hat explizit in allen beteiligten Geräten eine andere MultiCast Adresse vergeben)

    Die Frage ist also erstmal, ob Du tatsächlich einen knx/IP Router im Einsatz hast, oder doch "nur" ein Tunnel knx/IP Gateway. Falls es ein Router ist, entferne die Konfiguration für die IP-Adresse, falls es ein einfaches Gateway ist, setze den TUNNEL Mode.
    Wenn Du die localSourceAddr setzt, ist es wichtig, dass diese nirgendwo im System genutzt wird, auch nicht als frei vergebene Adresse eines Gateways.
    Zuletzt geändert von udo1toni; 17.12.2018, 16:36.

    Kommentar


      #3
      Hi :-)

      also das mit dem Docker lief schon, auch das mit der externen Konfig. Das sind ja Basics :-) Nur der vorkonfigurierte Docker Container lief unter dem User 9001, das führte zu ein paar Konflikten. Aber egal.

      Zum IP Router:
      Der KNX IP LineMaster 760 vereint die zentralen Funktionen einer KNX Buslinie: Netzteil mit Drossel, IP Router und IP Schnittstelle. Das Netzteil bietet neben der Busspannung eine Hilfsspannung von 24V. Der IP Router im LineMaster ermöglicht die Weiterleitung von Telegrammen zwischen verschiedenen Linien über ein LAN (IP) als schnellen Backbone.

      Ich teste das jetzt mal ohne IP und vergebe auch mal eine freie localSourceAddr - denn die jetzt war in der Tat vom Router.

      EDIT: Geht :-) Danke. I'll be back :-)

      Gruß
      Roger
      Zuletzt geändert von Shadowblues; 17.12.2018, 23:17.

      Kommentar

      Lädt...
      X