NEWS
Test Adapter KNX v1.0.x
-
@killroy2 said in Test Adapter KNX v1.0.x:
Mit den aktuellen Versionen habe ich Probleme mit Sendeverzug auf Bus. Oft gehen auch Nachrichten verloren.
Im Beispiel wird auf ein Ereignis in NodeRed gleichzeitig auf mehrere (5) KNX Adressen geschrieben. Der Vorgang zieht sich über 3 Sekunden.
Im Log sehe ich die Queue öfters ansteigen:
knx.0 2019-11-16 21:32:18.805 info ( 4 ) Sending Tunnel_Request ACK : 06 10 04 21 00 0a 04 54 1c 00 ChID : 84 SeqCntIN : 28 SeqCntOUT : 11 queue length : 3
Ich bin jetzt auf die Version 1.0.20 ungestiegen. Damit tritt diese Art des Fehlers nicht oder in verminderter Form auf.
Leider hat die Version den Fehler, dass ein einzelner KNX Empfang mehrfach triggert. Der Feheler wurde von 1.0.31 auf 1.0.32 behoben. -
Hallo liebe Community!
Ich nutze aktuell den Gira X1 bzw. Openhab zur Visualisierung. Nachdem ich mir nun IoBroker etwas näher angesehen habe, möchte ich nun Schritt für Schritt umstellen. Ich habe auch in den letzten Tagen bereits der VISU begonnen und doch einige Stunden damit verbracht. Nun habe ich aber leider entdeckt, dass die Rückmeldungen nicht wie gewohnt funktionieren. (verglichen zu Openhab etc.)
Ich versuche bereits seit geraumer Zeit den KNX Adapter inkl. Rückmeldungen zum Laufen zu bekommen, jedoch leider nur mit Teilerfolg. Ich habe die Doku von GitHub gelesen und das Forum durchsucht, jedoch ohne einen wesentlichen Hinweis wie die Gruppenadressen ggf. aufgebaut sein müssen, damit eine automatische Verlinkung durchgeführt werden kann.
In einem Beitrag habe ich etwas von 90% Matching gelesen. Bei meinem nachfolgenden Problem inkl. Bsp. müsste die 90% Regel greifen - tut sie aber nicht.
Problem:
Die Rückmeldungsobjekte werde NICHT automatisch mit den Schaltobjekten verbunden. Wenn ich es manuell durchführe dann geht es, aber das wäre eindeutig zu mühsam. Gleiches gilt auch für Raffstores, Dimmer sowie Binäreingänge.Bleiben wird zunächst mal beim Licht.
Verwendeter KNX Adapter: 1.0.36
Bsp:
Schaltobjekt in ETS: EG Büro Bel. Deckenlicht (L1) s
Rückmeldung in ETS: EG Büro Bel. Deckenlicht (L1) RMss ... Schalten
RMS ... Rückmeldung SchaltenSchaltobjekt in IoBroker:
{ "from": "system.adapter.knx.0", "user": "system.user.admin", "ts": 1574026569629, "common": { "name": "EG Büro Bel. Deckenlicht (L1) s", "type": "boolean", "role": "switch", "read": false, "write": true, "min": false, "max": true }, "native": { "dpt": "DPT1.001", "address": "1/1/62", "addressRefId": "P-03C7-0_GA-63", "statusGARefId": "", "actGARefId": "" }, "acl": { "object": 1638, "owner": "system.user.admin", "ownerGroup": "system.group.administrator", "state": 1638 }, "_id": "knx.0.Beleuchtung_&_schaltbare_Steckdosen.Schalten_(Ein_Aus)_-_Neuanlage_immer_hier!_-.EG_Büro_Bel__Deckenlicht_(L1)_s", "type": "state" }
Rückmeldung in IoBroker:
{ "_id": "knx.0.Beleuchtung_&_schaltbare_Steckdosen.Rückmeldung_schalten_(Ein_Aus_1Bit)_-_Kopieren!_-.EG_Büro_Bel__Deckenlicht_(L1)_RMs", "type": "state", "common": { "name": "EG Büro Bel. Deckenlicht (L1) RMs", "type": "boolean", "read": true, "write": false, "role": "value", "min": false, "max": true }, "native": { "dpt": "DPT1.001", "address": "1/4/62", "addressRefId": "P-03C7-0_GA-343", "statusGARefId": "", "actGARefId": "" }, "from": "system.adapter.knx.0", "user": "system.user.admin", "ts": 1574026571040, "acl": { "object": 1638, "state": 1638 } }
statusGARefId und actGARefId werden nicht automatisch befüllt.
Kann mir bezgl. diesem Thema möglicherweise jemand auf die Sprünge helfen?
Bei Bedarf kann ich auch gerne mein KNX Projekt übermitteln.
VG + Danke
-
@sweeper Rückmeldung muss EG Büro Bel. Deckenlicht (L1) s status heißen
-
@sweeper
Wie tombox schon sag, automatische Verlinkung funktioniert eigentlich nur zuverlässig, wenn der Name von StatusGA = ActGA + " Status".Irgendwie werden wohl mittlerweile auch die ganzen Pfade der GAs genutzt, das hat bei mir die Rollanden-GAs etwas zerhauen, da weiß ich nicht genau warum oder was da geändert wurde.
-
Das mit automatischer Verknüpfung zwangsweise "Status" angehängt werden muss finde ich ich nicht so logisch. Von meinen Kursen bin ich es mir gewohnt das es "RM" für Rückmeldung heisst.
Wie wäre es mit einem Fork Import über die Funktion auszulesen?Auszug einer knxproj. datei davon die 0.xml. Diese ist erzeugt von der ETS5.72 mit dem ETS Assistenten.
<?xml version="1.0" encoding="utf-8"?> <KNX xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" CreatedBy="ETS5" ToolVersion="5.7.743.36956" xmlns="http://knx.org/xml/project/20"> <Project Id="P-05A5"> <Installations> <Installation Name="" BCUKey="4294967295" DefaultLine="P-05A5-0_L-3" IPRoutingLatencyTolerance="2000"> <Topology> <Area Id="P-05A5-0_A-1" Address="0" Name="Backbone Bereich" Puid="1"> <Line Id="P-05A5-0_L-1" Address="0" Name="Bereichslinie" MediumTypeRefId="MT-5" Puid="2" /> </Area> <Area Id="P-05A5-0_A-2" Address="1" Name="Neuer Bereich" Puid="3"> <Line Id="P-05A5-0_L-2" Address="0" Name="Hauptlinie" MediumTypeRefId="MT-5" Puid="4" /> <Line Id="P-05A5-0_L-3" Address="1" Name="Neue Linie" MediumTypeRefId="MT-0" Puid="5" /> </Area> </Topology> <Locations> <Space Type="Building" Id="P-05A5-0_BP-1" Name="Wohnung" Puid="6"> <Space Type="Floor" Id="P-05A5-0_BP-2" Name="Erdgeschoss" Puid="7"> <Space Type="Room" Usage="SU-4" Id="P-05A5-0_BP-3" Name="Wohnen" Puid="8" /> <Space Type="Room" Usage="SU-1" Id="P-05A5-0_BP-4" Name="Küche" Puid="9" /> <Space Type="Room" Usage="SU-2" Id="P-05A5-0_BP-5" Name="Schlafzimmer" Puid="10" /> <Space Type="Room" Usage="SU-6" Id="P-05A5-0_BP-6" Name="Kinderzimmer" Puid="11" /> <Space Type="Room" Usage="SU-7" Id="P-05A5-0_BP-7" Name="Bad/WC" Puid="12"> <Function Id="P-05A5-0_F-1" Name="LD_01_05" Type="FT-6" Puid="18"> <GroupAddressRef Id="P-05A5-0_GF-1" Name="" Role="SwitchOnOff" RefId="P-05A5-0_GA-1" Puid="22" /> <GroupAddressRef Id="P-05A5-0_GF-2" Name="" Role="InfoOnOff" RefId="P-05A5-0_GA-2" Puid="24" /> <GroupAddressRef Id="P-05A5-0_GF-3" Name="" Role="DimmingControl" RefId="P-05A5-0_GA-3" Puid="26" /> <GroupAddressRef Id="P-05A5-0_GF-4" Name="" Role="InfoDimmingValue" RefId="P-05A5-0_GA-4" Puid="28" /> <GroupAddressRef Id="P-05A5-0_GF-5" Name="" Role="DimmingValue" RefId="P-05A5-0_GA-5" Puid="30" /> </Function> </Space> <Space Type="Room" Usage="SU-9" Id="P-05A5-0_BP-8" Name="Flur" Puid="13" /> <Space Type="Room" Usage="SU-14" Id="P-05A5-0_BP-9" Name="Terrasse / Balkon" Puid="14" /> <Space Type="Room" Usage="SU-11" Id="P-05A5-0_BP-10" Name="Büro" Puid="15"> <Function Id="P-05A5-0_F-2" Name="Deckenlampe LD_01_05" Type="FT-6" Puid="31"> <GroupAddressRef Id="P-05A5-0_GF-6" Name="" Role="SwitchOnOff" RefId="P-05A5-0_GA-6" Puid="34" /> <GroupAddressRef Id="P-05A5-0_GF-7" Name="" Role="InfoOnOff" RefId="P-05A5-0_GA-7" Puid="36" /> <GroupAddressRef Id="P-05A5-0_GF-8" Name="" Role="DimmingControl" RefId="P-05A5-0_GA-8" Puid="38" /> <GroupAddressRef Id="P-05A5-0_GF-9" Name="" Role="InfoDimmingValue" RefId="P-05A5-0_GA-9" Puid="40" /> <GroupAddressRef Id="P-05A5-0_GF-10" Name="" Role="DimmingValue" RefId="P-05A5-0_GA-10" Puid="42" /> </Function> </Space> <Space Type="Room" Usage="SU-7" Id="P-05A5-0_BP-11" Name="Bad/WC (1)" Puid="16"> <Function Id="P-05A5-0_F-3" Name="findmy" Type="FT-7" Puid="43"> <GroupAddressRef Id="P-05A5-0_GF-11" Name="" Role="MoveUpDown" RefId="P-05A5-0_GA-11" Puid="46" /> <GroupAddressRef Id="P-05A5-0_GF-12" Name="" Role="StopStepUpDown" RefId="P-05A5-0_GA-12" Puid="48" /> <GroupAddressRef Id="P-05A5-0_GF-13" Name="" Role="WindAlarm" RefId="P-05A5-0_GA-13" Puid="50" /> <GroupAddressRef Id="P-05A5-0_GF-14" Name="" Role="RainAlarm" RefId="P-05A5-0_GA-14" Puid="52" /> <GroupAddressRef Id="P-05A5-0_GF-15" Name="" Role="CurrentAbsolutePositionBlindsPercentage" RefId="P-05A5-0_GA-15" Puid="54" /> <GroupAddressRef Id="P-05A5-0_GF-16" Name="" Role="CurrentAbsolutePositionSlatPercentage" RefId="P-05A5-0_GA-16" Puid="56" /> </Function> </Space> <Space Type="Room" Usage="SU-6" Id="P-05A5-0_BP-12" Name="Kinderzimmer (1)" Puid="17" /> </Space> </Space> </Locations> <GroupAddresses> <GroupRanges> <GroupRange Id="P-05A5-0_GR-1" RangeStart="1" RangeEnd="2047" Name="Neue Hauptgruppe" Puid="19"> <GroupRange Id="P-05A5-0_GR-2" RangeStart="1" RangeEnd="255" Name="Neue Mittelgruppe" Puid="20"> <GroupAddress Id="P-05A5-0_GA-1" Address="1" Name="Schalten" Description="Bad/WC LD_01_05" DatapointType="DPST-1-1" Puid="21" /> <GroupAddress Id="P-05A5-0_GA-2" Address="2" Name="Status" Description="Bad/WC LD_01_05" DatapointType="DPST-1-1" Puid="23" /> <GroupAddress Id="P-05A5-0_GA-3" Address="3" Name="Dimmen" Description="Bad/WC LD_01_05" DatapointType="DPST-3-7" Puid="25" /> <GroupAddress Id="P-05A5-0_GA-4" Address="4" Name="Dimmwert" Description="Bad/WC LD_01_05" DatapointType="DPST-5-1" Puid="27" /> <GroupAddress Id="P-05A5-0_GA-5" Address="5" Name="Wert" Description="Bad/WC LD_01_05" DatapointType="DPST-5-1" Puid="29" /> </GroupRange> <GroupRange Id="P-05A5-0_GR-3" RangeStart="256" RangeEnd="511" Name="Neue Mittelgruppe" Puid="32"> <GroupAddress Id="P-05A5-0_GA-6" Address="256" Name="LD_01_05 Schalten" Description="Büro Deckenlampe LD_01_05" DatapointType="DPST-1-1" Puid="33" /> <GroupAddress Id="P-05A5-0_GA-7" Address="257" Name="LD_01_05 Status" Description="Büro Deckenlampe LD_01_05" DatapointType="DPST-1-1" Puid="35" /> <GroupAddress Id="P-05A5-0_GA-8" Address="258" Name="LD_01_05 Dimmen" Description="Büro Deckenlampe LD_01_05" DatapointType="DPST-3-7" Puid="37" /> <GroupAddress Id="P-05A5-0_GA-9" Address="259" Name="LD_01_05 Dimmwert" Description="Büro Deckenlampe LD_01_05" DatapointType="DPST-5-1" Puid="39" /> <GroupAddress Id="P-05A5-0_GA-10" Address="260" Name="LD_01_05 Wert" Description="Büro Deckenlampe LD_01_05" DatapointType="DPST-5-1" Puid="41" /> </GroupRange> <GroupRange Id="P-05A5-0_GR-4" RangeStart="512" RangeEnd="767" Name="Neue Mittelgruppe" Puid="44"> <GroupAddress Id="P-05A5-0_GA-11" Address="512" Name="Bewegen" Description="Bad/WC (1) findmy" DatapointType="DPST-1-8" Puid="45" /> <GroupAddress Id="P-05A5-0_GA-12" Address="513" Name="Schritt/Stop" Description="Bad/WC (1) findmy" DatapointType="DPST-1-7" Puid="47" /> <GroupAddress Id="P-05A5-0_GA-13" Address="514" Name="Windalarm" Description="Bad/WC (1) findmy" DatapointType="DPST-1-5" Puid="49" /> <GroupAddress Id="P-05A5-0_GA-14" Address="515" Name="Regenalarm" Description="Bad/WC (1) findmy" DatapointType="DPST-1-5" Puid="51" /> <GroupAddress Id="P-05A5-0_GA-15" Address="516" Name="Position" Description="Bad/WC (1) findmy" DatapointType="DPST-5-1" Puid="53" /> <GroupAddress Id="P-05A5-0_GA-16" Address="517" Name="Lamellenstellung" Description="Bad/WC (1) findmy" DatapointType="DPST-5-1" Puid="55" /> </GroupRange> </GroupRange> </GroupRanges> </GroupAddresses> </Installation> </Installations> </Project> </KNX>
Hier nochmals Abschnitt Zeile 23-29
<Function Id="P-05A5-0_F-1" Name="LD_01_05" Type="FT-6" Puid="18"> <GroupAddressRef Id="P-05A5-0_GF-1" Name="" Role="SwitchOnOff" RefId="P-05A5-0_GA-1" Puid="22" /> <GroupAddressRef Id="P-05A5-0_GF-2" Name="" Role="InfoOnOff" RefId="P-05A5-0_GA-2" Puid="24" /> <GroupAddressRef Id="P-05A5-0_GF-3" Name="" Role="DimmingControl" RefId="P-05A5-0_GA-3" Puid="26" /> <GroupAddressRef Id="P-05A5-0_GF-4" Name="" Role="InfoDimmingValue" RefId="P-05A5-0_GA-4" Puid="28" /> <GroupAddressRef Id="P-05A5-0_GF-5" Name="" Role="DimmingValue" RefId="P-05A5-0_GA-5" Puid="30" /> </Function>
RefId="P-05A5-0_GA-1" sagt also, dass die erste Gruppenadressen von diesem Block zu dieser Funktion gehört.
Mit diesen Informationen sollte es doch möglich sein, diese korrekt zusammenzuführen und in IObrocker zu einem Raum hinzuzufügen.Auch wenn eine GA umbenannt wird, die Verknüpfung bleibt bei zB Role="SwitchOnOff"
sogar eine manuele Typ Änderung und Verknüpfung mit 8bit es bleibt Rolle onOFF
Selbst angelegte GAs bekommen aber eine Rolle mit 32 Zeichen.
Wer weiss also, wie diese in der ETS manuel zugeordnet werden können?Ich habe imm momennt das Projekt IObrocker produktiv einzusetzen passiert. In dieser letzter Version, will nun der Adapter nicht mal mit dem normalen Tunnel verbinden. Die Leitung währe frei. Das openhab scheint mir hier noch einiges stabiler zu laufen. Ich helfe gerne mit, hier Verbesserungen einzubringen und Tests zu machen.
Handbuch_Projektdatenaustausch.pdf ab Seite 40
libraries.io/npm/ets_proj_parser Parser wo Rollen unterstützt
github.com/advancedKnx/ets_proj_parser -
@Garfonso und @tombox :
Vielen Dank - so klappt es, aber ich bin der gleichen Meinung wie @hotze78 . Ich finde es auch nicht besonders schön auf "s status" zu wechseln. Best Practice ist eigentlich die Benennung nach folgender Regel und wird in Kursen auch so vorgetragen. Zumindest kenne ich es so:s ... Schaltobjekt
RMs ... Rückmeldung Schalten
w ... Wertobjekt (für Dimmer 4Byte)
d .. Dimmen (4 Bit)
RMw ... Rückmeldung WertVG + Danke
-
@sweeper eigentlich müsste rm auch gehen der aktuelle regexs lautet
RegExp(/stat(e|us)|' 'rm|rückmeldung\s|\svalue/)
RegExp(/stat(e|us)|rück(|meldung)|RM\s|\svalue/
RegExp(/stat(e|us)|rückmeldung|\svalue|\s(ea|ea)|\se/a|\sr/m|\srm/g) -
Hallo,
kann es sein das die Porteinstellung im Adapter keine Funktion hat?
wenn ich einen anderen einstelle Funktioniert es trotzdem nur über den Serienmässigen.
Installiert ist 1.0.36 mit zwei InstanzenÜbrigend funktioniert der Adapter bei mir sehr gut, und habe sonst keine Probleme
-
Hey,
ich bin neu hier.
Hab den Adapter 1.0.36 installiert.
Leider importiert mir dieser meine KNX Datei nicht.
Er beginnt und nach kurzer Zeit kommt die Meldung:
Handling device finishedDanach bewegt sich der blaue Balken ewig und nichts passiert.
ETS Datei kommt von 5.7.2
-
@Thorsten-Missenberger probier mal die 1.0.31
-
@tombox Danke, hat aber auch nichts gebracht.
Habe eine ETS KNXPROJ vom Oktober. Diese geht ohne Probleme.
Jedoch habe ich seitdem einiges geändert. Aber wenn ich die Änderungen ansehe finde ich keine Punkte was daran falsch sein könnten.Einzig was sein kann, das diese Datei noch aus ETS 5.6.6 sein könnte.
-
@Thorsten-Missenberger du kannst nur den Adapter auf den debug setzten und das Problem bei github Posten. Aber leider hat Chefkoch wenig Zeit
-
Hab im KNX-Bus Forum einen Beitrag gefunden das es mit der 1.0.20 gehen sollte.
Und sie da, es geht.
Aber hier besteht augenscheinlich ein Problem das er die RM(Status) nicht richtig verarbeitet?
-
@Thorsten-Missenberger said in Test Adapter KNX v1.0.x:
Aber hier besteht augenscheinlich ein Problem das er die RM(Status) nicht richtig verarbeitet?
Was meinst du damit? Der KNX Adapter versucht eine Zuordnung von Status Gruppen Adressen (StatGA) zu Schalt Gruppenadressen (ActGA). Geht das nicht? Erkennen kann man das daran, dass wenn ein Status kommt, auch das Objekt zur ActGA auf den neuen Wert gesetzt wird. Man sieht es auch im RAW der Objekte (und kann es da zur Not reparieren, empfehle ich aber nicht).
Nach dem Import kannst du übrigens wieder auf die aktuelle Version wechseln. Vorausgesetzt du musst nicht was am Projekt Ändern und nochmal importieren.
-
Er Import mir die knxproj unter 1.0.20 jedoch legt er die "hörende" Adresse nicht an.
Habe mir jetzt eine DemoProjekt angelegt.
4 Gruppenadressen
Beleuchtung 1
Beleuchtung 1 RM
Beleuchtung 2
Beleuchtung 2 RMdas auf einen Autor verknüpft.
Nicht mal das kann ich unter 1.0.3x importieren.
Immer die gleiche Fehlermeldung:
https://github.com/ioBroker/ioBroker.knx/issues/80 -
@Thorsten-Missenberger
Ja, den gleichen Fehler hatte ich mit der letzten oder vorletzten Version auch... ich fürchte da ist in irgendeinem Zweig wirklich ein doofer Bug... -
Das Problem mit dem ewig laufenden blauen Balken habe ich jetzt auch.
Es gab ja die Tage das ETS 5.7.3 Update, kann es daher kommen?
Vorher war bei mir alles ohne Probleme und beim KNX Adapter gab es ja auch kein Update. -
@Schrubbel 5.7.3 hatte ich mal kurz in einer VM und hat bei mir auch nicht funktioniert.
Bin jetzt einen anderen Weg gegangen. Ist zwar mit ein wenig aufwand verbunden.
Bringe die KNX Über NodeRed rein und verlinke auf ioBroker-Objekte.
Hat aber den Vorteil das ich auch nur die Objekte habe die ich wirklich zum Zeitpunkt der Implementierung habe.Bis jetzt geht es und ich brauch nicht immer mit der knxproj rumspielen. Da ja ETS bekanntlich immer wieder alles über den Haufen wirft.
Vielleicht stellt Chefkoch irgendwann den Import um in Form einer Excel oder des CSV Export aus der ETS.
-
Hi.
Als erstes ein Danke für den Adapter !Da ich Ihn nicht wirklich zum laufen bekommen mit den Statusadressen aber nun zur Frage.
In openHAB ist es ja möglich die RM alle manuell zuzuweisen was ich auch gemacht habe.
Kann ich da nicht einfach über den openHAB Adapter alle Datenpunkte nutzen ? Würde es da mit dem RM nicht besser gehen ?? Hätte es Nachteile über diesen Umweg ?Guten Rutsch !!
-
@sourex
Das geht sicherlich. Der einzige Nachteil ist halt höhere Komplexität, weil du openHAB dann noch laufen haben musst.