Configuring heating and water meters (MBus)
Updated by Nicolas
1. Reading a meter with its secondary address
Unlike meters and other Modbus devices for which the gateway reads a specific data register at a time, MBus meters systematically send back all their registers in a single packet called a telegram.
We must then parse this telegram to keep only the values that interest us, namely the meter index (register of energy or volume consumed visible on the meter dial).
The secondary address corresponds to the serial number reversed in pairs followed by 8 consecutive “F” characters.
On the heating meter below the serial number is 94158192
which secondary address 92811594FFFFFFFF
To obtain the telegram, read the meter via the Gateway configuration web server under Meters > MBus > Read MBus Meter
By default the baudrate is 2400
.
If the meter is correctly connected to the Gateway, we receive the raw telegram after a few seconds.
Analysis of the telegram and recovery of registers
On the first line in blue: the serial number of the meter
In red, the meter index with the desc:ENERGY
and function:INST_VAL
, value in Wh.
In yellow, other useful registers for heating meters.
In the example above, the counter index (in red) has the following DIB and VIB values:
DIB: 04
VIB: 06
2. Configure the meter on the online portal
We then configure the meter in the online portal to insert its secondary address and the position of the registers.
Connect to the Climkit online portal ( app.climkit.io ), select the corresponding site. Under Counters > Heat (or Cold Water or Hot Water), create the counters one by one by clicking on the "+".
Edit the counter with the following parameters:
Nom
: name according to type, serial number and attribution. For example: "CH - 94158192 - Apartment 203"Adresse
: leave blankGateway
: Select the gateway to which the meters are connected. See under Configuration > Hardware .Modèle
:generic_mbus
Protocole
:mbus
Baudrate
:2400
Mode
: consumption
Under additional parameters, we insert the “key-value” pairs:
secondary_ad
for secondary address: 92811594FFFFFFFF
reg
for registers: [{'unit': 'heat_energy_kwh', 'factor': 0.001, 'dib': '04', 'vib': '06'}]
For a cold meter we use cold_energy_kwh
and for a water meter vol_m3.
For the heating meter, here are the complete registers in yellow in the telegram above:
[
{'unit': 'heat_energy_kwh', 'factor': 0.001, 'dib': '04', 'vib': '06'},
{'unit': 'vol_m3', 'dib': '04', 'vib': '13'},
{'unit': 'power_kw', 'dib': '04', 'vib': '2B'},
{'unit': 'vol_flow_m3_h', 'dib': '04', 'vib': '3B'},
{'unit': 'flow_temp', 'dib': '02', 'vib': '5B'},
{'unit': 'return_temp', 'dib': '02', 'vib': '5F'}
{'unit': 'diff_temp', 'dib': '02', 'vib': '61'}
]
3. Checking configuration and playback
Once the meter is created and registered on the portal and associated with the correct gateway, it appears on the gateway under Meters > Configured Meters .
Click on READ
to test the reading and value of the registers.
The registers can then be used to create counters of the same model on the site.