00_TUL.pm || Auswertung der erweiterten Gruppenadressen

Begonnen von its2bit, 19 November 2016, 10:36:12

Vorheriges Thema - Nächstes Thema

its2bit

Hallo Forum,

nach Rückmeldung von Andi291 habe ich versucht die "falsche" Auswertung der erweiterten Gruppenadresse im 00_TUL.pm nachzuvollziehen (Perl Laie).

Anbei der Log Auszug zu den noch abgebildeten "richtigen" Gruppenadressen --> Hauptgruppe 0-15.

Log Level 5, Gruppenadresse 15/3/70

2016.11.19 10:02:35 5: decode_eibd byte len: 3 array size: 3
2016.11.19 10:02:35 5: SimpleRead msg.type: write, msg.src: 11e1, msg.dst: f346
2016.11.19 10:02:35 5: SimpleRead data: 0d20
2016.11.19 10:02:35 4: SimpleRead: 11e1wf3460d20

2016.11.19 10:02:35 4: myKNX: C11e1wf3460d20
2016.11.19 10:02:35 5: myKNX dispatch C11e1wf3460d20
2016.11.19 10:02:35 5: enter parse: hash: HASH(0x2037fe8) name: myKNX, msg: C11e1wf3460d20
2016.11.19 10:02:35 5: parse device hash: HASH(0x2115f50) name: KNX_1503070, GADDR: 15/3/70, GCODE: f346, MODEL: dpt9.001
2016.11.19 10:02:35 5: decode value: 0d20, gno: 1
2016.11.19 10:02:35 5: decode model: dpt9.001, code: dpt9, value: 0d20
2016.11.19 10:02:35 5: decode model: dpt9.001, code: dpt9, value: 0d20, numval: 26.24, state: 26.24 °C
2016.11.19 10:02:35 5: received hash: HASH(0x2115f50) name: KNX_1503070, STATE: 26.24 °C, GNO: 1, SENDER: 11e1
2016.11.19 10:02:35 5: exit parse
2016.11.19 10:02:35 5: Triggering KNX_1503070 (3 changes)
2016.11.19 10:02:35 5: Starting notify loop for KNX_1503070, first event getG1: 26.24 °C
2016.11.19 10:02:36 5: Received packet: 002711e1db3c00800210


... und der erweiterten Gruppenadresse mit der "falschen" Zuordnung.

Log Level 5, Gruppenadresse 27/3/60

2016.11.19 10:02:36 5: decode_eibd byte len: 3 array size: 3
2016.11.19 10:02:36 5: SimpleRead msg.type: write, msg.src: 11e1, msg.dst: b33c
2016.11.19 10:02:36 5: SimpleRead data: 0210
2016.11.19 10:02:36 4: SimpleRead: 11e1wb33c0210

2016.11.19 10:02:36 4: myKNX: C11e1wb33c0210
2016.11.19 10:02:36 5: myKNX dispatch C11e1wb33c0210
2016.11.19 10:02:36 5: enter parse: hash: HASH(0x2037fe8) name: myKNX, msg: C11e1wb33c0210
2016.11.19 10:02:36 5: parse device hash: HASH(0x21f7260) name: KNX_1103060, GADDR: 11/3/60, GCODE: b33c, MODEL: dpt9.001
2016.11.19 10:02:36 5: decode value: 0210, gno: 1
2016.11.19 10:02:36 5: decode model: dpt9.001, code: dpt9, value: 0210
2016.11.19 10:02:36 5: decode model: dpt9.001, code: dpt9, value: 0210, numval: 5.28, state: 5.28 °C
2016.11.19 10:02:36 5: received hash: HASH(0x21f7260) name: KNX_1103060, STATE: 5.28 °C, GNO: 1, SENDER: 11e1
2016.11.19 10:02:36 5: exit parse
2016.11.19 10:02:36 5: Triggering KNX_1103060 (3 changes)
2016.11.19 10:02:36 5: Starting notify loop for KNX_1103060, first event getG1: 5.28 °C
2016.11.19 10:02:36 5: Received packet: 002711e1db3d0080ff


