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
|
2017-08-30 12:14:18 +00:00
|
|
|
utility meter readings. You configure multiple
|
|
|
|
meters for reading by supplying triplets
|
|
|
|
on the command line.
|
|
|
|
|
|
|
|
wmbusmeters [usbdevice] [meter_name] [meter_id] [meter_ke]
|
|
|
|
|
|
|
|
If you want to listen to more than one meter, simply add more triples.
|
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
|
|
|
|
|
|
|
make HOST=arm
|
2017-08-09 10:02:42 +00:00
|
|
|
|
2017-08-30 12:14:18 +00:00
|
|
|
./build_arm/wmbusmeters /dev/ttyUSB0 MyTapWater 12345678 00112233445566778899AABBCCDDEEFF
|
2017-08-09 10:00:11 +00:00
|
|
|
|
|
|
|
make DEBUG=true
|
2017-08-09 10:02:42 +00:00
|
|
|
|
2017-08-30 12:14:18 +00:00
|
|
|
./build_debug/wmbusmeters /dev/ttyUSB0 MyTapWater 12345678 00112233445566778899AABBCCDDEEFF
|
2017-08-09 10:00:11 +00:00
|
|
|
|
|
|
|
make DEBUG=true HOST=arm
|
2017-08-09 10:02:42 +00:00
|
|
|
|
2017-08-30 12:14:18 +00:00
|
|
|
./build_arm_debug/wmbusmeters /dev/ttyUSB0 MyTapWater 12345678 00112233445566778899AABBCCDDEEFF
|
2017-08-09 10:00:11 +00:00
|
|
|
|
|
|
|
(After you insert the im871A USB stick, do:
|
2017-08-09 10:02:42 +00:00
|
|
|
|
2017-08-09 10:00:11 +00:00
|
|
|
chown me:me /dev/ttyUSB0
|
2017-08-09 10:02:42 +00:00
|
|
|
|
2017-08-09 10:00:11 +00:00
|
|
|
to avoid having to run the program as root.)
|
|
|
|
|
|
|
|
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
|
|
|
|
|
2017-08-30 18:08:02 +00:00
|
|
|
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
|
|
|
|
|
2017-08-30 18:08:02 +00:00
|
|
|
|
2017-08-09 10:00:11 +00:00
|
|
|
Code can print total water consumption! But everything else is
|
|
|
|
missing. CRC checks anyone? :-) Don't rely on these measurements
|
|
|
|
for anything really important!
|