GELÖST - Wireless M-Bus (C1/T1) für CUL - Wasserzähler

Begonnen von pipp37, 31 Januar 2015, 12:08:39

Vorheriges Thema - Nächstes Thema

kaihs

Zitat von: nisi80 am 08 November 2017, 17:32:48
2017.11.08 17:31:18 2 : WMBUS Error during LinkLayer parse:message too short, expected 91, got 63 bytes

Genau das Thema hatten wir gestern hier.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

nisi80

#31
Hallo,

ich konnte nun durch diverse Antworten hier im Forum den Diehl Wasserzähler zum laufen bringen.
Es war ein wenig steinig, aber ich möchte hier mal kurz die Stolperstellen aufzählen:


  • CUL das WMBUS-Protokoll beibringen, indem man andere Protokolle aus der Headerdatei auskommentiert
  • Den Empfangspuffer auf 190 Bytes erhöhen, damit die recht großen Datagramme Platz haben
  • Die AES-Bibliothek auf dem Raspi installieren, und die Fehlermeldung ob des zu geringen RAMs beim entpacken umgehen (sudo cpan -i Crypt/OpenSSL/AES.pm anstatt von sudo cpan -i Crypt::OpenSSL::AES)
  • Den AES-Key aus dem Forum hier eingetragen (XXX) der aus der Windows-SW extrahiert wurde

Ich hoffe ich konnte hiermit den anderen Nutzern die Inbetriebnahme ein wenig erleichtern!

Vielen Dank an alle hier im Forum und ein paar schöne Feiertage!!!

Admin-Edit: AES-Key nach Bitte des Herstellers entfernt.
RaspberryPi mit FHEM 6.1
SMLUSB für den Stromzähler+WMBUS+nanoCUL für den Wasserzähler, 2x ebus-Konverter für die Gastherme und Solarthermie, nanoCUL868: MAXX! Fensterkontakte, RaspberryMatic-CCU: Bewegungsmelder, Rolläden, 1xPlenticore+2xPikoMP (10.4kWp)+BYD(5kW/h)

leon1911

Danke, für diesen Beitrag.
Das war die Lösung nach zwei Tagen suchen im Forum.

Gruß
Matze

MrPerfect

#33
Vielen Dank an @nisi80 für die Zusammenfassung. Ich hatte noch ein paar kleinere Probleme und desshalb hier als Ergänzung zum letzten Beitrag von nisi80:

