• Skip to main content
  • Skip to secondary menu
  • Skip to primary sidebar
  • Skip to footer
  • Alle Produkte
  • Werkzeuge
  • Basics
  • Angebote

Zukunft at home

Vernetze dein Zuhause!

  • Startseite
  • openHAB
  • Tools
  • KNX
  • Regeln
  • Alexa
  • Selbst gebaut
  • Leserprojekte
  • Shop

KNX 2 openHAB – Migration von KNX 1

17. Juli 2018 geschrieben von Patrick 25 Kommentare

Mit openHAB 2.3 wurde auch eine neue Version des KNX Bindings vorgestellt. Mit dem KNX 2 Binding wird KNX auch Paper UI fähig. Leider ist es mit der Installation des neuen Bindings nicht getan. Der Aufbau hat sich etwas geändert, so dass einige Anpassungen notwendig sind. Im ersten Moment erscheint alles etwas verwirrend. Wo ursprünglich eine knx.items Datei genügt hat, ist nun eine knx.things UND eine knx.items Datei notwendig.

Vorbereitung

Je nach Größe der KNX Installation bedeutet die Migration auch eine ordentliche Portion Schreibarbeit. Damit die ganze Haustechnik über mehrere Tage offline ist, habe ich die Vorarbeiten für die Migration offline durchgeführt. Hierzu benötigst du aus der laufenden Installation deine knx.items Datei, in der deine KNX Zuordnungen enthalten sind. Lege eine Kopie davon lokal auf deinem Computer ab.

Nun erstellst du lokal auf deinem Computer eine zweite Datei mit dem Namen knx.things. Idealerweise nutzt du für alle weiteren Schritte VS Code.
Öffne beide Dateien in VS Code in jeweils eigenen Fenstern und zeige sie, soweit möglich, nebeneinander an. Ich nutze einen 2. Bildschirm hierfür.

Eine grundsätzliche Entscheidung ist noch zu treffen. Möchtest du alle Du kannst alle deine Channels unter einem Thing/Device anlegen, oder möchtest du deine KNX Hardware (Aktoren, etc.) entsprechend in der Software abbilden. Als Thing kannst du beispielsweise einen Aktor in deinem Schaltschrank betrachten. Auf diese Weise habe ich es gelöst. Hierzu habe ich mir die ETS zur Hilfe genommen, habe mir die Aktoren mit ihren physikalischen Adressen herausgesucht und dann die Channels mit den dazugehörigen Gruppenadressen in openHAB im jeweiligen Device abgebildet.

Die knx.things Datei des KNX 2 Binding

Mit dem KNX 2 Binding verschwindet auch die knx.cfg Datei, in der bisher die Schnittstelle eingetragen wurde. Stattdessen wird alles zentral in der knx.things eingetragen. Die Basiskonfiguration für eine IP Schnittstelle im Tunnel Mode sieht folgendermaßen aus.

Aufbau knx.things Datei
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Bridge knx:ip:bridge [
    ipAddress="192.168.1.1",
    portNumber=3671,  
    type="TUNNEL",
    readingPause=50,
    responseTimeout=10,
    readRetriesLimit=3,
    autoReconnectPeriod=1,
    localSourceAddr="0.0.0"
] {
    //AB HIER WERDEN DIE DEVICES ANGELEGT
    Thing device aktor1[
        address="1.0.181",
        fetch=false,
        pingInterval=300,
        readInterval=0
    ] {
        Type switch        : demoSwitch        "Light"       [ ga="3/0/4+<3/0/5" ]
        //-->Hier weitere Channels einfügen
    }
}

Nähere Informationen zu den Konfigurationsmöglichkeiten der Schnittstelle findest du in der entsprechenden openHAB Dokumentation

Bennenung bei existierendem KNX 1 Projekt

Es wäre natürlich toll, wenn man alle bestehenden Regeln etc. in openHAB nach der Umstellung auf KNX 2 einfach weiter verwenden könnte. Das ist problemlos möglich. Dazu ist es ratsam die Objekte in der knx.things Datei einfach entsprechend der bisherigen knx.items zu bennenen, bzw. den Channel einfach dem gleichen Item in der knx.items zuzuordnen.

 

