NEWS
Test Adapter OpenKNX 0.6.x
-
@fritzke316 Ich habe die xml mit 0.1.10 importiert.
<?xml version="1.0" encoding="utf-8" standalone="yes"?> <GroupAddress-Export xmlns="http://knx.org/xml/ga-export/01"> <GroupRange Name="test" RangeStart="63488" RangeEnd="65535"> <GroupRange Name="testin" RangeStart="63488" RangeEnd="63743"> <GroupAddress Name="dpt 5.001" Address="32/0/8" Description="dpt 5001" DPTs="DPT-5-1" /> </GroupRange> </GroupRange> </GroupAddress-Export>Bei mir wir das erstellt
"common": { "desc": "Basetype: 8-bit unsigned value", "min": 0, "max": 100, "name": "dpt 5.001", "read": true, "role": "state", "type": "number", "unit": "%", "write": true }, "native": { "address": "32/0/8", "answer_groupValueResponse": false, "autoread": true, "bitlength": 8, "dpt": "DPT5.001", "valuetype": "basic" },Hast du denn mit der neuen Version auch importiert?
@tombox ja, ich habe mit der 0.1.10 importiert
-
@tombox
z.B. bei Position Rollo (DPT5.001) sollte die Einheit "%" dahinter stehen.In der Objektbearbeitung ist bei mir aber auch keine Zeile für "unit" zu finden, wie im Beispiel bei der Adapterbeschreibung!
{ "_id": "openknx.0.Beschattung.Rückmeldung_Position.Bad_Fenster_RMPos", "type": "state", "common": { "desc": "Basetype: 8-bit unsigned value", "min": 0, "max": 100, "name": "Bad Fenster RMPos", "read": true, "role": "state", "type": "number", "write": true }, "native": { "address": "2/4/22", "answer_groupValueResponse": false, "autoread": true, "bitlength": 8, "dpt": "DPT5.001", "valuetype": "basic" }, "from": "system.adapter.openknx.0", "user": "system.user.admin", "ts": 1640508439996, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }@fritzke316
Ich kann das Verhalten bestätigen. Bei mir gibt es auch keine Zeile für "unit". Ebenfalls mit der 0.1.10. -
Ich habe weiterhin fest gestellt, dass für Dimmwerte in % bei max der Wert 255 eingetragen wurde. In der ETS ist der DPT richtig auf DPT 5.001 (0-100%) gesetzt.
@vogelsang Der max Wert fürs Dimmen ist bei mir richtig mit 100 eingetragen.
Habe gerade den Adapter nochmal neu installiert und die Datenpunkte nochmal importiert, aber immer noch ohne Einheiten!
Ich habe aber paralell noch den anderen KNX Adapter laufen, kann das vielleicht Fehler verursachen?
-
@vogelsang Der max Wert fürs Dimmen ist bei mir richtig mit 100 eingetragen.
Habe gerade den Adapter nochmal neu installiert und die Datenpunkte nochmal importiert, aber immer noch ohne Einheiten!
Ich habe aber paralell noch den anderen KNX Adapter laufen, kann das vielleicht Fehler verursachen?
@fritzke316 Nein sollte nicht.
Vielleicht kannst mir die xml datei mal schicken
tombox2020@gmail.com -
Ich habe weiterhin fest gestellt, dass für Dimmwerte in % bei max der Wert 255 eingetragen wurde. In der ETS ist der DPT richtig auf DPT 5.001 (0-100%) gesetzt.
@vogelsang 5.001 wird vom Adapter mit max 100 generiert (0.1.10)
Meinst du 5.004? Der ist so definiert:
DPT_Percent_U8 (5.004)
Encoding: 0 %...255 %. Full Datapoint Type value: 0 ... 255, i.e. 1 % = value 1.
To be used for % energy demand etc -
Hallo,
erstmals DANKE für den Tollen Adapter der bei mir um einiges Stabiler funktioniert als der alte.
Ich erhalte sehe im Log folgende Fehler bei allen DIMM Objekten.State value to set for "openknx.0.OG.Licht.OG_-_Licht_O5_Zimmer_Eltern_O5_2_Decke_-_dimm" has to be stringified but received type "object"Objektinfo:
{ "_id": "openknx.0.OG.Licht.OG_-_Licht_O5_Zimmer_Eltern_O5_2_Decke_-_dimm", "type": "state", "common": { "desc": "Basetype: 4-bit relative dimming control", "name": "OG - Licht O5 Zimmer Eltern O5.2 Decke - dimm", "read": true, "role": "state", "type": "object", "write": true }, "native": { "address": "2/0/126", "answer_groupValueResponse": false, "autoread": true, "bitlength": 4, "dpt": "DPT3.007", "valuetype": "composite" }, "from": "system.adapter.openknx.0", "user": "system.user.admin", "ts": 1640599330135, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }Wert:
{"decr_incr":1,"data":0}Könnt Ihr mir hier weiterhelfen um den Fehler zu beheben.
danke -
@vogelsang 5.001 wird vom Adapter mit max 100 generiert (0.1.10)
Meinst du 5.004? Der ist so definiert:
DPT_Percent_U8 (5.004)
Encoding: 0 %...255 %. Full Datapoint Type value: 0 ... 255, i.e. 1 % = value 1.
To be used for % energy demand etc@killroy2 bei mir wurde 5.001 mit max 255 und ohne unit generiert (0.1.10)
{ "_id": "openknx.0.Beleuchtung.Wohnung.Flur_Downlights_Dimmwert", "type": "state", "common": { "desc": "Basetype: 8-bit unsigned value", "min": 0, "max": 255, "name": "Flur Downlights Dimmwert", "read": true, "role": "state", "type": "number", "write": true }, "native": { "address": "1/0/3", "answer_groupValueResponse": false, "autoread": true, "bitlength": 8, "dpt": "DPT5", "valuetype": "basic" }, "from": "system.adapter.openknx.0", "user": "system.user.admin", "ts": 1640595599639, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
-
@killroy2 bei mir wurde 5.001 mit max 255 und ohne unit generiert (0.1.10)
{ "_id": "openknx.0.Beleuchtung.Wohnung.Flur_Downlights_Dimmwert", "type": "state", "common": { "desc": "Basetype: 8-bit unsigned value", "min": 0, "max": 255, "name": "Flur Downlights Dimmwert", "read": true, "role": "state", "type": "number", "write": true }, "native": { "address": "1/0/3", "answer_groupValueResponse": false, "autoread": true, "bitlength": 8, "dpt": "DPT5", "valuetype": "basic" }, "from": "system.adapter.openknx.0", "user": "system.user.admin", "ts": 1640595599639, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
@vogelsang
bei dir steht "dpt": "DPT5"
ich hätte ein "dpt": "DPT5.001" erwartet.
Zeig mal die Zeile in deinem KNX XML wo die GroupAddress 1/0/3 definiert ist. -
Aktuelle Testversion v0.7.3-alpha.1 Stabile Version: 0.6.3 Erstveröffentlichungsdatum 16.12.2021 Github Link https://github.com/iobroker-community-adapters/ioBroker.openknx/ NPM Link https://www.npmjs.com/package/iobroker.openknx Issues Board in GitHub https://github.com/iobroker-community-adapters/ioBroker.openknx/issues Installation der Testversion
"Adapter", "Expertenmodus", "Octocat", "Benutzerdefiniert" und diesen Link:
https://github.com/iobroker-community-adapters/ioBroker.openknx.gitAdapter Beschreibung, Changelog etc.
Hier ist die erste öffentliche Testversion des Open KNX Adapters. Der Adapter kommuniziert über ein IP Interface mit dem KNX Bus. Verschiedene KNX Telegrammtypen (GroupValue_Read, GroupValue_Write, GroupValue_Response) in Sende- und Empfangsrichtung werden in, dem IOB Anwender vertrauten Interaktionen mit IoBroker Objekten übersetzt.Motivation
Ich habe den Adapter aus einer Not heraus erstellt, da der verfügbare Adapter nicht fehlerfrei lief und nicht kompatibel zu meinen IP Interfaces ist. Debuggen war aufgrund Closed Source nicht möglich. Da Adapter läuft so gut, dass ich ihn der Öffentlichkeit übergeben möchte.
Der Adapter ist Quelloffen, Code kann gerne von Jedermann inspiziert und Pull Requests eingestellt werden.
Eine Beschreibung des Adapters und dessen Verwendung ist auf den verlinkten Seiten zu finden.Ziel
Der Adapter soll:- Stabil laufen und sich Standardkonform verhalten
- möglich einfach und verständlich sein
Thema umgesetzt ab Version Erwartung Release 0.1.x Release im stable repository Installation 0.1.6 Adapter lässt sich fehlerfrei über NPM installieren Installation 0.1.9 Adapter lässt sich über IOB Bordmittel installieren Betrieb 0.1.6 Adapter zeigt den Betriebszustand (rot,gelb,grün) korrekt an, bei Verbindungsabbrucht wird der Adapter gelb, keine Warnungen im Log die nicht zum Zustand passen Betrieb 0.1.8 keine Warnungen im Log die nicht zum Zustand passen Übersetzung 0.1.8 Admin Dialoge in alle Sprachen übersetzt, Logs nicht Alias 0.1.11 Generierung von Alias zur Zusammenbringen von Status und Ausgabe-GA zu einem Objekt eingebaut, noch nicht fehlerfrei Ich erhoffe mir Feedback zB zu
- Bugs, Error Logs;
- Verständlichkeit und Vollständigkeit der Doku
- Verwendbarkeit des Adapters, sind die Features brauchbar, was fehlt essentielles
- Code Reviews
- Erfahrungen aus dem Betrieb
- Ideen zur Geschäftslogik, zB werden aktuell Szenen DPTs von der Autoread Abfrage bei Start ausgeschlossen; gibt es bessere Filter?
- Verbesserungsvorschläge am Interface, z.B. welche State roles eignen sich für welche DPTs, sind die Datentypen passend gewählt, ...
Feature Anfragen, Fehlermeldungen dürfen gerne in GitHub erstellt werden. Umsetzung erfolgt immer nach Beschlusslage.
@killroy2 Moin, nach anfänglichen Schwierigkeiten mit der Installation in der ganz frühen Phase hab ich mal
mein Testsystem neu aufgesetzt und den Adapter installiert. Version 0.1.10.
Bericht:-
Installation läuft sauber durch
-
IP Schnittstelle wird sofort erkannt und Adapter wird grün
-
Import der GA's (ca. 700) erfolgt rasend schnell
hier hab ich festgestellt, das nach dem Import der Speicherbutton ausgegraut ist, ich kann also nur auf schließen drücken,
GA's werden aber trotzdem angelegt. -
Die GA's die in der ETS keinem Gerät zugeordnet sind werden erst garnicht übernommen. Find ich persönlich gut.
-
Die "Pärchen" Zuordnung von "Schalten" und "Status" ist wohl hier anders gelöst.
Find ich etwas eleganter, da es damit bei der Konkurrenz die meisten Schwierigkeiten gab. -
Erste Tests mit schreiben und lesen auf und vom Bus sind auch erfolgreich.
Fazit:
Der Adapter hat in sehr kurzer Zeit einen gewaltigen Sprung nach oben gemacht.
Anfängliche Stolpersteine wurden schnell aus dem Weg geräumt.Von mir alle 10 Damen hoch

und
RESPEKT!!!
-
@vogelsang
bei dir steht "dpt": "DPT5"
ich hätte ein "dpt": "DPT5.001" erwartet.
Zeig mal die Zeile in deinem KNX XML wo die GroupAddress 1/0/3 definiert ist.@killroy2 DPT5.001 hätte ich auch erwartet, da es in der ETS auch so eingestellt ist.
<GroupAddress Name="Flur Downlights Schalten" Address="1/0/1" DPTs="DPT-1" /> <GroupAddress Name="Flur Downlights Dimmen" Address="1/0/2" DPTs="DPT-3" /> <GroupAddress Name="Flur Downlights Dimmwert" Address="1/0/3" DPTs="DPT-5" /> <GroupAddress Name="Flur Downlights Schalten Status" Address="1/0/4" DPTs="DPT-1" /> <GroupAddress Name="Flur Downlights Dimmwert Status" Address="1/0/5" DPTs="DPT-5" />Ich habe in der ETS den Datentyp manuell für alle GA fest gelegt.
Offensichtlich wird in der exportierten XML nur der Stamm hinterlegt. -
@killroy2 DPT5.001 hätte ich auch erwartet, da es in der ETS auch so eingestellt ist.
<GroupAddress Name="Flur Downlights Schalten" Address="1/0/1" DPTs="DPT-1" /> <GroupAddress Name="Flur Downlights Dimmen" Address="1/0/2" DPTs="DPT-3" /> <GroupAddress Name="Flur Downlights Dimmwert" Address="1/0/3" DPTs="DPT-5" /> <GroupAddress Name="Flur Downlights Schalten Status" Address="1/0/4" DPTs="DPT-1" /> <GroupAddress Name="Flur Downlights Dimmwert Status" Address="1/0/5" DPTs="DPT-5" />Ich habe in der ETS den Datentyp manuell für alle GA fest gelegt.
Offensichtlich wird in der exportierten XML nur der Stamm hinterlegt.@vogelsang gilt das pauschal für alle Einträge im Export dass der Subtyp fehlt? Welche ETS Version nimmst du?
Bei mir sieht der Eintrag so aus: DPTs="DPST-5-1 -
@killroy2 DPT5.001 hätte ich auch erwartet, da es in der ETS auch so eingestellt ist.
<GroupAddress Name="Flur Downlights Schalten" Address="1/0/1" DPTs="DPT-1" /> <GroupAddress Name="Flur Downlights Dimmen" Address="1/0/2" DPTs="DPT-3" /> <GroupAddress Name="Flur Downlights Dimmwert" Address="1/0/3" DPTs="DPT-5" /> <GroupAddress Name="Flur Downlights Schalten Status" Address="1/0/4" DPTs="DPT-1" /> <GroupAddress Name="Flur Downlights Dimmwert Status" Address="1/0/5" DPTs="DPT-5" />Ich habe in der ETS den Datentyp manuell für alle GA fest gelegt.
Offensichtlich wird in der exportierten XML nur der Stamm hinterlegt.@vogelsang bei mir sieht das ganze so aus wenn ich es mit der ETS 5.7.4 exportiere:
<GroupRange Name="Status aktuelle Position" RangeStart="11008" RangeEnd="11263"> <GroupAddress Name="EG - Büro - Fenster 1 - Status aktuelle Position" Address="5/3/0" DPTs="DPST-5-1" /> -
@vogelsang gilt das pauschal für alle Einträge im Export dass der Subtyp fehlt? Welche ETS Version nimmst du?
Bei mir sieht der Eintrag so aus: DPTs="DPST-5-1@killroy2 So hätte ich das auch erwartet. ETS 5.7.6
Ich habe den Grund für den fehlerhaften Export gefunden. Es gibt Hersteller, bei denen die Objekte nicht eindeutig voreingestellt sind (z. B. Weinzierl KNX IO 530). Dann kann die ETS auch nicht eindeutig exportieren. Da ich meine GA immer manuell mit dem DPT einstelle, fällt das in der GA Ansicht auch nicht auf.

-
@killroy2 mir ist eben noch eine Sache bezüglich Datum und Uhrzeit aufgefallen.
Von meiner Wetterstation bekomme ich die GPS Zeit und Datum für den Bus bereitgestellt. Hierzu habe ich auch extra 2 GAs angelegt und die entsprechenden Datentypen hinterlegt. Für das Datum DPT 11.001 und die Zeit DPT 10.001. Diese Datenpunkte werden auch in den Objekten in ioBroker angelegt:{ "_id": "openknx.0.Zentral.Wetter___Zeit___Datum.Datum", "type": "state", "common": { "desc": "Basetype: 3-byte date value", "name": "Datum", "read": true, "role": "date", "type": "number", "write": true }, "native": { "address": "0/4/9", "answer_groupValueResponse": false, "autoread": true, "bitlength": 24, "dpt": "DPT11.001", "valuetype": "composite" }, "from": "system.adapter.openknx.0", "user": "system.user.admin", "ts": 1640607178920, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }Allerdings bekomme ich dann als Wert ein "Invalid Date" in den Objekten angezeigt.

Woran kann das liegen? -
@killroy2 So hätte ich das auch erwartet. ETS 5.7.6
Ich habe den Grund für den fehlerhaften Export gefunden. Es gibt Hersteller, bei denen die Objekte nicht eindeutig voreingestellt sind (z. B. Weinzierl KNX IO 530). Dann kann die ETS auch nicht eindeutig exportieren. Da ich meine GA immer manuell mit dem DPT einstelle, fällt das in der GA Ansicht auch nicht auf.

Ich habe mal eine GA angelegt und sie mit 2 Kommunikationsobjekte verbunden.
Das Gute ist ich kann den Subtype in den Kommunikationsobjekten selber umstellen, nur der Datapoint-Type ist vorgegeben.
Wenn ich an den 3 Stellen verschiedene Werte einstelle zB 1.005, 1.006, 1.007 nimmt er mir die kleinste Nummer 1.005
oder eben bei 1.005, 1.006, 1 den DPT-1Warum die ETS das so macht ist mit nicht verständlich.
Also gilt die Regel: bei der ETS Konfiguration sicherstellen, dass der Datentyp in der GA und allen KOs identisch gesetzt ist. -
Ich habe mal eine GA angelegt und sie mit 2 Kommunikationsobjekte verbunden.
Das Gute ist ich kann den Subtype in den Kommunikationsobjekten selber umstellen, nur der Datapoint-Type ist vorgegeben.
Wenn ich an den 3 Stellen verschiedene Werte einstelle zB 1.005, 1.006, 1.007 nimmt er mir die kleinste Nummer 1.005
oder eben bei 1.005, 1.006, 1 den DPT-1Warum die ETS das so macht ist mit nicht verständlich.
Also gilt die Regel: bei der ETS Konfiguration sicherstellen, dass der Datentyp in der GA und allen KOs identisch gesetzt ist. -
@killroy2 mir ist eben noch eine Sache bezüglich Datum und Uhrzeit aufgefallen.
Von meiner Wetterstation bekomme ich die GPS Zeit und Datum für den Bus bereitgestellt. Hierzu habe ich auch extra 2 GAs angelegt und die entsprechenden Datentypen hinterlegt. Für das Datum DPT 11.001 und die Zeit DPT 10.001. Diese Datenpunkte werden auch in den Objekten in ioBroker angelegt:{ "_id": "openknx.0.Zentral.Wetter___Zeit___Datum.Datum", "type": "state", "common": { "desc": "Basetype: 3-byte date value", "name": "Datum", "read": true, "role": "date", "type": "number", "write": true }, "native": { "address": "0/4/9", "answer_groupValueResponse": false, "autoread": true, "bitlength": 24, "dpt": "DPT11.001", "valuetype": "composite" }, "from": "system.adapter.openknx.0", "user": "system.user.admin", "ts": 1640607178920, "acl": { "object": 1636, "state": 1636, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }Allerdings bekomme ich dann als Wert ein "Invalid Date" in den Objekten angezeigt.

Woran kann das liegen?@chrischros
Bitte mal einen Wert von deiner Wetterstation hier posten der Probleme bereitet.
Was passiert wenn du einen DPT11.001 manuell mit der ETS schickst? -
@frankthegreat said in Test Adapter OpenKNX 0.1.x:
Import der GA's (ca. 700) erfolgt rasend schnell
hier hab ich festgestellt, das nach dem Import der Speicherbutton ausgegraut ist, ich kann also nur auf schließen drücken,
GA's werden aber trotzdem angelegt.Ja das ist so gewollt. Der ist ausgegraut für neue Imports.
Nach dem Import bekommt der Adapter einen Reset und ist dann für Interaktionen mit dem Nutzer weg. Ich kenne keine Möglichkeit wie die Admin Oberfläche benachrichtigt wird wann der Adapter wieder da ist um die Buttons zu enablen.
Also muss der Nutzer schliessen und es wird nur wieder einmal bei Start geprüft. -
@frankthegreat said in Test Adapter OpenKNX 0.1.x:
Import der GA's (ca. 700) erfolgt rasend schnell
hier hab ich festgestellt, das nach dem Import der Speicherbutton ausgegraut ist, ich kann also nur auf schließen drücken,
GA's werden aber trotzdem angelegt.Ja das ist so gewollt. Der ist ausgegraut für neue Imports.
Nach dem Import bekommt der Adapter einen Reset und ist dann für Interaktionen mit dem Nutzer weg. Ich kenne keine Möglichkeit wie die Admin Oberfläche benachrichtigt wird wann der Adapter wieder da ist um die Buttons zu enablen.
Also muss der Nutzer schliessen und es wird nur wieder einmal bei Start geprüft.@killroy2 Ja, nee, alles gut.
Wenn das so funktioniert, ist es doch io. War nur im ersten Moment ungewohnt, weil man es bei anderen Adaptern so machen muß.