Learning Objectives
By the end of this article, you will be able to:
-
Understand what Modbus is and why it remains one of the world's most common industrial communication protocols.
-
Explain the history and evolution of Modbus from 1979 to today.
-
Understand the master-slave (client-server) communication model.
-
Identify the four Modbus data types: Coils, Discrete Inputs, Input Registers and Holding Registers.
-
Recognise the most commonly used Modbus function codes.
-
Explain the differences between Modbus RTU, Modbus ASCII and Modbus TCP.
-
Understand how Modbus is used within Building Management Systems and industrial automation.
-
Avoid common Modbus commissioning and troubleshooting mistakes.
CPD Value: 1 CPD Hour
Category: Industrial Communications / Building Management Systems (BMS)
Knowledge Level: Beginner
Estimated Reading Time: 15-20 Minutes
What is Modbus?
Modbus is an open communication protocol originally developed by Modicon (now Schneider Electric) in 1979 for programmable logic controllers (PLCs).
Its purpose was simple:
Allow industrial devices from different manufacturers to exchange data using a common communications method.
Today, Modbus is one of the most widely supported industrial protocols in the world and can be found in:
-
Building Management Systems (BMS)
-
HVAC equipment
-
Power meters
-
Variable Speed Drives (VSDs/VFDs)
-
Energy monitoring systems
-
Water treatment plants
-
Manufacturing facilities
-
Renewable energy systems
-
Lighting control systems
A simple way to think of Modbus is:
Modbus does for industrial devices what a common language does for people.
Without it, every manufacturer would need a different translator to communicate with every other manufacturer.
Why Was Modbus Created?
Before open protocols became common, manufacturers created their own proprietary communications systems.
This created several problems:
-
Limited interoperability
-
Vendor lock-in
-
Complex integrations
-
Higher commissioning costs
-
Difficult maintenance
As industrial systems grew larger and more interconnected, the need for an open communication standard became apparent.
Modbus solved this problem by providing:
Open Standard
Anyone can implement Modbus without licensing fees.
Simple Structure
The protocol is straightforward to understand and troubleshoot.
Vendor Independence
Equipment from different manufacturers can communicate using the same protocol.
Long-Term Support
Modbus devices installed decades ago are often still operational today.
Why Learn Modbus in 2026?
Although Modbus is almost five decades old, it remains highly relevant.
Reasons include:
Legacy Infrastructure
Thousands of commercial and industrial facilities still rely on Modbus-connected equipment.
Universal Support
Almost every industrial automation manufacturer offers Modbus support.
Integration Gateway
Many modern devices support BACnet, MQTT, OPC UA and Modbus simultaneously.
Career Development
A strong understanding of Modbus remains a core skill for:
-
BMS Engineers
-
Controls Engineers
-
Commissioning Engineers
-
Electrical Engineers
-
Systems Integrators
-
Energy Management Specialists
A Brief History of Modbus
1979 - Original Modbus
Modicon released the first Modbus specification for PLC communications using serial links.
1980s - Modbus RTU
Modbus RTU introduced efficient binary communication and became the dominant serial implementation.
1990s - RS-485 Expansion
RS-485 wiring became the preferred physical layer because it allowed multiple devices to share one network.
1999 - Modbus TCP
Modbus was adapted to run over Ethernet networks using TCP/IP.
Communication moved from serial networks to standard IT infrastructure.
Today
Modbus continues to be supported by:
-
Building automation systems
-
SCADA platforms
-
Energy management software
-
Cloud gateways
-
IoT platforms
-
Edge computing systems
Understanding the Master-Slave Architecture
Traditional Modbus communication uses a Master-Slave architecture.
In modern terminology, this is often referred to as Client-Server.
The Master (Client)
The master controls communication.
It:
-
Initiates requests
-
Reads values
-
Writes values
-
Manages polling schedules
-
Handles errors and retries
Examples:
-
Niagara Supervisor
-
BMS Head End
-
SCADA Workstation
-
PLC
-
Industrial PC
The Slave (Server)
The slave waits for instructions.
It:
-
Responds to requests
-
Returns data
-
Does not initiate communication
-
Has a unique device address
Examples:
-
Energy Meters
-
VFDs
-
Sensors
-
Actuators
-
Chiller Controllers
-
Power Monitoring Equipment
Real-World Example
Imagine a hospital energy monitoring system:
-
A Modbus energy meter measures electricity consumption.
-
A Niagara supervisor polls the meter every 10 seconds.
-
The meter responds with power readings.
-
Niagara logs and displays the information.
The meter never sends data first.
It only replies when asked.
The Four Modbus Data Types
Understanding Modbus register types is one of the most important concepts for beginners.
1. Coils
Coils represent digital outputs.
Characteristics
-
Single-bit value
-
Read/Write
-
ON or OFF
Examples:
-
Start Motor
-
Enable Pump
-
Alarm Reset
-
Open Valve
2. Discrete Inputs
Discrete Inputs represent digital input states.
Characteristics
-
Single-bit value
-
Read Only
Examples:
-
Door Contact
-
Flow Switch
-
Smoke Alarm Input
-
Fan Status
3. Input Registers
Input Registers store analogue measurements.
Characteristics
-
16-bit value
-
Read Only
Examples:
-
Temperature
-
Pressure
-
Humidity
-
Flow Rate
4. Holding Registers
Holding Registers are the most commonly used Modbus data type.
Characteristics
-
16-bit value
-
Read/Write
Examples:
-
Temperature Setpoint
-
Fan Speed
-
Time Schedules
-
Control Parameters
Understanding Register Addresses
New engineers often become confused by register numbering.
A common example:
|
Register Type |
Legacy Number |
|---|---|
|
Coil |
00001 |
|
Discrete Input |
10001 |
|
Input Register |
30001 |
|
Holding Register |
40001 |
However, most modern systems use zero-based addressing.
Therefore:
-
40001 often becomes address 0
-
40002 becomes address 1
-
40003 becomes address 2
Always check manufacturer documentation.
This is one of the most common commissioning mistakes.
Modbus Function Codes
The function code tells a device what action to perform.
The most common function codes are:
|
Function Code |
Description |
|---|---|
|
FC01 |
Read Coils |
|
FC02 |
Read Discrete Inputs |
|
FC03 |
Read Holding Registers |
|
FC04 |
Read Input Registers |
|
FC05 |
Write Single Coil |
|
FC06 |
Write Single Register |
|
FC15 |
Write Multiple Coils |
|
FC16 |
Write Multiple Registers |
Modbus RTU, ASCII and TCP
Modbus can operate in several different formats.
Modbus RTU
The most common serial implementation.
Uses:
-
RS-485
-
Binary encoding
-
CRC error checking
Advantages:
-
Fast
-
Efficient
-
Widely supported
Common in:
-
Energy meters
-
Drives
-
Controller networks
Modbus ASCII
An older implementation that represents data using ASCII characters.
Advantages:
-
Human-readable
Disadvantages:
-
Less efficient
-
Rarely used today
Modbus TCP
Modbus transported over Ethernet.
Uses:
-
Standard IP networks
-
TCP Port 502
Advantages:
-
Faster communications
-
Uses existing network infrastructure
-
Easier integration with modern systems
Common in:
-
BMS systems
-
SCADA platforms
-
PLC networks
-
Energy management systems
Modbus in Building Management Systems
Many engineers associate Modbus with industrial automation, but it is equally important within modern BMS applications.
Typical Modbus devices connected to a BMS include:
-
Electrical power meters
-
Water meters
-
Heat meters
-
Chillers
-
Boilers
-
Variable speed drives
-
Renewable energy systems
-
Battery storage systems
-
Air quality sensors
In many projects:
Modbus handles equipment integration while BACnet handles the wider building automation network.
This is why most Niagara engineers encounter both protocols regularly.
A Real-World Example
Consider a commercial office building:
-
A Modbus power meter measures energy consumption.
-
The meter stores the reading in holding registers.
-
A Niagara controller polls the meter using FC03.
-
The value is displayed on an Energy Dashboard.
-
Historical trends are stored for reporting.
This simple process is repeated thousands of times every day in modern smart buildings.
Common Modbus Mistakes
Wrong Register Offset
Manufacturers often use different addressing conventions.
Always confirm whether the device uses:
-
40001 addressing
-
Zero-based addressing
Wrong Function Code
Reading a Holding Register with FC04 instead of FC03 is a very common mistake.
Serial Setting Mismatch
Check:
-
Baud rate
-
Parity
-
Stop bits
-
Device address
Mismatch equals no communication.
RS-485 Wiring Errors
Verify:
-
A to A
-
B to B
-
Correct termination
Many communication problems are simply wiring issues.
Endianness Problems
Some devices store 32-bit values differently.
Examples include:
-
IEEE Floating Point values
-
Energy totalisers
-
Power values
Always check the manufacturer's Modbus register map.
Modbus vs BACnet
Both protocols are widely used in building automation.
|
Feature |
Modbus |
BACnet |
|---|---|---|
|
First Released |
1979 |
1995 |
|
Primary Use |
Industrial & Metering |
Building Automation |
|
Data Model |
Registers |
Objects & Properties |
|
Simplicity |
Very Simple |
More Flexible |
|
Interoperability |
Good |
Excellent |
|
Common in BMS |
Yes |
Yes |
A simple comparison:
Modbus works like reading values from numbered filing cabinets.
BACnet works like accessing structured information in a database.
Both have important roles in modern buildings.
Why Engineers Still Like Modbus
Simplicity
Easy to learn and troubleshoot.
Reliability
Proven over decades of operation.
Vendor Support
Supported by virtually every industrial manufacturer.
Low Cost
Simple hardware requirements.
Longevity
Knowledge learned today will remain useful for many years.
Key Takeaways
✅ Modbus was developed by Modicon in 1979.
✅ It remains one of the most widely used industrial communication protocols.
✅ Modbus communication is based on a Master-Slave (Client-Server) architecture.
✅ The four Modbus data types are Coils, Discrete Inputs, Input Registers and Holding Registers.
✅ Function codes determine what operation will be performed.
✅ Modbus RTU uses RS-485 serial communications.
✅ Modbus TCP uses Ethernet networks and TCP Port 502.
✅ Modbus is widely used throughout BMS, SCADA and industrial automation systems.
✅ Understanding register addressing is essential for successful commissioning.
✅ Modbus remains a valuable foundational skill for any controls or BMS engineer.
CPD Assessment Questions
-
What year was Modbus first introduced?
-
What is the difference between a Coil and a Holding Register?
-
Which Modbus function code is used to read Holding Registers?
-
What transport medium is typically used for Modbus RTU?
-
What TCP port does Modbus TCP use?
-
Why is register addressing a common cause of integration issues?
-
Give three examples of equipment commonly integrated using Modbus.
-
What is the difference between Master-Slave and Client-Server terminology?
CPD Value: 1 Hour Continuing Professional Development (CPD)
Forest Rock Technical Note
For BMS and integration engineers, Modbus is often the first protocol encountered outside a manufacturer's proprietary ecosystem. A solid understanding of Modbus communications, register maps and troubleshooting techniques provides an excellent foundation for progressing into BACnet, OPC UA, MQTT, Niagara Framework integrations and wider smart building technologies.
If you need more help:
Then why not contact our sales or support team.
sales@forestrock.co.uk or support@forestrock.co.uk
Learn | Integrate | Innovate
Welcome to the Forest Rock Learning Academy.
Real Knowledge. Real Engineers. Real Solutions.