Benennung in der „alten“ knx.items

1
Switch Licht_UG_Schlafen_Wand  "Schlafen Wand" <light> {knx="1/2/2+<11/2/2"}

Nun wird in der neuen knx.things Datei am Beispiel des „aktor 1“ ein entsprechender Channel angelegt:

1
Type switch    : licht_UG_Schlafen_Wand         "Schlafen Wand"             [ga="1/2/2+<11/2/2"]

Damit du später die openHAB Installation mit allen Regeln und Einstellungen für KNX ohne Probleme weiterverwenden kannst, wird jetzt in der knx.items Datei einfach der Teil {knx=“1/2/2+<11/2/2″} durch die neue Channel Verlinkung ersetzt. Das sieht dann so aus:

1
Switch Licht_UG_Schlafen_Wand  "Schlafen Wand" <light> { channel="knx:device:bridge:aktor1:licht_UG_Schlafen_Wand" }

Wenn du mehrere Diveces in der knx.things anlegst, ist zu beachten, dass sich neben dem Channel selbst (hier: licht_UG_Schlafen_Wand) auch die Angabe davor (hier: aktor1) in der Zuordnung ändern kann.

Auf diese Weise habe ich in der items Datei alle KNX Zuordnungen, durch die neuen Channel Zuordnungen ersetzt. Damit bleiben alle Items erhalten und auch Verknüpfungen in Regeln und der Sitemap sind vom Umstieg auf KNX2 nich betroffen und können wie gewohnt weitergenutzt werden.

Installation des KNX 2 Bindings

Sobald die Vorbereitungen abgeschlossen sind, kann die Umstellung von KNX 1 auf KNX 2 erfolgen. Hierzu wird im ersten Schritt in der Paper UI unter „Add-ons – Bindings“ das KNX 1 Binding deinstalliert und das KNX 2 Binding installiert.

KNX 2 Binding openHAB installieren
KNX 2 Binding openHAB installieren

Wenn das KNX 2 Binding installiert ist, müssen noch die neu angelegte knx.things und die geänderte knx.items Datei eingebunden werden. Hierfür öffnest du den VS Code Editor und ziehst die Dateien in die entsprechenden Ordner. Die knx.things kommt in den things Ordner, die knx.items kommt in den items Ordner. Falls hier noch die frühere knx.items liegt muss diese entweder überschrieben oder vorher gelöscht werden.

items und things Dateien hochladen
items und things Dateien hochladen

Fertig 🙂

Jetzt sollte alles funktionieren. Ich habe das System einmal neu gestartet, damit alle Dienste sauber gestartet werden. Der Umstieg hat in meinem Fall super funktioniert. Ein paar Tippfehler haben zwar dazu geführt, dass der ein oder andere Switch erst einmal außer Betrieb war – bei mehr als 100 KNX Channels gehört das aber wohl dazu.

 

In Kategorie:Allgemein Tags:Binding, KNX, openHab, Update, Visual Studio Code

Reader Interactions

