Configuring heating and water meters (MBus)

Nicolas Vodoz Updated by Nicolas Vodoz

1. Reading a Meter with its Secondary Address

Unlike electricity meters and other Modbus devices for which the gateway reads one specific data register at a time, MBus meters systematically return all their registers in a single packet called a telegram.

This telegram must then be parsed to keep only the values we are interested in, namely the meter index (the energy or volume consumed register visible on the meter dial).

The secondary address corresponds to the reversed serial number in pairs, followed by 8 consecutive "F" characters.

On the heating meter below, the serial number is 94158192, leading to the secondary address 92811594FFFFFFFF

To obtain the telegram, read the meter via the Configuration Gateway webserver under Meters > MBus > Read MBus Meter

By default, the baudrate is 2400.

If the meter is correctly connected to the Gateway, the raw telegram is received after a few seconds.

Telegram Analysis and Register Retrieval

On the first line in blue: the meter's serial number

In red, the meter index with desc:ENERGY and function:INST_VAL, value in Wh.

In yellow, other useful registers for heating meters.

In the example above, the meter index (in red) has the following DIB and VIB values:

DIB: 04

VIB: 06

2. Configure the Meter on the Online Portal

Configure the meter in the online portal to insert its secondary address and register positions.

Log in to the Climkit online portal (app.climkit.io), select the corresponding site. Under EQUIPMENT > Meters > Heat (or Cold Water or Hot Water), create the meters one by one by clicking the "+".

Edit the meter with the following settings:

  • Name: name according to the type, serial number, and assignment. For example: "CH - 94158192 - Apartment 203"
  • Address: leave empty
  • Gateway: Select the gateway to which the meters are connected. See under EQUIPMENT > Communication.
  • Model: generic_mbus
  • Protocol: mbus
  • Baudrate: 2400
  • Mode: consumption

Under Additional settings, insert the "key-value" pairs:

secondary_ad for the secondary address: 92811594FFFFFFFF

reg for the registers: [{'unit': 'heat_energy_kwh', 'factor': 0.001, 'dib': '04', 'vib': '06'}]

For a cooling meter, use cold_energy_kwh and for a water meter vol_m3.

For a hot water meter, use hot_water.

For a cold water meter, use cold_water.

For the heating meter, here are the complete registers in yellow in the above telegram:

[
{'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. Verifying Configuration and Reading

Once the meter is created and saved on the portal and associated with the correct gateway, it appears on the gateway under Meters > Configured Meters.

Click READ to test the reading and the register values.

The registers can then be reused for creating meters of the same model on the site.

How Did We Do?

Contact