Meine Vermutung bei der Dekondierung der KNX Packete wir ein Wert abgeschnitten. Aus dem gesendeten "1B" = 27 wird ein "B" 11. Da die Umwandlung u. Anzeige im FHEM funktioniert, nehme ich an das bei der Aufbereitung der Daten etwas abgeschnitten wird.

Der Schlüssel müsste irgendwo  hier liegen ...

Aktuell:
2016.11.19 10:02:36 5: decode_eibd byte len: 3 array size: 3
2016.11.19 10:02:36 5: SimpleRead msg.type: write, msg.src: 11e1, msg.dst: b33c


Neu:
2016.11.19 10:02:36 5: decode_eibd byte len: 3 array size: 3
2016.11.19 10:02:36 5: SimpleRead msg.type: write, msg.src: 11e1, msg.dst: 1b33c


--> msg.dst = 1b33c

Falls ihr Ideen/ Anregungen für einen Ansatz zur Lösung es Problems habt, meldet euch einfach.

Ich werde es versuchen zu lösen, ansonten muss ich meine komplette Gruppenadressstruktur überarbeiten.

Vielen Dank

Mfg
its2bit

Andi291

Servus! Bevor du dir die Mühe machst finde doch bitte heraus ob knxd, eibd und tul-stick über haupt damit klar kommen...

its2bit


its2bit

Hallo Andi291,

mit Einführung der ETS4 wird im Byte 2 auch das 8 Bit zur Adressierung der erweiterten Gruppenadressen genutzt. Dies wurde vorher nicht genutzt u. war leer.

Adress Byte 2 / Byte 3 : 5 Bit / 3 Bit / 8 Bit

Der knxd, eibd u. das TUL unterstützen lt. meinen Informationen den Versand des kompletten 2. Byte.

- Brauchst du noch mehr Informationen?

Danke

its2bit

Andi291

Abend!

Bin mir nicht sicher...Hast Du das getestet und Smurfix mal angefragt?
So recht glauben kann ich es eigentlich nicht...

Geht groupswrite, vbusmonitor, etc. i.V.m. der TUL und dem eibd und knxd im erweiterten Bereich?

its2bit

Hallo andi291,

ich habe mich die letzten Tage hingesetzt u. versucht die Perl Skripte zu verstehen.

Anbei mein erster lauffähiger Entwurf wie man die erweiterten Gruppenadressen im 00_TUL.pm u. 10_KNX.pm abbilden kann. Einfach nach its2bit u. den Kommentaren ausschau halten. :) (Sry, bin kein gelernter Programmierer)

Die Adressen werden über den eibd in den Bereich 0-31/0-7/0-255 zerlegt u. es können vom System auch Informationen empfangen werden.

Leider hat die Sache auch einen Haken bei dem ich eure Hilfe gebrauchen könnte.

Nach Betätigen des GET Buttons in der Weboberfläche hängt sich der FHEM auf.

Ansonsten freue ich mich über euer Feedback u. den ein o. anderen Tester.

mfg
its2bit


its2bit

Hallo Andi291, Hallo Forum,

ich habe das Problem mit dem Get Button gelöst.

- Nach welchen Kriterien wird der Code in die Module übernommen?
- Brauchen wir noch weitere Tests?

Mfg
its2bit

Andi291


Andi291

Habs mal durchgeschaut und oberflächlich getestet. War ja erfrischend wenig. Ist mal so eingechecked. Schau mer mal :-)

Superrakete

Hallo Forum.

Habe mich jetzt auch mal angemeldet weil nach dem Update von heute habe ich bei jeder Gruppenadresse einen Fehler.
Zum Beispiel:

2017.01.10 00:43:44 3: SimpleRead: 00001w040000a

