war: Techem HKV (ok) -> war Wasserzähler (ok) -> war Wärmemengenzähler (ok)

Begonnen von herrmannj, 14 Oktober 2015, 02:34:36

Vorheriges Thema - Nächstes Thema

herrmannj

Hallo Wolfgang,

Herzlich Willkommen hier und viel Spass !

Zu den HKV: die sind nicht nut neu bie Dir - die sind generell neu.

Mein modul kann damit noch nicht umgehen, generell gilt es zu klären ob so kodiert sind wie bekannt. Ich bin auf Geschäftsreise, kann das also nicht fix klären.

Wenn Du Dir eine testweise Änderung im quellcode zutraust:

Ändere diese Zeile (#30) von
$hash->{Match}      = "^b..446850[\\d]{8}(61|64|69)80....A0.*";
auf
$hash->{Match}      = "^b..446850[\\d]{8}(61|64|69|94)80....A0.*";

Rechte richtig setzen (gesetzt lassen) und fhem Neustart.

es könnte reichen

vg
joerg

WolfangB

Erst einmal vielen dank für die schnelle Antwort.
Zuerst einmal die änderung im Quellcode hat leider nicht gebracht.

Jedoch habe ich selbst etwas an der Zeile 30 geändert

von
$hash->{Match}      = "^b..446850[\\d]{8}(61|64|69|94)80....A0.*";

nach
$hash->{Match}      = "^b..446850[\\d]{8}(61|64|69|94)80....A2.*";

Danach habe ich zum erstem mal etwas von den definierten HKV´s empfangen.
Zwar stehten sie immer noch auf "listening", aber es wurde etwas gelesen.

Internals:
   CUL_868_MSGCNT 3
   CUL_868_RAWMSG b33446850981348009480D956A20FDE200000400E000005C409BB09000ADF00000000000000000000000000000000FFFF00000000000000000000FFFF80::-71.5
   CUL_868_RSSI -71.5
   CUL_868_TIME 2016-07-04 17:19:47
   DEF        1398
   LASTInputDev CUL_868
   METER      Funkheizkostenverteiler data IIl
   MSGCNT     3
   NAME       test_hk_Bad
   NR         280
   NTFY_ORDER 50-test_hk_Bad
   STATE      listening
   TYPE       TechemHKV
   VERSION    94
   longID     00481398
   Readings:
     2016-07-04 00:00:00   current_period  0
     2016-06-30 00:00:00   previous_period 0
     2016-07-04 17:18:34   state           listening
Attributes:
   room       Test

herrmannj

Ah, das a2 hatte ich übersehen aber ich sehe du kennst dich aus.  :). Dann verschluesseln die anders. Deswegen kommt nix brauchbares raus.

Muss reverse engineered werden. Ich schau mal ob mich das wissen um das alte protokoll da weiterbringt. Wird aber dauern...

Vg
Joerg

WolfangB

Habe jetzt noch ein paar sachen ausprobiert.

Diese neue Version Sendet ebenfalls die Temperatur mit.

