Overview

The Modbus TCP Slave Service allows external Modbus master devices to read and modify certain states of Doors, Inputs, Auxiliaries, and Areas in the Integriti system via the Modbus TCP protocol.

The service supports mapping Integriti state and control points to:

  • Modbus Discrete Inputs (1-bit, read-only) — for reading state information.
  • Modbus Coils (1-bit, read/write) — for executing actions and reading state.

Modbus Input Registers and Holding Registers (16-bit data types) are not currently supported.

All points are mapped to Slave address 1. Valid address numbers for both Inputs and Coils are 1–65535. Address 0 is not accepted.

Prerequisites

  • License: “Modbus TCP Slave Service” license. View and update licenses from the License Manager dialog in the Administration tab.
  • Integriti software version 19 or later (document reference).
  • A Modbus master device that supports the Modbus TCP protocol.
  • Network connectivity between the Integriti server and the Modbus master, with any required TCP ports open through firewalls.

Step-by-Step

1. Create the Communications Handler

  1. Open the Communications Handlers panel from the Administration tab.
  2. Click the Add New button to create a new communications handler.
  3. Choose Modbus TCP Slave Service as the handler type.
  4. Give the handler a name and change the Port Number if required.

2. Create Modbus Point Categories

  1. Click the Create button on each category of Modbus point you want to support. For example, create Modbus Input – Door Lock and Modbus Input – Door Open if you want to map the Locked and Open states of Doors to Modbus Input addresses.
  2. This creates custom fields for the entity type, allowing you to specify Modbus address numbers in each entity’s settings.

3. Import Mapping Data via CSV

  1. Use the Export button on the item page (e.g. Doors) to export the entities you want to configure Modbus addresses for.
  2. Load the CSV file into a spreadsheet editor (e.g. Microsoft Excel) and add the relevant columns and address data for the entities.
  3. Open the CSV Import window from the relevant tab and choose the prepared CSV.
  4. Select Define settings as you go and click Next.
  5. On the CSV Configuration screen, select the options that apply (defaults work in most cases), then click Test Import to verify the data preview.
  6. Click Next to configure field mappings. Map columns to identify entities by Controller and ID, and to import data into the Modbus custom fields.
  7. Click Next and set Update Mode to Update or Ignore.
  8. Click Next again to begin the import. Repeat for other entity types (Inputs, Areas, Auxiliaries) as needed.

4. Restart the Service

  1. From the Communications Handlers panel, disable and then restart the Modbus service to load the new mapping data.

Important: The service must be restarted whenever new Modbus mapping addresses are configured or imported.

Verification

  • Check the Communications Handlers panel — the Modbus slave service status should appear as “Running”.
  • Connect from the external Modbus master and verify that reads return expected values.
  • Test writing to Modbus Coils (e.g. Unlock Door, Arm Area) and confirm the action executes in Integriti.

Troubleshooting

ProblemResolution
Modbus master fails to connectEnsure the Modbus slave service is Running in the Communications Handler panel. Verify both devices are on the same network and the TCP port is open through firewalls.
Inputs or coils do not change valueStop and restart the service after any mapping changes. Check that custom fields are present and set up correctly in the handler settings.
Duplicate point mappingsCheck the Integriti Log Viewer for warnings about duplicate Modbus addresses. Resolve any duplicates — each address must be unique within its address space (Inputs or Coils).
Address 0 not workingThe Integriti Modbus service does not accept 0 as a valid Modbus address. Use addresses 1–65535.

Appendix: Supported Modbus Mapping Points

Doors

  • Modbus Inputs: Door Lock, Door Open, Door Forced, Door DOTL
  • Modbus Coils: Unlock Door, Grant Access to Door

Areas

  • Modbus Inputs: Area Armed
  • Modbus Coils: Arm Area

Inputs

  • Modbus Inputs: Input Alarm, Input Isolated
  • Modbus Coils: Isolate Input

Auxiliaries

  • Modbus Inputs: Aux On
  • Modbus Coils: Turn on Aux