2017.01.10 00:43:44 3: KNX Unknown device 04000 (4/0/0), Value 0a, please define it
2017.01.10 00:43:44 2: autocreate: define KNX_0400000 KNX 4/0/0:MODEL_NOT_DEFINED
2017.01.10 00:49:19 3: SimpleRead: 00001w0101901

2017.01.10 00:49:19 3: KNX Unknown device 01019 (1/0/25), Value 01, please define it
2017.01.10 00:49:19 2: autocreate: define KNX_0100025 KNX 1/0/25:MODEL_NOT_DEFINED


An der fhem.cfg wurde nichts geändert und wenn ich 00_TUL.pm und 10_KNX.pm aus dem Backup wieder einspiele läuft alles wieder.
Muss ich jetzt meine Konfiguration ändern?

Andi291

Komisch, bei mir läufts. Anyhow - ich mach die Änderungen heute Abend rückgängig. Da muss its2bit nochmal ran :-)

erwin

Hi Andi,

bei mir waren nur jene definitionen betroffen, die ursprünglich so aussahen:
define test KNX a119:dptX
nicht aber:
define test KNX 10/1/25:dptX
liegt also am parsen der defines...
Log:configfile: wrong group name format: specify as 0-15/0-15/0-255 or as hex
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

Superrakete

Nee, daran kanns eigentlich nicht liegen.

define Temperatur_Wohnzimmer KNX 4/0/0:dpt9.001

define Kueche KNX 1/0/25:dpt1.001 1/0/27:dpt1.001

fis14

Hi zusammen,

bei mir startete Autocreate erstmal richtig durch und legte alles nochmal an.
natürlich blanko mit MODEL_NOT_DEFINED

Falki

Einen guten Abend zusammen,

bei mir treten die Meldungen bei allen Definitionen auf. Davor kommt einmal die PERL Warning.

PERL WARNING: Illegal hexadecimal digit 'w' ignored at ./FHEM/10_KNX.pm line 887.
KNX Unknown device w081 (0/0/129), Value 0306c2, please define it
SimpleRead: 0ff14w0810306c2


Mit einer früheren 00_TUL.pm + 10_KNX.pm funktioniert es wieder wunderbar.

VG
Falki
KNX + Cubietruck + FHEM

Andi291

So, Männer - hab die Änderungen wieder deaktiviert und eingechecked. Müsste demnächst per Update zur Verfügung stehen.
Derweil im ANhang.


Sorry dafür...

Xcoder

Hallo,

Bei mir sind alle Devices in Hex definiert. Das Letzte Update hat die KNX defines nicht mehr akzeptiert. Ist Hex noch erlaubt, z.B. define KNX_0001 KNX 0001:dpt1?

Gruss, Xcoder

erwin

Hi Falki,
ZitatIst Hex noch erlaubt, z.B. define KNX_0001 KNX 0001:dpt1?
... im Prinzip ja, siehe auch mein post #11...
allerdings geht die define routine nun von 5stellig aus, also so:
define KNX_0001 KNX 00001:dpt1
Ich hab dann allerdings nicht mehr weiter getestet, bin auf die letzte version zurückgestiegen.
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

Andi291

Fix steht seit heute morgen, 08:00 per Update zur Verfügung. Sorry nochmal für den Aufwand....

fis14

Alles gut. wer nicht testet wird nicht schlauer  8)

its2bit

Hi,
in meinem Urlaub hat sich ja einiges getan. Leider muss ich auf meinem Testsystem nachdem System/FHEM Update feststellen, dass dieser nicht mehr läuft. Ich bekomme bei den KNX Komponenten nur noch Fehler.

Meine Änderungen in 00_TUL.pm u. 10_KNX.pm zu den erweiterten Gruppenadressen hab ich vom Wirksystem Stand 26.12.2016 auf das Testsystem übertragen. Mein Wirksystem läuft ohne Probleme, allerdings ohne aktuelles Update.

