Communication Protocol
Rinho devices use a protocol derived from TAIP (Trimble ASCII Interface Protocol), an AVL industry standard.
Message Structure
Every message starts with > (0x3E) and ends with < (0x3C):
>TYPE_DATA;#NNNN;ID=XXXX;*CC<| Element | Description | Required |
|---|---|---|
> | Header (start) | ✅ Always |
TYPE | Prefix + command | ✅ Always |
DATA | Variable content | ✅ Always |
;#NNNN | Message number (hex) | GPRS only |
;ID=XXXX | Device identifier | GPRS only |
;*CC | XOR checksum (hex) | GPRS only |
< | Footer (end) | ✅ Always |
Message Types
| Prefix | Name | Description |
|---|---|---|
| S | Set | Write/configure parameters |
| Q | Query | Query parameters |
| R | Response | Response to S or Q |
Checksum
The checksum is the XOR of all bytes from > to * (included), expressed in 2 hexadecimal characters.
Communication Methods
Via GPRS/TCP
Requires ID, message number and checksum:
// Query
>QID;#8001;ID=1234;*7C<
// Response
>RID1234;#8001;ID=1234;*7B<Via Terminal (Serial)
Does not require ID or checksum:
// Query
>QID<
// Response
>RID1234;ID=1234;*7B<Via SMS
Does not require checksum. Device responds with ID:
// Query
>QIO<
// Response
>RIO;IGN1;IN1111110;XP010;V127;VBU420;ID=1234;*1B<Concatenated Commands
Multiple commands can be sent in a single transmission:
>QPWRINHO<>SSSXP0011<Response:
>RPWOK;ID=1234;*71<>RSSXP0011;ID=1234;*6D<Useful when using access password, especially via SMS.
Message Number
Hexadecimal ordinal identifier to confirm report reception.
Ranges
| Range | Use |
|---|---|
0x0000 - 0x7FFF | Device → server reports |
0x8000 - 0xFFFF | Server → device commands |
Command Example with Number
Sent from server:
>SSSXP0011;#8001;ID=1234;*6A<Device response:
>RSSXP0011;#8001;ID=1234;*6B<The server knows that command #8001 was executed.
Acknowledgment (ACK)
To confirm report reception, the server responds:
>ACK;#NNNN;ID=XXXX;*CC<Where #NNNN is the received message number.
See Also
Last updated