Modbus: Complete Guide to RTU, TCP, and Serial Communication

Last updated on 19 May 2026

The Modbus communication protocol is a widely used standard in industrial automation. This guide explains in clear language what Modbus is, which variants exist, and how to configure it practically. You will read about Modbus RTU and Modbus TCP, registers and coils, and important settings such as RS-485, baud rate, and slave ID.

What is the Modbus Communication Protocol

Modbus is a simple, open protocol developed by Modicon (now Schneider Electric) to exchange data between electronic devices. The Modbus communication protocol operates according to a master/slave model for serial lines (RTU) and a client/server model for TCP. Devices request or provide data via coils and registers with fixed addressing.

Introduced in 1979, Modbus has since grown into one of the most widely used communication protocols in the industry, with applications in PLCs, SCADA systems, energy meters, variable frequency drives, and sensors.

Why Modbus is so popular:

  • Open standard: no licensing fees
  • Easy to implement
  • Widely supported by vendors
  • Available as a serial variant (RTU/ASCII) as well as a network variant (TCP/IP)

Architecture: Master/Slave and Client/Server

With Modbus RTU, there is one master that sends commands and read requests and multiple slaves that respond. With Modbus TCP, we speak of client/server: a client (e.g., SCADA or PLC) connects with one or more servers (devices) via TCP/IP.

Data Representation: Coils and Registers

The exchange occurs via coils (1 bit) and registers (16-bit words). Coils are typically digital outputs; discrete inputs are read-only digital inputs. Input registers contain analog measurement values; holding registers are readable and writable for setpoints and parameters.

Key Characteristics

  1. Simple and robust — low overhead, reliable in industrial environments
  2. Widely supported — open standard, by many manufacturers and devices
  3. Master-Slave (RTU) / Client-Server (TCP) — one party controls communication
  4. Standardized address structure — fixed layout for coils and registers
  5. Flexible transport — serial lines (RS-232/RS-485) and Ethernet (TCP/IP)
  6. Deterministic behavior — predictable timing thanks to master-controlled polling

Supported Devices and Applications

Application / deviceDescription
PLCsMany PLCs support Modbus RTU and/or Modbus TCP for communication with peripheral equipment.
Sensors & actuatorsSmart sensors (temperature, pressure, flow) and actuators often provide data via Modbus.
Variable frequency drives and motor startersDrives use Modbus to read or write parameters.
Measurement and energy metersEnergy and measurement meters communicate via Modbus registers.
SCADA and HMI systemsOften function as master or client to collect data from Modbus slaves.
Gateways and convertersConvert Modbus RTU to TCP or to other protocols (e.g., MQTT).

The Remote Portal from Remote is the central dashboard for managing, monitoring, and maintaining all connected installations — from one clear platform, anywhere in the world. For remote access and cloud integration, you can utilize Modbus TCP in combination with network segmentation and security measures — the Remote Portal provides full support for this.

Configuration: Modbus RTU

Modbus RTU is designed for serial communication and is suitable for simple, local networks.

Physical Connection

  1. Use RS-485 (most commonly used) or RS-232. RS-485 supports multidrop (multiple devices on one line).
  2. Ensure correct cabling and proper termination resistors to prevent reflections.

Network Parameters

  1. Set baud rate, data bits, parity and stop bits identically on all devices.
  2. Each slave receives a unique slave ID (1–247).
  3. Polling: the master periodically requests data; proper timing prevents collisions.

Configuration: Modbus TCP

Modbus TCP is Modbus over Ethernet via TCP/IP. The standard port is 502. A client (e.g., SCADA or PLC) connects to a server/device. For remote access and cloud integration, you can deploy Modbus TCP in combination with network segmentation and security measures.

For remote access and data logging, you can combine Modbus TCP with gateways and data loggers; pay careful attention to IP configuration (fixed IP or reliable DHCP reservation) and firewall rules.

Modbus Memory Model and Register Types

Modbus uses four register types with fixed logical addresses and function codes:

TypeLogical address rangeDescriptionFunctions (typical)Accessibility
Coils0xxxxDigital outputs (1 bit)01 (Read), 05/15 (Write)Read & Write
Discrete Inputs1xxxxDigital inputs (1 bit)02 (Read)Read only
Input Registers3xxxxAnalog inputs (16-bit)04 (Read)Read only
Holding Registers4xxxxAnalog values / configuration parameters03 (Read), 06/16 (Write)Read & Write

