wmbusmeters/README.md

61 wiersze
1.7 KiB
Markdown
Czysty Zwykły widok Historia

2017-08-06 17:20:59 +00:00
# wmbusmeters
2017-08-09 10:00:11 +00:00
The program receives and decodes C1 telegrams
(using the wireless mbus protocol) to acquire
utility meter readings.
2017-08-30 12:14:18 +00:00
wmbusmeters [usbdevice] { [meter_name] [meter_id] [meter_key] }*
2017-08-30 12:14:18 +00:00
If you want to listen to more than one meter, simply add more meter triplets.
Add --robot to get JSON output.
2017-08-09 10:00:11 +00:00
Builds and runs on GNU/Linux:
2017-08-09 10:02:42 +00:00
2017-08-09 10:00:11 +00:00
make
2017-08-09 10:02:42 +00:00
2017-08-30 12:14:18 +00:00
./build/wmbusmeters /dev/ttyUSB0 MyTapWater 12345678 00112233445566778899AABBCCDDEEFF
2017-08-09 10:02:42 +00:00
2017-08-30 12:14:18 +00:00
./build/wmbusmeters --verbose /dev/ttyUSB0 MyTapWater 12345678 00112233445566778899AABBCCDDEEFF
2017-08-09 10:00:11 +00:00
./build/wmbusmeters --robot /dev/ttyUSB0 MyTapWater 12345678 00112233445566778899AABBCCDDEEFF
2017-08-09 10:00:11 +00:00
make HOST=arm
2017-08-09 10:02:42 +00:00
Binary generated: ./build_arm/wmbusmeters
2017-08-09 10:00:11 +00:00
make DEBUG=true
2017-08-09 10:02:42 +00:00
Binary generated: ./build_debug/wmbusmeters
2017-08-09 10:00:11 +00:00
make DEBUG=true HOST=arm
2017-08-09 10:02:42 +00:00
Binary generated: ./build_arm_debug/wmbusmeters
2017-08-09 10:02:42 +00:00
Add yourself to the dialout group to get access to the newly plugged in im87A USB stick.
2017-08-09 10:00:11 +00:00
Currently only supports the USB stick receiver im871A
and the water meter Multical21. The source code is modular
and it should be relatively straightforward to add
more receivers (Amber anyone?) and meters.
Good documents on the wireless mbus protocol:
2017-08-09 10:02:42 +00:00
2017-08-09 10:00:11 +00:00
https://www.infineon.com/dgdl/TDA5340_AN_WMBus_v1.0.pdf
2017-08-09 10:02:42 +00:00
2017-08-09 10:00:11 +00:00
http://fastforward.ag/downloads/docu/FAST_EnergyCam-Protocol-wirelessMBUS.pdf
http://www.multical.hu/WiredMBus-water.pdf
2017-08-09 10:00:11 +00:00
The AES source code is copied from:
2017-08-09 10:02:42 +00:00
2017-08-09 10:00:11 +00:00
https://github.com/kokke/tiny-AES128-C
The following two other github projects were of great help:
2017-08-09 10:02:42 +00:00
2017-08-09 10:00:11 +00:00
https://github.com/ffcrg/ecpiww
2017-08-09 10:02:42 +00:00
2017-08-09 10:00:11 +00:00
https://github.com/tobiasrask/wmbus-client
TODO: CRC checks are still missing. If the wrong AES key
is supplied you probably get zero readings and
sometimes warnings about wrong type of frames.