Skip to main content

How to Configure Modbus Devices in Geo SCADA Expert

By NFM Consulting 3 min read

Key Takeaway

How to add Modbus TCP and Modbus RTU devices to Geo SCADA Expert, map registers to points, handle data types, and troubleshoot communication issues.

Quick Answer

Geo SCADA Expert supports both Modbus TCP (Ethernet) and Modbus RTU (serial) communication. Create a Modbus channel, add a device with its slave address, and map holding registers and input registers to Geo SCADA analog and digital points.

Modbus in SCADA Systems Overview

Modbus is one of the oldest and most widely used industrial communication protocols. While DNP3 is preferred for pipeline telemetry due to its event-driven capabilities, Modbus remains the standard for flow meters, power meters, variable frequency drives, and general-purpose I/O modules. Many Geo SCADA deployments use DNP3 for RTU communication and Modbus for local instrument connections.

Modbus TCP vs Modbus RTU in Geo SCADA

  • Modbus TCP — Ethernet-based. Uses IP addresses and TCP port 502. Supports multiple simultaneous connections. Preferred for modern installations.
  • Modbus RTU — Serial-based (RS-232 or RS-485). Uses slave addresses on a shared bus. Common in legacy installations and direct instrument connections.

Creating a Modbus Channel

  1. In the database explorer, navigate to the Communications group.
  2. Right-click and select New > Modbus Channel.
  3. Select TCP or Serial transport.
  4. For TCP: enter the device IP address and port (default 502).
  5. For Serial: select the COM port, baud rate (typically 9600 or 19200), data bits (8), parity (None or Even), and stop bits (1).

Adding a Modbus Device

  1. Right-click the Modbus channel and select New > Modbus Device.
  2. Set the slave address (Unit ID) — typically 1 for single-device connections, 1-247 for multi-drop serial.
  3. Configure the polling rate (e.g., 5 seconds for process values, 60 seconds for status data).
  4. Set response timeout (increase for slow devices or long communication links).

Register Mapping to Geo SCADA Points

Modbus organizes data into four register types:

  • Coils (0xxxx) — Read/write boolean values (digital outputs)
  • Discrete Inputs (1xxxx) — Read-only boolean values (digital inputs)
  • Input Registers (3xxxx) — Read-only 16-bit values (analog inputs)
  • Holding Registers (4xxxx) — Read/write 16-bit values (setpoints, configuration)

In the Geo SCADA point configuration, specify the Modbus device as the source and enter the register address. Holding registers begin at address 40001 in Modbus convention.

Data Type Handling

Modbus registers are 16-bit by default. For 32-bit values (floats, long integers), configure:

  • Register count — 2 registers for 32-bit values
  • Byte order — Big-endian (AB CD) or little-endian (CD AB) depending on the device manufacturer
  • Word order — High word first or low word first for 32-bit values spanning two registers

Incorrect byte/word order is the most common cause of reading apparently random or nonsensical values from Modbus devices.

Testing and Verifying Modbus Communications

  1. Check the device status in ViewX — it should show Online.
  2. Verify that points are reading expected values with Good quality.
  3. Compare Geo SCADA readings with the device's local display or a handheld Modbus test tool.
  4. Check the event journal for communication errors or timeouts.

Troubleshooting Register Read Errors

  • Timeout / no response — Verify IP address, port, and slave address. Check network connectivity.
  • Illegal data address — The register address does not exist on the device. Verify the register map from the device manual.
  • Wrong values — Check byte order and word swap settings. Try swapping endianness.
  • Intermittent failures — On serial (RS-485) networks, check termination resistors and cable length limits.

Frequently Asked Questions

Ready to Get Started?

Our engineers are ready to help with your automation project.