Die ersten beiden Punkte (WMBus Protokoll und Empfangsbuffergröße) werden in der board.h zum Flashen des CUL geändert. Danach make program auf den CUL ausführen. (siehe auch https://wiki.fhem.de/wiki/Selbstbau_CUL)

Für die Installation der AES Bibliothek fehlte mir noch:
sudo apt-get install libcrypt-cbc-perl libdigest-crc-perl libssl-dev
danach klappt
sudo cpan -i Crypt/OpenSSL/AES.pm

Danach muss man den CUL in FHEM anlegen. Hier dazu mein Code:

defmod nanoCUL868MBUS CUL /dev/serial/by-id/usb-FTDI_FT232R_USB_UART_AL02W8KI-if00-port0@38400 2012
attr nanoCUL868MBUS icon cul_cul
attr nanoCUL868MBUS rfmode WMBus_T
attr nanoCUL868MBUS room CULs


Wenn dann Euer Autocreate aktiv ist, dann sollte automatisch ein WMBus Device angelegt werden

defmod autocreate autocreate
attr autocreate disable 0


Das sieht bei mir so aus. Den AESkey müsst ihr dort im attr setzen. Damit das Log nicht zugespammt wird noch ein bisschen event-on-change-reading...:

defmod WMBUS_DME_58485998_112_7 WMBUS DME 58485998 112 7
attr WMBUS_DME_58485998_112_7 AESkey XXX
attr WMBUS_DME_58485998_112_7 IODev nanoCUL868MBUS
attr WMBUS_DME_58485998_112_7 event-min-interval 60
attr WMBUS_DME_58485998_112_7 event-on-change-reading .*2_value*
attr WMBUS_DME_58485998_112_7 room Zaehler


Vielen Dank an nisi80!

Anmerkung:
Aufgrund eines Einwandes des Herstellers wurde dieser Beitrag am 8.8.2018 von einem Moderator geändert

scp

hi , ich habe auch einen Wasserzähler.
Der Hersteller teilte mir mit er sei im C1 Modus und nicht im T1 Modus wie auf der Rechnung xD.
Allerdings empfängt man über beide Wege nichts.
Hat jemand eine Idee ?
Ich habe noch 5 Heizkostenverteiler die alle prima über den Modus funktionieren. D.h. der CUL empfängt soweit alle 5 Minuten alle 5 Heizkostenverteiler... schon seit ein paar Monaten sogar.. zuverlässig. dieser Wasserzähler will sich aber einfach nicht erkennen lassen !
Ich erhalte auch keine Fehlermeldung in meinem LOG soweit ich das verstehe.. ich habe auch darauf geachtet, dass der Funk bei diesem Wasserzähler eingeschaltet ist.. habe das persönlich mit dem Hersteller am Telefon abgesprochen.

laserrichi

mal das hier wieder ausgraben, denn ich habe jetzt auch einen Hydrus 2 Wasserzähler bekommen.

Ich bekomme leider:  Decryption mode 7 failed, wrong key?

Der Key. der oben steht passt scheinbar nicht.  Oder etwas anderes ist faul. Soweit ich das aber in der Beschreibung von dem Zähler lese ist pro Zähler ein individueller Key drin.

Jemand eine Idee ? Glaube nicht das ich vom Versorger den Key bekomme.
RaspberryPi 4 Bullseye,Homematic,Z-Wave,Rademacher Duofern,Signalduino,Fritz7590,ESPEasy,Tasmota,Robonect,Kameras,1-Wire,Modbus,Solar,Maranz,VU+,ulanzi tc001 mit awtrix light

MrPerfect

Hallo, ja, leider funktioniert der Aes Key nicht bei jedem.
Gruß

nccfast

Ich habe auch einen Hydrus 171A und alles soweit zum Laufen gebracht mit nanoCUL und TTY_BUFSIZE=256
Habe nun "STATE Decryption mode 7 failed, wrong key?"
Habe dann meinen Wasserversorger angeschrieben und um den AES Key gebeten.

Antwort vom Wasserversorger:
Sie besitzen einen eigenen aeskey. Jedoch ist es uns rechtlich und aus Datenschutzgründen nicht erlaubt ihnen diesen auszuhändigen, da Sie durch den aeskey vollen Zugriff auf den Zähler und die Programmierung hätten.
Mit freundlichen Grüßen


Stimmt das? Könnte man mit dem AES Key den Zähler und die Programmierung verändern? Dann würde ich den Wasserversorger auch verstehen.... leider.

kaihs

Zitat von: nccfast am 24 Juni 2020, 16:10:14
Stimmt das? Könnte man mit dem AES Key den Zähler und die Programmierung verändern? Dann würde ich den Wasserversorger auch verstehen.... leider.

Das WMBUS-Protokoll ist prinzipiell bidirektional, es können also auch Kommandos zum Zähler geschickt werden.
Ab das bei dem Wasserzähler der Fall ist weiß ich nicht und auch nicht, ob da ggf, kritische Kommandos dabei wären.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

otto


Hallo ,würde das mit einem Wasserzähler
der Firma Diehl funktionieren:
Hydrus 173
R160
2034
868
3108871

Der Wasserzähler hat anscheinend nur 868 MHz ?

müßte auch zum auslesen sein?

Gruß Otto
Fhem 1 wire Adapter mit FT232RL&DS2480B Raspberry PI HMLAN HM485LAN HM-LC-Sw4-PCB   HMW-IO-12-SW7-DR Funkhandsender
FRITZ!Powerline 546E