Skip to Content

Reception Confirmation (ACK)

When the server receives a report from the device, it must respond with an ACK (acknowledge) to confirm correct reception.


📋 ACK Format

>ACK;#NNNN;ID=XXXX;*CC<
FieldDescription
ACKConfirmation command
#NNNNMessage number of the received report (hex)
ID=XXXXDevice ID
*CCChecksum

💬 Complete Example

1. Device sends report

>RCY00020205000000-2778467-06425658000000-000090;DFFFFFF;IGN1;IN00;XP00;#0021;ID=1234;*59<

2. Server responds ACK

>ACK;#0021;ID=1234;*72<

The #0021 must match exactly with the report message number.


📱 Simplified ACK (SMS)

To respond from a mobile phone to an SMS report, the short version can be used:

>ACK;#0021<

Without ID or checksum, but maintains the message number.


⚠️ Behavior without ACK

If the device doesn’t receive ACK:

StepAction
1Stores the report in buffer (BlackBox)
2Retries sending
3After several attempts, switches to secondary IP

🔄 Commands with Message Number

The server can send commands with message number (range 0x8000 - 0xFFFF) to receive confirmation from the device.

Example

Server sends:

>SSSXP0011;#8001;ID=1234;*6A<

Device responds:

>RSSXP0011;#8001;ID=1234;*6B<

The response with #8001 confirms that the command was executed.


🔢 Message Number Ranges

RangeOriginUse
0x0000 - 0x7FFFDevice → ServerAutomatic reports
0x8000 - 0xFFFFServer → DeviceCommands with confirmation

🧮 Checksum Calculation

The checksum (*CC) is calculated by performing XOR of all characters from > to * (not including the *).

👉 Use the Checksum Analyzer to calculate and verify checksums.


See Also

Last updated