At Command Documentation 1.8
At Command Documentation 1.8
AT Command Documentation
For
AR Series
Document reference
Revision: 1.8
Edited by: Renato Motta
The information presented in this document is strictly confidential and contains trade secrets
and other confidential information that are the exclusive property of Oigo Telematics.
Copyright Notice
© 2016 Oigo Telematics. All rights reserved.
Oigo Telematics reserves the right to modify this document without prior notice, in the interest of
improving performance, reliability, or servicing. Reasonable efforts have been made to assure the
accuracy of this document; however, Oigo Telematics assumes no liability resulting from any
inaccuracies or omissions in this document, or from use of the information herein. Product updates may
result in differences between the information provided in this document and the product shipped.
Please contact Oigo Telematics for access to the most current documentation.
No part of this document or information within this document may be copied, reproduced, distributed,
merged or modified without the express written consent of Oigo Telematics.
Revision History
Revision Date Description
1.0 05/31/2016 Initial Release
1.1 06/10/2016 Changed command AT+XFDR to AT+XRFD
1.2 07/12/2016 Fixed Message Mask Field to 4 bytes
Changed GPIO names from GPIO 1-4 to GPIO A-D
1.3 07/28/2016 Fixed the text on Trip Starts and Trips Stops
1.4 08/02/2016 Added RtcTime description
1.5 08/04/2016 Changed the device names to match name in label
1.6 11/14/2016 Minor changes in command parameters and description
1.7 04/11/2017 Changed AT+XRFD to AT+XFDR
Added New Event Code (TFTP Failure / TFTP Success)
Added New Event Code (Cellular Lost / Cellular Acquired)
Added New Command AT+XRPQD
Added new parameter to AT+XRPQ for Report History
Added Support for flexible report protocol 0x02
Added AT+XRNCE command
1.7.1 08/14/2017 AT+XCSW has now 3 parameters
AT+XIA parameter changed
Added new command XTFTPE
Added new device reset parameter to XRPA command
Added new device reset parameter to XIGM command
Added XNIDM Command
Added XEVIT Command
1.8 05/12/2017 Added GPIO information for the TLV report types
Contents
Revision History ............................................................................................................................................ 3
Scope........................................................................................................................................................... 10
Applicable Products ................................................................................................................................ 10
Applicable Application Version ............................................................................................................... 10
Contact Information................................................................................................................................ 10
AR Device Overview .................................................................................................................................... 10
Communication Interfaces.......................................................................................................................... 11
UART ....................................................................................................................................................... 11
SMS ......................................................................................................................................................... 11
UDP/IP ..................................................................................................................................................... 12
PDP and PPP Policies ........................................................................................................................... 12
Servers ................................................................................................................................................ 13
Maintenance Server ............................................................................................................................ 13
Update Server ..................................................................................................................................... 13
File Updates via TFTP .......................................................................................................................... 13
Communications Metrics ........................................................................................................................ 14
Reports ........................................................................................................................................................ 14
Protocol Frame ....................................................................................................................................... 14
Events.................................................................................................................................................. 15
Mask .................................................................................................................................................... 16
Report Queuing....................................................................................................................................... 16
Ack’ed Mode ........................................................................................................................................... 16
Event Report Format............................................................................................................................... 17
Trip .............................................................................................................................................................. 17
Motion .................................................................................................................................................... 17
Drive Trip Reporting ................................................................................................................................ 17
Configuration .............................................................................................................................................. 18
Peripherals .................................................................................................................................................. 18
GPIO’s and A-UART ................................................................................................................................. 18
AT Command Set ........................................................................................................................................ 19
AR Commands ............................................................................................................................................. 19
Syntax...................................................................................................................................................... 19
Parameters .......................................................................................................................................... 20
Identification ........................................................................................................................................... 20
Concatenation......................................................................................................................................... 20
AR Command Classification ........................................................................................................................ 21
Event Setting Commands ........................................................................................................................ 21
Action Commands ................................................................................................................................... 22
File Update Commands ....................................................................................................................... 22
Periodic Action Commands (with Events)............................................................................................... 22
Configuration Commands ....................................................................................................................... 23
Communication related settings......................................................................................................... 23
Protocol related settings..................................................................................................................... 23
Drive Trip related settings................................................................................................................... 23
Peripheral related settings.................................................................................................................. 23
Maintenance report settings .............................................................................................................. 24
Miscellaneous settings ........................................................................................................................ 24
Information Commands .......................................................................................................................... 24
Configuration reading commands ...................................................................................................... 24
Information commands ...................................................................................................................... 24
AR Commands – Detailed Description ........................................................................................................ 26
AT+XAPN ................................................................................................................................................. 26
AT+XBUB ................................................................................................................................................. 26
AT+XBUBE ............................................................................................................................................... 26
AT+XBUBX ............................................................................................................................................... 26
AT+XCC .................................................................................................................................................... 27
AT+XCCLE ................................................................................................................................................ 27
AT+XCFD.................................................................................................................................................. 28
AT+XCFU.................................................................................................................................................. 28
AT+XCSW................................................................................................................................................. 28
AT+XDDI .................................................................................................................................................. 28
AT+XDHC ................................................................................................................................................. 29
AT+XDMES .............................................................................................................................................. 29
AT+XDMSD .............................................................................................................................................. 29
AT+XDMSS............................................................................................................................................... 29
AT+XDMT ................................................................................................................................................ 30
AT+XDRI .................................................................................................................................................. 30
AT+XDTS .................................................................................................................................................. 30
AT+XDTT .................................................................................................................................................. 31
AT+XEVIT ................................................................................................................................................. 31
AT+XEVITD .............................................................................................................................................. 32
AT+XEVITR ............................................................................................................................................... 32
AT+XFDR.................................................................................................................................................. 32
AT+XGF .................................................................................................................................................... 33
AT+XGFE .................................................................................................................................................. 34
AT+XGFH ................................................................................................................................................. 34
AT+XGFR.................................................................................................................................................. 35
AT+XGPL .................................................................................................................................................. 36
AT+XGPLP ................................................................................................................................................ 36
AT+XGPLT ................................................................................................................................................ 36
AT+XHB ................................................................................................................................................... 36
AT+XHBB ................................................................................................................................................. 37
AT+XIA ..................................................................................................................................................... 37
AT+XIGM ................................................................................................................................................. 37
AT+XIGN .................................................................................................................................................. 38
AT+XIGV .................................................................................................................................................. 38
AT+XINCEL ............................................................................................................................................... 38
AT+XINDAT .............................................................................................................................................. 38
AT+XINEVT .............................................................................................................................................. 39
AT+XINGPS .............................................................................................................................................. 39
AT+XINNET .............................................................................................................................................. 39
AT+XINPWR ............................................................................................................................................. 40
AT+XINVER .............................................................................................................................................. 40
AT+XIOD .................................................................................................................................................. 40
AT+XIOE .................................................................................................................................................. 41
AT+XIOR .................................................................................................................................................. 41
AT+XIOW ................................................................................................................................................. 42
AT+XIP ..................................................................................................................................................... 42
AT+XIPC ................................................................................................................................................... 42
AT+XKA.................................................................................................................................................... 42
AT+XLEDO ............................................................................................................................................... 43
AT+XLPORT.............................................................................................................................................. 43
AT+XMHB ................................................................................................................................................ 43
AT+XMIP.................................................................................................................................................. 43
AT+XMRC ................................................................................................................................................ 44
AT+XMRN ................................................................................................................................................ 44
AT+XMRPM ............................................................................................................................................. 44
AT+XNIDM............................................................................................................................................... 44
AT+XPRP .................................................................................................................................................. 45
AT+XPST .................................................................................................................................................. 45
AT+XPUP ................................................................................................................................................. 46
AT+XPWL ................................................................................................................................................. 46
AT+XPWLE ............................................................................................................................................... 46
AT+XPWM ............................................................................................................................................... 47
AT+XPWS................................................................................................................................................. 47
AT+XPWSE............................................................................................................................................... 48
AT+XRLY .................................................................................................................................................. 48
AT+XRLYE ................................................................................................................................................ 48
AT+XRN ................................................................................................................................................... 49
AT+XRNE ................................................................................................................................................. 49
AT+XRNCE ............................................................................................................................................... 49
AT+XRPA.................................................................................................................................................. 49
AT+XRPF .................................................................................................................................................. 50
AT+XRPM ................................................................................................................................................ 50
AT+XRPQ ................................................................................................................................................. 51
AT+XRPQD ............................................................................................................................................... 52
AT+XRPSF ................................................................................................................................................ 52
AT+XRST .................................................................................................................................................. 52
AT+XRSTE ................................................................................................................................................ 52
AT+XRSTP ................................................................................................................................................ 53
AT+XSMSD............................................................................................................................................... 53
AT+XSMSS ............................................................................................................................................... 54
AT+XSPC .................................................................................................................................................. 54
AT+XSPD .................................................................................................................................................. 55
AT+XSPIP ................................................................................................................................................. 55
AT+XTA .................................................................................................................................................... 55
AT+XTFTPE .............................................................................................................................................. 56
AT+XUAPP ............................................................................................................................................... 56
AT+XUIP .................................................................................................................................................. 57
AT+XURP ................................................................................................................................................. 57
AT+XVO ................................................................................................................................................... 57
AT+XVTO ................................................................................................................................................. 58
AT+XVTOE ............................................................................................................................................... 58
Appendix A – AR Communication Protocol ................................................................................................ 59
Description .............................................................................................................................................. 59
Location and Status Report (Protocol 0x00) ........................................................................................... 59
Frame Structure ...................................................................................................................................... 59
Length ................................................................................................................................................. 59
Protocol ID .......................................................................................................................................... 60
Tag ....................................................................................................................................................... 60
Identification ....................................................................................................................................... 60
Event ................................................................................................................................................... 61
Mask .................................................................................................................................................... 61
Report Fields ....................................................................................................................................... 62
SequenceNumber ............................................................................................................................... 62
GpsTime .............................................................................................................................................. 62
RtcTime ............................................................................................................................................... 63
GpsLocation ........................................................................................................................................ 64
GpsStatus ............................................................................................................................................ 65
Speed .................................................................................................................................................. 66
Heading ............................................................................................................................................... 66
Altitude ............................................................................................................................................... 66
RSSI...................................................................................................................................................... 66
MainPower .......................................................................................................................................... 66
BackupPower ...................................................................................................................................... 66
GPIO .................................................................................................................................................... 67
Odometer ............................................................................................................................................ 67
SWversion ........................................................................................................................................... 67
HWversion........................................................................................................................................... 67
DeviceConfig ....................................................................................................................................... 68
Flexible Report (Protocol 0x02) .............................................................................................................. 69
Frame Structure ...................................................................................................................................... 69
Start-of-Frame..................................................................................................................................... 69
TAG...................................................................................................................................................... 69
Identification ....................................................................................................................................... 69
Sequence............................................................................................................................................. 70
Timestamp .......................................................................................................................................... 70
Event ................................................................................................................................................... 70
Length ................................................................................................................................................. 70
Payload................................................................................................................................................ 70
Item Structure ..................................................................................................................................... 71
Items ................................................................................................................................................... 72
ACKed UDP (Protocol 0xE0) .................................................................................................................... 77
Scope
This document describes the functionality of the AR family of tracking devices, the AT command set
used to control and configure the devices. The document covers GSM based devices.
Applicable Products
This AT Commands document supports the following family of devices AR-XXX:
Contact Information
For technical support or to report document errors, contact: [email protected].
AR Device Overview
The AR family of devices is a cellular based GPS tracking devices. The family includes 1xRTT CDMA and
GPRS cellular communication options, and available as vehicle powered or self-powered (battery
operated) to meet specific application needs. The devices are designed for easy installation and
configuration.
Additionally, all AR devices feature optional accelerometer, status LEDs, provisioning connectors, timers,
and watchdog. Vehicle powered AR devices include an external connector supporting signals for general
purpose input/output, ignition sensing UART, and 1-wire as well as optional back-up battery and buzzer.
AR devices are primarily location reporting devices. They can be queried, updated and configured using
any of the following methods:
Serial connection (UART)
Over the air IP connection using User Data Protocol (UDP) over cellular
SMS messaging
Access to device functionality is done via the extended AT command set as defined in this document.
The device configuration parameters are stored to flash memory and are automatically used on the
device’s next power up. For ease of use, all AR specific commands and responses are available in ASCII
format. However, to reduce data traffic and thereby the cost of operation, these commands and
responses can be formatted in binary when using UDP/IP link.
The AR devices capture data and form report records with that data. A report is a single record that
typically contains location, sensors and system status data. Reports are triggered by specified events,
such as periodic timeout, exceeding speed threshold, geo-fence crossing, etc., or in response to a Report
Now command (AT+XRN). Additional device information can be queried using separate AR AT
commands.
AR devices support Over The Air (OTA) updates of its software application using a TFTP connection with
a specified server. This capability requires an IP network connection to be active.
Communication Interfaces
In general AR devices support three functional communication interfaces: SMS, UDP/IP and serial
communication over a physical UART. Some battery powered devices do not include a physical UART
connector.
The AR AT commands can be transacted over any of the above three interfaces. Commands and
responses have identical syntax regardless of the interface used. A response is always transacted back
via the same interface as the command. All commands and responses are also echoed to the serial port.
Unless explicitly specified otherwise, reports are always sent via the UDP/IP connection and when sent
are also echoed to the UART.
Additionally to the functional interfaces, AR devices include a USB programming connector. The USB
connector is only used for downloading new firmware and is not available in regular usage or installation
of the device.
At startup, the AR devices automatically turn “on” and registers with the cellular network. Once
successfully registered, it will attempt to create an IP network connection. If such a connection is
unavailable, it will still allow connection through SMS and the physical UART and USB connectors.
UART
A standard serial connection is used for handling UART transactions. The UART connection requires a
physical interface to a PC running a terminal emulator or some other suitable program. A typical
configuration would use a serial to USB adapter cable to provide the physical interface. The USB port
would then be mapped to a COM port that would be used by a terminal emulator such as RealTerm.
RealTerm (available from http://realterm.sourceforge.net ). The UART setup is:
All communication to and from the device either via IP or via SMS is also echoed to the UART. Data is
echoed regardless as to whether or not a terminal is actually physically connected to the UART port. This
includes commands, responses to commands and sent reports. Additionally to the AR extended AT
commands, industry standard commands can also be used over the UART.
SMS
Short Message Service (SMS) can be used to send extended AR AT commands (cellular standard
commands are not supported over SMS). Commands and responses are always sent in ASCII format.
SMS messages are limited to 55 bytes. Concatenation of AT commands, such that the resulting input
string is longer than that is not supported. Responses longer than the allowed SMS string are truncated.
By default the originating phone number of an SMS command is used as the SMS destination number for
the response. Alternate destination can been specified through the AT+XSMSD command. To improve
security, the phone number from which SMS commands are accepted can also be specified via the
AT+XSMSS command. If such number is specified, commands from any other number will be ignored. All
commands and reports sent or received via SMS are also echoed on the serial port.
UDP/IP
UDP/IP is the main communication interface of the AR devices. All status reports are sent via UDP/IP. If
IP connection is unavailable, the reports are queued until IP connection becomes available. Only AR
extension commands are recognized over the IP connection (cellular standard commands are not
supported over IP). Commands sent though the IP connection are responded to through that
connection. All commands and reports sent or received via IP are also echoed to the UART.
AR devices can be configured to maintain IP connection constantly or tear it down and re-establish when
necessary (i.e. when there is a report to be sent). If configured to maintain constant connectivity and the
IP connection is lost, the device will attempt re-establishing it as soon as possible according to the PxP
policy (see below). By default , battery powered devices maintain IP and cellular connection closed most
of the time and only establish it for short periods of time to send report. Externally powered devices
attempt to keep the IP connection open all the time. This mode of operation is configurable and can be
changed using the respective AR AT commands.
Note that while the IP connection is closed the device is only accessible via SMS and UART.
While establishing a PDP/PPP session as part of the IP connection, different carriers may impose
different constraints on the frequency of retry when connection request fails. The device can employ
one of a number of backing-off policies to accommodate the different requirements. In the case of GSM
devices, the policy selection is done via PxP Renewal Policy command (AT+XPRP). Table 1below specifies
the PDP policies being supported with their respective id numbers. The list of numbers in each policy
indicates the interval in seconds from the last failed request. Table 1 also indicates which policy is
recommended for and by each carrier. Note that while Policy 0 will connect the fastest, it may cause
unwarranted overhead on the network and may not be approved by some carriers.
4 Rogers 240,240,240,240,1800,3600,…
5 CDMA 4, 4, 60, 120, 480, 900…
Table 1 - PxP Renewal Policies
After reset or power-up, the device will always start the set policy from the beginning.
Servers
AR devices can be configured to communicate over UDP/IP with a number of functionally different
servers:
Tracking Server – The main application server where the event triggered reports are sent.
Maintenance Server – Typically used for checking the health of the unit. There is a set of AT
commands that pertain to that server.
Update Server – The server from where application and other file updates are loaded from OTA
using TFTP protocol.
Serial Port Server – The server that communicates with the Application Serial Port.
Communication to all servers takes place concurrently. Each server is configured with its own IP address
and port.
Maintenance Server
The purpose of the Maintenance Server is to monitor the health of the device and manage
software/firmware updates. The maintenance server link is maintained independently of the main
application server. Its IP address is set by the +XMIP command. It has its own limited set of commands
that control the frequency and the format of the Maintenance Reports that are targeted for operational
“housekeeping” of the device.
Update Server
The purpose of the Update Server is to host the files that can be downloaded by the device via TFTP OTA
to update various software components of the device. The Update Server must support TFTP. The
Update Server link is maintained independently of the main application server. Its IP address is set by
the +XUIP command.
In case the TFTP transfer fails the device will retry to perform the same transfer a number of times as
specified by the Update Retry Policy command (AT+XURP). If all attempts failed, the device reports back
an error code via UART that can help troubleshooting the issue. The device also sends to the server a
report with respective TFTP failure tag.
Communications Metrics
The AR devices maintain a list of communication metrics throughout the lifetime of the product. Those
can be used for statistics and network issue debugging purposes. The Following counters are maintained
by the device:
All the above parameters are preserved over scheduled resets, but are not regularly saved. Therefore
some data might be lost in case of a power loss or an unexpected reset.
Reports
The AR devices capture data and form report records with that data. A report is a data structure
containing all of the sensory and other typically useful data on the device. Reports are generated in
response to specified events, such as periodic timeout, speed threshold, geo-fence crossing, etc., or in
response to a Report Now command (AT+XRN). Refer to Table 2 for the list of events that can trigger
reports and to Event Setting Commands section for a list of AR commands that enable the different
events that enable report generation.
Protocol Frame
The AR Communication Protocol supports a number of message types used by different applications.
Location and Status reports are only one type of such messages. Each message is “self-contained” in the
sense that all the information (such as size and type) necessary to parse a message is contained within
the message itself.
Messages can start with a fixed “Start Frame” byte to assist the server to identify them quickly as
coming from an AR tracker. The value of the “Start Frame” byte can be configured via the Report Start
Frame (AT+XRPSF) command.
The details of the AR Communication Protocol as well as the content and format of all data records are
presented in Appendix A – AR Communication Protocol.
There is also the option to make the AR device report using the same report structure as the MG-2G
device. This is called MG Format, the report structure of the MG mode is not specified in this document,
please refer to the MG AT command manual for the details of this protocol.
Events
The Event field is a 1-byte field that identifies the trigger that caused the report to be sent. Below is a list
of all possible events and the commands that enable them.
60-6F 96-111 Geo-Fence Enter Second digit of event indicates geo-fence number XGFE
70-7F 112-127 Geo-Fence Exit Second digit of event indicates geo-fence number XGFE
0x90 144 Cellular Locked Cellular Connection Acquired XCCLE
0x91 145 Cellular Lost Cellular Connection was Lost XCCLE
Table 2 – Events
The Event ID’s listed above are the default ID’s reported by the AR devices. Any Event ID can be changed
by its respective enabling command.
Mask
The Location and Status Report is a concatenated list of fields of various data items. To optimize data
transmission costs, the Report structure can be customized by specifying which data fields should be
included in the reports. This is accomplished by defining a “Report Mask”, which is a 4-byte bit field,
where each bit is associated with a field in the report. Only fields which corresponding bits are set to 1
are included in the reports. The fields are listed from right to left. Maintenance Reports and Tracking
Reports have respective masks, so they can output different data fields. Those masks can be set via the
Report Mask (AT+XRPM) and the Maintenance Report Mask (AT+XMRPM) respectively. The masks are
global so all the respective reports adhere to the same mask.
Refer to Appendix A – AR Communication Protocol for a detailed overview of the report fields.
Report Queuing
If a report trigger occurs while UDP connection is unavailable, it will be queued until connection
becomes available and transmitted at such time. The only way report(s) can be lost is if too many
reports are queued and the report-queue is overflowing. In such case the earliest report(s) will be
discarded. The size of the queue can be configured via the Report Queue (AT+XRPQ) command.
Ack’ed Mode
UDP is not a 100% reliable connection and occasional reports or command/responses may be lost. Since
all commands have responses, the server can repeat any command to which there is no response. In
order to assure reliable reception of reports, AR devices can be configured either in Normal or Ack’ed
mode to send the reports. In the Normal mode the reports are simply sent “as is” with no
acknowledgment from the server. In the Ack’ed mode every report sent is expected to be acknowledged
by the server by sending back an ACK message back. If acknowledgement is not received within the
specified timeout, the report is re-sent. If the report is not acknowledged after the specified number of
attempts, it is queued. If acknowledgement is received after the report is queued (i.e. past timeout of
the last attempt), it is ignored.
Report is not considered “complete” until its acknowledgement is received. Thus, if report X is sent and
report X+1 is triggered while waiting for acknowledgement of X, report X+1 will be queued until such
acknowledgement is received and only then sent. The AR will attempt to re-send queued report(s) every
time a new report is triggered. If there is more than one report queued, the reports will attempt to be
sent in the order of triggering and only once the report is acknowledged, the next report is attempted.
This assures that reports are sent and received in order.
Ack’ed mode assures that all reports are received, but adds overhead in time and data. Report that is
not acknowledged is sent again and eventually will be queued and sent again. The number and
frequency of re-tries is configurable via the Report Acknowledgement command (AT+XRPA).
Trip
The AR devices are predominantly tracking devices. “Drive Trip” is a key concept to their configuration
and behavior. The main idea is that while the vehicle is in Drive Trip mode (whether physically moving or
temporarily stopped), it can generate frequent events that allow accurate reconstruction of the trip.
There are several AR AT commands that define the “Start” of a Drive Trip, the “End” of a Drive Trip, and
the event reporting during a Drive Trip.
The definition of trip start/stop is user defined via the Drive Trip Trigger command (AT+XDTT). It can
depend on ignition state, if ignition is monitored and/or on motion.
Motion
Motion can be determined in several different ways and is also user defined. It is always qualified by
speed, but can also be qualified with distance and/or accelerometer. Note that the “vehicle in motion”
state is triggered w/o the Ignition qualifier. This is needed to detect Tow Alert.
The following summarizes the definition and the reporting during a Drive Trip.
Note: When heading change or distance interval event is reported the timer D is restarted. That way the
driving root is tracked without generating any extra reports.
Once a Stop is detected, the location is stored and used for detecting a start event (if needed).
While Stopped the position is reported at a different interval according to the setting of the Drive Report
Interval command.
Configuration
Peripherals
GPIO’s and A-UART
By default the AR devices support up to four GPIO’s that can be read and manipulated using the general
IO commands:
Read – AT+XIOR
Write – AT+XIOW
Set direction (Input/Output) – AT+XIOD
It does not mean that all four GPIO’s are available on all devices and that all of them can be configured
as Input/Output. Some of the IO’s can be reserved for functions such as Ignition, Relay or A-UART (see
below). If those functions are utilized, the corresponding IO’s should NOT be used for any other purpose
and must NOT be manipulated via the general IO commands. On the other hand, if the special features
are not required, the respective GPIO’s are available for general use. In such case all functional events
(Ignition, Relay) should be disable to avoid unintended false event reports.
Some AR devices, can be configured to have a second serial port instead of two of the IO’s (additionally
to the AT UART), which can be used to connect external peripherals and devices, such as Remote Start
box, Bluetooth module or any other device capable of serial communication. This Application Serial Port
(A-UART) can be configured to run a specific protocol/application supported by the AR device, such as
Remote Start, or simply act as a pass-through link between the A-UART and the cloud (more specifically
the Serial Port Server), where the device effectively acts as a modem. The latter is called Peripheral Add-
on Device (PAD)
For specific capabilities of each device and the physical location of the respective IO’s, refer to the
Installation brief of that specific device. See below the description and pinout for the AR 8-pin
connector.
AT Command Set
The AT command set of the AR product family combines relevant commands from ITU V.25ter
www.itu.int/ITU-T and chipset specific commands supported by the specific baseband chip used in
every particular product. As such, there are some variations among the different products in the family.
Those commands are referred to as “native commands”.
Additionally, the AR family supports an extended AT command set specifically designed to support its
application(s). All commands in the extended AR Command Set start with AT+X… This document
describes the AR Command Set in details. The standard commands are outside of the scope of this
document.
AR Commands
Syntax
The AR commands follow standard AT syntax. The “AT” prefix must be the first two characters of each
command line. Each command line is terminated with a <CR>. All commands return a response – at
minimum “OK” or “ERROR” is returned. New commands must only be entered after a response is
returned. Responses to commands take the following form unless otherwise specified:
<CR><LF><response><CR><LF>
For clarity, leading and trailing combinations of <CR><LF> will be omitted from examples in this
document.
Extended AR AT commands start with AT+X… and follow one of the following modes:
Execution: AT+Xxxx
Execution with parameter(s): AT+Xxxx=<y>,<z>
Parameters
All the parameters that can be set by any of the AR commands have defined values at all times. Those
values are either the default or the result of the previous command execution. Thus, as a convention,
when using an AR AT command, any number of the trailing parameters can be omitted. In such case, the
omitted parameters will retain their previous values and those values will be used in the execution of
the command.
Example:
AT+XTA=0,10
AT+XTA=1
In the example above the first command disables Tow Alert reporting, while setting the “debounce”
parameter to 10 seconds. The second command enables reporting Tow Alert without changing the
setting of the “debounce” time. Throughout the process the third parameter, the Event ID number,
retained its default value.
Identification
In order to enable easy association on the server side between a received response and the command
that triggered it, every AR command can be tagged with a Command Identifier (CID). The CID is a
number in hex format of up to 8 digits that is added at the end of the command and is separated via ‘#’
delimiter. The response to a command is tagged with the same CID (on a new line), as the command
that triggered it, thus making it easy to associate a command with its response. The syntax of CID tagged
command:
Execution: AT+Xxxx #yyyyyyyy
Execution with parameter(s): AT+Xxxx=<y>,<z> #yyyyyyyy
Read: AT+Xxxx? #yyyyyyyy
Response: OK
#yyyyyyyy
Example:
AT+XKA? #cafe
0,3600
#cafe
Concatenation
Multiple AR commands can be concatenated on a single command line. Only the first command needs
to start with “AT”. Concatenated commands are delimited with a semicolon.
Example: at+xhb=3600;+xdri?
Only one OK is returned, if all commands processed correctly. An ERROR is returned, if any of the
commands is incorrect.
AR Command Classification
The AR commands can be split into a number of basic command categories. Each category has the same
basic mode of operation or functional context. Those categories are:
Event Setting Commands
Action Commands
Periodic Action Commands
Configuration Commands
Information Commands
Maintenance Server Commands
As a general rule every event and state transition has its own unique event ID that is reflected in the
report triggered by the said event. Refer to Table 2 – Events for the complete list of event ID’s. Those
default event ID’s can be changed by the user to accommodate specific server implementations, by
explicitly specifying what they are in the respective commands. As an example, all trip related events
can be mapped to the same event ID, so there is no need to parse the specific event trigger. Following is
a list of event setting commands:
Action Commands
Action commands instigate an immediate action. They cannot be included in configuration files.
Following is a list of action commands:
Configuration Commands
Configuration commands control various parameter settings of the device. For convenience they are
grouped into topical settings. Following is a list of configuration commands:
Information Commands
Information commands simply output various data regarding the current status of the device. They are
mostly useful for troubleshooting. Following is a list of information commands:
AT+XBUB
Back-Up Battery (Only applicable to AR devices with backup battery)
Command Parameters Description
AT+XBUB=B B – Battery: 0-1 Enable/disable backup battery. When
0 – disable disabled, the battery does not charge or
Configuration: 1 – enabled operate. This is useful when the device is
Peripherals 2 – Save Queue Context stored and is not in use. Note that
Defaults: enabling the battery without connecting
0 to power will drain the battery. In devices
with no backup battery, the command
still respond OK, but has no effect.
AT+XBUB? B
AT+XBUBE
Back-Up Battery Events (Only applicable to AR devices with backup battery)
Command Parameters Description
AT+XBUBE=Tg,D,Ev1,Ev2 Tg – Trigger: 0-3 Send event report whenever the device
0 – disable switches from main power to BuB (Ev1)
Report Event 1 – main power → BuB and/or vice versa (Ev2) for at least D
2 – main power ← BuB consecutive seconds.
3 – main power ↔
BuB
Defaults:
0,30,4,5
AT+XBUBE? Tg,D,Ev1,Ev2
AT+XBUBX
Back-Up Battery eXit (Only applicable to AR devices with backup battery)
AT+XCC
Clear Counters
Command Parameters Description
AT+XCC=C C – Counters: 0-2 Clear various counters that are
0 – all maintained across the lifetime of the
Action 1 – reset counters device and set them back to 0.
2 – data counters T=0 clears all counters.
T=1 clears the reset and power-up
Defaults: counters reported in the AT+XINPWR
0 (all) command.
T=2 clears the reset and power-up
counters reported in the AT+XINCEL
command.
AT+XCCLE
Cellular Connection Event
Command Parameters Description
AT+XCCLE=T T – Trigger: 0-3 Sets the trigger for the Cellular Connection
0 – Disabled event. If Tg=1 only a cellular acquired report is
Action 1 – Cellular Connection sent whenever the device acquires cellular
Acquired connection. If Tg=2 only a cellular lost report is
2 – Cellular Connection Lost sent when the device looses cellular connection.
3 - Both If Tg=3 a a cellular acquired report is sent
whenever the device acquires cellular
Defaults: connection and a cellular lost report is sent
0 when the device looses cellular connection.
Example:
AT+XCCLE=2
Enables the event cellular lost whenever the
device looses cellular connection.
AT+XCFD
Configuration File – Default
Command Parameters Description
AT+XCFD Defaults: Outputs the list of factory default
N/A settings. This is mostly useful for
Information debugging, troubleshooting and as a basis
for creating new configuration files.
AT+XCFU
Configuration File – User
Command Parameters Description
AT+XCFU Defaults: Outputs the list of user specified settings.
N/A This is mostly useful for debugging,
Information troubleshooting and as a basis for
creating new configuration files.
AT+XCSW
Cellular Session Watchdog
Command Parameters Description
AT+XCSW=T,N,R T – Time: 0-2,678,400 [sec] Set timeout T without cellular connection
N – Number of times to perform to trigger a cellular or hardware reset.
Configuration the action in <R> if the cellular Note that this watchdog is only active
Communication connection is not re-established when cellular connection is supposed to
(0-255, default 10) be active and is not deliberately turned
R – 0 (default): perform a off, such as in low power modes, as
cellular reset (airplane mode) specified in Power Mode State (+XPMS)
1: perform a hardware reset command.
Defaults:
0,0,0 (disabled)
AT+XCSW? T
AT+XDDI
Drive Distance Interval
Command Parameters Description
AT+XDDI= Di,Ev Di – Distance: 0-60,000 [m] Send event report every Di meters when
in Drive Trip state. Refer to Trip section
Report Event Ev – Event #: 0-200 for explanation regarding “driving trip”
Driving start and stop. If Di=0 no reports are
Defaults: sent.
0,27
AT+XDDI? Di,Ev
AT+XDHC
Drive Heading Change
Command Parameters Description
AT+XDHC=Th,D,Ev Th – Threshold: 0-180 [°] While in “driving trip” send event report
whenever heading changes by at least Th
Report Event D – Debounce: 0-255 [sec] degrees for at least D consecutive
Driving seconds. The change is measured
Ev – Event #: 0-200 compared to the last triggered value. If
Th=0 no reports are sent. Refer to Trip
Defaults: section for explanation regarding “driving
0,0,26 trip” related parameters.
AT+XDHC? Th,D,Ev
AT+XDMES
Drive Motion End Speed
Command Parameters Description
AT+XDMES=Sp,D Sp – Speed: 0-255 [kmh] Recognize “motion stop” when device
speed falls below Sp for at least D
Configuration D – Debounce: 0-255 [sec] consecutive seconds.
Driving
Defaults:
7,90
AT+XDMES? Sp,D
AT+XDMSD
Drive Motion Start Distance
Command Parameters Description
AT+XDMSD=Di Di – Distance: 0-5000 [m] Recognize “motion start” only when
device moved by at least Di meters. The
Configuration Defaults: distance is measured relatively to the last
Driving 50 “stop” location. This allows more
accurate determination of “motion”.
Refer also to Drive Motion Trigger
(+XDMT) command.
AT+XDMSD? Di
AT+XDMSS
Drive Motion Start Speed
Command Parameters Description
AT+XDMSS=Sp,D Sp – Speed: 0-255 [kmh] Recognize “motion start” when device
speed is at least Sp for at least D
Configuration D – Debounce: 0-255 [sec] consecutive seconds. Refer also to Drive
Driving Motion Trigger (+XDMT) command.
Defaults:
7,10
AT+XDMSS? Sp,D
AT+XDMT
Drive Motion Trigger
Command Parameters Description
AT+XDMT=Tg Tg – Trigger: 0-3 Specifies which trigger(s) identify “motion
0 – Speed start”. Once specified the same notion of
Configuration 1 – Distance motion is used across all motion related
Driving 2 – Speed or Distance actions, such as Drive Trip Trigger (see
3 – Reserved +XDTT), Tow Alert (see +XTA), etc. Note
that when GPS is active, speed is always
Defaults: used and other triggers can be added to
0 improve accuracy. In this case “Motion
stop” is always determined by speed.
When the GPS is not active, such as in
self-powered devices, speed and distance
are ignored and accelerometer is used (Tg
must be 2 or 3 to trigger).
(See +XDMES/+XDMSS and +XDMSD for
speed and distance threshold settings,
respectively.)
AT+XDMT? Tg
AT+XDRI
Drive Report Intervals
Command Parameters Description
AT+XDRI=T1,T2,Ev1,Ev2 T1,T2 – Time: 0 or 15-604,800 Send event report every T1 seconds
[sec] when stopped and every T2 seconds
Report Event while in “driving trip” (604,800 secs = 7
Driving Ev1,Ev2 – Event #: 0-200 days). Refer to Trip section for
explanation regarding “driving trip” start
Defaults: and stop. If T1=0 or T2=0, no reports are
0,0,25,24 sent respectively.
AT+XDRI? T1,T2,Ev1,Ev2
AT+XDTS
Drive Trip Start/Stop
Command Parameters Description
AT+XDTS=Tg,Ev1,Ev2 Tg – Trigger: 0-3 Send event report whenever trip starts
0 – disable and/or stops. Refer to Trip section for
Report Event 1 – trip start explanation regarding “trip start”, “trip
Driving 2 – trip stop stop” and other “driving trip” related
3 – trip start and stop parameters. Also see Drive Trip Trigger
(+XDTT) command.
Ev1,Ev2 – Event #: 0-200
Defaults:
0,22,23
AT+XDTS? Tg,Ev1,Ev2
AT+XDTT
Drive Trip Trigger
Command Parameters Description
AT+XDTT=Tg Tg – Trigger: 0-3 Specify which trigger(s) identify “driving
0 – none trip start/stop”. Refer to Drive Motion
Configuration 1 – ignition only Trigger (AT+XDMT) and Ignition Mode
Driving 2 – motion only (AT+XIGM) commands for definition of
3 – ignition and motion motion and ignition respectively.
simultaneously
Note that for self-powered devices only
Defaults: Tg=0 or Tg=2 should be used.
2
AT+XDTT? Tg
AT+XEVIT
Event Items
Command Parameters Description
AT+XEVIT=Ev,It1[,It2, Ev – Event ID [0 - 65535] Assigns Items 'Itn' to the Event 'Ev'. Each time an
It3,…,It15] Itn – Item ID Event 'Ev' is generated, only the items specified
Defaults: with this command are sent with the Event report.
0,0 This allows customizing the information that is
1,0 sent with each Event individually. Each report can
… contain up to 15 Report Items. For complete list of
available Report Items and the item ids, refer to
the document 'Protocol_0x2.docx'. By default, all
reports will have item 0 enabled.
Example:
AT+XEVIT=2,17,256
AT+XEVITD
Default Event Items
Command Parameters Description
AT+XEVITD=It1[,It2,It Sets the default TLV(s) for all reports. All events
3,…,It15] Itn – Item ID: [0 - 65535] that have not been assigned an explicit item will
send each report with It1 [,It2,...].
Defaults: 1
Up to 15 TLVs can be assigned as default items. To
override the default items for a specific event, use
the command 'AT+XEVIT'.
Example:
AT+XEVITD=1,4097
AT+XEVITR
Event Items Read
Command Parameters Description
AT+XEVITD=Ev Outputs all Report Items associated with event Ev,
Ev – Event ID: [0 - 65535] that were assigned to event Ev with the command
'at+xevit=Ev, It1, [...Itn]'.
Defaults: N/A
Example:
AT+XEVITR=31
31:1,4097,256
Event 31 (report now) will be sent with TLV 1
(general masked), TLV 4097 (internal
temperature) and TLV 256 (Versions).
AT+XFDR
Factory Defaults Restore
Command Parameters Description
AT+XFDR Restore configuration parameters to
Defaults: factory defaults.
Action
AT+XGF
Geo-Fence
Command Parameters Description
AT+XGF=Gf, Gf – Geofence: 1-15 Set polynomial geo-fence – Gf. The geo-
lat1,lon1, Lati – Latitude: -90.00000-90.00000 [o] fence is represented by a list of between 3
lat2,lon2, Loni – Longitude: -180.00000- and 15 coordinates. Each coordinate is
180.00000 [o] represented as a latitude-longitude pair
lat3,lon3
Lati, Loni, expressed in degrees and fraction
[,lat4,lon4, Defaults: of degrees with 5 digit precision (see
lat5,lon5, N/A example below).
lat6,lon6, Note: The coordinates must be arranged
lat7,lon7, in an order so they form a polygon with no
lat8,lon8, line crossing. The first coordinate is always
lat9,lon9, assumed also to be the last to have a
closed shape.
lat10,lon10,
Note: This command only defines the geo-
lat11,lon11, fences. Refer to Geo-Fence Enable (+XGFE)
lat12,lon12, command regarding generating events
lat13,lon13, based of crossing the geo-feces.
lat14,lon14,
lat15,lon15] Example:
AT+XGF=3,32.71845,-114.71950,
32.72785,-114.61375,
Configuration: 33.60490,-114.52720,
Misc. 34.28540,-114.13065,
35.01775,-114.64285,
39.00035,-120.00000,
41.99500,-120.00000,
41.99500,-124.87000,
40.40000,-124.46540,
34.44250,-120.46260,
33.73790,-118.40760,
32.53500,-117.14820,
32.71845,-114.71950
AT+XGF? 01: lat1,lon1 [+n] For each set geo-fence returns the first
02: lat1,lon1 [+n] point followed by the number of
… additional points in “[+n]” format (n is the
15: lat1,lon1 [+n] number of not displayed points) for all
polynomial geo-fences. This notation is
used in order to limit the output size to fit
in an SMS message. The complete geo-
fence settings can be obtained using the
Geo-Fence Read (AT+XGFR) command.
Example:
AT+XGF=5,12,13,14,15,16,17
AT+XGF?
01: –
02: –
03: –
04: –
AT+XGFE
Geo-Fence Enable
Command Parameters Description
AT+XGFE=Gf, Gf – Geofence: 0-15 Send event report whenever geo-fence
Tg,D,Ev1,Ev2 number Gf is crossed into and/or out of
Tg – Trigger: 0-3 (according to specified by Tg) the fenced
Report Event 0 – disable zone for at least D consecutive seconds.
1 – out → in Note that the actual geo-fences are
2 – out ← in defined specified by Geo-Fence (+XGF)
3 – out ↔ in command.
Defaults:
0,0,0, 96,112
1,0,0, 97,113
…
15,0,0, 111,127
AT+XGFE? 00:Tg,D,Ev1,Ev2 Outputs the event settings of all 16 geo-
01:Tg,D,Ev1,Ev2 fences. Example:
… AT+XGFE?
15:Tg,D,Ev1,Ev2 00: 0,0,96,112
01: 0,0,97,113
02: 0,0,98,114
…
15: 0,0,111,127
AT+XGFH
Geo-Fence Here
Command Parameters Description
AT+XGFH=R,Lat,Lon R – Radius: 10-150,000 [m] Set a radial geo-fence of radius R meters
Lat – Latitude: -90.00000- around the specified location. If no
Configuration: 90.00000 [o] location is specified (no Lon/Lat entered),
Misc. Lon - Longitude: -180.00000- the current location is used as the center
180.00000 [o] of the geo-fence. If no current location
available (i.e. no GPS lock), the latest
Defaults: known location is used. Refer to Geo-
0, 0.00000,0.00000 Fence Event (+XGFE) command regarding
enabling “geo-fence” events.
Notes:
There is only one radial geo-fence can be
set at any given time - this geo-fence’s id
is always 0. Re-issuing the +XGFH
command overrides the previous setting.
When used in configuration file, Lat/Lon
must be provided. Otherwise the
behavior is unpredictable.
AT+XGFH? R,C-Lon,C-Lat Returns the coordinates
longitude/latitude) of the center of the
geo-fence and its radius. If geo-fence was
never set, returns:
0,0.00000,0.00000
AT+XGFR
Geo-Fence Read
Command Parameters Description
AT+XGFR=Gf Gf – Geofence: 0-15 Outputs all the settings pertaining to geo-
fence Gf. The return string is formatted in
Information Defaults: two lines. The first line outputs the
N/A Trigger (Tg), the Debounce (D) and the
events reported when in and out of the
Return: geo-fence (Ev1, Ev2 respectively). The
Tg,D,Ev1,Ev2 second line is a list of the co-ordinates
lat1,lon1, defining the geo-fence. Refer to
lat2,lon2, commands Geo-Fence Enable (+XGFE)
and Geo-Fence (+XGF) for further
lat3,lon3
description and setting of the
[,lat4,lon4, parameters.
lat5,lon5, Example: AT+XGFR=1
lat6,lon6, 3,10,97,113
lat7,lon7, 32.71845,-114.71950,32.72785,-114.61375,
33.60490,-114.52720,34.28540,-114.13065,
lat8,lon8, 35.01775,-114.64285,39.00035,-120.00000,
lat9,lon9, 41.99500,-120.00000,41.99500,-124.87000
lat10,lon10,
lat11,lon11,
lat12,lon12,
lat13,lon13,
lat14,lon14,
lat15,lon15]
AT+XGPL
GPS Loss/Lock
Command Parameters Description
AT+XGPL=Tg,D,Ev1,Ev2 Tg – Trigger: 0-3 Send event report whenever GPS locking
0 – disable changes from unlocked to locked and/or
Report Event 1 – unlocked → locked vice versa for at least D consecutive
2 – unlocked ← locked seconds.
3 – unlocked ↔ locked Ev1 – Lock
Ev2 – Unlock
D – Debounce: 0-3600 [sec]
Defaults:
0,0,16,17
AT+XGPL? Tg,D,Ev1,Ev2
AT+XGPLP
GPS Lock Parameters
Command Parameters Description
AT+XGPLP=S,T S – Satellites: 3-10 Set GPS parameters for reliable lock. S
indicates the minimum number of
Configuration: T – Time: 0-60 [sec] satellites seen and T indicates the
Peripheral-GPS minimum length of time for them to be
Defaults: seen for GPS to be considered locked.
4,2
AT+XGPLP? S,T
AT+XGPLT
GPS Lock Timeout
Command Parameters Description
AT+XGPLT=T T – Time: 1-3600 [sec] Set GPS Lock Timeout to T. GPS Lock
Timeout is the maximum time allowed for
Configuration: Defaults: GPS to lock once GPS is activated (after
Peripheral-GPS 180 power up, reset, GPS shut off, etc.) before
the first report is generated. If GPS is not
locked within T seconds and there is a
report to be sent, it is sent with the last
known location (and “old” flag set) or
with zeros, if no location is available.
AT+XGPLT? T
AT+XHB
Heart Beat
AT+XHBB
Heart Beat when on BuB
Command Parameters Description
AT+XHBB=T,Ev T – Time: 0-12400 [sec] Send event report every T seconds while
running on backup battery. If T=0, the
Report Event Ev – Event #: 0-200 “battery heart-beat” is disabled.
Defaults:
0,3
AT+XHBB? T,Ev
AT+XIA
Idle Alert
Command Parameters Description
AT+XIA=Tg,D,Ev Tg – First wait Time: 0-3600 Send event report whenever vehicle is
D – Debounce: 0-3600 [sec] idling for at least D consecutive seconds.
Report Event Idling is defined as No-Motion with
Ev – Event #: 0-200 Ignition-On.
Defaults:
0,0,30
AT+XIA? Tg,D,Ev
AT+XIGM
Ignition Mode
Command Parameters Description
AT+XIGM=M,D,R Mode – Mode: 0-3 Set ignition On/Off detection method. M
0 – None indicates the mode: IGN pin or measured
Configuration: 1 – Voltage external power voltage level.
Peripheral-Ignition 2 – IGN Input If M=2, IGN pin should be connected to
3 – Reserved the actual ignition to function properly.
D – Time: 0-255 [sec] When IGN=1 for at least D seconds,
R – Reset [0-3] Ignition is On. In all other mode the IGN
0 – Disable Network pin can be used as a general input pin.
Reset If M=1, external voltage is used as the
1 – Hard Reset means to identify ignition “virtually”. The
2 – Soft Reset voltage threshold is set by the Ignition
AT+XIGN
Ignition
Command Parameters Description
AT+XIGN=Tg,Ev1,Ev2 Tg – Trigger: 0-3 Send event report whenever ignition
0 – disable state changes from low to high and/or
Report Event 1 – low → high vice versa. Note that the method of
2 – low ← high determining ignition (including
3 – low ↔ high debouncing) is specified by Ignition Mode
(+XIM) command.
Ev1,Ev2 – Event #: 0-200
Ev1 – On
Defaults: Ev2 – Off
0,14,15
AT+XIGN? Tg,Ev1,Ev2
AT+XIGV
Ignition Voltage
Command Parameters Description
AT+XIGV=V V – Voltage: 0.00-24.00 [Volt] Set voltage threshold V (in 0.01V
resolution). When the external power is
Configuration: Defaults: above V the ignition is assumed to “On”,
Peripheral-Ignition 13.00 otherwise it is considered to be “Off”.
This setting has effect only when Ignition
Mode is set to Virtual – see Ignition Mode
(+XIM) command.
AT+XIGV? V
AT+XINCEL
Info: Cellular
Command Parameters Description
AT+XINCEL Defaults: Outputs various cellular Signal related
N/A parameters.
Information
AT+XINDAT
Info: Data
Command Parameters Description
AT+XINDAT Defaults: Outputs various Data related counters.
N/A SMS Out – Number of sent SMS
AT+XINEVT
Info: Events
Command Parameters Description
AT+XINEVT Defaults: Outputs the list of all currently enabled
N/A events.
Information
AT+XINGPS
Info: GPS
Command Parameters Description
AT+XINGPS Defaults: Outputs the list of current GPS related
N/A data:
Information GPS Date
GPS Time
Real Time Clock – reference time
Location – Last coordinate
Speed
Heading
Satellites – number of visible satellites
Lock – flag indicating GPS lock state
GPS – flag indicating GPS being active
AT+XINNET
Info: Network
Command Parameters Description
AT+XINNET Defaults: Outputs the list of current Network
N/A related parameters. Domain names are
Information only displayed, if configured via the
respective commands.
APN: For GSM devices only
LIP: Local IP address
PPP: On/off flag
AT+XINPWR
Info: Power
Command Parameters Description
AT+XINPWR Defaults: Outputs the list of Power related settings
N/A and measured parameters:
Information Current power mode
Current main voltage
Current backup battery voltage
Time since last reset
Time since last power-up
Number of power-up’s
Number of reset’s
AT+XINVER
Info: Versions
Command Parameters Description
AT+XINVER Defaults: Outputs the Versions of the different
N/A hardware and software components of
Information the device:
MEID or IMEI
MDL – module revision
BIN – firmware version
APP – application version and number
IO – IO controller firmware version
CFG – Config. File version number and
name.
If any configuration was changed
relatively to the factory default an “*” is
appended at the end of the version and
the first bit of the configuration number is
set to 1.
AT+XIOD
I/O Direction
Command Parameters Description
AT+XIOD=Io,Dir Io – GPIO #: A-D Set the direction (Input or Output) of a
physical I/O pins.
Configuration: Dir – Direction: 0-1
Peripheral 0 – Output Note:
1 – Input GPIO A = Input
GPIO B = Output
AT+XIOE
I/O Event
Command Parameters Description
AT+XIOE=Io,Tg,Ev1,Ev2 Io – GPIO #: A-D Send event report whenever a status of
the specified GPIO changes from 0 to 1
Report Event Tg – Trigger: 0-3 (Ev1 event) and/or from 1 to 0 (Ev2
0 – disable event). The respective GPIO should be
1–0→1 configured as Input for proper operation.
2–0←1
3–0↔1 Note: GPIO B shouldn’t be used as Input.
Defaults:
0,30,4,5
AT+XIOE? A: Tg1,Ev11,Ev21
B: Tg2,Ev12,Ev22
C: Tg3,Ev13,Ev23
D: Tg4,Ev14,Ev24
AT+XIOR
I/O Read
Command Parameters Description
AT+XIOR=Io Io – GPIO #: A-D Return the current value of I/O Io. If the
direction of Io is set as Input, the actual
Information Defaults: value of the input of the time of
N/A command execution is returned.
Otherwise, the output value is returned.
Refer to I/O Direction (+XIOD) command
for details.
Examples:
AT+XIOR=A
1
AT+XIOR? A: IoA Example:
B: IoB AT+XIOR?
C: IoC A:1,1
D: IoD B:0,0
C:1,1
D:0,0
AT+XIOW
I/O Write
Command Parameters Description
AT+XIOW=Io,V Io – GPIO #: A-D Set the value of the GPIO pin number Io
to V. The command only has effect if the
Configuration: V – Value: 0-1 direction of Io was set as Output. Refer to
Peripheral I/O Direction (+XIOD) command for
Defaults: details.
N/A
AT+XIP
Set IP
Command Parameters Description
AT+XIP=Ip,P Ip – IP Address: string Set the IP address and port of the server,
P – Port: 0-65535 where all event reports are sent. If the Ip
Configuration: string is not an IP address, it is considered
Comms. Defaults: to be a domain name and will be resolved
“98.189.204.2”,15008 accordingly.
Examples:
AT+XIP="211.161.197.163",7006
AT+XIP="22.58.7.163",10022
AT+XIP? Ip,P
AT+XIPC
IP Change
Command Parameters Description
AT+XIPC=Tg,Ev Tg – Trigger: 0-1 When enabled (Tg=1,) send event report
0 – disable whenever local IP address of the device
Report Event 1 – enable changes. This is useful for the server
always to know the unit IP when keeping
Ev – Event #: 0-200 the IP link open.
Defaults:
0,18
AT+XIPC? Tg,Ev
AT+XKA
Keep Alive
Command Parameters Description
AT+XKA=A,T A – Action: 0-2 Send “keep alive” data packet as specified
0 – none by A every T seconds. This helps keeping
Periodic Action 1 – null packet the data session open by the carrier and
2 – IMEI/MEID
periodically communicates the IP address
AT+XLEDO
LED’s Off
Command Parameters Description
AT+XLEDO=T T – Time: 0-3600 [sec] Turn the LED’s of the unit Off T seconds
after power-up. This is usually done to
Configuration: Defaults: conserve power. If T=0, the LED’s remain
Peripheral 0 (Always On) on all the time and will blink according to
the specified pattern.
AT+XLEDO? T
AT+XLPORT
Set Local Port
Command Parameters Description
AT+XLPORT=P P – Port: 0-65535 Set the local IP port of the tracker
application of the device. Note that the
Configuration: Defaults: local IP address of the device is assigned
Comms. 17006 by the network.
AT+XLPORT? P
AT+XMHB
Maintenance Heart Beat
Command Parameters Description
AT+XMHB=T,Ev T – Time: 0-2,678,400 [sec] Send maintenance report every T
seconds. Maintenance reports are sent to
Report Event Ev – Event #: 0-200 the IP address set by the Maintenance IP
Maintenance (+XMIP) command.
Defaults:
0,34
AT+XMHB? T,Ev
AT+XMIP
Set Maintenance server IP
Command Parameters Description
AT+XMIP=Ip,P Ip – IP Address: string Set the IP address and port of the
P – Port: 0-65535 maintenance server. All the maintenance
Configuration: reports are sent to this IP address. If the
Comms. Defaults: Ip string is not an IP address, it is
“98.189.204.2”,15018 considered to be a domain name and will
be resolved accordingly.
AT+XMIP? Ip,P
AT+XMRC
Maintenance Report Clone
Command Parameters Description
AT+XMRC=Tg Tg – Trigger: 0-1 Set all regular reports to be also sent to
0 – disable the maintenance server. Note that those
Configuration 1 – enable reports are sent “as is” and are not
Maintenance
subject to maintenance report mask or
Defaults: any other maintenance report
0 configuration. Its main use is for
debugging and troubleshooting.
AT+XMRC? Tg
AT+XMRN
Maintenance Report Now
Command Parameters Description
AT+XMRN Instantly generate and send a
Defaults: maintenance report. The report is subject
Action to all maintenance report related
Maintenance
configurations.
AT+XMRPM
Maintenance Report Mask
Command Parameters Description
AT+XMRPM=M M – Mask: 0-FFFFFFFF Set mask of the maintenance reports. The
mask is represented in Hex format. Each
Configuration: Defaults: bit in the mask refers to a field in the
Maintenance ‘FBFB’
report. Only fields set to “1” will be sent
as part of the report. The mask itself is
also embedded in the report.
AT+XMRPM? M
AT+XNIDM
Network ID Mask
Command Parameters Description
AT+XNIDM=M Mask – [Range] 0 - FF Sets the mask of the network TLV. The
mask is represented in Hex format. Each
bit in the mask refers to a field in the
Configuration:Mask Defaults: report. Only fields set to “1” will be sent
7F as part of the report. The mask itself is
AT+XOWM? M
AT+XPRP
PxP Renewal Policy
Command Parameters Description
AT+XPRP=P P – Policy ID: 0-5 Set the retry policy of PxP session when
PDP request failed. Different carriers may
Configuration: Defaults: impose different constraints on the retry
Comms. 0 (for GSM) frequency on PxP request. Refer to
5 (for CDMA) section PDP and PPP Policies for list of
supported policies.
AT+XPRP? P
AT+XPST
Packet Session Timeout
Command Parameters Description
AT+XPST=A,T A – Action: 0-3 Manage data session renewal, which
0 – always open allows to optimize session cost by
Periodic Action 1 – renew periodically controlling the renewal rate and allowing
2 – close after T secs
the channel to be closed until needed:
3 – close T secs after
last communication If A=0, attempt to maintain data session
always open. If lost, renew a.s.a.p.
T – Time: 60-43,200 [sec] If A=1, close and re-open data session
every T seconds. If connection is lost
Defaults: before timeout expires, re-new data
0,10800 session a.s.a.p.
If A=2, keep data session open for T
seconds, then close it and re-open only
when there is data to send.
If A=3, close data session after T seconds
of inactivity and re-open it only when
there is data to send.
In all cases if T expires while data is being
transmitted or received, the session
closure is delayed until the data transfer
is completed.
Note that in all modes data session is
established (if not already) as soon as
there is data to be sent. When data
AT+XPUP
Power Up
Command Parameters Description
AT+XPUP=Tg,Ev Tg – Trigger: 0-1 When enabled (Tg=1,) send event report
0 – disable after the device powers up. Note that
Report Event 1 – enable before sending report, the device will
wait for GPS to lock for a period of time
Ev – Event #: 0-200 specified by the GPS Lock Time (+XGPLT)
command. If GPS is not locked, the last
Defaults: known location is reported, or 0’s if no
1,1 prior location.
AT+XPUP? Tg,Ev
AT+XPWL
Power Low
Command Parameters Description
AT+XPWL=Th,D Th – Threshold: 0-25.00 [V] Set the voltage threshold (in 0.01 V
resolution) and the debounce time (in
Configuration: D – Debounce: 0-255 [sec] seconds) for the device to switch from
Peripheral-Power Normal state (or Power Save state) to
Defaults: Power Low state. Power Low state is
0.00,30 typically used to save power by turning
off most of the peripherals when the
vehicle battery loses power and its
voltage falls below threshold. See also
Power Modes (+XPWM) command. Once
the power goes above the threshold or
ignition is detected, the device goes back
to Normal (or Power Save) power state. If
Th=0, the device never goes to a Power
Low state.
AT+XPWL? Th,D
AT+XPWLE
Power Low Event
Command Parameters Description
AT+XPWLE=Tg,Ev1,Ev2 Tg – Trigger: 0-3 Send event report Ev1 whenever the
0 – disable device switches to Power Low state
Report Event 1 – normal → low and/or Ev2 report when it switches back
2 – normal ← low from Power Low to Normal (or Power
3 – normal ↔ low Save) state. See Power Low (+XPWL)
command for setting of Power Low state
Defaults: transition.
0,6,7
AT+XPWLE? Tg,Ev1,Ev2
AT+XPWM
Power Modes
Command Parameters Description
AT+XPWM=M1,M2,M3,M4 M1,M2,M3,M4 – Power Set the power modes for the different
Mode: 0-2 power states. The four parameters
Configuration: 0 – Full refer to four “power states” of the
Peripheral-Power 1 – Listen device in the following order:
M1: Normal operation
Defaults: M2: Power Save – typically
0,0,0,1 used to save power when
vehicle is parked for a long
time. See also Power Save
(+XPWS) command
M3: Low Power – typically
used when the vehicle battery
power is low. See also Power
Low (+XPWL) command
M4: Backup battery
The Power Modes are specified as
following:
0: Full – Everything is
operational
1: Listen – GPS and LED’s are
off; everything else is
operational
Note that when in Listen mode, no
drive reports are sent, only heartbeat
(+XHB) report can be sent and other
non-driving related reports such as
periodic resets.
When in “backup battery” state, no
driving reports are sent irrespective of
the mode the device is in, only
heartbeat on Bub is sent (+XHBB)
AT+XPWM? M1,M2,M3,M4
AT+XPWS
Power Save
Command Parameters Description
AT+XPWS=Th,D Th – Threshold: 0-25.00 [V] Set the voltage threshold (in 0.01 V
resolution) and the debounce time (in
Configuration: D – Debounce: 0-604800 [sec] seconds) for the device to switch from
Peripheral-Power Normal state to Power Save state. The
Defaults: device does not switch states while in
0.00,0 motion. Power Save state is typically used
to save power by turning off some of the
peripherals when vehicle is parked for a
long time and the vehicle battery loses
power. See also Power Modes (+XPWM)
command. Once the power goes above
the threshold or if ignition is detected,
the device goes back to Normal power
state. If Th=0, the device never goes to a
Power Save state.
AT+XPWS? Th,D
AT+XPWSE
Power Save Event
Command Parameters Description
AT+XPWSE=Tg,Ev1,Ev2 Tg – Trigger: 0-3 Send event report Ev1 whenever the
0 – disable device switches from Normal to Power
Report Event 1 – normal → save Save state and/or Ev2 report when it
2 – normal ← save switches back from Power Save to
3 – normal ↔ save Normal state. See Power Low (+XPWL)
command for setting of Power Low state
Ev1,Ev2 – Event #: 0-200 transition.
Defaults:
0,64,65
AT+XPWSE? Tg,Ev1,Ev2
AT+XRLY
Set Relay
Command Parameters Description
AT+XRLY=V V – Value: 0-1 Set the value of the Relay pin to V.
Configuration: Defaults:
Peripheral 0
AT+XRLY? V
AT+XRLYE
Relay Event
Command Parameters Description
AT+XRLYE=Tg,Ev1,Ev2 Tg – Trigger: 0-3 Send event report whenever the relay
0 – disable output changes from high to low and/or
Report Event 1 – low → high vice versa. This can happen either by
2 – low ← high issuing an explicit command (see +XSR
Defaults:
0,12,13
AT+XRLYE? Tg,Ev1,Ev2
AT+XRN
Report Now
Command Parameters Description
AT+XRN Instantly generate and send a report. The
Defaults: report is sent via IP and is subject to all
Action report related configurations as any other
report. Also refer to section Event
Reports.
AT+XRNE
Report Now Echo
Command Parameters Description
AT+XRNE Instantly generate and send a report. The
Defaults: report is sent as a response to the
Action command rather than as a triggered
report. That means that it is sent via the
same channel (SMS/UART/IP) as the
command itself; it is always an ASCII
string not subject to report format
settings and is not subject to queuing.
AT+XRNCE
Report Now Event Code
Command Parameters Description
AT+XRNCE=<Ev> Sets the event code for the AT+XRN
Defaults: 31 command.
Action
AT+XRPA
Report Acknowledge
Command Parameters Description
AT+XRPA=A,T,N,R A – Action: 0-1 Set Ack mode. When A=1 (Ack mode is
0 – no Ack on), every event report needs to be
Configuration: 1 – Ack acknowledged by the server within T
Protocol T – Time: 1-255 [sec]
AT+XRPF
Report Format
Command Parameters Description
AT+XRPF=F,B F – Format ID: 0-1 Set format of the event reports. F
0 – MG Format specifies the format in which the report is
Configuration: 1 – Fixed & Masked sent. If F=1, all reports are constructed
Protocol Format using fixed structure with mask according
2 – Flexible Format to Protocol 00. If F=2, all reports are
(TLV) constructed using flexible format
according to Protocol 02. The format of
B – Binary: 0-1 Protocol 02 uses TLVs fields that can be
0 – Ascii individually selected for each
1 – Binary report/event.
AT+XRPQ
Report Queue
Command Parameters Description
AT+XRPQ=Q,P Q – Size: 1-2000 [reports] Set maximum number of event reports, Q, that
P – Policy : 0 – 2 can be queued when no data link is available
Configuration: 0 : First In First Out (device is out of coverage). When the number of
Protocol 1 : Last In First Out queued event reports exceeds Q, the oldest
2 : History report are discarded as additional reports are
created. Whenever a new report enters the
Defaults: queue, data connection is attempted to be
50,0 established. Once data link is successfully
established, the reports are sent out in the
order as specified by P. If P=0, the queue is
emptied in the order the reports were created.
If P=1, the queue is emptied last in first out, so
the most recent report is sent first.
If P=2 all reports that are generated are saved
and stored in the queue file, independent of a
valid network connection or not. This allows to
record a history of generated events. The queue
file is a circular buffer which removes older
entries to make space for newer ones. In order
to retrieve the event history, use the command
'AT+XRPQD'.
Note: If this command is issued when there are
already reports in the queue, those reports are
lost.
Example:
AT+ XRPQ=
Clears the queue without changing its size or
policy.
AT+XRPQ? Q,P,N Returns the size of the queue, the policy and the
number of event reports currently present in
the queue.
AT+XRPQD
Report Queue Dump
Command Parameters Description
AT+XRPQD=N N – Number of reports to dump: This will dump the last N reports to the
1-2000 UART in FIFO order.
Defaults: Example:
N/A AT+XRPQD=25
This dumps the last 25 reports to the
UART, starting with the newest report
first.
AT+XRPSF
Report Start Frame
Command Parameters Description
AT+XRPSF=Sf Sf – Start frame: 0-255 Specify a single byte value Sf that is sent
0 – Disable at the start of an event report to assist
Configuration: 1-255 – Send value the server to uniquely identify event
Protocol reports. If Sf=0, no start frame byte is
Defaults: sent.
126 (0x7E)
AT+XRPSF? Sf
AT+XRST
Reset
Command Parameters Description
AT+XRST=A A – Action: 1-4 Reset the device or the specified function
1 – hardware reset of the device according to A. Software
Action 2 – software reset reset means that only software will be re-
3 – reset GPS initiated (as in re-boot). Hardware reset
4 – reset cellular means that the hardware will go through
a physical reset. Refer to section Reset for
Defaults: more details. If A=1 or A=2, the device
N/A will generate a “reset event” report, if
enabled. Refer to Reset Event (+XRSTE)
command regarding reporting reset
occurrence.
AT+XRSTE
Reset Event
Command Parameters Description
AT+XRSTE=Tg,Ev Tg – Trigger: 0-1 When enabled (Tg=1,) send event report
0 – disable whenever scheduled reset took place.
Report Event 1 – enable Refer to Reset Periodically (+XRSTP)
AT+XRSTP
Reset Periodically
Command Parameters Description
AT+XRSTP=A,T A – Action: 0-2 Reset the device every T seconds. Only
0 – none one periodic reset can be active. Software
Periodic Action 1 – hardware reset reset means that only software will be re-
2 – software reset initiated (as in re-boot). Hardware reset
means that the hardware will go through
T – Time: 60-2,678,400 [sec] a physical reset. Refer to section Reset for
more details. Refer to Reset Event
Defaults: (+XRSTE) command regarding reporting
1,14400 (4 hours) reset occurrence.
Note that unless explicitly configured
otherwise, AR devices reset every 4
hours.
AT+XRSTP? A,T
AT+XSMSD
SMS Destination
Command Parameters Description
AT+XSMSD=Phn Phn – Phone Number: string Set the phone number to which SMS
responses are sent. If Phn=””, SMS
Configuration: Defaults: response is always sent to the same
Comms. “”
number the command was received from
(as determined by the Caller ID).
Phn must be a string of up to 14 digits
representing a valid phone number
(including country code and area code, if
necessary). E.164 standard short codes
are supported as destinations
Examples:
AT+XSMSD="0116143215678”
AT+XSMSD="12345"
AT+XSMSD? Phn
AT+XSMSS
SMS Source
Command Parameters Description
AT+XSMSS=Phn Phn – Phone Number: string Set the phone number from which
commands are accepted via SMS (as
Configuration: Defaults: determined by the Caller ID). Commands
Comms. “”
from any other number are ignored. If
Phn=””, commands from any phone
number are accepted.
Phn must be a string of up to 14 digits
representing a valid phone number
(including country code and area code, if
necessary).
Examples:
AT+XSMSS="0116143215678”
AT+XSMSS="12345"
AT+XSMSS? Phn
AT+XSPC
Serial Port Configuration (Only applies to devices with Application UART: AR)
Command Parameters Description
AT+XSPC=P,R P – Protocol: 0-4 Set the protocol and the baud rate of the
0 – GPIO mode Application Serial Port (A-UART). For
Configuration 1 – Reserved proper operation the protocol P used
Peripheral 2 – PAD should be recognized by the peripheral
3 – Reserved device connected to the A-UART.
4 – Reserved P=0: The A-UART pins are used as GPIO’s
(TX and RX respectively). In this
R – Rate: 0-5 [baud] configuration R is ignored and there is no
0 – 300 data protocol.
1 – 600 P=1: Reserved for future use.
2 – 1200 P=2: The data sent/received through the
3 – 2400 UART is passed through as is to the Serial
4 – 4800 Port IP and vice versa (see AT+SPIP
5 – 9600 command). There is no framing or any
6 – 19200 protocol applied to the data. See Serial
7 – 38400 Port IP command (AT+XSPIP) for
8 – 57600 configuration of the IP address.
9 – 115200
Note: this command has no effect on the
Defaults: AT serial port, which is only used for
0,0 communicating with the device via AT
commands and for provisioning.
AT+XSPC? P,R
AT+XSPD
Speeding
Command Parameters Description
AT+XSPD=Tg,Th,D,Ev1,Ev2 Tg – Trigger: 0-3 Send event report whenever speed
0 – disable threshold Th is crossed for at least D
Report Event 1 – low → high consecutive seconds.
2 – low ← high Ev1 reported when speed exceeds Th
3 – low ↔ high Ev2 reported when speed falls below
Th
Th – Threshold: 0-255 [km/h]
Defaults:
0,0,0,19,20
AT+XSPD? Tg,Th,D,Ev1,Ev2
AT+XSPIP
Set Serial Port IP
Command Parameters Description
AT+XSPIP=Ip,P Ip – IP Address: string Set the IP address and port of the server
P – Port: 0-65535 talking to the Application Serial Port (A-
Configuration: UART). The actual data passed between
Comms. Defaults: the Serial Port IP and the A-UART
“”,15028 depends on the configuration of the
protocol configured via the Configure
Serial Port (AT+XCSP) command and its
application it (such as Remote Start, pass-
through, etc.). If the Ip string is not an IP
address, it is considered to be a domain
name and will be resolved accordingly.
AT+XSPIP? Ip,P
AT+XTA
Towed Alert
Command Parameters Description
AT+XTA=Tg,D,Ev Tg – Trigger: 0-3 Send event report whenever vehicle is
0 – disable towed for at least D consecutive seconds.
Report Event 1 – enable Towing is defined as Motion without
Ignition.
D – Debounce: 0-3600 [sec]
Defaults:
0,0,28
AT+XTA? Tg,D,Ev
AT+XTFTPE
TFTP Event
Command Parameters Description
AT+XTFTPE=M M – Mask: 0-1 Send event report whenever fails or
,Ev1,Ev2 0: Disable. successfully updates the APP firmware
1: Send event to server. over the air.
Report Event
Ev1 – Event Fail #: 0-200
Ev2 – Event Success #: 0-200
Defaults:
0,45,46
AT+XTA? Tg,D,Ev
AT+XUAPP
Update Application file OTA
Command Parameters Description
AT+XUAPP=F F – File: string Upload file F from the “update server”,
which address is specified via the Update
Action: File Update Defaults: IP (AT+XUIP) command, and update the
N/A application file with it. The uploading uses
TFTP protocol. Upon successful update,
the unit will reset itself for the new
application file to take effect. In case of a
file transfer failure the device will retry
uploading the file according to Update
Retry Policy (AT+XURP) command.
Note that positive response to the
command does not indicate successful
operation, but only indicates correctness
of the syntax. The result of the upload is
indicated via a special Update File report
sent to the target server. See File Updates
via TFTP section for details.
Example:
AT+XUIP= "98.189.10.249",6900
AT+XUAPP=”APP_2_0.bin”
AT+XUIP
Set Update server IP
Command Parameters Description
AT+XUIP=Ip,P Ip – IP Address: string Set the IP address and port of the server,
P – Port: 0-65535 from which all file updates are loaded
Configuration: OTA. If the Ip string is not an IP address, it
Comms. Defaults: is considered to be a domain name and
“98.189.204.2”,6900 will be resolved accordingly.
AT+XUIP? Ip,P
AT+XURP
Update Retry Policy
Command Paramet Description
ers
AT+XURP=N N – # of Set the number of retries, N, and the frequency of retrying, T, for file updates
,T Retries: over TFTP in case the update fails. This policy applies to all “update file”
0-10 commands, such as
Configuratio Command Parameters Description
n: T – Time: AT+XTFTPE=M M – Mask: 0-1 Send event report whenever fail
Misc. 60-3600 ,Ev1,Ev2 0: Disable. successfully updates the APP firm
[sec] 1: Send event to server. over the air.
Report Event
Defaults: Ev1 – Event Fail #: 0-200
0 Ev2 – Event Success #: 0-200
,
3 Defaults:
0 0,45,46
0 AT+XTA? Tg,D,Ev
AT+XUAPP
AT+ XURP? N,T
AT+XVO
Virtual Odometer
Command Parameters Description
AT+XVO=Di Di – Distance: 0-1,000,000 [km] Set the “virtual odometer” to value Di.
This allows to start counting from value
Action Defaults: different than 0. The “odometer” purpose
N/A is to keep the approximate total distance
driven. It is updated every 5 km when in
Drive Trip state based on the distance
driven according to the GPS and never
resets (unless re-initialized).
AT+XVTO
Virtual Trip Odometer
Command Parameters Description
AT+XVTO=Di Di – Distance: 0-100,000 [km] Initialize the “trip odometer” to value Di.
The odometer will keep counting from
Action Defaults: there. This allows to start counting from
0 value different than 0 to send the first
report.
AT+XVTO? Di Di contains the current (not the initial)
odometer value.
AT+XVTOE
Virtual Trip Odometer Event
Command Parameters Description
AT+XVTOE=Di,Ev Di – Distance: 0-100,000 [km] Send event report every Di km traveled. If
Di=0, the “trip odometer” is disabled.
Report Event Ev – Event #: 0-200 Distance is updated only when in Drive
Trip state.
Defaults:
0,33
AT+XVTOE? Di,Ev
Description
The AR Device Communication Protocol is a bidirectional protocol, which allows a device and a server to
communicate over an IP (Internet Protocol) link. Each message is “self-contained” in the sense that all
the information (such as size) necessary to parse a message is contained within the message itself.
Frame Structure
<start_of_frame><length><protocol_id><tag><identification><payload>
Where:
Length
Length is two-byte field that give the byte count for the reminder of the frame. The count starts with the
<protocol_id> field
Protocol ID
Protocol ID is a one-byte field that identify the type of information carried in the frame
ID Meaning
0x00 Location and Status report
0x02 Flexible data report
0x10 Reserved
0xE0 Acknowledgment
Others Reserved
Tag
Tag is one byte field that gives information about the frame:
Identification
The Identification is a variable length field which is a unique identifier for the hardware. The
identification can be omitted in the following situation:
Identification (IMEI)
0000 IMEI
4 bits 15 nibbles
For CDMA devices this is the MEID of the device left padded with an extra 0x00 byte:
Identification (MEID)
0x00 MEID
1 byte 14 nibbles
This protocol defines the contents and structure of location and status reports, which are the most
common messages of the tracking devices.
The <payload> field of a Location and Status Report message has the following format:
<event><mask><report>
Where:
<event> is a 1-byte field indicating the trigger for the report to be sent
<mask> is a 4-byte field that specifies which data fields are contained in the data
field of the report. The report is a list of fields. Only fields which
corresponding bits in the mask are set are included in the report.
<report> is a variable length field. Its length is the determined by the fields
included in the report based on the <mask>.
Event
The Event field is a 1-byte field that identifies the trigger that caused the report to be sent.
Mask
The Mask field is a 32-bit (4-byte) field that specifies the type of data contained in the data field of the
report. Different reports may be programmed to output different data fields. A properly designed
listener should never assume that the reports always have a fixed length. I shall check the length of the
frame and the mask and parse the data fields that it is aware of. New fields will always be added at the
end of the data field so the properly designed listener should just ignore the extra fields.
Report Fields
The report is treated as a list of fields in a fixed order, as specified in Table . Only fields that are enabled
by the <mask> are included in any given report. The length of the report is determined accordingly and
can vary based on the fields included.
GpsTime
GpsTime is the Coordinated Universal Time (UTC) reported by the GPS system. The format is as follows:
GpsTime
Y M DD HH MM SS
4 bits 4 bits 1 byte 1 byte 1 byte 1 byte
Where:
Y Year
0 2010
1 2011
..
9 2019
..
F 2025
M Month
1 January
2 February
..
12 December
DD Day
01 1st
02 2nd
..
10 16th
..
1F 31st
HH, MM and SS are 8-bit representations of the hours, minutes and seconds at the time the report was
generated.
Exceptions:
1) If the GPS time is not available at the time the report is generated, the Device will report all
zero’s (see GpsStatus)
RtcTime
RtcTime is the Real Time Clock (RTC) reported by the device. The format is as follows:
GpsTime
Y M DD HH MM SS
4 bits 4 bits 1 byte 1 byte 1 byte 1 byte
Where:
Y Year
0 2010
1 2011
..
9 2019
..
F 2025
M Month
1 January
2 February
..
12 December
DD Day
01 1st
02 2nd
..
10 16th
..
1F 31st
HH, MM and SS are 8-bit representations of the hours, minutes and seconds at the time the report was
generated.
Exceptions:
1) If the GPS time is not available at the time the report is generated, the Device will report all
zero’s (see GpsStatus)
GpsLocation
GpsLocation is the position reported by the Device GPS subsystem. The format is as follows:
GpsLocation
LAT LON
4 bytes 4 bytes
Where:
LAT is a 4-byte representation of the Latitude sent as encodedLat, a big endian unsigned number.
Decoding:
LON is a 4-byte representation of the Latitude sent as encodedLon, a big endian unsigned number.
Decoding:
Exceptions:
1) If the GPS location is not available at the time the report is generated, the Device will report all
zero’s (see GpsStatus)
GpsStatus
GpsStatus is a 2-byte field which gives information about the status of the GPS signal, the format is as
follows:
GpsStatus
Status Satellites HDOP
4 bits 4 bits 1 byte
Where:
Bit 7 Reserved
Bit 6-4 000: GPS is not locked
001: GPS is locked
100: Last known GPS position
Other value reserved
Exceptions:
1) If the Status indicates that the GPS is not locked, the GPS data (including number of satellites)
was generated during the last valid fix.
2) If the device has never acquired a valid GPS fix, the reported number of satellites (as well as
position data) will be zero.
HDOP is an indication of the quality of the received signal. The reported value must be divided by 10 to
obtain the actual HDOP.
Speed
Speed is a 1-byte field which indicates the speed of the device in kilometer/hours. The value can be
converted into MPH by dividing the reported value by 1.609
Speed
1 byte
Heading
Heading is a 2-byte field which indicates the heading of the device in degrees. Valid values are between
0 and 359.
Heading
2 bytes
Altitude
Altitude is a 2-byte signed field which indicates the altitude of the device in meters. The value can be
converted into feet by multiplying it by 3.28084. Valid values are between -1000 and +10000.
Altitude
2 bytes
RSSI
RSSI is a 1-byte field which gives a relative indication of the RF signal strength seen by the device. Valid
values are 0-31 and 99 where 0 indicates a very weak signal, 31 a very strong signal and 99 no signal at
the time the report was generated.
RSSI
1 byte
MainPower
MainPower is a 2-byte field which indicates the voltage of the power source (in units of 10 mV) that is in
use at the time the report was generated. This source will generally be the main power source (car
power) or a backup battery if the main source has been disconnected and the device is still running.
MainPower
2 bytes
BackupPower
BackupPower is a 2-byte field which indicates the voltage of a secondary power source (in units of 10
mV)
BackupPower
2 bytes
GPIO
GPIO is a 2-byte field with the following format:
GPIO
GPIO Status GPIO Direction
1 byte 1 byte
Odometer
Odometer is a 4-byte field with the following format:
Odometer
4 bytes
SWversion
SWversion is a 6-byte field which indicates the current release of all software components of a given
device. The format is as follows:
SWversion
Baseband Application
3 bytes 3 bytes
Baseband is a 3-byte field which indicates the software release version of the baseband subsystem. The
field can be expanded to X.Y.Z where X, Y and Z are the individual bytes in the field. If the device does
not include a baseband subsystem, the field is all zeros.
Application is a 3-byte field which indicates the current release of the application running on a given
device. The field can be expanded to X.Y.Z where X, Y and Z are the individual bytes in the field.
Example:
HWversion
HWversion is a 5-byte field which indicates the current release of all the hardware components of a
given product. The format is as follows:
HWversion
I/O is a 2-byte field which indicates the software release version of the I/O processor. The release
version can be expanded to X.Y where X and Y are the individual bytes in the field. If the device does not
include a dedicated I/O subsystem, the field is all zeros.
DeviceConfig
DeviceConfig is a 2-byte field which indicates the version of the product configuration file.
DeviceConfig
Change bit Config Number
1 bit 15 bits
The Config Number is a number` (from 0 to 32767) that indicates the version of the configuration
installed on the device.
The Change Bit is set if the original configuration has been altered with one or more user commands.
Frame Structure
NOTE: Any fields designated as 1-byte/2-byte fields are unsigned integers using the following encoding:
If the 1st byte is less then 0xE0 (decimal 224) then the field size is 1-byte and the value is the value of the
entire byte. If the 1st byte is greater-or-equal to 0xE0 then the field size is 2-bytes and the value is the
value of the lsb 13-bits of the 2-byte field (most-significant byte first).
Start-of-Frame
Start-of-Frame is the character 0x7D. There is no attempt to escape or remove this character if it
appears in the rest of the frame.
TAG
Tag is one byte field that gives information about the frame:
Identification
Identification is a series of bytes, always at least 1 byte long. The 4 msb bits of the identification define
the length and remaining content of the field, as follows:
0x0: The identification is based on the device IMEI (GSM). The total field length will be 8 bytes. The 4 lsb
bits of the first byte and the remaining 7 bytes are interpreted as a series of 15 nibbles representing the
BCD (binary-coded-decimal) representation of the IMEI as expressed in decimal (base-10) format.
0x1: The identification is based on the device MEID (CDMA). The total field length will be 8 bytes. The 4
lsb bits of the first byte will be 0. The remaining 7 bytes are interpreted as a series of 14 nibbles
containing the MEID as expressed in hexadecimal (base-16) format.
Sequence
Sequence is a 2-byte sequential count of the number of generated reports at the time when report was
generated (which may be different from when the report was transmitted). This number can be used by
the server to detect missing reports. The count will start from 0 on a device power-up. The count will
overflow back to 0.
Timestamp
Timestamp is a 4-byte field identifying when the report was generated on the device (which may be
different from when the report was transmitted). The value of the field is an unsigned integer
representing Coordinated Universal Time (UTC) with the following encoding:
<seconds> = <timestamp> % 60
<minutes> = int( <timestamp> / 60 ) % 60
<hours> = int( <timestamp> / (60*60) ) % 24
<days> = 1 + int( <timestamp> / (60*60*24) ) % 31
<months> = 1 + int( <timestamp> / (60*60*24*31) ) % 12 (1 = Jan, 2 = Feb, etc…)
<year> = 2000 + int( <timestamp> / (60*60*24*31*12) )
Event
Event if a 1-byte/2-byte field (see the note on 1-byte/2-byte encoding) that identifies the trigger that
caused the report. The Event codes are listed in the Event Table.
Length
Length is a 1-byte/2-byte field (see the note on 1-byte/2-byte encoding) that indicates the number of
bytes in the <payload>. If the <payload> is 0 then there is no payload. If the payload length extends
beyond the end of the UDP packet, it is an indication that the received UDP packet may have been
unintentionally truncated or corrupted. If the UDP packet contains data beyond the end of the payload,
it is an indication that the received UDP packet may have been unintentionally corrupted or
concatenated with additional data.
Payload
This protocol allows for event dependent data reporting, so that the specific data is determined by the
event. The data is organized as a series of Type-Length-Value (TLV) Items, thus allowing for multiple
items to be included in each message. The format of each item is derived from its Type and is defined in
the Item Structure section. Multiple Items may be concatenated into the same payload.
Item Structure
<type> is a 1-byte/2-byte field that identifies the content and structure of the <value> field.
<length> is a 1-byte/2-byte field indicating the byte count of the <value> field. If the <length> is
0 then there is no <value> field. If any Item <length> extends beyond the end of the entire payload
or UDP packet, it is an indication that the received UDP packet may have been unintentionally truncated
or corrupted. If the UDP packet contains data beyond the end of the frame payload length, it is an
indication that the received UDP packet may have been unintentionally corrupted or concatenated with
additional data.
<value> is a variable length field. Its content is based on the Type of the Item. The Items section
enumerates the defined Types and their corresponding Values.
IMPORTANT NOTE:
When newer revisions of the Application are released, additional Item <type>s may be introduced.
The parser should ignore all unrecognized <type>s and use the <length> parameter to find the
beginning of the next Item. Even if the <type> is recognized by the parser, the parser should use the
<length> parameter to advance to the next Item, rather than relying on counting bytes in the detailed
substructure of the Item.
Any Item may be extended in the future, therefore the parser should not consider the Item to be in
error or corrupted if the length parameter is greater than expected. The parser should simply ignore any
extra data. For any Items that contain a bitmask that describe the field types, the bitmask will always be
defined starting from the lsb. Any bitmask/field entries beyond those already supported by the parser
should be discarded.
Items
General (0x01)
This Item contains several distinct data elements that can indicate device location and status.
<signal> 1 byte
<time> 4 bytes
<lat> 4 bytes
<lon> 4 bytes
<mask> 1 byte
<fields> variable
Time is the Coordinated Universal Time (UTC) associated with the reported device location. If the
Location data is current, this timestamp will match the timestamp in the report header. If the device
location is old because the current location is unavailable, the timestamp will reflect the time of the last
available location. The encoding is the same as the timestamp in the report header.
LAT is a representation of the Latitude sent as encodedLat, a big endian unsigned number.
Decoding: double latitude = ((double)encodedLat / 1000000.0) – 90.0
LON is a representation of the Latitude sent as encodedLon, a big endian unsigned number.
Decoding: double longitude = ((double)encodedLon / 1000000.0) – 180.0
Note: At the time the report is generated, if the device has never fixed a location since power-up, then
Time, Lat, and Lon will report all 0’s.
Mask is a 1-byte field that can indicate additional data in this item. If no additional data is included, the
mask may be omitted entirely. For the report server, the field selection is set by the AT+XRPM
command. For the maintenance server, the field selection is set by the AT+XMRPM command.
Speed+Heading
Speed Heading
1 byte 1 byte
Speed is an unsigned value and indicates the speed of the device in kilometers/hour (km/h).
Heading is an unsigned value and indicates the heading, according to the following formula:
Altitude is a signed field which indicates the altitude of the device in meters. The value can be converted
into feet by multiplying it by 3.28084.
Accuracy:
Reserved Satellites HDOP
4 bits 4 bits 1 byte
Satellites indicates the number of satellites used in the position reports. If the device has never acquired
a valid fix, the reported number of satellites will be zero.
HDOP is an indication of the quality of the received signal. The reported value must be divided by 10 to
obtain the actual HDOP.
Voltage:
External-Voltage Internal-Voltage
1 byte 1 byte
External-Voltage is the voltage (in units of 200mV) of the external supply.
Internal-Voltage is the voltage (in units of 50mV) of the internal battery.
Status is an 8-bit vector of the GPIO status. The mapping of the bits to hardware GPIO will depend on
the specific hardware.
Power Trip Ignition Motion rerserved reserved reserved Tamper
1 bit 1 bit 1 bit 1 bit 1 bit 1 bit 1 bit 1 bit
Power is a flag that indicates the current power source, 0=external, 1=internal
Trip is a flag that indicates the trip status, 0=not in a trip, 1=in a trip
Ignition is a flag that indicates the ignition status, 0=vehicle off, 1=vehicle on
Motion is a flag that indicates the motion status, 0=not-in-motion, 1=in-motion
Tamper is a flag that indicates the device has been tampered with after installation, 0 = not-tampered, 1
= tampered
Network (0x11)
This Item contains several distinct data elements that can indicate device location.
<selector> 1 byte
<mask> 1 byte
<fields> variable
The <selector> field identifies the field definitions that will be in the mask. The selector is
determined by the type of cellular modem.
The <mask> indicates which fields are present in the <fields> field. The interpretation of the mask
will depend on the selector.
The following table provides the mask decoding for <selector>=0, for CDMA, GSM
Service:
Roaming Service-Type
1 bit 7 bits
Roaming is an indication of the roaming status. A ‘0’ indicates no roaming (and/or no service). A ‘1’
indicates roaming service.
Service-Type is an indication of the type of cellular service:
0 No Service
1 CDMA
2 GPRS
3 HSPA
4 LTE-Cat1
5 LTE-CatM
MxCC:
MCC MNC
2 bytes 2 bytes
Tower-CDMA: SID/NID/BID
SID NID BID
2 bytes 2 bytes 2 bytes
TowerID-GSM:LAC/RNC/CI
LAC RNC CI
2 bytes 2 bytes 2 bytes
Centroid:
Lat Lon
4 bytes 4 bytes
Band-CDMA: BCx,Chan,PPN
BCx Chan PPN
1 byte 2 bytes 2 bytes
BCx is the frequency band code
Chan is the channel number within the frequency band
PPN is the subchannel
Band-GSM: ARFCN,BCID
BCIC ARFCN reserved
1 byte 2 bytes 2 bytes
RSSI is the cellular Received Signal Strength Indicator. A value of 99 indicates no service.
TX/RX/EC-IO
TX RX EX/IO
2 bytes 2 bytes 2 bytes
This Item contains several distinct data elements that can indicate device location.
<selector> 1 byte
<mask> 1 byte
<fields-0> variable
<fields-1> variable
<fields-2> variable
…
The <selector> field identifies the field definitions that will be in the mask. The selector is
determined by the type of cellular modem.
The <mask> indicates which fields are present in the <fields> field. The interpretation of the mask
will depend on the selector.
<fields> are an array of network status fields, one for each neighbor. The definition of each field is
the same as for the Network TLV
Odometer (0x41)
This Item contains the odometer, which is a running total of distance traveled by the device. The 4-byte
field is an unsigned integer representing the distance traveled in units of 0.1km.
This item contains information about the GPIO on the device external connector, including the direction
of each GPIO, and the value of each GPIO.
<GPIO_0-3> 1 byte
GPIO: If the device has up to 4 GPIO then they will be represented in 1-byte.
In/Out:
0 for output (regardless of high impedance input, pullup resistor, pulldown resistor)
1 for input and bidirectional (including drive hi/lo, open-drain)
Value:
For input:
0 = input driven low (or external pin is floating and pin is configured to pull low)
1 = input driven high (or external pin is floating and pin is configured to pull high)
For output:
0 = output is driven low or open drain output is floating
1 = output is driven high or open drain output is driving (to ground)
Version (0x100)
The first byte of this field is a <selector> byte. The remainder of the field is defined by the selector. The
following mapping shows the <selector> usage:
If the <selector> is 1, the remainder of this Item is composed of the following fields:
Selector HID O/S App Extender
1 byte = 0x01 3 bytes 4 bytes 5 bytes 4 bytes
HID is a 3-byte value indicating the hardware model and revision of the device. This is internally
composed of a 2-byte Model and 1-byte Revision code, MM.R.
O/S is a 4-byte value indicating the revision of the operating system. This is internally composed of 1-
byte Major, Middle, Minor, and Build components X.Y.Z.B.
App is a 5-byte value indicating the version and revision of the Application. This is internally composed
of 1-byte Type, Major, Middle, Minor, and Build components T.X.Y.Z.B
Extender is a 4-byte value indicating the revision of the Extender firmware. This is internally composed
of a 1-byte Major, Middle, Minor, and Build components X.Y.Z.B.
The device can be set to request that the server acknowledges the UDP packets. This is accomplished by
setting Bit 7 in the Tag (refer to Tag on page 60 or 73). When operating in this mode, a status report will
be re-sent over and over until a matching acknowledgement is received from the server.
<start_of_frame><length><protocol_id><tag>[<identification>]