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
- In Integriti System Designer, navigate to Communications Tasks tab and click Add.
- Enter a Name and any notes.
- 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.
- Set Retries (0 = always retry).
- Set Connection Timeout and Connection Attempt Timeout (0 = no timeout).
3. Configure Output Options
- Set Header Format: Tstamp, DateTime, Sequence, LCD Sequence, LCD DateTime, Sequence Date Time, or None.
- 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
- 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.
- Transfer Checksum — appends 1-byte checksum to messages (modulo 256, 2-digit hex, e.g.
5. Configure Review Options
- No DOS-Style Line Breaks — removes CR+LF from end of each line.
- No Headers Or Braces in Review — removes curly braces, header, and checksum.
6. Configure Review Filter
- Set Comms Task Groups to filter by review category.
- Set Level to filter by review level (blank = Everyone, most restrictive).
- 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
- Set Online Input — an input that alarms when poll time expires, TCP is lost, or UART disconnects. Must be configured to “Ignore Physical.”
- Poll Time — if no command received within this time, online input alarms. Timer starts after
{STart}. - Pacing Time — minimum delay between review messages (min 10 ms).
- Repeat Time — if review acknowledge is enabled, interval to resend unacknowledged messages.
8. Save and Start
- Click OK to save.
- 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
| Command | Description |
|---|---|
{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):
| Position | State | Position | State |
|---|---|---|---|
| 1 | Alarm | 9 | Zone self test fail |
| 2 | Sensor Mask | 10 | Low battery |
| 3 | Sensor Orientation | 11 | Encryption fail |
| 4 | Sensor Fault | 12 | Poll fail |
| 5 | Sensor Range | 13 | Soaking test |
| 6 | Tamper Low | 14 | Soak test fail |
| 7 | Tamper High | 15 | Isolated |
| 8 | General Tamper |
Example: {IN[C01:Z14]=......HT........I} = Tamper High + General Tamper + Isolated.