Bei Zeile 125 von
if (($msg->{version} || '') eq '69') {

auf
if (($msg->{version} || '') eq '69' || '94') {
geändert dann wird die Temperatur erst einmal mit angezeigt.

Jedoch völlig falsch da die Temperatur 1 und 2 jetzt auf einen anderen Platz im Protokoll liegen.

Temperatur 1 in Zeile 306 von
return sprintf "%.2f", (hex("$m[20]$m[19]") / 100);

auf
return sprintf "%.2f", (hex("$m[21]$m[20]") / 100);

und für Temperatur 2 in Zeile 312 von
return sprintf "%.2f", (hex("$m[22]$m[21]") / 100);

auf
return sprintf "%.2f", (hex("$m[23]$m[22]") / 100);

Bei den restlichen Sachen scheint es ja alles zu funktionieren das du vieleicht nicht ganz von vorne anfangen musst.  :)

herrmannj

Zitat von: pokerazor am 22 Mai 2016, 23:08:35
Moin zusammen,

ich bin zufällig in den Besitz eines USB-Sticks Amber Wireless AMB8425-M gelangt (https://www.amber-wireless.de/de/services/pcnpdn/amb8425-m.html, Handbuch https://www.amber-wireless.de/fileadmin//user_upload/DOWNLOADS/DOWNLOADS_PCN/amb8425-m_hb.pdf). Der ist äquivalent zum hier so viel verwendeten CUL ein WMBUS-Interface. Da wir einige Techem HKV in der Wohnung haben, bin ich auf den Gedanken verfallen, die auszulesen und bei der Suche nach dem günstigsten Weg dazu auf FHEM und diesen Thread gestoßen.
Ich habe jetzt den ganzen Tag damit verbracht, durch Forum, Wiki und Commandref sowie im restlichen durchsuchbaren Web so gut wie möglich zu versuchen zu verstehen, wie FHEM funktioniert und wie der Stick, FHEM und die TechemHKV zur Zusammenarbeit zu bewegen sein könnten. Abschließend gelungen ist es mir leider noch nicht :-)
Deswegen hoffe ich, dass ihr mir helfen könntet?

Hier, was bisher geschah:
Mit Hilfe der Software ACC (Amber Config Center) habe ich den Stick mittlerweile auf die aktuelle Firmware geflasht und mit Hilfe der Software ACM (Amber Commander) den Modus auf T1_OTHER mit noch ein paar Änderungen eingestellt, in ACM empfängt er auch Funktelegramme von Techem, kann aber leider die Rohdaten nicht dekodieren. An meinem RaspberryPi taucht er nun als /dev/ttyUSB0 auf und
od -t x1 < /dev/ttyUSB0
gibt etwas aus in der Art:

0000000 22 32 2d 2c 02 10 00 00 00 00 00 00 00 00 00 e2
0000020 33 44 68 50 60 37 31 92 69 80 a0 de 1e cf 07 60
0000040 0b 63 05 6c 08 75 08 31 00 31 42 2f 85 91 7c 75
0000060 a8 5c 54 4a 52 1f 47 34 0a 00 00 00 00 0a 51 0c
0000100 2a 00 2a 2f 2e 32 34 43 42 3a 44 3c 47 3b 33 3d
0000120 32 2f 20 1b 09 0a 02 01 08 f2 33 44 68 50 81 39
0000140 31 92 69 80 a0 de 1e 00 00 60 0b 00 00 0e 08 08
0000160 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000200 00 00 00 00 00 00 00 00 00 00 00 00 de 33 44 68
0000220 50 75 38 31 92 69 80 a0 de 1e b8 09 09 00 00 00
0000240 00 02 10 2c 33 32 41 3d 23 19 1f 0a 2c 08 32 08
0000260 00 00 00 00 00 00 00 00 00 00 e3 33 44 68 50 74
0000300 38 31 92 69 80 a0 de 1e 00 00 60 0b 00 00 2c 08
0000320 2b 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000340 00 00 00 00 00 00 00 00 00 00 00 00 00 e0 33 44
0000360 68 50 41 37 31 92 69 80 a0 de 1e 00 00 60 0b 00
0000400 00 7a 08 80 08 00 00 00 00 00 00 00 00 00 00 00
0000420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0000440 da 33 44 68 50 43 39 31 92 69 80 a0 de 1e 00 00
0000460 00 00 00 00 00 00 00 00 00 00 f7 33 44 68 50 46
0000500 37 31 92 69 80 a0 de 1e 9a 0f 60 0b e0 0a 78 5e
0000520 90 ac 95 92 9a 86 6f 54 5e 51 61 4c 2c 19 00 00
0000540 00 00 09 00 30 de 33 44 68 50 23 39 31 92 69 80
0000560 a0 de 1e 8c 0a 60 0b db 01 6d 08 00 06 00 06 3d
0000600 06 21 3a 2a 2c 4d 25 08 18 1e 0f 0a 00 00 00 00
0000620 00 00 00 2b 33 44 68 50 91 37 31 92 69 80 a0 de
0000640 1e 38 60 0b 83 a5 08 a2 08 00 1f 00 1f 5e 51 6c
0000660 75 6e 6e 7a 6b 58 3f 38 2c 07 00 00 00 00 00 00
0000700 00 00 0c e2 33 44 68 50 78 36 36 92 69 80 a0 de
0000720 1e 32 06 60 0b 0b 1d 0e 01 00 00 00 00 00 00 01
0000740 0b f8 33 44 68 50 50 38 31 92 69 80 a0 de 1e ca
0000760 02 60 0b 5b 02 83 08 9d 08 02 06 00 06 22 2b 41
0001000 40 32 3f 32 1f 25 1b 19 0a 02 00 00 00 00 01 00
0001020 05 e3 33 44 68 50 10 39 31 92 69 80 a0 de 1e 0a


Ich habe schon versucht, den AMB8425-M als CUL einzurichten:
define teststick CUL /dev/ttyUSB0@9600 4812

Das resultiert (wohl kaum überraschend) in folgenden Log-Nachrichten:

2016.05.22 21:10:41 3: Opening teststick device /dev/ttyUSB0
2016.05.22 21:10:41 3: Setting teststick serial parameters to 9600,8,N,1
2016.05.22 21:10:41 3: teststick device opened
2016.05.22 21:10:44 2: teststick: unknown message 3DhP#91�i����
2016.05.22 21:10:51 2: teststick: unknown message ` �}�=!:*,M%)3DhPc71�i���;` tSb"2-,1' �3DhP�81�i����` ae�3DhP�71�i����` L@aQB���¹����i�X -�3DhP`71�i����` cu}11B/��|u�\TJRG4
2016.05.22 21:10:51 2: teststick: unknown message
2016.05.22 21:10:59 2: teststick: unknown message 3DhPP81�i����` [��"+A@2?2%6
2016.05.22 21:10:59 2: teststick: unknown message �3DhP91�i���
2016.05.22 21:11:02 1: Cannot init /dev/ttyUSB0, ignoring it (teststick)
2016.05.22 21:14:04 3: Opening teststick device /dev/ttyUSB0
2016.05.22 21:14:04 3: Setting teststick serial parameters to 9600,8,N,1
2016.05.22 21:14:04 3: teststick device opened
2016.05.22 21:14:13 1: Cannot init /dev/ttyUSB0, ignoring it (teststick)

und auf der Seite detail=teststick steht zwar state=opened aber das war's auch.

Daher hier meine Frage: Gibt es eine Möglichkeit, anstelle des CUL-Moduls ein anderes, das rohe Konsolen-Daten von /dev/ttyUSB0 einliest, zu verwenden und die so gewonnenen Daten an das TechemHKV-Modul zwecks Dekodierung zu übergeben?

Vielen Dank schon mal im Voraus, auch für die viele Arbeit, die bislang schon in FHEM und die Techem-Module geflossen ist!

Cheers,
Hanno

Moin Hanno,

Dein Beitrag ist mir leider durch gerutscht, besser spät als nie. Willkommen im forum ! :)

Ich sehe die Daten eines Techem HKV in Deinem post. Ganz grundsätzlich würde es generell gehen. Dazu müsste man ein modul für den Stick schreiben. In der gleichen Art in der es zb für den CUL existiert. Das ist leider sehr aufwendig. Ich empfehle Dir deshalb die Anschaaffung eines CUL.

Trotzdem - interessante Option. Vielleicht braucht man das später mal.

vg
joerg

herrmannj

Hallo WolfgangB

bitte schau mal was die Version im Anhang bringt.

vg
joerg


WolfangB

Hallo herrmannj

leider funktioniert die Version die du bereitgestellt hast nicht.
Es wird keine Temperatur angezeigt und bei der current_period wird nur ein festwert von 5376 und bei previous_period ein festwert von 24576 angezeigt

vieleicht helfen dir ein paar RAW daten


b33446850981348009480D956A20FDE20000060140100152C097A0B01EB5C00000000000000000000000000000000FFFF00000000000000000000FFFF80::-53.5
b334468503220480094808C33A20FDE20000060140200152A0A1C0D02C34800000000000000000000000000000000FFFF00000000000000000000FFFF80::-49.5
b33446850312048009480F3CEA20FDE2000006014060015D209D80C06937500000000000000000000000000000000FFFF00000000000000000000FFFF80::-73
b3344685040204800948092C9A20FDE2000006014060015B9092F0D06A03C00000000000000000000000000000000FFFF00000000000000000000FFFF80::-61.5
b334468507395470094809B6BA20FDE20000060140200152509900B021D3100000000000000000000000000000000FFFF00000000000000000000FFFF80::-48.5


alle von unterschiedlichen HKV

herrmannj

magst noch mal ein list von einem der hkv einstellen ?

Danke und Grüße
Joerg

WolfangB

Hallo Joerg

CUL_868_MSGCNT

1
CUL_868_RAWMSG

b33446850981348009480D956A20FDE2000007014030015E007190803AE1600000000000000000000000000000000FFFF00000000000000000000FFFF80::-53.5
CUL_868_RSSI

-53.5
CUL_868_TIME

2016-10-07 09:20:57
DEF
1398
LASTInputDev

CUL_868
METER

Funkheizkostenverteiler data IIl
MSGCNT

1
NAME

HKV_Bad
NR

267
NTFY_ORDER

50-HKV_Bad
STATE

standby (IO missing)
TYPE

TechemHKV
VERSION

94
longID

00481398


CUL_868_MSGCNT

1
CUL_868_RAWMSG

b334468503220480094808C33A20FDE2000007014040015A907B307047E6200000000000000000000000000000000FFFF00000000000000000000FFFF80::-48
CUL_868_RSSI

-48
CUL_868_TIME

2016-10-07 09:23:10
DEF
2032
LASTInputDev

CUL_868
METER

Funkheizkostenverteiler data IIl
MSGCNT

1
NAME

HKV_Flur
NR

268
NTFY_ORDER

50-HKV_Flur
STATE

standby (IO missing)
TYPE

TechemHKV
VERSION

94
longID

00482032


CUL_868_MSGCNT

1
CUL_868_RAWMSG

b334468507395470094809B6BA20FDE20000070140400158607850704C57700000000000000000000000000000000FFFF00000000000000000000FFFF80::-49
CUL_868_RSSI

-49
CUL_868_TIME

2016-10-07 09:22:05
DEF
9573
LASTInputDev

CUL_868
METER

Funkheizkostenverteiler data IIl
MSGCNT

1
NAME

HKV_Kueche
NR

271
NTFY_ORDER

50-HKV_Kueche
STATE

standby (IO missing)
TYPE

TechemHKV
VERSION

94
longID

00479573


CUL_868_MSGCNT

1
CUL_868_RAWMSG

b334468503320480094804DBBA20FDE2000007014000015FE06F40600AE0E00000000000000000000000000000000FFFF00000000000000000000FFFF80::-64
CUL_868_RSSI

-64
CUL_868_TIME

2016-10-07 09:22:15
DEF
2033
LASTInputDev

CUL_868
METER

Funkheizkostenverteiler data IIl
MSGCNT

1
NAME

HKV_SZ
NR

272
NTFY_ORDER

50-HKV_SZ
STATE

standby (IO missing)
TYPE

TechemHKV
VERSION

94
longID

00482033


CUL_868_MSGCNT

1
CUL_868_RAWMSG

b33446850639547009480A032A20FDE2000007014060015BC06BB0606749200000000000000000000000000000000FFFF00000000000000000000FFFF80::-41
CUL_868_RSSI

-41
CUL_868_TIME

2016-10-07 09:20:00
DEF
9563
LASTInputDev

CUL_868
METER

Funkheizkostenverteiler data IIl
MSGCNT

1
NAME

HKV_WZ_Doppelfenster
NR

273
NTFY_ORDER

50-HKV_WZ_Doppelfenster
STATE

standby (IO missing)
TYPE

TechemHKV
VERSION

94
longID

00479563


CUL_868_MSGCNT

1
CUL_868_RAWMSG

b33446850262048009480F6E5A20FDE2000007014000015CA06CA0600220500000000000000000000000000000000FFFF00000000000000000000FFFF80::-38.5
CUL_868_RSSI

-38.5
CUL_868_TIME

2016-10-07 09:21:01
DEF
2026
LASTInputDev

CUL_868
METER

Funkheizkostenverteiler data IIl
MSGCNT

1
NAME

HKV_WZ_Sofa_Nord
NR

274
NTFY_ORDER

50-HKV_WZ_Sofa_Nord
STATE

standby (IO missing)
TYPE

TechemHKV
VERSION

94
longID

00482026


CUL_868_MSGCNT

1
CUL_868_RAWMSG

b3344685023204800948076E2A20FDE20000070140A0015D406EA060A09B600000000000000000000000000000000FFFF00000000000000000000FFFF80::-33.5
CUL_868_RSSI

-33.5
CUL_868_TIME

2016-10-07 09:20:45
DEF
2023
LASTInputDev

CUL_868
METER

Funkheizkostenverteiler data IIl
MSGCNT

1
NAME

HKV_WZ_Sofa_West
NR

275
NTFY_ORDER

50-HKV_WZ_Sofa_West
STATE

standby (IO missing)
TYPE

TechemHKV
VERSION

94
longID

00482023


Ich benutze zurzeit eine etwas abgeänderte Version deines Modules.
Damit funktioniert eigentlich alles. Siehe Anhang.



Gruß Wolfgang

pokerazor

Moin Jörg,

ich hatte zwischenzeitlich noch ein bisschen weitergetüftelt und es mit der Excel-Tabelle von oben geschafft, die Daten dann mit jMBus in Java zu dekodieren: https://github.com/pokerazor/jmbus. Das führt jetzt zu einem Binding in openHAB2: https://community.openhab.org/t/new-binding-wireless-m-bus-techem-heat-cost-allocators/16974.
In dem anderen Thread https://forum.fhem.de/index.php/topic,58527.html wird ja auch schon darüber geredet, den Stick als Empfänger benutzen. Wenn ich irgendwie helfen kann, mit Logs oder so, dann lasst es mich gerne wissen.

Cheers,
Hanno

herrmannj

vielen Dank. Hilf mir aber kurz. Gehts Dir um den Amber Stick oder den hkv mir der neuen fw ?

Bei dem amber halte ich mich aktuell raus da alles mit dem CUL stabil läuft.
Bei der neuen fw Version 'sollte' eigentlich auch alles ok sein. Läuft aber bei Wolfgang nicht und ich hab es verschwitzt dem nachzugehen. Das kann aber nur eine Kleinigkeit sein da ich die msg simuliert komplett verarbeiten kann.

In der Theorie also eigentlich nix offen. (@Wolfgang: soon. Sorry  :-[)

vg
joerg

pokerazor

Mir ging es eigentlich hauptsächlich um den Amber Stick, da ich den ja habe, und auch die älteren HKV. Ich gehe auch davon aus, dass wir noch bis Ende des Jahres mit Techem-Rauchmeldern zwangsbeglückt werden und bin dann mal gespannt, wie gut das funktionieren wird, die auszulesen. An dieser Front also wahrscheinlich wirklich nichts mehr offen, insbesondere da ich im Moment eher mit openHAB 2 herumspiele. Wollte mich aber auch nochmal zurückmelden und einen Stand durchgeben :-). Mag ja auch sein, dass noch jemand später drüber stolpert.

Cheers,
Hanno

gloob

Ist der aktuelle Stand jetzt eignetich eingechecked und kann über das Update gezogen werden?
Ich habe ich die neueren HKVs und würde sie gerne in FHEM einbinden.

Wird eigentlich ein 433MHz oder 868MHz CUL benötigt?
Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway

herrmannj


gloob

Raspberry Pi 3 | miniCUL 433MHz | nanoCUL 868 MHz | nanoCUL 433 MHz | MySensors WLAN Gateway | LaCrosse WLAN Gateway | SignalESP 433 MHz | SignalESP 868 MHz | HM-MOD-UART WLAN Gateway | IR - 360 Grad WLAN Gateway