Modbus RTU Data Collection Guide
1. Protocol Overview
- Protocol Description: Modbus RTU is a standard industrial automation protocol that transmits binary data over serial links (e.g., RS-232 or RS-485).
- Application Scenarios: Widely used for devices that support serial communication, such as VFDs, smart meters, temperature controllers, and various PLCs.
- E2C Trinity Support: E2C Trinity acts as a Master to connect and read data from slave devices via the gateway's serial port.
2. Prerequisites
Before starting the configuration, ensure the following preparations are complete:
3. Configuration Steps
Follow these steps within the E2C Trinity Web interface.
Step 1: Create Device
- Log into the gateway management page. Navigate to [Data Acquisition] to enter the E2C Trinity configuration page.


- Click the "Create Device"button and fill in the connection information in the pop-up window.

| Parameter |
Description |
Example |
| Name |
Name of the device for identification. |
Advantech-IO-01 |
| Protocol |
Select "Modbus RTU". |
Modbus RTU |
| Connection Channel |
Select the corresponding physical serial port (e.g., Serial 1 or COM1). |
COM1 |
| Slave ID |
The Slave Address of the device (Range: 1-247). |
1 |
| Poll Interval |
Frequency of data acquisition (Unit: Seconds). |
10 |
| High-speed DAQ Config |
Enable for millisecond-level acquisition. Note: Groups are auto-generated and tags cannot be modified after publishing. |
Enabled |
| High-speed Poll Interval |
Options: 50ms, 100ms, 200ms, 500ms. |
100ms |
| Package Quantity |
Number of polls before reporting (Supports 10, 20, 30). |
10 |
| Comm. Interval |
Minimum interval between two communication requests (0-1000ms). |
10 |
| Batch Read |
Recommended to enable for improved efficiency. |
Enabled |
| Max Batch Size |
Max registers per request (Range: 2-125). |
64 |
| Byte Order |
Arrangement of data bytes (e.g., ABCD, BADC). Global default for this device. |
ABCD |
| Serial Parameters |
Displays Baud Rate, Data Bit, etc., based on the selected channel for verification. |
- |
- Click "Save" to complete the device creation.
- Select the newly created device from the device list on the left.
- Click "Add" to create a single data acquisition Tag. Fill in the tag information.

| Parameter |
Description |
Example |
| Name |
Unique identifier for the tag used in data reports. |
Inlet_Pressure |
| Acquisition Type |
Choose "High Performance" (if high-speed is enabled) or "Normal". |
Normal |
| Tag Type |
Device Tag (PLC data) or Virtual Tag (internal calculation). |
Device Tag |
| Function Code |
Select based on register type (e.g., 03 Holding Register). |
03 |
| Address |
Decimal Modbus address (e.g., 40001 corresponds to Address 1). |
1 |
| Data Type |
Must match the device (e.g., short, float). |
short (int16) |
| Invert |
Bool only: Flips the 0/1 status if enabled. |
Off |
| Decimal Places |
Float/Double only: Number of decimal points to display. |
2 |
| Encoding |
String only: Supports ASCII, UTF8, etc. |
UTF8 |
| Length |
String only: Defines the string length to read. |
10 |
| Access Right |
Read Only, Read/Write, or Restricted by FC. |
Read Only |
| Unit |
Physical unit (e.g., Mpa, ℃, Hz). |
Mpa |
- Repeat for all tags. Once finished, click "Publish" in the top right corner to apply the configuration.
4. Verification & Troubleshooting
Verification
- Check the device list to ensure the status is Online and tags are successfully collected.A green icon indicates success, and a red icon indicates failure.

- View the Latest Value column to verify data accuracy.

- Test Writing: Click the edit icon in the "Latest Value" column, modify the value, and verify if the PLC accepts the change.