Im Testsystem kamen die Änderungen u. Quereinspielungen nicht gut an. Es läuft nicht mehr rund. Muss es sehr wahrscheinlich neu aufsetzen.

Was ich aber eigentlich sagen will, mit dem System vom Stand 26.12.2016 lief alles stabil. Irgend eine weitere Änderung muss in den Modulen/ FHEM/ Linux System erfolgt sein. Was die Auswertung der Destination-Adresse verhaut! Normalerweise müsste mit der Umstellung die Destination-Adresse als 5-stellige Zahl ausgegeben werden. Es wird aber vorher der gesamte String gekürzt.

Leider fehlt mir im Moment die Zeit das System neu aufzusetzen u. hier nach zu gehen.

Anbei stelle ich euch gerne die finalen Dateien mit Stand 26.12.2016 (Systemstand; Modulstand 10_KNX.pm 29.11.2016, 00_TUL.pm 08.11.2016) zur Verfügung.

Falls ihr Anmerkungen o. Ideen habt was sich in dieser Zeit verändert hat, immer herdamit.

Mfg
its2bit

Andi291

Servus!

Kannst DU die Fehlermeldungen präzisieren? Mit welcher Version testest Du?

Die Änderungen findest Du in den jeweiligen Dateien selbst...

Änderungen 10_KNX:

# ABU 20170106 corrected doku for time, finetuned dpt9-regex, added dpt 7.001 7.012 9.007 9.008, , added mod for extended adressing (thx to its2bit)

26
# ABU 20170110 removed mod for extended adressing

27
# ABU 20100114 fixed dpt9-regex

28
# ABU 20100116 fixed dpt9-regex again


Änderungen 00_TUL:

14
# ABU 20170102 fixed write-mechanism, added mod for extended adressing (thx to its2bit)

15
# ABU 20170110 removed mod for extended adressing



its2bit

Hi,

anbei die Fehlermeldung die mich noch wahnsinnig macht. Bestimmt hab ich einen Gedankenfehler.

2017-01-22 19:39:37 Global global UNDEFINED KNX_2005010 KNX 20/5/10:MODEL_NOT_DEFINED
2017-01-22 19:39:37 Global global SAVE
2017-01-22 19:39:38 Global global UNDEFINED KNX_1703070 KNX 17/3/70:MODEL_NOT_DEFINED
2017-01-22 19:39:38 Global global DEFINED KNX_1703070
2017-01-22 19:39:38 Global global SAVE
2017-01-22 19:39:38 Global global UNDEFINED KNX_2703064 KNX 27/3/64:MODEL_NOT_DEFINED
2017-01-22 19:39:38 Global global DEFINED KNX_2703064


Diese Fehlermeldung läuft in einer Endlosschleife.

Ansonsten konnte ich die Auflösung der logischen Adressen/ physikalischen Adressen mit der aktuellen Version, s.h. Log oben, wieder herstellen.

FHEM: fhem.pl:13120/2017-01-17
00_TUL.pm: # ABU 20170110 removed mod for extended adressing
10_KNX.pm: # ABU 20100116 fixed dpt9-regex again --> Release 2010 Schreibfehler?  ;D

Für Euch zum Testen die neuen Entwürfe mit vielen Log-Einträgen. Feedback erwünscht.


Mfg
its2bit

mr

Hallo Andy 291,

aus meiner Sicht könnte man doch einen Schalter setzen, ob man die erweiterte Gruppenstruktur und damit den Code dazu nutzen möchte. Das würde es ermöglichen, dass Alle KNX Modul Nutzer (auch it2bit und ich) weiter am Updateprozess teilnehmen könnten, aber selbst entscheiden.
1= Default = 1 bit wäre der jetzige Stand und 2 = 2 bit.

Könntest du dir das vorstellen?

Hintergrund: aus meiner Sicht ist diese Veränderung eben der Schritt MIT der Entwicklung und die hat eben jetzt 31 Hauptgruppen.

