Servers

Server instances are independent Modbus TCP endpoints. Each instance has its own endpoint, memory image, watch list, simulation rules, fault rules, reactions, logs, metrics, and UI state.

Server settings Server settings

Server List

The left side of the workspace shows all configured server instances. Each item displays:

  • running or stopped state;
  • bind address and port;
  • Unit ID scope.

Use the context menu to add, clone, delete, or edit a server.

Starting And Stopping

Use the toolbar buttons to start or stop the selected server, or start/stop all servers.

When a server starts, ModbusLab creates a TCP listener on the configured bind address and port. If the endpoint is unavailable, the app shows a specific startup error.

Endpoint Settings

  • Bind address controls the local interface. Use 0.0.0.0 to listen on all interfaces.
  • Port controls the TCP port. Use 1502 for unprivileged local tests.
  • Unit ID filters requests by unit. Leave it empty to accept any unit.

Data Representation

Byte order and word order affect how register values are interpreted in watches and editor views.

  • Byte order affects each 16-bit register.
  • Word order affects multi-register values such as UInt32, Float32, and Double.

Write Modes

Write mode controls how client write requests behave:

  • Normal applies writes to memory.
  • ReadOnlyException rejects writes with a Modbus exception.
  • IgnoreWrites accepts the workflow but does not update memory.
  • LogOnly records the request without changing memory.

Startup Memory

Startup memory controls the memory image when a server starts:

  • KeepLastState uses the current saved memory.
  • ClearOnStartup starts from zeroed memory.
  • RestoreSnapshot restores the captured startup snapshot.

Use a snapshot when you need repeatable tests from a known state.