NEWS
Test Adapter KNX v1.0.x
-
@chefkoch009 alles klar,
gibts ne beta zum testen ?
@garfonso said in Test Adapter KNX v1.0.x:
@mpl1338
vielleicht mal das _status am Ende entfernen versuchen und dann ist der "Abstand" nur noch das "_rm" von der Mittelgruppe.hab die dps jetzt von hand verbunden
-
Hallo zusammen,
nachdem der Fehler mit den Berechtigungen behoben scheint und ich hier posten kann, reposte ich meine Anfrage hier nochmals.
Nach gewissen Einlesen hab ich mich für den ioBroker zu "Erweiterung" der Haussteuerung entschieden, vor allem aufgrund des Vorhandenen KNX-Bussystems. Hier ist bereits ein IP-Gateway von Busch-Jäger verbaut (ControlTouch). Das System läuft testweise auf einer VM mit Linux Mint. Da ich aber nicht weiterkomme habe ich mich nach längerem Suchen und lesen hier angemeldet.
Nun zum Problem: Obwohl der Adapter grün ist, kann ich nichts vom ioBroker aus steuern. (Jedoch kann ich die aktuellen Werte auslesen)
Die physikalische Adresse ist laut Webinterface des ControlTouch 1.1.255:
Ich habe mittlerweile Version 1.0.39 und 1.0.42 des Adapters probiert, jedoch ohne Erfolg.
Ich habe auch viele physikalische Adressen (phys. EIB Adresse) ausprobiert. Da ich kein ETS habe, habe ich die xml und Objektliste nach freien Adressen durchforstet, jedoch alles ohne Erfolg.
Hier noch ein Logfile:
Vielen Dank schon mal für eure Gedanken!
-
@roadrunner said in Test Adapter KNX v1.0.x:
Bin mir nicht sicher, ob ich Deine Fragen richtig verstehe..
... Da ich kein ETS habe, habe ich die xml und Objektliste nach freien Adressen durchforstet, jedoch alles ohne Erfolg.
..Die physikalische Adresse ist laut Webinterface des ControlTouch 1.1.255:Du musst hier im KNX Adapter eine FREIE unbenutzte KNX Adresse eingeben! Wenn also im ControlTouch für den IP Router die Adresse 1.1.255 definiert ist, dann darfst Du diese nicht verwenden! Um da sicher zu gehen, musst Du die KNX GA Struktur und Definition kennen.
Nun zum Problem: Obwohl der Adapter grün ist, kann ich nichts vom ioBroker aus steuern. (Jedoch kann ich die aktuellen Werte auslesen)
"Grün" bedeutet an dieser Stelle nur, dass sich der KNX Adapter korrekt mit dem IP Router verbinden konnte - mehr aber auch nicht.
Wie hast Du die Datenpunkt Objekte im IoBroker KNX Adapter angelegt? Manuell oder hast Du vom Installateur die KNX Projektdatei zum Import bekommen?
Du hast kein ETS - Ohne genaue Kenntnisse der KNX GA Struktur wird dieses Unterfangen zu einem "Suchen der Nadel im Heuhaufen".
.. Und wenn Du einzelne Datenpunkt Werte bereits reinbekommen hast (Read), wie sind diese konfiguriert? Sprich, wie sind die Flags für Read und Write gesetzt. Sind diese gemäss KNX Adapter Doku? GA für Schalten und Status?
Viel Erfolg!
Viele Grüsse, Roli -
Jemand eine Idee?
Was sagen eigentlich die unterschiedlichen Ports hinter der IP?
-:34684
-:49864
-:3671Klar hab ich ne Idee
Beim Gateway fragst Du auf Port 3671 an. Nun möchte ja das Gateway auch etwas von Deinem Rechner. Und dies passiert eben auf den höheren Ports die hinter deiner IP stehen....quasi eine UDP Verbindung von deinem Rechner zum KNX-GW auf Port 3671 und eine andere UDP Verbindung vom KNX-GW zu Deinem Rechner.
VG
chefkoch009 -
@mpl1338
Bei mir sehen die Objekte fast identisch aus wie in deinem gepasteten Raw. Die automatische Zuordnung funktioniert bei mir ebenfalls nicht. Fließt auch der Mittelgruppenname in den Vergleich ein?
Bei mir sehen die IDs wie folgt aus:knx.0.Licht.Licht_SchaltenXXXXXX.5_KuecheEsszimmer_LichtGang_Schalten knx.0.Licht.Licht_SchaltenStatus.5_KuecheEsszimmer_LichtGang_SchaltenStatus ^^^^^^ ^^^^^^
Wenn das zuviel Unterschied ist, werde ich alle "Status" auf "RM" ändern, dann wären es nur noch 4 Zeichen.
Und die händische Zuordnung hab ich ebenfalls versucht, bin aber wohl gescheitert. Ich habe beim Status-Objekt die actGARefId auf die addressRefId des Schalten-Objekts gesetzt und beim Schalten-Objekt die statusGARefId auf die addressRefId des Status-Objekts. Oder liege ich damit grob falsch? Danach sollte doch, wenn ich einen Wert beim Schalten-Objekt setze, dieser auch im Status-Objekt sichtbar sein, richtig?
-
@mike439 mal weiter unten lesen.....da ist ein bug im adapter.... der ist in der nächsten Version behoben.
-
@chefkoch009
Ah, sorry, soweit war ich noch nicht! Verhindert der Bug auch, dass die manuelle Zuordnung funktioniert oder mach ich da einfach was falsch, so wie ich's beschrieben hab? -
@mike439 was machen denn die ganzen XXXXX in deiner GA? zeige mal bitte die RAW von deiner ActGA und deiner StatusGA.
-
@chefkoch009
Die waren nur da, um das "Diff" zu unterstützen, also damit der ganze Rest schön untereinander steht.Hier hab ich die RAWs von den beiden GAs gepostet, wie ich sie vorher hatte (hab inzwischen noch einiges herumprobiert).
-
@mike439 hm....sieht eigentlich sehr gut aus. Ändere mal bitte im Status auf read=true, write=true. Dann starte den Adapter mal neu.
-
@chefkoch009
Ah, möglicherweise habe ich bei dem Test den Adapter nicht neu gestartet. Ich werde das heute am Abend nochmal ausprobieren. Vielen Dank! -
@foxro Hi Roli, vielen Dank für die Antwort: Ich habe das *.knxproj vom Installateur erhalten und dieses beim Adapter hochgeladen. Dort wurden "217 Objekte extrahiert". Ich habe dort die Adressen (Schalten) welche im Adapter bei den Objekten angezeigt werden durchsucht. Diese erstrecken sich von 0/0/1 bis 2/1/X für Schaltobjekte. (Heizung hat die Struktur X/5/X und Status die Struktur X/6/X) Ich hatte erwartet, dass diese Adressen aufgrund der Struktur den Adressen des KNX-Projektes entsprechen. Ist das richtig?
Ich hatte auch versucht die diversen XML Dateien des entpackten *.knxproj zu durchforsten aber mit wenig Erfolg.
Den letzten Teil deiner Frage verstehe ich eventuell nicht ganz. Für die Objekte sind read und write gesetzt. (Aber ich nehme mir die Doku nochmal vor)
Es gibt hier jeweils einen Ordner für Schalten und Status.
Update: Es ist Read und Write gesetzt..... Genau hier war der Fehler Read beim Schalten deaktiviert und schon funktioniert es.
Vielen Dank für die Hilfe! -
@roadrunner said in Test Adapter KNX v1.0.x:
Genau hier war der Fehler Read beim Schalten deaktiviert und schon funktioniert es.
Vielen Dank für die Hilfe!Dann wird vermutlich auch die Zuordnung von Status und SchaltGAs nicht funktioniert haben...
-
@mike439
Nach der manuellen Zuordnung bzw. irgendwelchen Änderungen am "native"-Teil des Raw-Objekts den knx Adapter neustarten, erst dann wird das wirksam.
Ansonsten klingt deine Beschreibung richtig. -
@roadrunner said in Test Adapter KNX v1.0.x:
Update: Es ist Read und Write gesetzt..... Genau hier war der Fehler Read beim Schalten deaktiviert und schon funktioniert es.
Vielen Dank für die Hilfe!Sehr gerne, super dass es zumindest mal soweit geklappt hat.
Aber wie @Garfonso schreibt, befürchte auch ich, dass die Statusrückmeldungen beim Import nicht korrekt zur Schalt GA gemappt wurden. Somit wird der Status im IoBroker wohl nicht korrekt geupdatet, wenn an einem anderen Sensor (zb. Taster) den Wert der GA änderst. Da Du kein ETS hast, bleibt höchstens eine Bitte an den Installateur, die Status-GAs entsprechend den Vorgaben vom KNX Adapter zu benennen, oder dieses Status-Mapping im IoBroker manuell zu machen. -
Wie kann ich nen DP zu nem GroupValueRead auffordern?
Ich habe hier 3 DP's
"position", "wert" und "setzen"
die Gruppenadresse "Wert" hat einen von "Position" abhängigen wert.
wenn ich z.b. die Warmwasser Temperatur wissen möchte muss ich erst eine 7 an "Position" schicken und kann dann auf "Wert" die Temperatur lesen. Jedoch sendet der Aktor nicht von sich in die Gruppe sondern erst wenn ich ihn abfrage(GroupValueRead ).
jetzt kommt noch dazu dass ich durch das senden einer "7" an "position" und darauf hin "55" an "wert" und dann noch "1" an "setzen" die warmwassertemperatur auf 55 festlege
was wäre hier der eleganteste weg um dies nutzen zu können?
Ich hoffe ihr versteht was ich meine
-
Wie kann ich nen DP zu nem GroupValueRead auffordern?
Ich habe hier 3 DP's
"position", "wert" und "setzen"
die Gruppenadresse "Wert" hat einen von "Position" abhängigen wert.
wenn ich z.b. die Warmwasser Temperatur wissen möchte muss ich erst eine 7 an "Position" schicken und kann dann auf "Wert" die Temperatur lesen. Jedoch sendet der Aktor nicht von sich in die Gruppe sondern erst wenn ich ihn abfrage(GroupValueRead ).
jetzt kommt noch dazu dass ich durch das senden einer "7" an "position" und darauf hin "55" an "wert" und dann noch "1" an "setzen" die warmwassertemperatur auf 55 festlege
was wäre hier der eleganteste weg um dies nutzen zu können?
Ich hoffe ihr versteht was ich meine
-
@chefkoch009 @Garfonso
Hab es jetzt nochmal so eingestellt, wie im anderen Thread gepostet und diesmal auch den Adapter neu gestartet.
Jetzt sehe ich am Objekt für Schalten die Statusänderungen, die vom Bus kommen und kann auch damit schalten. Also die Visualisierung für die Lampen könnte ich so jetzt bauen. Vielen Dank!Unterwegs haben sich aber noch 2 Fragen ergeben:
-
Die zugehörigen Status-Objekte machen jetzt gar nichts mehr (zumindest nicht im Objects-Tab sichtbar). Für eine reine Anzeige in der Visu müsste ich dann die Schalten-Objekt verwenden und entsprechend Read-Only Widgets verwenden, richtig?
-
Jedes mal, wenn ich den Adapter neu starte, bekomme ich unter anderem diese Log-Nachrichten:
knx.0 2021-01-19 21:02:37.614 info (37276) STATE_NOT_CONNECTED : Try to connect / reconnect : STATE_READY(7) to STATE_NOT_CONNECTED(0). knx.0 2021-01-19 21:00:36.478 info (37276) Connected! with 168 datapoints of 339 Datapoints over all.
Er behauptet also bereit zu sein, braucht dann aber 2 Minuten, um zu bemerken, dass er keine Verbindung hat. Bis dahin besteht keine Verbindung zum Bus, also ich sehe weder Statusänderungen, noch kann ich etwas schalten. Nach dem Reconnect klappt dann alles. Ist das normal oder woran könnte das liegen?
- Gibt es schon eine ETA für die Version, in der die automatische Zuordnung wieder hinhaut? Ich möchte damit nicht drängen, ich will nur abschätzen können, ob es für mich sinnvoll ist, erstmal alles manuell zu verknüpfen.
-
-
- Ja.
- Der Adapter schickt beim Start an alle StatusGA ein GroupValue Read. Das dauert eine Zeit, da er dabei auch auf die Pakete/Sekunde achten muss (wobei 2 Minuten sich trotzdem viel anhört... vielleicht ist deine Pakete/Sekunden Zahl noch nicht gut eingestellt und der IP-Gateway geht durch die Paketflut hops?)
-
@mpl1338 said in Test Adapter KNX v1.0.x:
Wie kann ich nen DP zu nem GroupValueRead auffordern?
Siehe Readme:
Wenn im ioBroker beim Objekt read & write = true sind.Ich habe hier 3 DP's
"position", "wert" und "setzen"
die Gruppenadresse "Wert" hat einen von "Position" abhängigen wert.
wenn ich z.b. die Warmwasser Temperatur wissen möchte muss ich erst eine 7 an "Position" schicken und kann dann auf "Wert" die Temperatur lesen. Jedoch sendet der Aktor nicht von sich in die Gruppe sondern erst wenn ich ihn abfrage(GroupValueRead ).
jetzt kommt noch dazu dass ich durch das senden einer "7" an "position" und darauf hin "55" an "wert" und dann noch "1" an "setzen" die warmwassertemperatur auf 55 festlege
Du musst also an Wert tatsächlich gleichzeitig einen Wert schreiben und ein GroupValueRead schicken? Das geht nicht so einfach... Oder gibt es da zwei GAs ein Status und ein Setzen? Dann müsstest du beim Status read & write auf true, dann löst ein Schreiben da den GroupValueRead aus und beim Schalten kannst du dann den Wert reinschreiben. Aber aktuell geht es nicht GroupValueRead und Werte gleichzeitig an eine GA zu schicken.
Falls es nur eine GA ist, wäre ein möglicher workaround vielleicht das Objekt zu kopieren, inklusive allem im Native-Part. Keine Ahnung ob das geht... oder in ETS das Objekt zwei GAs zuzuweisen, wäre vielleicht sauberer.Außerdem wirst du da nicht um ein Skript herum kommen, denke ich. Ist ja kompliziert.