Danke an it2bit für den Beitrag und ich bin weiter an seinen Erkenntnissen interessiert. Ich hatte mich doch gewundert, warum die GA 18/2/2 im KNX Modul zur 2/2/2 wurde.

mfg
mr

Andi291

Servus!

Eigentlich muss es so stabil werden, dass die Umschaltung nicht nötig ist. Das ist zumindest das Ziel. Ich komm nur momentan nicht dazu...

Grüße, Andi

Andi291

ABend!

Ich hab mir die Versionen aus dem letzten Post mal eingebunden - bis dato ohne Probleme.

Läuft's bei Euch auch? Funktionieren die Erweiterungen?

Grüße, Andi

mr

Hallo Andi,

ich habe mir die  00_TUL.pm und 10_KNX.pm aus der Antwort #22 am: 22 Januar 2017, 19:47:31 von its2bit eingebunden und siehe da jetzt zeigen sich meine erweiterten GA 16/x/x, 17/x/x und 18/x/x ordentlich. Nach DPT Zuordnung werden die Werte ordentlich angezeigt in FHEM  und TabletUI.

Für mich ist es perfekt. Ich werde die  00_TUL.pm und 10_KNX.pm erst mal vom Update ausschliessen und die Inhalte im Update beobachten, ob ich die brauche.

mfg
mr

mr

Hallo Andi,

ich lese gerade oft die Modul Doku KNX und bin der Meinung, dass der Satz
"Der Name ist immer KNX_nnmmooo wobei nn die Linie ist, mm der Bereich und ooo die Geräteadresse." m.E. nicht ganz korrekt ist. Für mich ist es die Gruppenadresse, die aus Hauptgruppe/Mittelgruppe/Untergruppe besteht. Wie man die verwendet ist ja eher nur eine Richtlinie. Jeder kann da ja frei entscheiden, und eben im Rahmen der erweiterten Gruppenadressen ist das die Kombination aus 0-31/0-7/0-255.

Für andere, die ihre Struktur noch aufbauen, hier noch mal mein Weg:
Hauptgruppe/Mittelgruppe/Untergruppe:
Raumnummer/Gewerk(Licht,Heizung,Lüftung,Steckdosen...)/Parameter(Ein,Aus,Dimmen,Rückmeldung,....)
da wir nur eine Etage in einem Objekt haben und hier keine Erweiterung über Etagen kommen wird. Somit sah ich keine Sinn darin, die erste Ziffer für eine Etage zu verschenken. Und ich sehe auf den ersten Blick im Log oder Eventmonitor u.a. was da kommt: z.B.:

01/01/001 = Raum 01/Lichtsteuerung/EinAus der Wandlampe
02/01/001 = Raum 02/Lichtsteuerung/EinAus der Wandlampe
...
18/01/001 = Raum 18/Lichtsteuerung/EinAus der Wandlampe
oder
02/02/065 = Raum 02/Heizungssteuerung/IST-Temperatur
18/02/065 = Raum 18/Heizungssteuerung/IST-Temperatur

Wenn ich in einem Raum die Wandlampe nicht habe, dann lasse ich diesen Bereich der Untergruppe leer.
Die Hauptgruppe 00 habe ich für zentrale GA's gelassen.
00/02/002 = Zentralfunktion/Heizungssteuerung/Sommerbetrieb für alle

mfg
mr


mr

Hallo Andi,

was ich vergessen habe: ein großes DANKE für dieses Modul und die Arbeit daran.

mfg
mr

Andi291

Ich hol den Thread mal wieder hoch - habe die von its2bit modifizierte TUL nochmal getestet, und einiges an Logs ausgeräumt.
Die Version ist eingechecked und sollte morgen zur Verfügung stehen.

Grüße, Andi

mr

Hallo Andi,
schön das du es noch mal aufnimmst. Ich kann es in der nächsten Woche testen und mich melden.
mr