MBus Reader: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
|||
| (9 intermediate revisions by the same user not shown) | |||
| Line 12: | Line 12: | ||
|since=2025-01-22 | |since=2025-01-22 | ||
}} | }} | ||
= | = Introduction = | ||
= | [https://en.wikipedia.org/w/index.php?title=Meter-Bus M-Bus] or '''Meter-Bus''' is a [https://en.wikipedia.org/wiki/European_Committee_for_Standardization European standard] (EN 13757-2 physical and link layer, EN 13757-3 application layer) for the remote reading of [https://en.wikipedia.org/wiki/Water_meter water], [https://en.wikipedia.org/wiki/Gas_meter gas] or [https://en.wikipedia.org/wiki/Electricity_meter electricity] meters. | ||
= | = MBus Viewer = | ||
The MBus Viewer is | == Demo == | ||
The '''MBus Viewer''' is has a nicegui demo at https://mbus.bitplan.com | |||
== Command Line == | |||
<source lang='bash' highlight='1'> | |||
mbus-viewer -h | |||
usage: mbus-viewer [-h] [-a] [--apache APACHE] [-c] [-d] | |||
[--debugServer DEBUGSERVER] [--debugPort DEBUGPORT] | |||
[--debugRemotePath DEBUGREMOTEPATH] | |||
[--debugLocalPath DEBUGLOCALPATH] [-l] [-i INPUT] [-rol] | |||
[--host HOST] [--port PORT] [-s] [-V] [-rp ROOT_PATH] | |||
MBus message parser and JSON result viewer | |||
options: | |||
-h, --help show this help message and exit | |||
-a, --about show about info [default: False] | |||
--apache APACHE create an apache configuration file for the given | |||
domain | |||
-c, --client start client [default: False] | |||
-d, --debug show debug info [default: False] | |||
--debugServer DEBUGSERVER | |||
remote debug Server | |||
--debugPort DEBUGPORT | |||
remote debug Port | |||
--debugRemotePath DEBUGREMOTEPATH | |||
remote debug Server path mapping - remotePath - path | |||
on debug server | |||
--debugLocalPath DEBUGLOCALPATH | |||
remote debug Server path mapping - localPath - path on | |||
machine where python runs | |||
-l, --local run with local file system access [default: False] | |||
-i INPUT, --input INPUT | |||
input file | |||
-rol, --render_on_load | |||
render on load [default: False] | |||
--host HOST the host to serve / listen from [default: localhost] | |||
--port PORT the port to serve from [default: 9996] | |||
-s, --serve start webserver [default: False] | |||
-V, --version show program's version number and exit | |||
-rp ROOT_PATH, --root_path ROOT_PATH | |||
path to mbux hex files [default: | |||
/home/wf/.local/lib/python3.10/site- | |||
packages/mbusread_examples] | |||
</source> | |||
= M-Bus Reader = | |||
== Command line == | |||
<source lang='bash' highlight='1'> | |||
mbus-reader -h | |||
usage: mbus-reader [-h] [-c CONFIG] [-i IO_CONFIG] [-D DEVICE] [-m MESSAGE] | |||
[--mqtt] [--lang {en,de}] [--debug] | |||
M-Bus Reader | |||
options: | |||
-h, --help show this help message and exit | |||
-c CONFIG, --config CONFIG | |||
Config file path (default: examples/mbus_config.yaml) | |||
-i IO_CONFIG, --io_config IO_CONFIG | |||
IO config file path (default: /tmp/mbus_io.yaml) | |||
-D DEVICE, --device DEVICE | |||
Device type (default: cf_echo_ii) | |||
-m MESSAGE, --message MESSAGE | |||
Message ID to send | |||
--mqtt Enable MQTT publishing | |||
--lang {en,de} Language for messages (default: en) | |||
--debug Enable debug logging | |||
</source> | |||
== Examples configuration == | |||
MBus message examples are configurable via yaml see https://github.com/WolfgangFahl/mbusreader/blob/main/mbusread_examples/mbus_examples.yaml | |||
<source lang='yaml'> | |||
# Example definitions for mbus viewer tool | |||
# WF 2025-01-22 | |||
manufacturers: | |||
allmess: | |||
name: Allmess | |||
url: https://www.allmess.de | |||
country: Germany | |||
devices: | |||
cf_echo_ii: | |||
mid: allmess | |||
model: CF Echo II | |||
title: '' | |||
doc_url: https://www.allmess.de/fileadmin/multimedia/alle_Dateien/MA/MA_BA_12088-AC%20CF%20Echo%20II%20D%20TS1021_KL.pdf | |||
ultramaxx: | |||
model: CF UltraMaxx V | |||
mid: allmess | |||
url: https://de.itron.com/de/products/cf-ultramaxx-v | |||
doc_url: https://www.gavilar.nl/files/cf-ultramaxx-v-03-13.pdf | |||
examples: | |||
# CF Echo II | |||
cf_echo_basic: | |||
did: cf_echo_ii | |||
name: Basic Reading | |||
title: Standard M-Bus reading | |||
hex: 684d4d680800722654832277040904360000000c78265483220406493500000c14490508000b2d0000000b3b0000000a5a18060a5e89020b61883200046d0d0c2c310227c80309fd0e2209fd0f470f00008d16 | |||
cf_echo_init: | |||
did: cf_echo_ii | |||
name: init write | |||
title: CF Echo II init | |||
hex: 6803036873fea61716 | |||
#cf_echo_ini2: | |||
# did: cf_echo_ii | |||
# name: init write2 | |||
# title: CF Echo II init2 | |||
# hex: 68 06 06 68 73 fe a1 55 82 02 eb 16 | |||
cf_echo_read_data_cmd: | |||
did: cf_echo_ii | |||
name: read data cmd | |||
title: CF Echo II read data command | |||
hex: 105BFE5916 | |||
ultramaxx_message1: | |||
did: ultramaxx | |||
name: message1 | |||
title: UltraMaxx Message 1 | |||
hex: 68 03 03 68 53 fe a6 f7 16 | |||
ultramaxx_message2: | |||
did: ultramaxx | |||
name: message2 | |||
title: UltraMaxx Message 2 | |||
hex: 10 40 fe 3e 16 | |||
ultramaxx_message3: | |||
did: ultramaxx | |||
name: message3 | |||
title: UltraMaxx Message 3 | |||
hex: 68 04 04 68 53 fe 50 01 a2 16 10 5b fe 59 16 | |||
valid: false | |||
ultramaxx_message4: | |||
did: ultramaxx | |||
name: message4 | |||
title: UltraMaxx Message 4 | |||
hex: 68 04 04 68 53 fe 50 00 a1 16 10 5b fe 59 16 | |||
valid: false | |||
ultramaxx_message5: | |||
did: ultramaxx | |||
name: message5 | |||
title: UltraMaxx Message 5 | |||
hex: 68 06 06 68 53 fe a7 02 1a 19 2d 16 | |||
ultramaxx_reading1: | |||
did: ultramaxx | |||
name: reading1 | |||
title: UltraMaxx reading | |||
# hex: 68 1c 1c 68 08 00 72 81 94 36 20 92 26 17 04 58 00 00 00 0f 10 07 11 00 12 03 3b 2b 81 94 36 20 2d 16 | |||
hex: 68 1c 1c 68 08 00 72 81 94 36 20 92 26 17 04 60 00 00 00 0f 10 07 11 00 12 03 a0 01 81 94 36 20 70 16 | |||
ultramaxx_reading2: | |||
did: ultramaxx | |||
name: reading2 | |||
title: UltraMaxx reading2 | |||
hex: 68 21 21 68 08 00 72 81 94 36 20 92 26 17 04 61 00 00 00 0c 78 81 94 36 20 3b fd 75 93 00 00 3b a6 6d 00 00 00 96 16 | |||
ultramaxx_reading3: | |||
did: ultramaxx | |||
name: reading3 | |||
title: UltraMaxx reading3 | |||
hex: | | |||
68 4d 4d 68 08 00 72 81 94 36 20 92 26 17 04 | |||
62 00 00 00 0c 78 81 94 36 20 04 06 5c a0 00 | |||
00 0c 14 03 59 36 00 0b 2d 24 00 00 0b 3b 81 | |||
00 00 0a 5a 60 05 0a 5e 02 03 0b 61 81 25 00 | |||
04 6d 16 11 36 31 02 27 07 07 09 fd 0e 07 09 | |||
fd 0f 11 0f 00 00 b2 16 | |||
ultramaxx_reading4: | |||
did: ultramaxx | |||
name: reading4 | |||
title: UltraMaxx reading4 | |||
hex: | | |||
68 18 18 68 08 00 72 81 94 36 20 92 26 17 04 | |||
63 00 00 00 0f f6 ca ee 41 a0 8b ce 41 53 16 | |||
</source> | |||
= WhatLinksHere = | |||
{{WhatLinksHere}} | |||
Latest revision as of 14:32, 24 January 2025
OsProject
| OsProject | |
|---|---|
| id | mbusreader |
| state | active |
| owner | WolfgangFahl |
| title | mbusreader |
| url | https://github.com/WolfgangFahl/mbusreader |
| version | 0.0.1 |
| description | Meterbus Reader |
| date | 2025-01-22 |
| since | 2025-01-22 |
| until | |
Introduction
M-Bus or Meter-Bus is a European standard (EN 13757-2 physical and link layer, EN 13757-3 application layer) for the remote reading of water, gas or electricity meters.
MBus Viewer
Demo
The MBus Viewer is has a nicegui demo at https://mbus.bitplan.com
Command Line
mbus-viewer -h
usage: mbus-viewer [-h] [-a] [--apache APACHE] [-c] [-d]
[--debugServer DEBUGSERVER] [--debugPort DEBUGPORT]
[--debugRemotePath DEBUGREMOTEPATH]
[--debugLocalPath DEBUGLOCALPATH] [-l] [-i INPUT] [-rol]
[--host HOST] [--port PORT] [-s] [-V] [-rp ROOT_PATH]
MBus message parser and JSON result viewer
options:
-h, --help show this help message and exit
-a, --about show about info [default: False]
--apache APACHE create an apache configuration file for the given
domain
-c, --client start client [default: False]
-d, --debug show debug info [default: False]
--debugServer DEBUGSERVER
remote debug Server
--debugPort DEBUGPORT
remote debug Port
--debugRemotePath DEBUGREMOTEPATH
remote debug Server path mapping - remotePath - path
on debug server
--debugLocalPath DEBUGLOCALPATH
remote debug Server path mapping - localPath - path on
machine where python runs
-l, --local run with local file system access [default: False]
-i INPUT, --input INPUT
input file
-rol, --render_on_load
render on load [default: False]
--host HOST the host to serve / listen from [default: localhost]
--port PORT the port to serve from [default: 9996]
-s, --serve start webserver [default: False]
-V, --version show program's version number and exit
-rp ROOT_PATH, --root_path ROOT_PATH
path to mbux hex files [default:
/home/wf/.local/lib/python3.10/site-
packages/mbusread_examples]
M-Bus Reader
Command line
mbus-reader -h
usage: mbus-reader [-h] [-c CONFIG] [-i IO_CONFIG] [-D DEVICE] [-m MESSAGE]
[--mqtt] [--lang {en,de}] [--debug]
M-Bus Reader
options:
-h, --help show this help message and exit
-c CONFIG, --config CONFIG
Config file path (default: examples/mbus_config.yaml)
-i IO_CONFIG, --io_config IO_CONFIG
IO config file path (default: /tmp/mbus_io.yaml)
-D DEVICE, --device DEVICE
Device type (default: cf_echo_ii)
-m MESSAGE, --message MESSAGE
Message ID to send
--mqtt Enable MQTT publishing
--lang {en,de} Language for messages (default: en)
--debug Enable debug logging
Examples configuration
MBus message examples are configurable via yaml see https://github.com/WolfgangFahl/mbusreader/blob/main/mbusread_examples/mbus_examples.yaml
# Example definitions for mbus viewer tool
# WF 2025-01-22
manufacturers:
allmess:
name: Allmess
url: https://www.allmess.de
country: Germany
devices:
cf_echo_ii:
mid: allmess
model: CF Echo II
title: ''
doc_url: https://www.allmess.de/fileadmin/multimedia/alle_Dateien/MA/MA_BA_12088-AC%20CF%20Echo%20II%20D%20TS1021_KL.pdf
ultramaxx:
model: CF UltraMaxx V
mid: allmess
url: https://de.itron.com/de/products/cf-ultramaxx-v
doc_url: https://www.gavilar.nl/files/cf-ultramaxx-v-03-13.pdf
examples:
# CF Echo II
cf_echo_basic:
did: cf_echo_ii
name: Basic Reading
title: Standard M-Bus reading
hex: 684d4d680800722654832277040904360000000c78265483220406493500000c14490508000b2d0000000b3b0000000a5a18060a5e89020b61883200046d0d0c2c310227c80309fd0e2209fd0f470f00008d16
cf_echo_init:
did: cf_echo_ii
name: init write
title: CF Echo II init
hex: 6803036873fea61716
#cf_echo_ini2:
# did: cf_echo_ii
# name: init write2
# title: CF Echo II init2
# hex: 68 06 06 68 73 fe a1 55 82 02 eb 16
cf_echo_read_data_cmd:
did: cf_echo_ii
name: read data cmd
title: CF Echo II read data command
hex: 105BFE5916
ultramaxx_message1:
did: ultramaxx
name: message1
title: UltraMaxx Message 1
hex: 68 03 03 68 53 fe a6 f7 16
ultramaxx_message2:
did: ultramaxx
name: message2
title: UltraMaxx Message 2
hex: 10 40 fe 3e 16
ultramaxx_message3:
did: ultramaxx
name: message3
title: UltraMaxx Message 3
hex: 68 04 04 68 53 fe 50 01 a2 16 10 5b fe 59 16
valid: false
ultramaxx_message4:
did: ultramaxx
name: message4
title: UltraMaxx Message 4
hex: 68 04 04 68 53 fe 50 00 a1 16 10 5b fe 59 16
valid: false
ultramaxx_message5:
did: ultramaxx
name: message5
title: UltraMaxx Message 5
hex: 68 06 06 68 53 fe a7 02 1a 19 2d 16
ultramaxx_reading1:
did: ultramaxx
name: reading1
title: UltraMaxx reading
# hex: 68 1c 1c 68 08 00 72 81 94 36 20 92 26 17 04 58 00 00 00 0f 10 07 11 00 12 03 3b 2b 81 94 36 20 2d 16
hex: 68 1c 1c 68 08 00 72 81 94 36 20 92 26 17 04 60 00 00 00 0f 10 07 11 00 12 03 a0 01 81 94 36 20 70 16
ultramaxx_reading2:
did: ultramaxx
name: reading2
title: UltraMaxx reading2
hex: 68 21 21 68 08 00 72 81 94 36 20 92 26 17 04 61 00 00 00 0c 78 81 94 36 20 3b fd 75 93 00 00 3b a6 6d 00 00 00 96 16
ultramaxx_reading3:
did: ultramaxx
name: reading3
title: UltraMaxx reading3
hex: |
68 4d 4d 68 08 00 72 81 94 36 20 92 26 17 04
62 00 00 00 0c 78 81 94 36 20 04 06 5c a0 00
00 0c 14 03 59 36 00 0b 2d 24 00 00 0b 3b 81
00 00 0a 5a 60 05 0a 5e 02 03 0b 61 81 25 00
04 6d 16 11 36 31 02 27 07 07 09 fd 0e 07 09
fd 0f 11 0f 00 00 b2 16
ultramaxx_reading4:
did: ultramaxx
name: reading4
title: UltraMaxx reading4
hex: |
68 18 18 68 08 00 72 81 94 36 20 92 26 17 04
63 00 00 00 0f f6 ca ee 41 a0 8b ce 41 53 16