RockBLOCKs in the same Delivery Group can exchange messages in the same way that users exchange messages with HQ. The only difference is, that each message will require a specific prefix indicating that it needs to be forwarded to another RockBLOCK.
Here's the sample code to send an ASCII message to a RockBLOCK with serial number 1234.
/* Issue AT command */ AT\r /* Receive response */ OK\r /* Turn off Flow Control */ AT&K0\r /* Receive response */ OK\r /* Insert ASCII message into MO buffer */ AT+SBDWT=RB0001234Hello\r /* Receive response */ OK\r /* Initiate an Extended SBD Session */ AT+SBDIX\r
Use 7 bytes (7 characters)
Regardless of the unit's serial number, the transmitted serial number needs to be 7 bytes. Add the necessary 0's at the beginning of the serial number when entering it (ex. 0001234).
Here's the sample code to send a binary message to a RockBLOCK with serial number 1234.
/* Issue AT command */ AT\r /* Receive response */ OK\r /* Turn off Flow Control */ AT&K0\r /* Receive response */ OK\r /* Define binary message length in MO buffer, adding 2 for the checksum, ex. 10+2=12 */ AT+SBDWB=[<SBD Message Length>+<2 Byte Checksum>]\r /* Receive response */ READY\r /* Stream Binary Message */ <Binary Message> /* Receive Response */ <Status>\r OK\r /* Execute Send/Receive */ AT+SBDIX\r
Binary Message Prerequisites
In the binary message that will be streamed, it is mandatory to include:
- The RB prefix ("5242" in Hex)
- The exact serial number of the unit (ex. if "1234" then "0004d2" in Hex)
- The message body (ex. if "Hello" then "48656c6c6f" in Hex)
0 - SBD message successfully written to the ISU.
1 - SBD message write timeout. An insufficient number of bytes were transferred to ISU during
the transfer period of 60 seconds.
2 - SBD message checksum sent from DTE does not match the checksum calculated at the ISU.
3 - SBD message size is not correct. The maximum mobile originated SBD message length is 340 bytes. The minimum mobile originated SBD message length is 1 byte.
Updated over 1 year ago