BOX tracker
Communication Protocol v1.5
9 of 36
Date Time
The current date and time of the trackers real-time clock. Whilst BOX-tracker normally
synchronises its time from the GPS receiver this value can be used by the server to
verify the time is correct and send a command to correct it. However Its main purpose
is to provide a constantly changing security token.
The date and time is formatted as
YYMMDDHHmmss
.
e.g.
090201033229
wound be 1
st
February 2009 3:32:29am
Security Token
The Security Token allows the server to validate and authenticate an incoming
connection. The number contained in the security token is based on defined rules such
that it changes each time but can be verified as being valid. If so desired the server can
ignore this number but by ensuring the security token is valid (i.e. adheres to the
algorithm detailed below) there is a higher probability the connection is from a known
source.
The Security Token is based on a standard CRC32 (Cyclic Redundancy Checksum)
algorithm (see appendix for an example) and passed as 8 hexadecimal digits.
The Security Token is calculated by concatenating the Serial Number, Date Time string
(as passed in the header command), and a secret password (which can be configured)
into a single string and using this to obtaining a CRC32 value. Commas are not included
in this string. The default secret password is “password”, without the quotation marks.
This password can be changed. The CRC calculation is based on a case sensitive string.
For a header of
H,BT,358281000146500,080401153209,9F84265E
The security token is calculated on the string
358281000146500
08041153209
password
Where
358281000146500
= is the Serial Number
080401153209
= is the DateTime (2008-04-01 15:32:09)
password
= your hidden password which has a default of
“password”
9F84265E
= 8 digit security token
The security token is passed as an 8 digit Hexadecimal formatted number.
Firmware
This field contains the current firmware CRC as 8 hexadecimal digits. See firmware
update for further details.
SIM Number
The SIM number of the card currently inserted is returned in the header command.
However as this number changes infrequently it is not passed in every header
command, instead it is included once every 48 hours or the first time after the SIM has
been changed. This helps reduce communication overheads. If present the server may
use this to update local records.