Overview

The Automation Communications Task provides a high-level interface between the Integriti controller and third-party systems for review printing/acknowledgement, control, and interrogation. It operates over a serial UART or Ethernet connection using a structured command protocol.

Licensing:

  • No License: Stream review and acknowledge review events only.
  • Automation Communications License (996022): Multiple instances, entity control, state queries, virtual module auxiliaries, analog values, and review injection.

Virtual Modules: Provide 32 virtual inputs and 32 virtual outputs. As of Integriti v20, virtual modules do not require a license. Commands marked with * require a Virtual Module.

Prerequisites

  • Integriti System Designer software
  • Optional: Automation Communications License (996022) for control/interrogation features
  • Serial UART or Ethernet connection to the third-party system
  • Virtual Module(s) if using virtual inputs/outputs
  • Third-party system capable of sending/receiving the Automation protocol commands

Step-by-Step

1. Create the Communications Task

  1. In Integriti System Designer, navigate to Communications Tasks tab and click Add.
  2. Enter a Name and any notes.
  3. Under Comms Task Setup, set the Type to Automation.

2. Configure Connection Path

For Serial (UART): 4. Expand Connectivity > RS232 Serial Interface. 5. Select the Serial Channel (port). 6. Configure Baud Rate, Data Bits, Parity, and Stop Bits to match the interfacing hardware.

For Ethernet: 4. Expand Ethernet Connection. 5. Enter the Server IP Address or select a DNS Name (DNS takes priority over IP). 6. Set TCP Port (1024–65535). 7. Set TCP Mode:

  • None — use serial UART.
  • Client — controller connects to third party.
  • Server — third party connects to controller.
  1. Set Retries (0 = always retry).
  2. Set Connection Timeout and Connection Attempt Timeout (0 = no timeout).

3. Configure Output Options

  1. Set Header Format: Tstamp, DateTime, Sequence, LCD Sequence, LCD DateTime, Sequence Date Time, or None.
  2. Set Body Format: Raw, Full Text, LCD Full Text, LCD AbbrevText, or None.
    • If both header and body are set to None, output defaults to Full Text.

4. Configure Options

  1. Tick flags as required:
    • Transfer Checksum — appends 1-byte checksum to messages (modulo 256, 2-digit hex, e.g. ~7E).
    • Receive Checksum — requires valid checksum on incoming messages; packets ignored if checksum fails.
    • Send Review — controller sends review messages as they occur.
    • Acknowledge Review — each review message must be acknowledged before the next is sent.
    • All Review — sends all stored review (10,000–100,000 events) on connection.
    • Transmit Aux — transmit auxiliary state changes (only one instance can have this set).
    • Transmit Aux Ack — transmit aux changes with acknowledgement; controller retries if no ack.

5. Configure Review Options

  1. No DOS-Style Line Breaks — removes CR+LF from end of each line.
  2. No Headers Or Braces in Review — removes curly braces, header, and checksum.

6. Configure Review Filter

  1. Set Comms Task Groups to filter by review category.
  2. Set Level to filter by review level (blank = Everyone, most restrictive).
  3. Set Entity fields 1–5 to filter by specific entities. AND logic applies between groups, level, and entities. Multiple entities can be supplied.

7. Configure Timing

  1. Set Online Input — an input that alarms when poll time expires, TCP is lost, or UART disconnects. Must be configured to “Ignore Physical.”
  2. Poll Time — if no command received within this time, online input alarms. Timer starts after {STart}.
  3. Pacing Time — minimum delay between review messages (min 10 ms).
  4. Repeat Time — if review acknowledge is enabled, interval to resend unacknowledged messages.

8. Save and Start

  1. Click OK to save.
  2. Click Start to activate the communications task.

Verification

  • Send {STart} command — no commands are processed until this is received.
  • Send {HB} heartbeat — controller responds with current poll time, e.g. {HB=123}.
  • Query states with {AX[...]?}, {IN[...]?}, {AR[...]?}, {DR[...]?}, {GV[...]?} — verify correct responses.
  • Monitor review stream with {RV=...} messages.
  • Check the online input remains sealed when communication is active.

Key Commands Reference

CommandDescription
{STart}Start automation
{RS=A} / {RS=L} / {RS=F}Enable/disable/stop review stream
{RP=E} / {RP=S}Move review pointer to end/start
{HB} / {HB=012}Heartbeat / set poll time
{AX[C01:X01]=N} / {AX[C01:X01]=F}Aux on/off
{IN[V01:Z01]=AA} / {IN[V01:Z01]=DI}Assert alarm / deassert isolate
{DR[001]=U} / {DR[001]=L}Unlock/lock door
{AR[001]=N} / {AR[001]=F}Area on/off
{NA[001]=R}Run named action
{RR[D12]=text}Report review to controller log

Troubleshooting

  • No response to commands: Ensure {STart} has been sent first. All commands are ignored until the start packet is received.
  • Commands case-sensitive: All commands must use exact casing as documented.
  • Checksum errors ({!09}): Verify checksum calculation — simple modulo 256 addition of characters between { and ~, expressed as 2-digit hex.
  • Permission denied ({!08}): Check entity permissions and licensing.
  • Not licensed ({!FF}): Automation Communications License (996022) required for control features.
  • Online input in alarm: Check serial/Ethernet connection, verify poll time setting, ensure {STart} or heartbeat has been sent.
  • Review not streaming: Check Send Review flag and review filter settings. If Acknowledge Review is enabled, ensure each {RV=...} is acknowledged with {RA=...}.

Input State Reference

Input state queries return a 15-character string. Each position represents a state (. = sealed):

PositionStatePositionState
1Alarm9Zone self test fail
2Sensor Mask10Low battery
3Sensor Orientation11Encryption fail
4Sensor Fault12Poll fail
5Sensor Range13Soaking test
6Tamper Low14Soak test fail
7Tamper High15Isolated
8General Tamper

Example: {IN[C01:Z14]=......HT........I} = Tamper High + General Tamper + Isolated.