NEWS
KNX Adapter überholt
-
Schade, dass ich den Post erst heute gefunden habe...
Ich versuche schon seit Tagen verzweifelt die knxporj-Datei einzulesen, bisher immer ohne Erfolg.
Zum Glück liegt es nicht an mir.Vielen Dank für die bisher investierte Arbeit!
VG
ReRa
-
Hallo @all,
hier mal eine kurze Sachstandsmeldung: Die neue ETS5.7.x gestaltet sich als widerspenstiger als gedacht. Mechanismen, welche in den vorherigen Versionen funktioniert haben greifen hier nicht mehr. Kurzum eine Menge Arbeit, aber ich bin dran.
@JGDFly : Dimmen mit DPT3.007 ist das sogenannte Schritt-Dimmen. Dieser DPT ist ein 4-Bit Objekt bei dem das 4.Bit binär interpretiert wird und die Richtung angibt, also z.B. 0 für runter, 1 für rauf. Die Bits 1-3 geben dabei die Schrittweite an. Eigentlich müsste dein common-typ nicht "number" sondern leer sein, also "" oder "string". Dann sieht man im Objektbrowser Werte wie z.B. "0,1" oder "1,1". Möchtest du absolut Dimmen also mit einem Wert dann wäre das der DPT5.001.
@Garfonso : Ich verstehe das hier nicht:
D3 Schaltausgang 10-fach, 16A C-Last 3/7/2 Heizpatrone DG Bad Status
ist das nun das Status oder das Schaltobjekt? Für den Fall das es das Schaltobjekt ist, dann ist passt das von dir beschriebene Verhalten.
Es hat sich gezeigt, das dieses von Dir beschriebene Wiederverbinden 2 Ursachen haben kann:- Das Gerät ist nicht erreichbar oder antwortet nicht ( starte bitte mal den Aktor neu und versuche das Verhalten erneut zu provozieren)
- Es wird versucht in eine leere Gruppenadresse zu schreiben.
@mpenno : konsequenter Weise müsste true/false stehen. Wenn ich ein "compatibility" Häkchen machen würde, so würde ich das eigentliche Problem nur verschieben. Egal wie man es dreht und wendet, einen Weg von beiden muss ich gehen. Vorerst empfehle ich den Weg von Garfonso mit dem Script (verwende ich selbst auch).
VG
chefkoch009 -
@Garfonso und @chefkoch009 :
Vielen Dank. Mit einem vorgeschalteten Script klappt es jetzt. Ich mache es so:
createState('Sensor.Fenster.Fenster_Bad', false, { read: true, write: true, name: "Bad Fenster", type: "boolean", def: false, role: "sensor.window" }); on({id: 'knx.0.Fenster_und_Türen.Fenster_Status.Fenster_Bad_Status'}, function (dp) { setState('javascript.0.Sensor.Fenster.Fenster_Bad', toBoolean(dp.state.val)); });
Ist die von Dir beschriebene Variante kürzer? Ich verstehe gerade nicht, wie ich es umsetzen müsste:
let val = !!getState("knx.0....").val;
Das mit dem "compatibility" Häkchen wäre nicht nur ein Verschieben, sondern der erste Schritt in die Richtung, wo es hingehen soll. Ich hätte dann z.B. gleich mit den richtigen true/false Werten angefangen und viele User, die nach mir kommen auch.
-
@chefkoch009 said in KNX Adapter überholt:
D3 Schaltausgang 10-fach, 16A C-Last 3/7/2 Heizpatrone DG Bad Status
ist das nun das Status oder das Schaltobjekt? Für den Fall das es das Schaltobjekt ist, dann ist passt das von dir beschriebene Verhalten.
Es hat sich gezeigt, das dieses von Dir beschriebene Wiederverbinden 2 Ursachen haben kann:Das Gerät ist nicht erreichbar oder antwortet nicht ( starte bitte mal den Aktor neu und versuche das Verhalten erneut zu provozieren)
Es wird versucht in eine leere Gruppenadresse zu schreiben.Hi, da ist das Status Objekt. "D3 Schaltausgang 10-fach, 16A C-Last" ist nur der Name des Gerätes. Was bedeutet das nun für das Verhalten?
Ich habe jedenfalls den Aktor mal neugestartet, was nichts ändert. Die Gruppenadressen sind auch alle nicht leer. Ich habe auch zwei Aktoren, die sich so verhalten (insgesamt 3 Schaltobjekte und 3 Statusobjekte) und es passiert bei beiden nur bei den Ausgängen, wo der Zeitschalter aktiv ist. Alle anderen Ausgänge lassen sich normal schalten und sind bis auf den Zeitschalter identisch konfiguriert.Ich glaube, das es daran liegt:
# Zeit Dienst Flags Prio Quelladresse Quellname Zieladresse Zielname Rout Typ DPT Info 885 25.07.2019 13:56:08,526 vom Bus Niedrig 1.1.12 D3 Schaltausgang 10-fach, 16A C-Last 0/0/0 Broadcast 6 NetworkParameterResponse C3 51 3C 00 00 01 00 80 00 00 00
Der Aktor ist auf Zeitschalten konfiguriert und wenn den Zeitschalter betätigt (also die GA 3/6/2 Hezpatrone DG Bad Ein/Aus), dann schickt er dieses Telegramm über den Bus. Warum ist mir bisher nicht klar. Wenn ich ihn nicht auf Zeitschalten konfiguriere, denn schickt er das komische Telegramm nicht und alles geht... ich würde nur gerne den Zeitschalter nutzen, weil die Elktroheizpatrone doch nicht ewig laufen sollte, nur weil z.B. der Server ausgefallen ist...
Jedenfalls steigt der KNX Adapter reproduzierbar mit einem Disconnect aus, wenn dieses Telegramm kommt.
-
@mpenno said in KNX Adapter überholt:
Hi, statttoBoolean(dp.state.val)
kannst du schreiben
!!dp.state.val
Aber toBoolean ist theoretisch sauberer.
Das mit dem Kompability-Häckchen sehe ich genauso, wie du. Neue Nutzer können dann "richtig" anfangen.
-
Hallo an alle,
endlich ist es soweit.....die neue Version 1.0.30 ist online. Hier ein grober Überblick :
- import von ETS5.7.2 Projektdateien + loader und parser beschleunigt
- Erweiterung der Datenpunkttypen
- adapter Konfig menü überarbeitet und aufgeräumt
- dem Wunsch nach dem Kompatibilitätshäkchen gefolgt und umgesetzt
- dem Wunsch nach der Netzwerkkartenzuordnung für den ioBroker horst gefolgt und umgesetzt
- einige Bugs im KNXStack behoben
- die State-Act Zuordnung überarbeitet (nur ab 5.7.2) sodass der gesammte Name betrachtet wird, also HG+MG+GA plus zusätzliche Kriterien
- das Status Objekt hat nun pauschal nur Lese-Flag, wenn man das Schreib-Flag mit aktiviert dann entspricht die Funktion dem Lesen-Button im Gruppenmonitor in der ETS
- ...
- Müll raus gebracht und Staub gesaugt
Kurzum ne ganze Menge Änderungen. Ich würde mich wieder über reges Feedback freuen.
Mit Spannung erwarte ich das nächste ETS-Update
in diesen Sinne 42 und
VG
chefkoch009 -
@chefkoch009 sagte in KNX Adapter überholt:
die neue Version 1.0.30 ist online
Ein Link wäre Super...........
-
@sigi234 ich verstehe die Frage nicht? welcher link?
vllt meinst du das hier: https://www.npmjs.com/package/iobroker.knxVG
chefkoch009 -
@chefkoch009 sagte in KNX Adapter überholt:
@sigi234 ich verstehe die Frage nicht? welcher link?
vllt meinst du das hier: https://www.npmjs.com/package/iobroker.knxVG
chefkoch009Eigentlich meine ich das:
-
Hallo,
Achso das.... Die Versionierung von iobroker läuft nachts irgendwann. Also solltest du es heute morgen sehen( falls ich das publishing nicht zu spät gemacht habe). Alternativ kannst du das auch über die Konsole erzwingen indem du im node_modules verzeichnis ein "npm i iobroker.knx@latest --production" ausführst.
Wenn er fertig ist mit installieren, machst du noch ein "iobroker u knx" und dann sollte die letzte Version installiert sein.
VG
chefkoch009 -
@chefkoch009 ich sollte mich hier melden
Ich habe die neue Version installiert und versuche ein Export von der ETS 5.7.1 zu importieren.
Ich bekomme keinerlei Ausgaben im Log und der Balken bewegt sich nicht -
@dQeLse Ich bin nie in den Genuss der ETS5.7.1 gekommen. Der Filter greift erst ab ETS Version 5.7.2.
VG
chefkoch -
Hallo,
kurz zur Zwischeninfo: Projekte die mit einem Passwort geschützt sind lassen sich NICHT importieren und beschreiben das Fehlerbild von dQeLse.
VG
chefkoch009 -
Hallo,
ich habe die neue Version installiert und das Einlesen des ETS 5.7.2 knxproj gestartet. Es fängt auch normal an. Es kommt aber nicht zum Ende. In den vorhergehenden Versionen wurde ja angezeigt, wie viele Objekte verarbeitet wurden.
Ich habe die Sache über Nacht weiterlaufen lassen. Heute Morgen war er immer noch nicht fertig. Habe es dann beendet.
Unter Objekte zeigt er nur die Basis an
Im Log kommt immer regelmäßig Einträge
ich muss sagen, das mein knxproj noch nicht ganz sauber ist. Es fehlen noch die DPT's bei den Gruppenadressen. Das war aber in der Vergangenheit kein Problem. Es wurde halt nicht alles richtig verarbeitet. Ich bin aber so oder so noch am Testen von iobroker.knxGruß
Andreas -
Hallo,
@chefkoch009 ich habe es gerade nochmal versucht bei mir zu importieren ohne pass
hat aber leider trotzdem nicht funktoniert und ist mit folgenden fehler im log beendet:knx.0 2019-08-21 22:18:36.790 error at Socket.onevent (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:278:10) knx.0 2019-08-21 22:18:36.790 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20) knx.0 2019-08-21 22:18:36.790 error at Socket.<anonymous> (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:52:30) knx.0 2019-08-21 22:18:36.790 error at Object.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:3400:34) knx.0 2019-08-21 22:18:36.790 error at Adapter.emit (events.js:203:13) knx.0 2019-08-21 22:18:36.790 error at Adapter.<anonymous> (/opt/iobroker/node_modules/iobroker.knx/knx.js:79:6789) knx.0 2019-08-21 22:18:36.790 error at _0x22f8ce (/opt/iobroker/node_modules/iobroker.knx/knx.js:79:8089) knx.0 2019-08-21 22:18:36.790 error at Object.getGAS (/opt/iobroker/node_modules/iobroker.knx/knx.js:71:13664) knx.0 2019-08-21 22:18:36.790 error at Object._0x5e0ec3 [as convertAll] (/opt/iobroker/node_modules/iobroker.knx/knx.js:43:37353) knx.0 2019-08-21 22:18:36.790 error at _0x2dd4fa (/opt/iobroker/node_modules/iobroker.knx/knx.js:43:13002) knx.0 2019-08-21 22:18:36.790 error ReferenceError: tDevTree is not defined knx.0 2019-08-21 22:18:36.787 error message messagebox.system.adapter.knx.0 [object Object] tDevTree is not defined
Gruß Marcus
-
Hallo,
@AndreasK: Die Zeiten, wo ein Import so lange lief, sollten vorbei sein. Erstmal zu Deinem Log. Das sieht soweit ganz gut aus. Was, denkst Du, stimmt daran nicht?
Nun zum Import: welche node version, welche Hardware verwendest Du? Könntest Du mir Dein Projekt zum Prüfen zur Verfügung stellen?@dQeLse: ich habe es basierend auf den Daten der unserer letzten Kommunikation nochmals getestet....ich kann den Fehler nicht nachstellen
-
Hi @all,
mir ist da ein kleiner hässlicher Fehler unterlaufen (danke an dQeLse). Hab ihn korrigiert und neue Version 1.0.31 ist online.
VG
chefkoch009 -
Hallo,
mit der neuen Version hat der Import wunderbar funktioniert!
Vielen Dank für das schnelle fixenVG
Marcus -
Hallo,
ich habe es jetzt noch einmal mit der 1.0.31 versucht. Keine Besserung.
Im Log sind diese Errors:knx.0 2019-08-22 18:42:53.852 error at Socket.onpacket (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:228:12) knx.0 2019-08-22 18:42:53.852 error at Socket.onevent (/opt/iobroker/node_modules/socket.io-client/lib/socket.js:270:10) knx.0 2019-08-22 18:42:53.852 error at Socket.Emitter.emit (/opt/iobroker/node_modules/socket.io-client/node_modules/component-emitter/index.js:133:20) knx.0 2019-08-22 18:42:53.852 error at Socket.<anonymous> (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInMemClient.js:52:30) knx.0 2019-08-22 18:42:53.852 error at Object.change (/opt/iobroker/node_modules/iobroker.js-controller/lib/adapter.js:3681:34) knx.0 2019-08-22 18:42:53.852 error at Adapter.emit (events.js:198:13) knx.0 2019-08-22 18:42:53.852 error at Adapter.<anonymous> (/opt/iobroker/node_modules/iobroker.knx/knx.js:79:7121) knx.0 2019-08-22 18:42:53.852 error at _0x35f3b6 (/opt/iobroker/node_modules/iobroker.knx/knx.js:79:8475) knx.0 2019-08-22 18:42:53.852 error at Object.getGAS (/opt/iobroker/node_modules/iobroker.knx/knx.js:71:13379) knx.0 2019-08-22 18:42:53.852 error at Object._0x790e9f [as convertAll] (/opt/iobroker/node_modules/iobroker.knx/knx.js:43:37271) knx.0 2019-08-22 18:42:53.852 error TypeError: Cannot read property 'split' of undefined knx.0 2019-08-22 18:42:53.833 error message messagebox.system.adapter.knx.0 [object Object] Cannot read property 'split' of undefined
Hardware ist ein Raspberry Pi 3.
Node.js: v10.16.0
NPM: 6.9.0Gruß
Andreas -
Hallo,
Auf GitHub wurde ein issue aufgemacht, in dem nach dem Import kein Schreiben auf dem Bus mehr ging. Meine Erklärung dazu:
https://github.com/ioBroker/ioBroker.knx/issues/67
've seen the problem. Short explanation: on KNX a KO can send a value by itself on the Bus (Ü-Flag) or you can trigger it by sending a groupValue-Read (L-Flag). But ioBroker can Change the value or read a value. But in the read- Case you are Not able to trigger a READ. So the question for me was, how to make a read-trigger possible vor ioBroker. It Happens, If the READ AND WRITE Flags in the ioBroker objects are Set. That means If you Set the read-flag to false and the WRITE flag to true, then you will have the expected behaviour.
Read=true, WRITE=true =>you are able to trigger a groupValue READ
Read=false,WRITE =true=> write the given value on KNX-bus
Read=true, WRITE=false=> receive a value-change, but Not able to trigger a readAt the Moment i don't know how realize that in a better way.....so i'll be happy about suggestions.
Wer also Verbesserungsvorschläge hat, gerne her damit.
VG
chefkoch009