Email Us

Home > Meter-BUS usage and checking

Meter-Bus protocol


The Meter-Bus(shorted as M-BUS) protocol is a German system created standard protocol for reading of counter devices like Heating or Electrical energy counters. It has been evolved to also carry messages to and from heating controls, alarm systems and lighting systems.M-Bus is normalized as EN 1434-3. Many counter manufacturers have implemented the M-Bus protocol in their products. The M-Bus interface may be optional and must be ordered separately. The physical layer supports the data transmission as well as the power supply over a two wire cable. The data exchange follows a Master-Slave structure where the PCD is master while all counters are slaves.


The M-Bus definition focuses on the physical properties of the cable connecting meters to a "Master" node. The connecting cable is telephone wire and requires two lines. The wire transmits data but also carries power to the meters. Repeaters are placed every 350 meters along the wire.

When you operate M-BUS connection, and if you are unsuccessful in connecting to a meter there are a few things to cross check as below:


1. General Addressing

According to the M-Bus standard new meters should be delivered with a primary address of 0. If many meters are connected to the M-Bus network at the same time with a 0 address none of the meters will connect through a primary address. One way to set new primary addresses is to use secondary addresses this is if the meter can communicate with secondary addressing. However, some meters don't support secondary addressing and if that is the case specific software from the meter supplier must be used. If the meter supports secondary addressing and address changes via the M-Bus protocol it is possible to remotely change the address. If this is not the case you more than likely have to disconnect the meters one by one from the M-Bus loop and connect the meter to an external M-Bus master to make the address change.

2. Primary Addressing

• The primary addressing should always be within the 1-250 range. The meters are normally delivered with 0 as primary address; however this can be tested by communicating against a 0 primary address

• If the meter answers to a 0 primary address it is important to change it to a new primary address within the 1- 250 standard range. This means that it will be possible to connect another meter to the network, which can be remotely set via a 0 primary address.

• If you only have one meter connected it is possible to use a 254 primary address to read the meter’s true primary- and secondary address. All types of meters should answer to a 254 primary address. If more than one meter is connected to the loop a collision will occur due to the fact that all the meters will answer simultaneously.

• When more than one meter is connected to the network it is important to make sure that multiple meters are not connected to the same address. If that is the case none of the meters will be connectable. • Some meters such as ABB Odin for example does not support complete primary addressing, but only a 0 address.

3. Secondary Addressing

• If the meters support secondary addressing it is possible to search for meters even though all the meters have the same primary address via for example PiiGAB’s M-Bus Wizard. It is possible to change the primary address by using the meter’s secondary address.

• Some meters such as the older Kamstrup meters do not support secondary addressing

4. Baud Rate

• When changing the baud rate it is important to read the meter’s information within a few minutes, if not the meter will, due to the M-Bus standard, return to the original baud rate.

• If you are using a baud rate of 300 it is necessary to control that the time delay is enough.

• In a case where you cannot find the meter on the M-Bus net try to change the baud rate. The baud rates most commonly used are: 300, 2400 and sometimes 9600 baud, where the 2400 baud rate is the most common. Some meters are pre programmed to 300 baud at delivery, change and try them out, however be aware of the time delay if you only reach contact when using SND_NKE.

• Most meters allow you to change the baud rate over the M-Bus net by using PiiGAB’s M-Bus Wizard.

5. Connecting

• One prerequist is of course that the meter has a M-Bus port and/or a M-Bus card installed. Some meters have their own configuration connection that does not support M-Bus but can easily be mixed up. One example is the Mini-Bus, which cannot be sued for standard communication.

• Make sure that the M-Bus network is not connected to a pulse entrance on the meter by mistake.

• If you cannot establish contact with the meter although multiple addresses and baud rates have been tested there is more than likely an interruption on the M-Bus network or there is an incorrect connection to the meter. * A simple way to test the M-Bus network is by measuring the voltage on the M-Bus network itself. The voltage should be in a range between 30 and 40V depending on the type of M-Bus master.

6. Single/Multi telegram

• If the meter is a single telegram meter a SND_NKE is not necessary. However, if you have a multi telegram meter it is necessary to set the meter’s telegram counter to zero prior to reading the first telegram. This is to make sure that the reading starts at the first telegram, and it is normally enough to send a SND_NKE. In some cases it is necessary to send an APP_RESET and in that case in combination with a sub code.

7. Time Delay

• An M-Bus telegram is at its biggest 261 byte, which translates to 261*11 bits (including start, stop and parity bits) i.e. 2800 bits in the response telegram. Add to the question and the standby time before the answer is delivered. If the telegram has a size of 300 baud the time delay should be 10 seconds at a minimum. A normal timeout for a 2400 baud rate is 2-3 seconds. If the baud rate is changed from 2400 to 300 it could mean that the baud rates are too insufficiently connected


Although meters on an M-Bus system are connected to a cable, the designers of M-Bus stress that it's not a network, and so the definition doesn't cover all the traditional functions of network protocols. The meter reading device doesn't need to be attached directly to the meter; however, it must be a portable device, carried somewhere in the vicinity of the meter because the system doesn't allow transmission of reading to a remote location, like a utility company's head office.


The M-Bus standard employs other protocols to interpret signals into meaningful data. For the method of converting meaningful data into bits (Data Link functions), M-Bus uses a subset of the IEC 870-5 international standard, which defines methods for telecontrol equipment and its usage.