Practical Examples

In Modbus messages, you use offsets starting from 0, not the logical addresses. Examples:

  1. Holding Register 40001 → offset 0 with function code 03.
  2. Holding Register 40010 → offset 9.
  3. Read coils: FC01; write coils: FC05 (single) or FC15 (multiple).

Coils (0xxxx)

1 bit per address, represent digital outputs. Example: 00001 = lamp on/off. Read: FC01. Write: FC05/FC15.

Discrete Inputs (1xxxx)

1 bit per address, read-only digital inputs. Read: FC02. Example: 10001 = door open/closed.

Input Registers (3xxxx)

16-bit words, read-only. Used for analog measurement values (temperature, pressure). Read: FC04. Example: 30001 = temperature °C.

Holding Registers (4xxxx)

16-bit words, read and write; for setpoint values and process data. Read: FC03. Write: FC06 (single) / FC16 (multiple). Example: 40001 = temperature setpoint.

Logical Addresses vs Offsets

The logical addresses (such as 40001) are intended for documentation; in Modbus messages, only the offset is transmitted. Confusion between logical addresses and offsets is a common source of errors — always check the device documentation.

Do you know exactly which register values your installation is producing right now? With the data monitoring solutions from Remote, you can read holding registers (4xxxx), input registers (3xxxx), and coils in real-time — and visualize process data in clear dashboards.

Security and Segmentation

Modbus has no built-in security. Therefore, use network segmentation (VLANs), firewalls and VPNs to protect the protocol. For broader IT/OT issues, knowledge of cybersecurity is essential in design and commissioning.

Summary

Modbus RTU and Modbus TCP together form a robust and widely applicable standard for industrial communication. RTU is ideal for serial connections; TCP is suitable for Ethernet. The memory model with coils and registers is fixed, with holding registers being the most flexible. Understanding of offsets, function codes (e.g., FC01, FC03, FC04) and serial settings (baud rate, parity, stop bits) is essential for correct implementation.

Frequently Asked Questions (FAQ) about Modbus

Modbus is an open communication protocol developed by Modicon (now Schneider Electric) for data exchange between electronic devices in industrial environments. It operates using a master/slave model (RTU) or a client/server model (TCP).
A Modbus connection is the physical link between a master and one or more slaves. For Modbus RTU, this is typically an RS-485 cable (2-wire, shielded). For Modbus TCP, this is a standard Ethernet (RJ45) connection.
Modbus works on a request-response basis: the master sends a request (e.g., “read register 40001 from slave 3”), the slave processes this and sends back a response. Communication always takes place via coils or registers with fixed addresses.
Modbus RTU is the serial variant of Modbus. RTU stands for Remote Terminal Unit. It operates via RS-485 or RS-232 and is suitable for local, short-distance communication. Data is transferred in binary (compact) format with a CRC checksum for error detection.
Modbus TCP is the Ethernet variant of Modbus. It uses TCP/IP as the transport layer and operates on the standard port 502. A SCADA system or PLC (client) connects to a device (server) over the network.
The main difference is the communication medium: RTU works via serial RS-485 cables, while TCP works via Ethernet. RTU is ideal for serial connections in local installations; TCP is suitable for Ethernet and enables remote access and cloud integration.
Modbus over Ethernet is another name for Modbus TCP. The Modbus protocol is encapsulated in TCP/IP frames and sent over a standard Ethernet network on port 502.
A holding register is a 16-bit memory location (address range 4xxxx) that can be both read and written. It is used for configuration values (setpoints) and process parameters. Reading is done via FC03, writing via FC06 (single) or FC16 (multiple).
The slave ID is the unique address of a Modbus device on the serial bus, a number from 1 to 247. The master uses this address to communicate with a specific device. In Modbus TCP, this is called the Unit Identifier.
In Modbus, logical addresses (e.g., 40001) are used in documentation, but the actual Modbus message transmits the offset (40001 → offset 0). Confusion over this is a common source of errors. Always check the device documentation.

Yes, via Modbus TCP you can connect to devices remotely, provided this is done via a secure connection (VPN). Directly exposing port 502 to the internet is unsafe. Remote offers industrial remote access solutions for this purpose.