Common Troubleshooting
Problem: Device fails to connect for a long time?
- Check Physical Link: Ensure the gateway’s serial port (RS-485/RS-232) is securely wired to the device, and A+ / B- are not reversed.
- Verify Serial Parameters: Confirm that the Baud Rate, Data Bit, Parity, and Stop Bit configured in the gateway match the slave device exactly.
- Slave ID Confirmation: Ensure the "Slave ID" in the settings matches the device's actual hardware DIP switch or software ID.
- Link Conflict: Check if multiple slave devices on the same RS-485 bus have conflicting Slave IDs.
Problem: Device is Online, but tag values are null or incorrect?
- Verify Tag Parameters: Re-check the Function Code, Register Address, and Data Type against the device’s point table.
- Byte Order Issues: If numeric values (like Float) are extremely large or garbled, try switching the "Byte Order" (e.g., from ABCD to CDAB or BADC) in the device settings.
- Address Offset: Some devices have a ±1 address offset (e.g., PLC address 40001 might correspond to protocol address 0 or 1). Try adjusting the address slightly.
Problem: Data write failed?
- Access Rights: Ensure the tag's "Access Right" is set to "Read/Write" or "Restricted by FC".
- FC Support: Confirm the selected Function Code supports write operations (e.g., some Holding Registers are read-only on specific devices).
- Write Protection: Check if the target device has a physical hardware lock or software-level write protection enabled.
Where to find logs?
- Check the Debug Logs or System Logs in the management interface for specific error codes.


5. Appendix
Data Type Mapping
When configuring tags in E2C Trinity, use the following mapping:
| E2C Trinity Data Type |
Length / Sign |
Device/PLC Type |
Typical Address |
Notes & Precautions |
| bool |
1 bit |
BOOL / Coil |
00001 / 10001 |
Coils are R/W; Discrete Inputs are Read-only. Supports Invert. |
| byte |
8 bit Unsigned |
BYTE (USInt) |
- |
Pay attention to high/low byte mapping. |
| ushort (uint16) |
16 bit Unsigned |
WORD (UInt) |
40001 / 30001 |
16-bit aligned; Range 0–65535. |
| short (int16) |
16 bit Signed |
INT |
40002 / 30002 |
Range -32,768 to 32,767. |
| uint (uint32) |
32 bit Unsigned |
DWORD (UDInt) |
40003–40004 |
Requires 2 registers; Range 0–4,294,967,295. |
| int (int32) |
32 bit Signed |
DINT |
40005–40006 |
Range -2,147,483,648 to 2,147,483,647. |
| ulong (uint64) |
64 bit Unsigned |
- |
40006–40009 |
Occupies 4 consecutive registers. |
| long (int64) |
64 bit Signed |
LINT |
40010–40013 |
Occupies 4 consecutive registers. |
| float (float32) |
32 bit IEEE |
REAL |
40014–40015 |
May require Byte Order adjustment; supports Decimal Places. |
| double (double64) |
64 bit IEEE |
LREAL |
40015–40018 |
High variance in byte order across devices. |
| string |
1...n Bytes |
STRING[n] |
From 40020 |
Stored by encoding; verify Encoding and Length. |
Related Articles
Inovance Serial over TCP Data Collection Guide
1. Protocol Overview Protocol Description: "Serial over TCP" is a communication method that transmits serial data (such as Modbus RTU) over a TCP/IP network. It allows devices that typically use serial communication (RS232/RS485) to communicate with ...
Robustel E2C Trinity Modbus Protocol (Southbound) User Guide
Robustel E2C Trinity Modbus Protocol (Southbound) User Guide V1.1 Document Version: V1.1 Gateways & Firmware Requirement: Software E2C Factory E2C Field E2C Facility Gateways supporting EG3120 EG5120 EG5200 LG3120 LG5120 Firmware Requirement(RobustOS ...
Robustel E2C Trinity Modbus Protocol (Southbound) User Guide
Robustel E2C Trinity Modbus Protocol (Southbound) User Guide V1.1 Document Version: V1.1 Gateways & Firmware Requirement: Software E2C Factory E2C Field E2C Facility Gateways supporting EG3120 EG5120 EG5200 LG3120 LG5120 Firmware Requirement(RobustOS ...
Modbus TCP Data Collection Guide
1. Protocol Overview Protocol Description: Modbus TCP is a common industrial automation protocol based on TCP/IP network transmission. Application Scenarios: This protocol is widely used for data acquisition and control of devices such as PLCs, ...
OPC UA Data Collection Guide
1. Protocol Overview Protocol Description: Modbus TCP is a common industrial automation protocol based on TCP/IP network transmission. Application Scenarios: This protocol is widely used for data acquisition and control of devices such as PLCs, ...