How does it work?
M-Bus is a bus system used for the remote reading of gas, water, heat, electricity, etc. It also supports various sensors and actuators. This is a cost-optimized bus for the transfer of energy consumption data since it is made for communication on only two wires. M-Bus can be used in the industry, but also, it’s convenient to be used in private households. By the standard, M-Bus master can read up to 250 slave devices. They can be meters, water, electrical, or gas meters. You can also use M-bus in applications like alarm systems, flexible illumination installations, heating control, etc. It can monitor different consumption meters, and it can monitor any leakage.
One of the biggest advantages of M-Bus are:
- All data reading is accomplished remotely.
- It is a very simple protocol – it uses only two wires, and it uses power supply from the users which are connected to the wire.
- Reading errors are minimal. Also, reading is very fast. Further processing is very easy since the received data is presented in a machine readable form.
- There are no special cables – you can use a telephone cable. With that one cable, you can attach all the meters in the housing with all the meters individually addressable. This way you can have control over each consumption meter while using only one connection cable.
M-Bus Slave Click uses the TSS721A, a single chip transceiver developed for Meter-Bus standard (EN1434-3) applications. The connection to the bus is polarity independent and serves as a slave node in the system. M-Bus Slave Click has full galvanic isolation with optocouplers to improve the reliability of the whole circuit. The circuit is supplied by the master via the bus. The benefit of the TSS721A in M-Bus slaves is the reduction of the number of components needed, and therefore the cost of slaves. Apart from the transmission and reception of data by the M-Bus specification, this IC also provides translation from and to the operating voltage of the microprocessor to which it is connected, to be able to communicate with it. The communication can take place at baudrates from 300 to 9600 Baud. Additional features include integrated protection against reversed polarity, a constant 3.3V power supply for the microprocessor, and the prompt indication of failure of the bus voltage.
Specifications
Type
RS232
Applications
Remote sensor reading, remote control over M-Bus
On-board modules
M-Bus Slave Click uses the TSS721A IC, a single chip transceiver developed for Meter-Bus standard, from Texas Instruments
Key Features
Galvanically isolated, Slave node
Interface
UART
Feature
No ClickID
Compatibility
mikroBUS™
Click board size
M (42.9 x 25.4 mm)
Input Voltage
3.3V
Pinout diagram
This table shows how the pinout on M-Bus Slave Click corresponds to the pinout on the mikroBUS™ socket (the latter shown in the two middle columns).
Onboard settings and indicators
Label | Name | Default | Description |
---|---|---|---|
LD1 | PWR | – | Power LED Indicator |
M-Bus Slave Click electrical specifications
Description | Min | Typ | Max | Unit |
---|---|---|---|---|
Supply Voltage | -0.3 | 3.3 | 3.5 | V |
M-Bus Voltage Level | -50 | – | 50 | V |
Operating Temperature Range | -55 | – | 85 | °C |
Software Support
We provide a library for the M-Bus Slave Click as well as a demo application (example), developed using MIKROE compilers. The demo can run on all the main MIKROE development boards.
Package can be downloaded/installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on MIKROE github account.
Library Description
This library contains API for M-Bus Slave Click driver.
Key functions
-
Generic write function.
-
Generic read function.
Example Description
This example reads and processes data from M-Bus Slave clicks.
void application_task ( void )
{
#ifdef DEMO_APP_RECEIVER
mbusslave_process( );
#endif
#ifdef DEMO_APP_TRANSMITTER
mbusslave_generic_write( &mbusslave, TEXT_TO_SEND, strlen( TEXT_TO_SEND ) );
log_info( &logger, "---- Data sent ----" );
Delay_ms ( 1000 );
Delay_ms ( 1000 );
#endif
}
The full application code, and ready to use projects can be installed directly from NECTO Studio Package Manager (recommended), downloaded from our LibStock™ or found on MIKROE github account.
Other MIKROE Libraries used in the example:
- MikroSDK.Board
- MikroSDK.Log
- Click.MBusSlave
Additional notes and informations
Depending on the development board you are using, you may need USB UART click, USB UART 2 Click or RS232 Click to connect to your PC, for development systems with no UART to USB interface available on the board. UART terminal is available in all MIKROE compilers.
mikroSDK
This Click board™ is supported with mikroSDK – MIKROE Software Development Kit. To ensure proper operation of mikroSDK compliant Click board™ demo applications, mikroSDK should be downloaded from the LibStock and installed for the compiler you are using.
For more information about mikroSDK, visit the official page.