NEWS
Test Adapter OpenKNX 0.6.x
-
@chrischros Ist ein Bug in der verwendeten Library. In der nächsten version des Adapters ist das behoben
-
-
Ich habe jetzt mit dem Adapter 0.1.12 alle Objekte gelöscht und noch einmal neu importiert. Siehe da, die units werden korrekt eingetragen. vielen Dank!
Wie ist das gemeint mit den Alias DP? Muss dafür der Alias Adapter installiert dein?
-
@vogelsang Nein das wird native von iobroker unterstützt. Es ist eine Möglichkeit um Aktor und Zustand GA in einem Objekt zu haben um diese besser zu visualisieren
-
@tombox Danke für die Info.
Ich habe bisher noch nicht begriffen, wo der Unterschied zwischen dem "Alias-Manager" und dem "Geräte Verwalten" Adapter liegt.
-
Hallo,
hat noch jemand folgenden Eintrag im Log bei sich?2021-12-30 13:26:35.881 - [32minfo[39m: openknx.0 (2450) [info] 2021-12-30 12:26:35.875 empty internal fsm queue due to inbound_DISCONNECT_REQUEST: 2021-12-30 13:26:38.198 - [32minfo[39m: openknx.0 (2450) Connected!
Die Meldung kommt bei mir ca. alle 30 Sekunden.
Leider bringt ein Reboot keine dauerhafte Besserung, der Fehler kommt danach recht schnell wieder.
Habe auch mal den Debug-Modus vom Adapter aktiviert, aber wirklich was sehen kann man da nicht. -
@killroy2
mir ist heute noch etwas komisches aufgefallen, keine Ahnung ob es wirklich mit deinem Adapter in Verbindung steht.
Durch eine Javascripts lasse ich mir Daten erzeugen die ich dann mit Hilfe von blockly und dem "binde" Befehl an eine KNX Adresse schicken lasse.
Das ganze wird als String übertragen als 4 byte DPT16. Der String wird auch geschrieben und ich kann im Gruppenmonitor der ETS auch den Wert lesen. Allerdings wird dieser Wert mehrmals nacheinander geschrieben obwohl ich ihn händisch eingegeben habe.
Insgesamt wird der Wert für ca. 7 sekunden geschrieben. Das ist mir auch bei anderen Werten aufgefallen die nicht durch ein Javascript erzeugt wurden.
Hast du eventuell eine Idee woran das liegen könnte? -
@chrischros Bei dem connected kannst du den Adapter in Debug setzen und die logs davor zeigen. Passiert das immer oder nur nach einem Neustart
Genau hier das gleiche kannst du im debug mode schauen ob nur ein sendDatagram passiert oder es mehrmals passiert -
@tombox bei dem reconnect war im Log davor nix weiter gewesen außer die übertragenen GAs. Ich habe jetzt mal der Senderate auf 25 runtergesetzt, seit dem sieht es ganz gut aus.
Passiert ist das ganze während dem Betrieb, als kein Neustart oder so von dem Adapter / ioBroker.
-
@tombox und hier noch der Auszug aus dem Log bezüglich des mehrmaligen sendens.
zuerst habe ich eine "5" schrieben lassen:2021-12-30 20:37:18.240 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.241 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:18.241 (sendDatagram): >>>>>>> successfully sent seqnum: 736 2021-12-30 20:37:18.242 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.242 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.243 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.243 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.244 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.244 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.245 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.245 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.246 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.246 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.247 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.247 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.247 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.248 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.248 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.249 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.249 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.250 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.250 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:18.251 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "5" from openknx.0.Heizung.Photovoltaik.Autarkie
anschließend dann noch eine "50":
2021-12-30 20:37:34.867 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.868 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.868 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.869 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.869 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.869 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.870 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.870 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.870 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.871 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.871 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.871 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.872 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.872 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.881 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.881 (sendDatagram): >>>>>>> successfully sent seqnum: 1051 2021-12-30 20:37:34.911 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.911 Inbound message: 06100421000a04331b00 2021-12-30 20:37:34.912 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.912 ===== datagram 27 acknowledged by IP router 2021-12-30 20:37:34.912 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.912 (idle): zzzz... 2021-12-30 20:37:34.940 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.940 (sendDatagram): >>>>>>> successfully sent seqnum: 1052 2021-12-30 20:37:34.940 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.940 Inbound message: 06100421000a04331c00 2021-12-30 20:37:34.941 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.941 ===== datagram 28 acknowledged by IP router 2021-12-30 20:37:34.941 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.941 (idle): zzzz... 2021-12-30 20:37:34.950 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.951 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.952 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.952 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.953 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.954 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.954 - debug: openknx.0 (4520) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 20:37:34.965 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.965 (sendDatagram): >>>>>>> successfully sent seqnum: 1053 2021-12-30 20:37:34.968 - debug: openknx.0 (4520) [debug] 2021-12-30 19:37:34.968 Inbound message: 06100421000a04331d00
-
@chrischros dann liegt es am skript dass der wert zu oft geschrieben wird. kannst ja mal nur Änderung aktivieren
-
@tombox so habe das ganze mal mit "nur Änderungen" getestet und bekomme das gleiche Ergebnis.
Bin mir auch nicht sicher ob es wirklich am Skript liegt, denn ich ändere den Wert des Objekts den das Skript erzeugt. Somit sollte das Skript garnicht aktiv sein. -
@chrischros Du kannst ja den Wert auch direkt unter Objekte setzen dann sollte es nicht passieren
-
@tombox habe ich ja gemacht. Ich bin direkt unter Objekte / Javascript / ... und habe dort den Wert geändert.
-
@chrischros ich meine eigentlich openknx.0.Heizung.Photovoltaik.Autarkie
-
@tombox
Da wird nix geschrieben, da sehe ich nichts im Gruppenmonitor von der ETS.
Flags an der GA sind gesetzt, sogar zeitweise alle mal gesetzt, aber leider ohne erfolg.
Die Werte werden aber aktualisiert wenn sie sich ändern. Aber über den ioBroker kann ich die in den Objekten nicht ändern.Sorry falsch. kann doch über die openKNX Objekte schreiben. Mache gleich noch mal einen Log wie es dann aussieht.
Im Gruppenmonitor wird der Wert nur einmal geschrieben.Wenn du Adapter die irgendein Gerät auslesen das nicht auf dem KNX Bus ist, wie bekommst du die Werte dann auf den BUS?
Hier noch der Auszug aus dem Log.
2021-12-30 22:43:28.339 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.339 *** deferring inbound_TUNNELING_REQUEST_L_Data.ind until transition sendDatagram => idle 2021-12-30 22:43:28.340 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.340 (sendDatagram): >>>>>>> successfully sent seqnum: 270 2021-12-30 22:43:28.341 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.340 Inbound message: 06100421000a04730e00 2021-12-30 22:43:28.341 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.341 ===== datagram 14 acknowledged by IP router 2021-12-30 22:43:28.341 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.341 (idle): zzzz... 2021-12-30 22:43:28.351 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.351 (idle): zzzz... 2021-12-30 22:43:28.352 - debug: openknx.0 (5488) Inbound GroupValue_Write 4/4/19 val: 0 dpt: DPT14 to Object: openknx.0.Heizung.Hargassner_Nano_PK.Temperatur_Boiler_1 2021-12-30 22:43:28.355 - debug: openknx.0 (5488) Outbound GroupValue_Write to 4/6/7 value "50" from openknx.0.Heizung.Photovoltaik.Autarkie 2021-12-30 22:43:28.367 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.367 (sendDatagram): >>>>>>> successfully sent seqnum: 271 2021-12-30 22:43:28.400 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.400 Inbound message: 061004200016047381002900bce011141806020040ff 2021-12-30 22:43:28.400 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.400 *** deferring inbound_TUNNELING_REQUEST_L_Data.ind until transition sendTunnReq_waitACK => idle 2021-12-30 22:43:28.401 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.401 Inbound message: 06100421000a04730f00 2021-12-30 22:43:28.401 - debug: openknx.0 (5488) [debug] 2021-12-30 21:43:28.401 ===== datagram 15 acknowledged by IP router
Auch wenn ich den Wert dann wieder zurück auf "0" schreibe wird nur einmal der Befehl raus gegeben.
-
@chrischros kannst auch das skript mir per pn schicken
-
release 0.1.13 ist verfügbar
-
@killroy2 Vielen Dank für den Adapter! Habe mittlerweile ohne größere Probleme alles auf openknx umgestellt.
Gruß
Hans -
nochmal zurück zur Problematik mit den DPTs (Datenpunkttpyen).
Aktueller Stand:
- Ältere KNX-Projekte (vor ETS5) können mit openknx zur Zeit nicht importiert werden. Das liegt daran, dass erst seit ETS5 DPT den Gruppenadressen zugeordnet werden (können, müssen).
- Ältere KNX-Projekte laufen aber natürlich weiterhin problemlos, KNX und ETS ist weitgehend abwärtskompatibel. ETS4 (und älter!) kann auch problemlos in ETS5 konvertiert werden und dort weiterbenutzt werden. Es fehlen dann halt die DTP.
- fehlende DPT sind per definitionem (KNX) somit zwar ärgerlich, aber durchaus zulässig.
Was bedeuten fehlende DPT (bei älteren KNX-Installationen) für die Praxis? Natürlich läuft das KNX-Projekt weiterhin, kann auch nach Konversion zu ETS5 ohne DPT weiterhin verwendet und programmiert und parametriert werden. Unschön ist lediglich, dass u.U. beispielsweise ein (ganz neues) Anzeigegerät nicht weiß, was es mit den Werten anfangen soll. Es ist ein 2-Byte-Wert, aber welche Einheiten z.B.? Trotzdem fließen natürlich die Daten in der Installation weiterhin. Und in der Praxis muss man dann bei Installation eines neuen Gerätes eben einen Datenpunkttyp ergänzen, falls die Geräteanzeige unsinnig aussieht.
Schlussfolgerung: Fehlende Datenpunkttypen sollten kein Ausschlusskriterium für den Import sein. Dort, wo es stört (wegen der Weiterverarbeitung der Daten) muss der Anwender halt selbst später den passenden DPT in iobroker (oder in der ETS) ergänzen. Aber doch bitte kein Zwang, das schon vorher bei vielleicht 1000 GAs machen zu müssen!
Der andere Adapter von Chefkoch in der Version 1.x hatte damit keine Probleme. Und der neue Adapter in Version 2.x ist nunmehr auch dementsprechend angepasst worden (siehe https://github.com/ioBroker/ioBroker.knx/issues/128#issuecomment-989205691
"Ich habe in V2.0.5 den Importfilter für ETS4 projekte überarbeitet/angepasst. damit sollte es laufen" (letzter Eintrag).