Comments

  1. Jürgen says

    8. September 2019 at 23:21

    Hallo,

    ich richte bei mir gerade openhab 2.4 auf raspi 3b ein, von openhab 1.7 kommend, jetzt wollte ich meine Item und Sitemap Dateien übernehmen werden auch angezeigt in der Basic UI.

    Nun die Verbindung zur KNX-Schnittstelle klappt nicht, die KNX.cfg wird nicht angelegt, jetzt lese ich bei dir
    „Mit dem KNX 2 Binding verschwindet auch die knx.cfg Datei“ schon mal Danke für den Hinweis.

    In Things hab ich die Schnittstelle nun angelegt und diese wird auch als online angezeigt, jedoch läuft die Basic UI mit meinen 1.7 Items immer noch nicht, woran kann das liegen ?

    Mfg Jürgen

    Antworten
    • Patrick says

      9. September 2019 at 8:14

      Guten Morgen Jürgen,
      mit dem KNX 2 Binding hat sich auch die Verknüpfung der Items geändert. In der Items Datei wird nicht mehr direkt die KNX GA verknüpft.
      Du legst nun alle KNX Geräte in der Things Datei an und diese werden dann in der Items Datei mit beispielsweise
      Switch Licht_UG_Schlafen_Wand "Schlafen Wand" { channel="knx:device:bridge:aktor1:licht_UG_Schlafen_Wand" } verknüpft.

      Viele Grüße
      Patrick

      Antworten
  2. basti says

    20. Mai 2019 at 21:21

    Erstmal vielen Dank für dein Blog, der hat mir schon viel geholfen.
    Da durch habe ich auch die Umstellung auf KNX 2 geschafft.
    Einzig, wenn ich per openhab APP Items schalte geht das manchmal verzögert und manchmal sofort.
    Vor der Umstellung war dies nicht der Fall.
    Nutzt du die APP und hattest/Hast das gleiche Problem oder?
    Danke.

    Antworten
    • basti says

      20. Mai 2019 at 21:25

      sorry, habe nicht gesehen dass du schon geantwortet hattest

      Antworten
  3. Basti says

    7. Mai 2019 at 21:13

    Hallo, und erst mal vielen Dank.
    Dankt deiner Seite habe ich die Umstellung auf KNX 2 geschafft.
    Allerdings habe ich seit der Umstellung das Problem, dass wenn ich KNX-Items übers Handy per Openhab APP schalten will, dies nicht immer sofort geht.
    Manchmal schaltet es verzögert oder gar nicht, andern mal wieder sofort.

    Kennst oder hattest du das Problem auch? Oder nutzt du überhaupt die Openhab APP?

    Viele Grüße

    Basti

    Antworten
    • Patrick says

      8. Mai 2019 at 7:14

      Hallo Basti,
      freut mich, dass dir die Anleitung geholfen hat.
      Das klingt sehr seltsam. Wie verhalten sich die Items, wenn du über die Weboberfläche schaltest? Funktioniert es dort immer sofort?
      Ich habe die App ebenfalls in Benutzung und kann keine Probleme feststellen. Stellst du die Verbindung nur lokal her oder über den Cloud Dienst myopenhab?

      Viele Grüße
      Patrick

      Antworten
      • basti says

        20. Mai 2019 at 21:32

        Sporadische Fehler finde ich auch immer super.
        Die Verbindung ist immer nur lokal.
        Über die Weboberfläche ist es aber das gleiche. Dachte schon, dass es an der Konfiguration liegen könnte. Habe daher alles wie bei dir in der Anleitung angegeben (Hatte erst die meisten sachen nicht mit angegeben, weil es die default werte sind.) außer „localSourceAddr=“0.0.0″“ woran es denke nicht liegen kann,
        Daher weiß ich gerade nicht so wirklich woran es liegt?

        Antworten
        • Patrick says

          21. Mai 2019 at 11:19

          Hallo Basti, puh – da bin ich echt überfragt. Kannst du den KNX Busverkehr auslesen? Nicht, dass hier irgendetwas die Leitung blockiert oder zumüllt.
          Viele Grüße
          Patrick

          Antworten
  4. Bernhard Schumann says

    14. Januar 2019 at 21:00

    Hallo Patrick
    Stöbere immer wieder gerne in deinen Beiträgen. Habe eine kurze Frage. Oben in dem Bild der Knx.things Datei ist nur ein Aktor beschrieben wo füge ich denn einen zweiten oder dritten ein? Habe mal versucht einfach den nächsten unten dran zuhängen was aber immer an einem Syntaxfehler scheitert. Könntest du da ein Beispiel geben?

    Vielen Dank Der Berni

    Antworten
    • Patrick says

      14. Januar 2019 at 22:21

      Hallo Bernhard,
      vielen Dank 🙂 Ich habe dir eine Beispieldatei hochgeladen. Du kannst sie unter folgendem Link herunterladen: Beispiel KNX
      Ich hoffe das hilft dir weiter.

      Viele Grüße
      Patrick

      Antworten
      • Bernhard Schumann says

        14. Januar 2019 at 23:22

        Ich danke Dir vielmals! Irgendwann sieht man den Wald vor lauter Klammern nicht mehr^^
        Hat mir sehr geholfen.
        Angenehme Woche noch.

        Viele Grüße Bernhard

        Antworten
        • Patrick says

          15. Januar 2019 at 13:48

          Super, dann kann es ja jetzt weitergehen 😉
          Viel Spaß bei der weiteren Integration.

          Antworten
          • Bernhard Schumann says

            22. Januar 2019 at 21:20

            Hallo der Bernhard nochmal,

            könntest du die Beispieldatei nochmal linken bitte. und habe noch ne Frage zu meinem Log. bekomme diese Warnung
            Log Daten

            Es wird auch nur mein KnxIP Router/tunnel als Online angezigt im paperui ist das Normal.
            Hat das L-Data etwas mit den Flags in der Ets zu tun?

            Vielen Dank für die Zeit und Hilfe

          • Patrick says

            23. Januar 2019 at 13:32

            Hallo Bernhard,

            klar, habe den Link oben ausgetauscht. Jetzt kann er ohne zeitliche Beschränkung heruntergeladen werden.
            Diese Warnung habe ich bei mir noch nie gesehen (ich habe den Code mal in einer Textdatei angehängt, damit die Kommentarspalte lesbar bleibt 🙂 )
            Ich hoffe du kommst mit meiner KNX.things weiter. Du kannst mir gerne auch mal deine .things schicken, wenn du möchtest.

            Viele Grüße
            Patrick

  5. Joerg says

    5. Januar 2019 at 23:50

    Hallo Patrick,
    das Tutorial ist prima geworden und macht Mut als OpenHAB Neuling mit dem neuen Binding zu starten.
    Allerdings sitzt das Problem wohl vor dem PC und nicht im PC und mir gelingt es einfach nicht, irgendetwas zu schalten. Immerhin funktioniert die Anlage meines IP Routers schon. :-/
    Wäre es möglich Deine things und items Dateien zu bekommen? Würde mich ebenfalls an einer Donation beteiligen. Meine eMail ist joerg(at)asma.koeln
    Danke und viele Grüße
    Jörg

    Antworten
    • Patrick says

      6. Januar 2019 at 10:12

      Hallo Jörg,
      klar, ich bereite dir meine Daten vor. Kann allerdings morgen werden. Bin heute leider den ganzen Tag unterwegs.
      Viele Grüße
      Patrick

      Antworten
  6. Tobias Winter says

    3. September 2018 at 14:59

    Ich will eigentlich nur die aktuellen Wetterdaten und die Werte aus meinem DS18B20-Sensor auf den KNX-Bus schicken, damit ich sie z.B. auf einem MDT Glastaster ausgeben, bzw. damit dann weitere Aktionen wie Heizungssteuerung auslösen kann.
    Hast du sowas bei dir schon umgesetzt?
    Viele Grüße
    Tobias

    Antworten
    • Patrick says

      3. September 2018 at 15:08

      Das habe ich tatsächlich noch nicht umgesetzt. Eventuell stellst du deine Frage mal im KNX Forum in der openHAB Ecke (https://knx-user-forum.de/forum/supportforen/openhab). Dort hat bestimmt jemand das ganze bereits umgesetzt und kann dir schneller helfen 🙂 Gerne kannst du deine Erfahrungen hier mit mir teilen. Wer weiß wann ich vor dem gleichen Problem stehe 😉

      Antworten
  7. Ben says

    26. August 2018 at 16:13

    Hallo Patrick. Dank deinem guten Artikel habe ich es jetzt endlich geschafft das sich das erste Licht im Esszimmer schalten lässt. Vorher hatte ich mich gewundert warum nach Installation von KNX2-Binding im Raspberry unter Services keine knx.cfg angelegt wird und bin schier verzweifelt.

    Da ich mit meiner Visu per openHABian und VS Code noch ganz am Anfang stehe und lediglich ein kleines Beispiel zum Testen geschrieben hab jetzt die Frage: muss ich das wirklich so aufwändig mit den zwei Dateien (knx.items + knx.things) schreiben? Das sieht mir nach deutlich mehr Schreib-Aufwand als mit dem KNX1-Binding aus, da nun auch die Aktiren mit ihrer phys. Adresse aufgeschrieben werden müssen. Geht das nicht einfacher?
    Grüße, Ben

    Antworten
  8. Ben says

    26. August 2018 at 14:28

    Hallo Patrick. Dank Deinem Beitrag habe ich es endlich geschafft, das unser Raspberry PI 3 das KNX ansteuert. Vorher hatte ich das KNX2-Binding über die PaperUI installiert und mich gewundert, warum dabei keine knx.cfg unter Services angelegt wird – bin schier verzweifelt und die Lampen im Esszimmer blieben dunkel :-(.

    Da ich noch ganz am Anfang bin und mit VS Code lediglich mal ein kleines Beispiel zum testen erstellt habe, nun meine Frage: muss ich das wirklich so aufwändig mit den zwei Dateien knx.items und knx.things parallel machen?! Das scheint mir deutlich mehr Schreibaufwand als unter Deinem Beitrag KNX1 beschrieben da ja für KNX2 die ganzen Aktoren separat aufgeführt werden müssen?

    Gruß Ben

    Antworten
    • Patrick says

      26. August 2018 at 18:30

      Hallo Ben,
      freut mich sehr, dass dir der Artikel geholfen hat 🙂

      Der Aufbau hat sich beim KNX2 Binding komplett geändert. Es ist zwingend erforderlich mit der 2 Dateien zu arbeiten. Das hat den Vorteil, dass du – sofern du in der Things real existierende Aktoren angibst – auch deren Status auslesen kannst. Sobald die Arbeit einmal gemacht ist, funktioniert das Ganze aber tadellos 🙂

      Viele Grüße
      Patrick

      Antworten
      • Ben says

        26. August 2018 at 22:53

        Hallo Patrick,
        kannst du mir vielleicht deine 2 Dateien knx.items und knx.things zur Verfügung stellen und an ben.account@gmx.de schicken? Würde mir es erleichtern die Zusammenhänge nachzuvollziehen. Und die Datei knx.Sitemap wäre auch klasse….wie gesagt, bin noch am Anfang und muss noch viel lernen. Wäre mir auch eine kleine Spende wert…
        Schon mal Danke! 😀
        Viele Grüße,
        Ben

        Antworten
        • Patrick says

          27. August 2018 at 15:07

          Hallo Ben,
          klar. Ich mache dir meine Dateien fertig. Bei mir gibt es allerdings keine reine knx.sitemap Datei. Meine Sitemap beinhaltet mein ganzes Haus von KNX, über Hue, bis hin zu selbstgebastelten MQTT Lösungen. Das wäre glaube ich kontraproduktiv. Wühle dich einfach mal durch die .things und .items Datei. Vielleicht bringt dich das schon weiter 🙂

          Antworten
          • Tobias Winter says

            2. September 2018 at 21:04

            Hallo Patrick,
            toller Beitrag. Ich stehe auch noch ganz am Anfang mit KNX und OpenHab. Ich habe es schon geschafft einen Aktor mit OpenHab zu steuern aber Werte vom OneWire oder Yahoo-Weather Binding an den Bus zu schicken klappt irgendwie noch gar nicht. Kannst du mir evtl. auch mal deine Einstellungen schicken? Ich denke ich brauche nur mal eine Grundeinrichtung, damit ich das dann auf meine anderen Geräte übertragen kann.
            Vielen Dank schon mal
            Tobias

          • Patrick says

            3. September 2018 at 14:07

            Hallo Tobias,
            freut mich, dass du über openHAB deine KNX Installation steuern kannst.
            Eine Grundeinstellung von openHAB gibt es in dem Sinne nicht. Kannst du mir schildern was du im Detail vorhast? Eventuell kann ich dir beispielhaft in einem speziellen Fall helfen. In den meisten Fällen brauchst du ja keine Werte von anderen Geräten direkt auf den Bus schicken, da openHAB ja dazwischen hängt und mit Regeln Aktionen auslösen kann.

            Viele Grüße
            Patrick

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Primary Sidebar

Suche

Neuigkeiten

Logitech Harmony Firmware Update sperrt lokalen Netzwerkzugriff

Logitech Harmony Hub nach Firmware Update unbrauchbar

Nach einem Firmware Update bei Logitech Harmony (Hub) kann keine Verbindung mehr mit openHAB hergestellt werden. Der Grund: Logitech hat sich dazu entschieden die, nach eigener Aussage, „nicht offiziellen“ APIs zu sperren, um die Sicherheit zu gewährleisten. Den ganzen Artikel findest du hier. Das dürfte für viele Nutzer der nicht gerade günstigen Fernbedienung für viel […]

(Sinnvolle) openHAB Regeln

Stromzähler und aktuellen Stromverbrauch in openHAB darstellen

Wer einen digitalen Stromzähler, Wasserzähler oder Gaszähler im Haus hat, kann damit nicht nur den aktuellen Zählerstand ablesen, sodern auch den aktuellen Verbrauch, Tagesverbraucht oder auch die Kosten pro Tag errechnen. Ich zeige am Beispiel eines KNX Stromzählers wie ich die oben genannten Werte umgesetzt habe. Stromzähler Item(s) anlegen Ich habe einen KNX Stromzähler verbaut, […]

Leserprojekte

Leserprojekt Andy: Ultraschallsensor in alter Funksteckdose

Ultraschallsensor in Funksteckdose – Leserprojekt von Andy

Heute stelle ich euch ein Leseprojekt vor. Andy war so freundlich und hat Zukunft at home Bilder von der Umsetzung des eigenen Ultraschallsensors zukommen lassen. Der Clou: Die gesamte Ultraschallsensor Technik ist in einer alten Funksteckdose untergebracht – inklusive Netzteil. So kann die ganze Einheit in die Steckdose gesteckt werden und benötigt keine weitere Halterung […]

Top Beiträge & Seiten

Raspberry Pi von SSD booten
KNX Bus an openHAB anbinden
KNX 2 openHAB - Migration von KNX 1
MQTT 2 Binding in openHAB einrichten

Neuste Kommentare

  • Patrick bei KNX Bus an openHAB anbinden
  • Ralf bei KNX Bus an openHAB anbinden
  • William bei Raspberry Pi von SSD booten

Tags

3D Druck Alexa Astro Astro Binding Automation Beleuchtung Bewässerung Binding Datenbank Daten speichern Diagramm Echo Entwicklung Fritz!Box Fritz! DECT Heizungssteuerung Installation KNX Licht MQTT mySQL NodeMCU openHab openHABian Philips Hue Raspberry Raspberry Pi Regel Regeln Round Robin rrd4j SD Karte selbstgebaut Setup Smarthome Sprachsteuerung Steckdose Thermostat Tools Ultraschallsensor Update Upgrade Visual Studio Code Weihnachten Zeitschaltuhr

Archiv

Meta

  • Anmelden
  • Beitrags-Feed (RSS)
  • Kommentare als RSS
  • WordPress.org

Footer

Rechtliches

  • Datenschutz
  • Impressum

Kategorien

  • Allgemein
  • Amazon Alexa
  • KNX
  • Leserprojekte
  • Neuigkeiten
  • openHAB
  • Regeln
  • Selbst gebaut
  • Smarte Beleuchtung
  • Tools
  • Facebook
  • RSS
  • Twitter

Blogstatistik

  • 171.460 Besuche
Blogverzeichnis - Bloggerei.de
Blogverzeichnis

Copyright © 2019 · Made with love by Interwebs UG · Log in