all | frequencies |
|
|
|
|
|
exhibits | applications |
---|---|---|---|---|---|---|---|---|
manuals | photos | label |
app s | submitted / available | |||||||
---|---|---|---|---|---|---|---|---|
1 |
|
User Manual | Users Manual | 619.37 KiB | February 19 2021 / August 21 2021 | delayed release | ||
1 |
|
User Manual Regulatory Statements | Users Manual | 140.49 KiB | February 19 2021 / August 21 2021 | delayed release | ||
1 |
|
Internal Photos | Internal Photos | 348.28 KiB | February 19 2021 / August 21 2021 | delayed release | ||
1 |
|
External Photos | External Photos | 440.94 KiB | February 19 2021 / August 21 2021 | delayed release | ||
1 |
|
Product Label | ID Label/Location Info | 53.91 KiB | February 19 2021 / February 22 2021 | |||
1 | Block Diagram | Block Diagram | February 19 2021 | confidential | ||||
1 |
|
Co-location Test Report | Test Report | 1.04 MiB | February 19 2021 / February 22 2021 | |||
1 |
|
Confidentiality Request Letter (Long-term) | Cover Letter(s) | 185.75 KiB | February 19 2021 / February 22 2021 | |||
1 |
|
Confidentiality Request Letter (Short-term) | Cover Letter(s) | 215.97 KiB | February 19 2021 / February 22 2021 | |||
1 | Operational Description | Operational Description | February 19 2021 | confidential | ||||
1 |
|
Product Certification Representative Auth Letter | Cover Letter(s) | 122.29 KiB | February 19 2021 / February 22 2021 | |||
1 |
|
RF Exposure Report | RF Exposure Info | 537.86 KiB | February 19 2021 / February 22 2021 | |||
1 | Schematics | Schematics | February 19 2021 | confidential | ||||
1 |
|
Test Report | Test Report | 1.92 MiB | February 19 2021 / February 22 2021 | |||
1 |
|
Test Setup Photos | Test Setup Photos | 608.06 KiB | February 19 2021 / August 21 2021 | delayed release |
1 | User Manual | Users Manual | 619.37 KiB | February 19 2021 / August 21 2021 | delayed release |
XT2500 Product Manual
XT2500
Product Manual
Firmware Version: 1183DA2.4
Revised February 08, 2021
CONFIDENTIAL AND PROPRIETARY
Page 1 | 92
2.1. Configure Device Via PC (RS232 to USB)
XT2500 Product Manual
TABLE OF CONTENTS
1. Functional Description
1.1. Overview
1.2. Mechanical
2. Device Setup
3. Interfaces
3.1. UART
4. Device Configuration
4.1. APNs (apn)
4.2. OBD Accel and Decel (oad)
4.3. OBD RPM and Speed Events (ors)
4.4. OTA Prevent (ota)
4.5. Bluetooth Enabled (blt)
4.6. Buzzer Songs (bzr)
4.7. Destination (dst)
4.8. Generic Config Value (gcv)
4.9. Input Default Polarity (idp)
4.10. Motion Sensitivity (mst)
4.11. Serial Port Settings (sps)
4.12. Timer Duration (tmr)
4.13. Packet Creation Recipe (pcr)
4.14. Third-Party Config Values (tpv)
4.15. GPS Solution Filter (gsf)
4.16. Vehicle Bus Configuration (vbs)
5. Interpreter
5.1. Language
4
4
4
5
5
6
6
7
8
9
10
11
12
13
13
14
15
16
16
18
19
19
21
22
24
24
CONFIDENTIAL AND PROPRIETARY
Page 2 | 92
5.2. Interpreter Scripting Trigger Block Examples
XT2500 Product Manual
5.3. Packet Recipe
6. Command Language
6.1. Overview
6.2. Commands via UDP
6.3. Verb and Module
6.4. Object
6.5. Arguments
6.6. Device Command Modules
6.7. California Proposition 65 Warning
36
37
76
76
76
76
76
77
79
92
CONFIDENTIAL AND PROPRIETARY
Page 3 | 92
XT2500 Product Manual
1. FUNCTIONAL DESCRIPTION
1.1. OVERVIEW
The XT2500 series is a plug-n-play universal vehicle tracking unit (VTU) for use in light duty/passenger vehicles.
The XT2500 also suits clientele with large fleets of heavy duty trucks with 9-pin/6-pin Deutsch connectors (RP1226
for newer trucks) via a cable harness/adapter. the XT2500 utilizes a cellular modem, a Bluetooth modem, a
GPS modem, and an integrated accelerometer to collect information about the vehicle for a variety of
applications.
One key benefit of the XT2500 is the flexibility of the device, allowing it to suit an individual client’s desires. The
device can be expanded by connecting to an external XT1065 I/O box. The XT1065 I/O box includes additional
interfaces such as digital inputs, digital outputs, analog inputs, RS232 interface, and Dallas/Maxim 1-wire
interface. The XT2500 is a versatile device that can include an optional Bluetooth interface for ELD applications
and optional internal battery and buzzer for driver behavior alerts. The XT2500 devices can be controlled through
various channels, ranging from simple system parameters to more complex device interpreter scripts, which offer
maximum customization as they are written completely by the customer.
1.2. MECHANICAL
Mechanical
Dimensions
Weight
Physical Connections
Operating Temperature
2.63” x 1.49” x 1.06” (6.7 x 5.3 x 2.7 cm)
2 oz. (57 g)
J1962 (with adapters available)
-25°C to 70°C (-13°F to 158°F)
CONFIDENTIAL AND PROPRIETARY
Page 4 | 92
XT2500 Product Manual
2. DEVICE SETUP
2.1. CONFIGURE DEVICE VIA PC (RS232 TO USB)
1. Connect the device to a variable power supply.
2. Set the power supply to output average 12 volts and verify the device is drawing current after it has
powered up (the device will automatically switch on when it receives power).
3. Open "Device Manager" on windows and click the drop-down next to "Ports (COM & LPT)".
4. Attach a USB to RS232 coverter (Ex. USB-RS232-0.0) cable to a port on the computer and pins 17 and 18 of
the 24-pin connector.
NOTE: A "USB Serial Device" and the associated COM number should appear under "Ports". If
nothing shows up, unplug the connection to the Device, flip it over, and plug it back in. Take
note of the COM port number.
5. Open Secure CRT and double-click on the session with the correct COM port number. This should connect
the device to the terminal.
6. Right-click the session and go to "Properties".
7. Ensure the following is set for the session:
a. Connection > Protocol > Serial
b. Connection > Serial > Baud rate > 115200
c. Terminal > Check Auto reconnect
d. Terminal > Emulation > Terminal [VT100]
8. Click "Okay".
NOTE: The device should now be connected to the terminal and commands can be sent.
CONFIDENTIAL AND PROPRIETARY
Page 5 | 92
XT2500 Product Manual
3. INTERFACES
3.1. UART
XT2500 devices include a 2-wire asynchronous serial interface (UART) operated through RS232 for communication
with a host device. RS232 interface is TIA/EIA-232-F compliant and will accept 0-5V signaling. The UART interface is
a 3.0V TTL interface conforming to the ITU-T V.24 recommendation, with CMOS compatible signal levels (0V for
low data bit or ON state and 3.0V for high data bit or OFF state). If the
l The default baud rate is 115200 bits/s
l The default frame format is 8N1 (8 data bits, no parity, 1 stop bit)
l The interface does not support flow-control
The UART interface is active and requires no authentication by default. AES-128 challenge/response
authentication can be enabled by enabling the console-authentication bit in the firmware flags setting of the
device description.
CONFIDENTIAL AND PROPRIETARY
Page 6 | 92
XT2500 Product Manual
4. DEVICE CONFIGURATION
System parameters are designed to be non-volatile and have the ability to be updated through a serial
connection, USB, SMS, UDP and are used for many modules within the device. All system parameters (aka
configs, params) have a default value that can always be restored in case the device ends up in an unknown
state.
The following two commands will be most relevant when dealing with the following configurations:
l :rycfg -- Used to read a system configuration
l :wycfg -- Used to write a system configuration
When using either of these commands, you must specify what configuration slot you wish to read/write,
otherwise the console will default to the first slot (index[0]). In the case that the desired parameter does not have
a factory default setting (configs PCR, PCA, & GFN) the console will not default to the first slot unless it has
already been written.
Example:
:wycfg tmr 30 0
:OK
:rycfg dst
| dst[0]: addr:"us.address.com", port:1234 (0x4d2)
: OK
CONFIDENTIAL AND PROPRIETARY
Page 7 | 92
The APN parameter contains settings for APN gateway, username, and password.
XT2500 Product Manual
4.1. APNS (APN)
Configuration instances: 4
Command Type
SET
READ
Parameter
apn_name
Range
64 Char
username
password
32 Char
32 Char
Syntax
Command
:wycfg apn[x] "<apn_name>" "<username>" "<password>"
Response
:OK
Command
:rycfg apn[x]
Response
| apn[x]: name:"<apn_name>", user:"<username>", passwd:"<password>"
:OK
Description
The name of the APN gateway used for GSM, GPRS, 3G and 4G cellular
networks. Examples of APN's are as follows:internet.t-mobile, wap.cingular,
internet.mnc012.mcc345.gprs
If instances 1 to 3 are configured as "disabled", the given slot will be skipped
during APN hunting procedures.
NOTE: For 4G AT&T modules, a blank APN configuration triggers a network-
pushed APN.
The username used to access the APN given by the first argument.
The password used to access the APN given by the first argument.
CONFIDENTIAL AND PROPRIETARY
Page 8 | 92
XT2500 Product Manual
4.2. OBD ACCEL AND DECEL (OAD)
Configuration instances: 2
Command Type
SET
READ
Syntax
Command
:wycfg oad[x] <rate>
Response
:OK
Command
:rycfg oad[x]
Response
| oad[x]: accdec:<rate> (hex_val)
:OK
Parameter
rate
Descriptions
rate is measured in .1 mph
Instance
oad[0]
Range
10 to 200
Description
OBD acceleration threshold.
oad[1]
10 to 200
Speed rate of change to exceed on acceleration to
declare Hard Acceleration Event
OBD deceleration threshold.
Speed rate of change to exceed on deceleration to
declare Hard Deceleration Event
CONFIDENTIAL AND PROPRIETARY
Page 9 | 92
XT2500 Product Manual
4.3. OBD RPM AND SPEED EVENTS (ORS)
Configuration instances: 2
Command Type
SET
READ
Syntax
Command
:wycfg ors[x] <threshold> <time sec>
Response
:OK
Command
:rycfg ors[x]
Response
| ors[x]: thresh:<threshold> (hex_val), time:<time sec> (hex_val)
:OK
Instance
ors[0]
Description
RPM Threshold
Parameter
threshold
time sec
Range
0 (disable), 100
to 20000
1 to 60
Description
RPM in 1 rpm to exceed
Time RPM must be greater than threshold to
declare an RPM Exceeded Event
ors[1]
Speed Threshold
Parameter
threshold
Time sec
Range
0 (disable),
20 to 150
1 to 60
Description
Speed in 1 mph to exceed
Time Speed must be greater than threshold to declare
a Speed Exceeded Event
CONFIDENTIAL AND PROPRIETARY
Page 10 | 92
XT2500 Product Manual
4.4. OTA PREVENT (OTA)
Configuration instances: 1
Command Type
SET
READ
Syntax
Command
:wycfg ota <enable_mask>
Response
:OK
Command
:rycfg ota <enable_mask>
Response
| ota: enable:<enable_mask>
:OK
Parameter
enable_mask
Description
Hex
0x0
0x1
0x2
Description
OTA is not prevented due to OBD Communications state or TPS Transfer
Prevent OTA when OBD Communications are Active (OBD
Communications detected)
Prevent OTA when TPS Transfer is Active (TPS Transfer is in progress)
CONFIDENTIAL AND PROPRIETARY
Page 11 | 92
The Bluetooth Enabled configuration sets the Bluetooth communication state.
XT2500 Product Manual
4.5. BLUETOOTH ENABLED (BLT)
Configuration instances: 1
Command Type
SET
READ
Syntax
Command
:wycfg blt <enable>
Response
:OK
Command
:rycfg blt
Response
| blt: en:<enable> (hex_val)
:OK
Param
enable
Description
Enables Bluetooth:
Value
0
1
Description
Disables bluetooth communications
Enables bluetooth communications
CONFIDENTIAL AND PROPRIETARY
Page 12 | 92
XT2500 Product Manual
4.6. BUZZER SONGS (BZR)
Configuration instances: 10
Command Type
SET
READ
4.7. DESTINATION (DST)
Configuration instances: 10
Command Type
SET
READ
The Buzzer Songs configuration sets the frequency and duration of up to 8 notes on the device buzzer.
Syntax
Command
:wycfg bzr[x] <frequency1> <duration1> ... <frequency8> <duration8>
Response
:OK
Command
:rycfg bzr[x]
Response
| bzr[x]: freq1:<frequency1> (hex_val), dur1:<duration1> (hex_val), ...
freq8:<frequency8> (hex_val), dur8:<duration8> (hex_val)
:OK
Param
frequencyX
durationX
Range
0 to 65535
0 (disable),
10-6535
Description
A frequency that corresponds to the Xth note to be played (Hz); 0 is silent.
The duration of the Xth note to be played (ms)
The dst[9] instance is utilized for all Device Manager interactions, including device Checkin Messages; configure
accordingly.
Syntax
Command
:wycfg dst[x] "<ip>|<hostname>|<local serial>" <port_number>
Response
:OK
Command
:rycfg dst[x]
Response
| dst[x]: addr:"<ip>|<hostname>|<local serial>" port:<port_number> (hex_val)
:OK
CONFIDENTIAL AND PROPRIETARY
Page 13 | 92
XT2500 Product Manual
Parameter
<ip>|<hostname>|
<local serial>
Range
64 Characters
Description
This id is the location specified by the dst. It can take the form of
an IP address (192.0.0.0), a hostname limited to 64
characters, or a local serial port. The valid local serial ports are as
follows:
l "SERIAL_AUX0"
l "SERIAL_AUX1"
l "USB"
port_number
1 to 65533
If using an IP address or a hostname, can be used to specify the
port on which to connect.
4.8. GENERIC CONFIG VALUE (GCV)
Configuration instances: 64
Command Type
SET
READ
Syntax
Command
:wycfg gcv[x] <unsigned_long>
Response
:OK
Command
:rycfg gcv[x]
Response
| gcv[x]: value:<unsigned_long> (hex_val)
:OK
Parameter
unsigned_
long
Range
0 to
4494967295
Description
A generic configuration value accessible within a script.
CONFIDENTIAL AND PROPRIETARY
Page 14 | 92
XT2500 Product Manual
4.9. INPUT DEFAULT POLARITY (IDP)
l idp[0] -> PUD on user input 1
l idp[1] -> PUD on user input 2
l idp[2] -> PUD on user input 3
l idp[3] -> PUD on user input 4
Configuration instances: 4
Command Type
SET
READ
Syntax
Command
:wycfg idp[x] <pullup_disable>
Response
:OK
Command
:rycfg idp[x]
Response
| idp[x]: polrty:<pullup_disable> (hex_val)
:OK
Parameter
Input active
level
Range
0 to 1
Description
Sets the corresponding user input "active" level by engaging an external
pullup ('0') or pulldown ('1') on corresponding that user input.
An idp setting of '1' means the user input is configured active high, so the
user input is pulled down when not driven by external influences.
An idp setting of '0' means the user input is configured active low, so the user
input is pulled up when not driven by external influences.
CONFIDENTIAL AND PROPRIETARY
Page 15 | 92
XT2500 Product Manual
4.10. MOTION SENSITIVITY (MST)
Configuration instances: 1
Command Type
SET
READ
Syntax
Command
:wycfg mst <motion_sensitivity_value>
Response
:OK
Command
:rycfg mst
Response
| mst: motion:<motion_sensitivity_value> (hex_val)
:OK
Parameter
motion_
sensitivity_
value
Range
1 to 2000
Description
Configure accelerometer motion sensitivity in thousandths of a unit of
gravity.
4.11. SERIAL PORT SETTINGS (SPS)
l sps[0] -> Aux port 0
l sps[1] -> Aux port 1
Configuration instances: 2
Command Type
SET
READ
Syntax
Command
:wycfg sps[x] <baudrate> <dps_value> <mode_value> <console_print>
Response
:OK
Command
:rycfg sps[x]
Response
| sps[x]: baud:<baudrate> (hex_val), dps:<dps_value> (hex_val), mode:<mode_value>
(hex_val), conprt:<console_print> (hex_val)
:OK
CONFIDENTIAL AND PROPRIETARY
Page 16 | 92
XT2500 Product Manual
Parameter
baudrate
Range
N/A
Description
Acceptable baudrates:
l 115200 bit/sec
l 57600 bit/sec
l 38400 bit/sec
l 19200 bit/sec
l 9600 bit/sec
l 4800 bit/sec
l 2400 bit/sec
l 1200 bit/sec
Value
0
3
6
Value
0
1
Description
(ASCII)
(Binary)
dps_value
Mode_value
3 Char
N/A
Acceptable dps values: 8N1
Acceptable mode values:
Description
Console
Garmin
Aux Passthru -- Only one serial port can be an Aux Passthru
at any given time.
Console_print
N/A
Scripted console print from BuildAndSend() format
CONFIDENTIAL AND PROPRIETARY
Page 17 | 92
XT2500 Product Manual
4.12. TIMER DURATION (TMR)
Configuration instances: 32
Command Type
SET
READ
Syntax
Command
:wycfg tmr[x] <Duration> <auto_start>
Response
:OK
Command
:rycfg tmr[x]
Response
| tmr[x]: sec:<Duration> (hex_val), flags:<auto_start> (hex_val)
:OK
Parameter
Duration
auto_start
Range
0 to
4294967295
N/A
Description
The time that is set as the duration of the timer (s)
Determines if the timer is set to start automatically or needs to be
manually started.
Index
0
1
Description
Disables autostart
Enables autostart
CONFIDENTIAL AND PROPRIETARY
Page 18 | 92
XT2500 Product Manual
4.13. PACKET CREATION RECIPE (PCR)
Configuration instances: 128
Command Type
SET
READ
Syntax
Command
:wycfg pcr[x] "<recipe_hex_string>"
Response
:OK
Command
:rycfg pcr[x]
Response
| pcr[x]: resipe_hex_string:"<recipe_hex_string>"
:OK
NOTE: This parameter does not have a factory default setting.
Parameter
recipe_hex_string
Description
Refer to Packet Creation Recipe for configuration details
4.14. THIRD-PARTY CONFIG VALUES (TPV)
Configuration instances: 1
Command Type
SET
READ
Syntax
Command
:wycfg tpv <dst_index> <checkin_freq> <pid_list_1> <pid_list_2> <Flag_value>
Response
:OK
Command
:rycfg tpv
Response
| tpv: index:<dst_index> (hex_val), checkin:<checkin_freq> (hex_val), pidlst1:<pid_
list1>, pidlst2:<pid_list2>, flag:<Flag_value> (hex_val)
:OK
Parameter
dst_index
Range
0 to 9
Description
Destination config index that points to the Xirgo Gateway Server
CONFIDENTIAL AND PROPRIETARY
Page 19 | 92
XT2500 Product Manual
Parameter
checkin_freq
Pid_list_1
Range
0 to 255
0x0 to
0xFFFFFFFF
Description
Time in hours for periodic check to gateway server
Bit list for supported pids 1 to 32
Hex
0x8000000
0x4000000
0x2000000
0x1000000
0x0800000
0x0400000
0x0200000
0x0100000
0x0080000
0x0040000
0x0020000
0x0010000
0x0008000
0x0004000
0x0002000
0x0001000
0x0000800
Description
Odometer (miles) (ppid 1 0x74)
Oil Life (%) (ppid 2 0x75)
TPMS LF (psi) (ppid 3 0x76)
TPMS RF (psi) (ppid 4 0x77)
TPMS LR (psi) (ppid 5 0x78)
TPMS RR (psi) (ppid 6 0x8E)
TPMS LRI (psi) (ppid 7 0x90)
TPMS RRI (psi) (ppid 8 0x90)
TPMS SPR (psi) (ppid 9 0x91)
Seatbelt D (ascii) (ppid 10 0x92)
Seatbelt P (ascii) (ppid 11 0x9c)
Fuel Level (%) (0x5A)
Airbag Lamp (ascii) (ppid 12 0x9d)
PRNDL (ascii) (ppid 13 0x9e)
Parking Brake State (ascii) (ppid 14 0x9F)
Parking Brake Lamp (ascii) (ppid 15 0xA0)
0x000001 (reserved)
Pid_list_2
Flag
0x0 to
0xFFFFFFFF
0 to 255
Reserved
Bit list for supported PIDs (32 to 32) <reserved>
CONFIDENTIAL AND PROPRIETARY
Page 20 | 92
XT2500 Product Manual
4.15. GPS SOLUTION FILTER (GSF)
Configuration instances: 1
Command Type
SET
READ
Syntax
Command
:wycfg gsf <year> <DOP> <HACC> <speed_mask>
Response
:OK
Command
:rycfg gsf
Response
| gsf: year:<year> (hex_val), HDOP:<DOP> (hex_val), HACC:<HACC> (hex_val),
mask:<speed_mask> (hex_val)
:OK
Parameter
year
DOP
Range
1000 - 5000
0 to 200
Description
Any solution with a reported year before this will be filtered out
Any solution with an HDOP (or PDOP on some systems) above this
value will be filtered out.
HACC
speed_mask
0 to 255
0x0 to
0xFFFFFFFF
Units 0.1DOP. “20” means 2.0
Horizontal accuracy. Not applicable (ignored) for XT2500
speed filter mask allows for filtering speed (clamps to 0) under various
conditions
Hex
0x01
Description
QUALITY:
If speed < 10MPH and num_sats < 7, speed is clamped
to 0. If speed < 5MPH and num_sats < 9, speed is
clamped to 0.
MOTION:
If motion state is stopped then the speed is clamped
to 0
MOVEMENT:
If movement state is stopped then the speed is
clamped to 0
IGNITION:
If ignition state is off then the speed is clamped to 0
0x02
0x04
0x08
CONFIDENTIAL AND PROPRIETARY
Page 21 | 92
XT2500 Product Manual
4.16. VEHICLE BUS CONFIGURATION (VBS)
Configuration instances: 1
Command Type
SET
READ
Syntax
Command
:wycfg vbs <detect_mask> <start_mask> <mode>
Response
:OK
Command
:rycfg vbs
Response
| gsf: detect:<detect_mask> (hex_val), start:<start_mask> (hex_val), mode:<mode>
(hex_val)
:OK
Parameter
detect_mask
Range
0x0 to
0xFF
Description
8 bits, hex mask. (Default: 0xFF)
start_mask
0x0 to
0xFFFF
Description
Hex
Query Vin first time ignition on a vehicle
0x01
N/A
0x02
0x04
Big hammer trip end.
16 bits, hex mask. (Default: 0xFFFF)
0x0010
Hex
0x0001
0x0002
0x0004
0x0008
Description
Query Fuel level on trip start
Query DTC on trip start
N/A
OBD-II backoff (Listens for obd-II requests that are coming
from external sources)
Proprietary backoff (Listens for obd-II requests that are
coming from proprietary sources)
Diagsession backoff (Listens for diagnostic session start
requests)
TP backoff (Listens for diagnostic tester present or “keep
alive” requests)
Security backoff (Listens for secure diagnostic session start
request)
See table below for what values to set.
0x0080
0x0020
0x0040
mode
0 to 255
CONFIDENTIAL AND PROPRIETARY
Page 22 | 92
XT2500 Product Manual
VBUS Mode
Value
0
Description
Use Case
OBD-II
Use this mode when you are sure you will be connected to a
passenger vehicle.
Supported transports per commlink:
PPID Mode
Commlink0: J1850, Kline, HS Can
Use this mode when you are sure you will be connected to a
passenger vehicle, and want to enable proprietary PID collection.
Supported transports per commlink:
Commlink0: HS Can
Commlink1: MS Can, SW Can
Heavy Duty
Mode
Commlilnk2: Kline
Use this mode when you are sure you will be connected to a heavy-
duty truck.
Supported transports per commlink:
Commlink0: J1939, HS Can (Vin collection)
J1708 Only
Mode
Commlink1: J1939, J1708
Use this mode when you are sure you will be connected to a heavy-
duty truck with the 6 pin adapter cable.
Supported transports per commlink:
1
2
3
129
Auto-Detect
Mode
Commlink0: J1708
Use this mode when you are not sure if you will be connected to a
heavy-duty truck or a passenger vehicle.
Supported transports per commlink:
Commlink0: J1850, Kline, HS Can, J1939
255
Disable
Commlink1: J1939, J1708
To disable all OBD comms
CONFIDENTIAL AND PROPRIETARY
Page 23 | 92
XT2500 Product Manual
5. INTERPRETER
5.1. LANGUAGE
5.1.1. Interpreter Language Basics
Overview
Certain Xirgo products contain functionality to run user-created scripts. This allows functionality to be tuned and
changed without needing Firmware updates. The device runs an interpreter which ‘interprets’ byte code that has
been compiled from a human readable script. This document describes the language/syntax used for this script.
Byte-Code Characteristics
Blocks
Script
Trigger
Description
Each Script Block can contain unlimited Trigger Blocks (limited only by memory reserved
for byte code on device itself).
Each Trigger Block has one Trigger Block Test. A test is usually made of one comparison,
but the language also allows to use more than one comparison in which the test is true if
ANY of the comparisons are true or if ALL the comparisons are true. A Trigger Block Test
may contain up to 2 comparisons.
Conditional
Action
NOTE: Each Trigger Block can contain unlimited Conditional Action Blocks.
Each Conditional Action Block may optionally contain one Conditional Action Block Test. A
Conditional Action Block Test may contain up to 5 comparisons (Using same “any” or “all”
logic as described for Trigger Block Test).
Action
NOTE: Each Conditional Action Block must contain one Action Block.
Each Action Block can contain 1 – 3 Actions
How Trigger Block Tests Work
Each Trigger Block is entered when the Trigger Block Test becomes true. The Trigger Block is not entered WHILE
the test is true, only the moment it becomes true.
Example: If you want to trigger actions when vehicle speed goes above 80 KPH:
trigger when Gt(GPSSpeed, 800) [Debounce(0, 0)]
...
The interpreter will enter the trigger block the moment the vehicle speed increases above 80 KPH. It will not
continue to enter the trigger block during subsequent evaluations where the speed remains above 80 KPH. Once
the speed drops below 80 (for at least one evaluation), then the trigger block will be entered again next time the
speed increases above 80 KPH.
CONFIDENTIAL AND PROPRIETARY
Page 24 | 92
XT2500 Product Manual
NOTE: if the speed oscillates between 80.0 and 80.1 kmh it is possible to cause the actions to be
executed as frequently as the speed oscillates. In order to avoid this, make use of the
debounce specifiers.
How Conditional Action Block Tests Work
Unlike Trigger Block Tests, Conditional Action Block Tests allow the action to be performed WHILE the test is true.
Continuing with the example above, let’s say we want to further limit our actions to only execute the moment
speed goes above 80 kmh AND the vehicle heading is within 10 degrees of North:
trigger when Gt(GPSSpeed, 800) [Debounce(0, 0)]
condact any InRange(GPSHeading, 3500, 3600) [Debounce(0, 0)]
InRange(GPSHeading, 0, 100) [Debounce(0, 0)]
actions
...
5.1.2. Compiling scripts with ILC
1. Type the script (as noted above) with your text editor and save as a text file with .txt file extension.
2. Recommended: Put both ilc.exe and your script <name>.txt in the same folder.
3. Start your preferred command line terminal (cmd.exe or powershell).
4. Change directory to the folder where your script is located.
Example command prompt:
cd USERPROFILE\Documents\XT6300\Scripts for cmd.exe or cd
env:USERPROFILE\Documents\XT6300\Scripts for powershell
5. Run ilc.exe from the command line: ilc.exe <name>.txt (If "Interpreter script format OK" appears at the
end, your script was successfully compiled).
Example Command Prompt
0x40 SMALL_CONST_VALUE (value: 0)
TOK_NUMBER: “22”
TOK_NUMBER: “0”
0x56 SMALL_CONST_VALUE (value: 22)
0x40 SMALL_CONST_VALUE (value: 0)
CONFIDENTIAL AND PROPRIETARY
Page 25 | 92
XT2500 Product Manual
TOK_NUMBER: “2”
0xe0 INTERP_END
0x42 SMALL_CONST_VALUE (value: 2)
binary script size: 134
file size: 142
file name: network_testing_script.bin
Interpreter script format OK
ilc v2.16
NOTE: Using Windows to drag the .txt file onto the ilc.exe as a means of execution will always result
in a .bin file being generated, even if the compiler failed. It is recommended instead to
always run ilc.exe from a command line interface.
5.1.3. Upload and Run Scripts
1. Connect to the device using standard USB-to-Serial or USB-to-RS232 cabling.
2. Open the terminal emulator program (ZOC or similar) and connect to active COM port.
3. Ensure connectivity by issuing the command :qti.
4.
Issue command to start script upload: :grscr x <port_index> where port_index is one of the
following:
Index
0
1
2
Description
USB Port
RS232 1
RS232 2
5. Upload your script file (<name>.bin) using your terminal emulator program via Xmodem.
NOTE: your compiled script must be less than 16 KB in order to be loaded onto the device.
CONFIDENTIAL AND PROPRIETARY
Page 26 | 92
XT2500 Product Manual
:OK
:grscr x 0
:OK
Erasing FLASH memory
Waiting for Xmodem Start (Ctrl-D twice to cancel)
Starting xmodem transfer. Press Ctrl+C to cancel.
Transferring V_Script_Nov_102015_JB.bin...
100% 572 bytes 572 bytes/sec 00:00:01 0 Errors
Interpreter Script Download Successful
Interpreter Script Stored in ChipFlash
5.1.4. Interpreter Commands
All language elements presented in this section are case sensitive.
Definitions
Keyword
Comments
Numbers
Debounce
Specify
Keywords
Keyword
trigger
condact
when
any
all
always
Definition
Comments start with the pound (#) character and continue until the end of the line.
Numbers can be specified in decimal (e.g., 0, 1, 100, 256, -359) or in hex when the value is
non-negative (e.g., 0x0, 0x1, 0x64, 0x100)
Debounce(<hi>, <lo>) - where hi and lo are specified in seconds (max 15). The 'Debounce
Specify' element is only used following certain tests (see below). When a debounce is
specified, it means that a test is true only AFTER the comparison is true for hi seconds and
false AFTER the comparison is false for lo seconds.
NOTE: NOTE: A test debounce MUST be specified any time the first argument in the test is either a
system value or a special function; it’s the script designer’s responsibility to input
appropriate values for hi and lo.
Description
Denotes the start of a Trigger Block
Denotes the start of a conditional Action Block
Denotes the start of a test when only one comparison is used
Use when grouping multiple comparisons; test is true when ANY of the comparisons are true
Use when grouping multiple comparisons; ALL comparisons must be true for test to be true
Use when there are no tests for a Conditional Action Block. The actions inside a Conditional
Action Block will ALWAYS run when the Trigger Block's test(s) are true.
CONFIDENTIAL AND PROPRIETARY
Page 27 | 92
XT2500 Product Manual
Keyword
actions
run
Description
Denotes the start of an Action Block
Denotes the start of a single Action
Description
Bitwise NOT (one's compliment) of argument a
Bitwise AND of arguments a and b
Bitwise OR of arguments a and b
Bitwise XOR of arguments a and b
Shift the contents of argument a by the value of argument b; i.e., if b is negative the
shift is Left, and if B is positive the shift is Right
Arithmetic addition of arguments a and b
Arithmetic subtraction of argument b from a
Arithmetic multiplication of arguments a and b
Description
True when argument a is between argument b and argument c (inclusive)
True when a is less than b or a is greater than c; b must be less than a
True when a equals b
True when a is not equal to b
True when a is greater than b
True when a is less than b
True when a is greater than/equal to b
True when a is less than/equal to b
Test items <a>, <b>, and <c> below should be one of the following:
Transforms
Script Language
BitNot(<a>)
BitAnd(<a>, <b>)
BitOr(<a>, <b>)
BitXor(<a>, <b>)
BitShift(<a>, <b>)
Add(<a>, <b>)
Subtract(<a>,
<b>)
Multiply(<a>,
<b>)
Tests
Script Language
InRange(<a>, <b>, <c>)
NinRange(<a>, <b>, <c>)
Eq(<a>, <b>)
Neq(<a>, <b>)
Gt(<a>, <b>)
Lt(<a>, <b>)
GtEq(<a>, <b>)
LtEq(<a>, <b>)
l System Value
l Event
l Special Function
l Numbers (constants)
CONFIDENTIAL AND PROPRIETARY
Page 28 | 92
XT2500 Product Manual
System Values
Script Language
UnixTime
GPSLat
GPSLon
GPSAlt
GPSHeading
GPSSpeed
Inputs
Outputs
GSPTripOdom1
OdomDelta
GPSHDOP
GPSNumSats
InternVoltage
BattVoltage
GPSLifetimeOdom
GPSOdom
OBDLifetimeOdom
OdomDiff
WakeReason
Events
Description
Maps directly to UnixTime packet field (ID: 0x06)
Maps directly to Latitude packet field (ID: 0x07)
Maps directly to Longitude packet field (ID: 0x08)
Maps directly to Altitude packet field (ID: 0x09)
Maps directly to Heading packet field (ID: 0x0a)
Maps directly to GpsSpeed packet field (ID: 0x0b)
Maps directly to InputStates packet field (ID: 0x0c)
Maps directly to OutputStates packet field (ID: 0x0d)
Maps directly to GpsTripOdom1 packet field (ID: 0x10)
Maps directly to Hdop packet field (ID: 0x12)
Maps directly to NumSats packet field (ID: 0x13)
Maps directly to InternalBattVolts packet field (ID: 0x16)
Maps directly to VehicleBattVolts_1byte packet field (ID: 0x17)
GPSOdom Maps directly to GpsLifetimeOdom packet field (ID: 0x18)
Maps directly to ObdLifetimeOdom packet field (ID: 0x2f)
Maps directly to WakeReason packet field (ID: 0x53) (see Wake Reason Mask for
mask definition)
Script Language
TimerExpired(<index>)
Description
Evaluates to 1 when timer is expired; otherwise 0
UserEventIsActive(<index>)
Range: 0 to 31
Evaluates to 1 when a user event has been injected into interpreter;
otherwise 0. Use :xrmsg <index> to inject a message into interpreter.
AccelEventIsActive(<index>)
Range: 0 to 255
Evaluates to 1 when an accelerometer event is detected; otherwise 0
DriverIdRead(<index>)
SystemEventIsActive
(<index>)
Range: 0 to 20
Range: 0 to 7
Evaluates to 1 when driver id is detected on 1-wire channel <index>,
otherwise 0
Range: 0 to 1
Evaluates to 1 when system event <index> is active, otherwise 0
CONFIDENTIAL AND PROPRIETARY
Page 29 | 92
XT2500 Product Manual
Script Language
Description
Value
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Description
Reset
Wakeup
BootloaderUpgrade
FWUpgrade
ScriptUpgrade
ParamSetUpgrade
OverlayUpgrade (not implemented)
ManualConfigChange
CellRegistrationChange
IPChange
SMSReceived
SMSSendOK
SMSSendFailure
UDPReceived
UDPSendOK
UDPSendFailure
PacketStorageEmpty
PacketStorageFull
PdpConnectionReset (not implemented)
Device Powerup
OTA Reject (not implemented)
ObdDtcEventIsActive(0)
AccelCrashEventIsActive(0)
Evaluates to 1 when an OBD DTC event is detected, otherwise 0.
Evaluates to 1 when an accelerometer crash event is detected, otherwise 0.
Script Language
SystemVal(<packet field id>)
Description
Evaluates to value stored in packet field
Special Functions
UserVar16(<index>)
UserVar32(<index>)
FlagIsSet(<index>)
Packet field ID: See Packet Recipes for available IDs
Evaluates to value stored in 16bit user variable
Index range: 0 to 15
Evaluates to value stored in 32bit user variable
Index Range: 0 to 15
Evaluates to 1 when flag is set, otherwise 0
Index Range: 0 to 31
CONFIDENTIAL AND PROPRIETARY
Page 30 | 92
XT2500 Product Manual
Script Language
GeofenceState(<index>)
SystemState(<index>)
Description
Index
-1
0
1
Description
<index> is not configured
Outside fence
Inside fence
Index range: 0 to 49
Evaluates to 1 when true, otherwise 0
Index range: 0 to 16
Index
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Description
Valid Registration
Valid IP
Valid GPS
Valid Script
DM Session Active
Accel Oriented
Bluetooth Discoverable
Bluetooth Paired
(Not implemented)
Bluetooth Connected
Bluetooth Powered
Cellular Powered
GPS Powered
Garmin Powered
Motion Via Accel
Motion Via GPS
External Power
GenericConfig(<index>)
Evaluates to value stored in gcv[<index>] config parameters.
PacketsPending(<index>)
Index range: 0 to 63
Evaluates to number of unsent packets stored in the log
NoAckRxRetryCount(0)
AuxPassthruScratchpadSize(0)
AuxPassthruScratchpadByte(<index>)
Description
Normal Packet Space
UDR Packet Space
Index
0
1
Evaluates to number of retried failed ACK packets
Evaluates to aux passthru scratchpad size (in bytes).
Evaluates to the byte value at index of the aux passthru scratchpad.
CONFIDENTIAL AND PROPRIETARY
Page 31 | 92
XT2500 Product Manual
Actions
Script Language
ResetDevice()
ResetModem()
ResetGPS()
AdjustUserVar
(<type>, <index>,
<adjust_amount>)
Description
N/A
N/A
N/A
Type range: 0 to 2
Index range:
Type
0
1
2
Index
0 to 31
0 to 15
0 to 15
Description
8bit variable
16bit variable
32bit variable
Description
8bit variables
16bit variables
32bit variables
Adjust_amount range:
Index range: 0 to 31
Index range: 0 to 31
Index range: 0 to 31
SetFlag(<flag_index>)
ClearFlag(<flag_
index>)
StartTimer(<timer_
index>)
StopTimer(<timer_
index>)
ResetTimer(<timer_
index>)
BuildAndSendMsg
(<packet_id>,
<reason_code>,
<destination_id>,
<ack>)
Adjust Amount
-128 to 127
-32768 to 32767
-2147483648 to 2147483647
Description
8bit variables
16bit variables
32bit variables
NOTE: user variables are 'clamped' at min and max. Meaning no matter the size of
adjustment the value will never go lower than the minimum or higher than the
maximum (it will not roll over).
Index range: 0 to 31
Index range: 0 to 31
Parameter
Packet_id
reason_code
range
Range
0 to 254
0 to 255
destination_id
range
0 to 9
Description
Should be an ID configured with :wycfg pcr[x]
Assigns the reason_code to the index in the
script. Any reason_code less than 0 or greater
than 255 will wrap.
Should be one of the destinations configured
with :wycfg dst[x] ...
CONFIDENTIAL AND PROPRIETARY
Page 32 | 92
XT2500 Product Manual
Script Language
Description
Parameter
Ack range
Ack table:
Range
0
1
2
Range
0 to 2
Description
See Ack table below
Description
No acknowledgement needed
Resend until acknowledged
Priority packet: no storage, no acknowledgement
Value (Hex)
0x0000
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
0x0040
0x0080
0x0100
Wake Reason
SMS or UDP command received
Input 0 (Ignition) transitioned high
Input 1 transitioned high
Input 2 transitioned high
Input 3 transitioned high
Input 4 transitioned high
Configured sleep timeout expired
Vibration detected
Main supply voltage exceeds configured threshold value
Main supply voltage fell below 6.0VDC (device unplugged)
Range
1
2
4
5
6
7
8
9
Description
Unit ID Request (Garmin ESN Request)
Product ID Request
Ping
FMI Enable
Set Auto Arrival to defaults (30 sec, 100 meters)
Disable Status Message
Disable ETA Message
Send user-defined payload (should be triggered with
GarminUserPayloadReceived(0))
See footnotes 1-3 below table.
Set the wake reason mask
EnterSleep(<wake_
mask>, <wake_
minutes>
SendGarminMsg
(<msg_id>, <flags>)
Flags range: 0 to 1
Range
1
Description
Save ACK/NAK
SetOutput(<output_
Index range: 0 to 2
CONFIDENTIAL AND PROPRIETARY
Page 33 | 92
XT2500 Product Manual
Script Language
index>)
ClearOutput
(<output_index>)
PulseOutput
(<output_index>,
<seconds_on>)
FlashOutput
(<output_index>,
<blink_rate>)
Description
Index range: 0 to 2
Index range: 0 to 2
seconds_on range: 1 to 65535
Index range: 0 to 2
Blink_rate range: 1 to 100 Hz
ClearDriverIds()
CheckInNow()
BuzzerPlay(<song_
index> <volume>
<loops>)
N/A
N/A
Song_index range: 0 to 9
Volume range: 0 to 100
N/A
N/A
N/A
BuzzerStop()
ResetObdHarshAccel
Cnt()
ResetObdHarshBrake
Cnt()
AuxPassthruScratchp
adLoad()
Actions Table Footnotes
Loops clamped to range: 0 to 255; 0 is continuous play
Load the Aux Passthru scratchpad with the most recently-received packet
1. BuildAndSendMsg example: using command :wycfg pcr[0] "01050104030708". The item index 0 in pcr[0] is
NOT the packet_id. This should be considered the slot_id (of which there are only 128). The packet_id in
this example is the first hex byte of the hex string "01", meaning packet_id = 1. The parameter set may be
coordinated so the recipe for packet_id x is stored at slot_id x. However, this limits your packet_id range
to 0 - 127.
2. BuildAndSendMsg Coordinated slot_id and packet_id examples:
l :wycfg pcr[0] "00050104020708"
l :wycfg pcr[1] "01050104020708"
l ...
l :wycfg pcr[127] "7f050104020708"
3. BuildAndSendMsg recommendation: Due to the design of the entire XT6300 system, it is recommended
customers do not exceed a message generation rate of one every five seconds for long durations (one
CONFIDENTIAL AND PROPRIETARY
Page 34 | 92
XT2500 Product Manual
every ten seconds for CATm devices). The throughput of the cellular design is the bottleneck. Messages
will always be stored to flash and sent out eventually, unless the duration at such a rate causes the
message storage space to be filled completely. If a customer is looking for continuous real time data, these
are the limitations they should be made aware of.
4. SaveDataToFlash() Note: Persist data saves normally happen automatically every 60 seconds. This
command is intended to augment that. This command has a progressive spam filter that does not allow
the command to be executed in quick procession. The required time to wait between saves is one second,
doubling with every proceeding save; it will not extend above 60 seconds. 60 seconds after the last
successful save this is reduced back to 1 second. Calling this function while the spam filter is active does
not perform the save.
5.1.5. Wake Reason Masks
Script Language
EnterDeepSleep
(<wake_mask>,
<wake_minutes>)
Description
Set the wake reason mask
EnterSleep(<wake_
mask>, <wake_
minutes>
Value (Hex)
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
0x0040
0x0080
0x0100
Set the wake reason mask
Wake Reason
Input 0 (Ignition) transitioned high
Input 1 transitioned high
Input 2 transitioned high
Input 3 transitioned high
Input 4 transitioned high
Configured sleep timeout expired
Vibration detected
Main supply voltage exceeds configured threshold value
Main supply voltage fell below 6.0VDC (device unplugged)
Value (Hex)
0x0000
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
0x0040
0x0080
0x0100
Wake Reason
SMS or UDP command received
Input 0 (Ignition) transitioned high
Input 1 transitioned high
Input 2 transitioned high
Input 3 transitioned high
Input 4 transitioned high
Configured sleep timeout expired
Vibration detected
Main supply voltage exceeds configured threshold value
Main supply voltage fell below 6.0VDC (device unplugged)
CONFIDENTIAL AND PROPRIETARY
Page 35 | 92
This example shows an alternate message being sent every two minutes. If flag[0] is set, then send packet 1,
otherwise, send packet 0. Always reset the timer and toggle the flag.
XT2500 Product Manual
5.2. INTERPRETER SCRIPTING TRIGGER BLOCK EXAMPLES
5.2.1. Packet Send Example
trigger when Eq(TimerExpired(0), 1)
condact when Eq(FlagIsSet(0), 1) [Debounce(0, 0)]
actions
run BuildAndSendMsg(1, 0, 1, 0)
run ClearFlag(0)
due to
actions
# the previous CondAct block clearing the flag.
run BuildAndSendMsg(0, 0, 1, 0)
run SetFlag(0)
condact always
actions
run ResetTimer(0)
condact when Neq(FlagIsSet(0), 1) [Debounce(5, 0)]
# NOTE: debounce Hi for 5 seconds, to keep these actions from executing
5.2.2. Build and Send Message
A message is created and sent when you send a user event to the interpreter. The user event can be sent via
:xrmsg <index>.
NOTE: see actions[] array in src/interpreter/interpreter.c to find valid action indices and number of
arguments each action should take.
trigger when Eq(UserEventIsActive(0xff), 1)
CONFIDENTIAL AND PROPRIETARY
Page 36 | 92
XT2500 Product Manual
condact always
actions
run BuildAndSendMsg(4, 32, 1, 0)
5.2.3. Set User Flag 3 if OBD Reports PTO On
PTO status resides in the bit 1 position of Fld_ObdRunStatus (0x2c). The example below uses the BitAnd()
operator with a hex mask isolating the desired bit, comparing it to 0 for rising edge trigger.
This operation works from the inside out, parenthetically. SystemVal (0x2c) grabs the value stored in Fld_
ObdRunStatus. BitAnd() then takes that value “ANDed” with its second argument of 0x02, which isolates the
bit 1 position.
When bit 1 of Fld_ObdRunStatus (PTO state) is high, the BitAnd() resolves to a 1. Neq() then takes that and
compares it with its second argument of 0. When they don’t equal each other, the trigger is executed. The
Debounce in this example is disabled.
trigger when Neq(BitAnd(SystemVal(0x2c), 0x02), 0) [Debounce(0, 0)]
condact always
actions
run SetFlag(3)
5.3. PACKET RECIPE
5.3.1. Fields
ID
0x01
Name
PacketID
aaaaaaaa
aaaaaaaaaaaaaaaaaa
Description
Packet recipes can be labeled from 0-255, but there are only 128
recipe slots
Bytes
1
Units
N/A
Resolution
1
Range
0 to 255
0x02
FmCustomHeader
value TBD (currently zero)
Bytes
1
Units
N/A
Resolution
1
Range
0 to 255
CONFIDENTIAL AND PROPRIETARY
Page 37 | 92
XT2500 Product Manual
ID
0x03
Name
DeviceId
0x06
UnixTime
0x07
Latitude
0x08
Longitude
Description
Unsigned integer representing numeric ESN
Bytes
4
Units
N/A
Resolution
1
Range
100000000 to
999999999
0x04
ReasonCode
Unsigned integer (any reason code < 0 or > 255 will wrap)
Bytes
1
Units
N/A
Resolution
1
Range
0 to 255
0x05
PacketSerialNum
Unsigned integer
Bytes
2
Units
N/A
Resolution
1
Range
0 to 65535
Unsigned integer representing number of seconds since Unix
Epoch
Bytes
4
Units
N/A
Resolution
1
Range
0x0 to 0xffffffff
Signed integer decimal value of 4byte hex string divided by
1000000 (useful range -180.0 to 180.0)
Bytes
4
Units
Degrees
Resolution
1.00E-06
Range
-2147.483648
to 2147.483647
Signed integer decimal value of 4-byte hex string divided by
1000000 (useful range -90.0 to 90.0)
Bytes
4
Units
Degrees
Resolution
1.00E-06
Range
-2147.483648
to 2147.483647
0x09
Altitude
Signed integer
Bytes
2
Units
m
Resolution
0.1
Range
-3276.8 to
CONFIDENTIAL AND PROPRIETARY
Page 38 | 92
XT2500 Product Manual
ID
Name
0x0a
Heading
Signed integer (useful range 0.0 to 360.0)
Description
Bytes
Units
Resolution
Range
3276.7
Bytes
2
Units
Degrees
Resolution
1.00E-01
Range
-3276.8 to
3276.7
0x0b
GpsSpeed
Unsigned integer
Bytes
1
Units
kmh
Resolution
1
Range
0 to 255
0x0c
InputStates
See Input State Bits table below
Bytes
1
Units
N/A
Resolution
1
Range
0x0 to 0xff
0x0d
OutputStates
Bitfield: see Output State bits Table below
Bytes
1
Units
N/A
Resolution
1
Range
0x00 to 0x1f
0x0e
DriverIdCode1
Unsigned integer representing unique iButton ID
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0x0f
DriverIdCode2
Unsigned integer representing unique iButton ID
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0x10
GSPTripOdom1
See Odometer Details Table below
Bytes
4
Units
m
Resolution
1
Range
0 to 4294967295
0x11
Flags
Bitfield
CONFIDENTIAL AND PROPRIETARY
Page 39 | 92
0x12
Hdop
Unsigned integer
XT2500 Product Manual
ID
Name
0x13
NumSats
0x15
CellularCarrierId
Description
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
Bytes
1
Bytes
1
Bytes
2
Bytes
2
Units
DOP
Units
N/A
Units
dBm
Units
N/A
Resolution
0.1
Range
0.0 to 25.5
Resolution
1
Range
0 to 255
Resolution
1.23
Range
-113 to -75
Resolution
1
Range
0x0 to 0xffff
0x14
ReceiverSigStr
See Signal Quality Measure Table below
0x16
InternalBattVolts
Possibly using a 2-byte unsigned integer representing mV (0 to
65535
Bytes
1
Units
V
Resolution
0.1
Range
0.0 to 25.5
0x17
VehicleBattVolts_1byte
If value is greater than 25.5v, it will cap at 25.5v
Bytes
1
Units
V
Resolution
0.1
Range
0.0 to 25.5
0x18
GpsLifetimeOdom
Unsigned integer; see Odometer Details Table below
Bytes
4
Units
m
Resolution
1
Range
0 to 4294967295
0x19
AccelStartDateTime
Unsigned integer representing time from Unix Epoch (s)
Bytes
4
Units
N/A
Resolution
1
Range
0x0 to 0xffffffff
CONFIDENTIAL AND PROPRIETARY
Page 40 | 92
XT2500 Product Manual
ID
0x1a
Name
Description
AccelStartLat
Signed integer decimal value of 4-byte hex string divided by
1000000 (useful range -180.0 to 180.0)
Bytes
4
Units
Degrees
Resolution
1.00E-06
Range
-2147.483648
to 2147.483647
0x1b
AccelStartLong
Signed integer decimal value of 4-byte hex string divided by
1000000 (useful range -90.0 to 90.0)
Bytes
4
Units
Degrees
Resolution
1.00E-06
Range
-2147.483648
to 2147.483647
0x1c
AccelStartSpeed
Units
kmh
Resolution
1
Range
0 to 255
0x1d
AccelStartHeading
Units
Degrees
Resolution
0.1
Range
0 to 3599
0x1e
MaxAccel
Units
mG
Resolution
1
Range
0 to 32767
0x1f
AccelEventDuration
Units
Seconds
Resolution
0.1
Range
0 to 255
0x20
AccelEndDateTime
Unsigned integer representing time from Unix Epoch (s)
Bytes
1
Bytes
2
Bytes
2
Bytes
1
0x21
AccelEndLat
Bytes
4
Units
N/A
Resolution
1
Range
0x0 to 0xffffffff
Signed integer decimal value of 4-byte hex string divided by
1000000 (useful range -180.0 to 180.0)
Bytes
4
Units
Degrees
Resolution
1.00E-06
Range
-2147.483648
to 2147.483647
CONFIDENTIAL AND PROPRIETARY
Page 41 | 92
XT2500 Product Manual
ID
0x22
Name
AccelEndLong
Description
Signed integer decimal value of 4-byte hex string divided by
1000000 (useful range -90.0 to 90.0)
Bytes
4
Units
Degrees
Resolution
1.00E-06
Range
-2147.483648
to 2147.483647
0x23
AccelEndSpeed
Units
kmh
Resolution
1
Range
0 to 255
0x24
AccelEndHeading
Units
Degrees
Resolution
0.1
Range
0 to 3599
Bytes
1
Bytes
2
0x25
0x26
Not implemented
GarminPacketSize
Available for future use
Size of entire Garmin packet (includes
<DLE><pid><size><payload><sum><DLE><ETX> and DLE stuffing)
Bytes
2
Units
N/A
Resolution
N/A
Range
6 to 516
0x27
GarminPacket
Garmin Packet bytes:
<DLE><pid><size><payload><sum><DLE><ETX> and DLE stuffing
Bytes
Variable
Units
N/A
Resolution
N/A
Range
N/A
0x28
BluetoothPayloadSize *
Unsigned integer
Bytes
2
Units
N/A
Resolution
N/A
Range
N/A
0x29
BluetoothPayload *
Bytes
Bytes
Variable
Units
N/A
Resolution
N/A
Range
N/A
0x2a
CommandPayloadSize *
Bytes
2
Units
N/A
Resolution
N/A
Range
N/A
CONFIDENTIAL AND PROPRIETARY
Page 42 | 92
XT2500 Product Manual
ID
0x2b
Name
CommandPayload *
Description
Bytes
Variable
Units
N/A
Resolution
N/A
Range
N/A
0x2c
OBDRunStates
Bitfield; see OBD Run States Bits Table below
Bytes
1
Units
N/A
Resolution
N/A
Range
0 to 7
0x2d
OBDCommsState
See OBD Comms State Table below
Bytes
1
Units
N/A
Resolution
N/A
Range
0 to 3
0x2e
ObdDerivedTripOdom
Unsigned integer; see Odometer Details Table below
Bytes
4
Units
m
Resolution
1
Range
0 to 4294967295
0x2f
ObdLifetimeOdom
Unsigned integer; see Odometer Details Table below
0x30
TempSensor0
0x31
TempSensor1
Bytes
4
Bytes
1
Bytes
1
Units
m
Resolution
1
Range
0 to 4294967295
Units
N/A
Units
N/A
Resolution
N/A
Resolution
N/A
Range
N/A
Range
N/A
0x32
UserVar8[0]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x33
UserVar8[1]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
CONFIDENTIAL AND PROPRIETARY
Page 43 | 92
XT2500 Product Manual
ID
0x34
Name
UserVar8[2]
Description
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x35
UserVar8[3]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x36
UserVar8[4]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x37
UserVar8[5]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x38
UserVar8[6]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x39
UserVar8[7]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x3a
UserVar8[8]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x3b
UserVar8[9]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
CONFIDENTIAL AND PROPRIETARY
Page 44 | 92
XT2500 Product Manual
ID
0x3c
Name
UserVar8[10]
Description
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x3d
UserVar8[11]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x3e
UserVar8[12]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x3f
UserVar8[13]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x40
UserVar8[14]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x41
UserVar8[15]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0x42
UserVar16[0]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0x43
UserVar16[1]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
CONFIDENTIAL AND PROPRIETARY
Page 45 | 92
XT2500 Product Manual
ID
0x44
Name
UserVar16[2]
Description
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0x45
UserVar16[3]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0x46
UserVar16[4]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0x47
UserVar16[5]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0x48
UserVar16[6]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0x49
UserVar16[7]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0x4a
UserVar32[0]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0x4b
UserVar32[1]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
CONFIDENTIAL AND PROPRIETARY
Page 46 | 92
XT2500 Product Manual
ID
0x4c
Name
Description
UserVar32[2]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0x4d
UserVar32[3]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0x4e
UserVar32[4]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0x4f
UserVar32[5]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0x50
UserVar32[6]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0x51
UserVar32[7]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
0x52
SystemStates
Bitfield; see System State Bits Table below
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
CONFIDENTIAL AND PROPRIETARY
Page 47 | 92
XT2500 Product Manual
ID
0x53
Name
Description
WakeReason
Hex byte value; see Wake Reason Values Table
Bytes
1
Units
N/A
Resolution
1
Range
0 to 255
0x54
ObdTrueOdometer
32-bit unsigned integer; see Odometer Details Table below
Bytes
4
Units
m
Resolution
1
Range
0 to 858993459
0x55
ObdTotFuelUsed
32-bit unsigned integer
Bytes
4
Units
liters
Resolution
1
Range
0 to 4294967295
0x56
ObdTotEngHours
32-bit unsigned integer
Bytes
4
Units
hours
Resolution
1
Range
0 to
4294967295
0x57
ObdVehicleSpeed
16-bit unsigned integer
Bytes
2
Units
kmh
Resolution
0.1
Range
0 to 2550
0x58
ObdEngRpm
16-bit unsigned integer
Bytes
2
Units
rpm
Resolution
1
Range
0 to 65535
0x59
ObdEngCoolantTemp
16-bit signed integer
Bytes
2
Units
Celsius
Resolution
1
Range
-40 to 215
0x5a
ObdFuelLevelPct
16-bit unsigned integer
Bytes
2
Units
%
Resolution
0.1
Range
0 to 1000
CONFIDENTIAL AND PROPRIETARY
Page 48 | 92
XT2500 Product Manual
ID
0x5b
Name
Description
ObdTotDrivingSec
32-bit unsigned integer
Bytes
4
Units
s
Resolution
1
Range
0 to 4294967295
0x5c
ObdTotCruiseSec
32-bit unsigned integer
Bytes
4
Units
s
Resolution
1
Range
0 to 4294967295
0x5d
ObdTotIdleSec
32-bit unsigned integer
Bytes
4
Units
s
Resolution
1
Range
0 to 4294967295
0x5e
ObdTotIdleFuel
32-bit unsigned integer
Bytes
4
Units
liters
Resolution
1
Range
0 to 4294967295
0x5f
ObdHarshBreakTotCnt
32-bit unsigned integer
Bytes
4
Units
Resolution
1
Range
0 to 4294967295
0x60
ObdSpeedExceedTotCnt
32-bit unsigned integer
Bytes
4
Units
Resolution
1
Range
0 to 4294967295
0x61
ObdRPMExceedTotCnt
32-bit unsigned integer
Bytes
4
Units
Resolution
1
Range
0 to 4294967295
0x62
ObdHarchAccelTotCnt
32-bit unsigned integer
Bytes
4
Units
Resolution
1
Range
0 to 4294967295
CONFIDENTIAL AND PROPRIETARY
Page 49 | 92
XT2500 Product Manual
ID
0x63
Name
Description
Not implemented
Available for future use
0x64
BluetoothName *
0x65
ObdVIN
0x67
Reserved *
Bytes
1
Units
N/A
Resolution
N/A
Range
N/A
Bytes
1
Bytes
17
Bytes
1
Bytes
N/A
Units
N/A
Units
ascii
Units
v
Units
N/A
Resolution
N/A
Resolution
N/A
Range
N/A
Range
N/A
Resolution
0.1
Range
0.0 to 25.5
Resolution
N/A
Range
N/A
0x66
ExternADC0_1byte
Value caps at 25.5v
0x68
Accel Metrics
Rounded to nearest whole number
Bytes
4
Units
N/A
Resolution
N/A
Range
N/A
0x69
Boot Status
8-bit unsigned integer; see Boot Status Values Table below
Bytes
1
Units
N/A
Resolution
1
Range
0 to 7
0x6a
Apn Index
8-bit unsigned integer
Bytes
1
Units
N/A
Resolution
1
Range
0 to 3
0x6b
ObdDtcPacketSize
Unsigned integer
CONFIDENTIAL AND PROPRIETARY
Page 50 | 92
XT2500 Product Manual
ID
Name
0x6c
ObdDtcPacket
Description
Bytes
2
Units
N/A
Resolution
N/A
Range
N/A
<mil_status><num_ecu_dtc><ecu_id_0><num_dtc_0><dtc_
code_ascii_0><fmi_0>...<dtc_code_ascii_n><fmi_n>...
<ecu_id_m><num_dtc_0><dtc_code_ascii_0><fmi_0>...<dtc_
code_ascii_n><fmi_n>
dtc formatted is 1-byte ascii + 4-bytes code + 1-byte fmi
Bytes
Variable
Units
N/A
Resolution
N/A
Range
N/A
Bytes
1
Units
N/A
Resolution
N/A
Range
0 to 3
See OBD Protocol Table , Secondary protocol in MS word,
Primary protocol in LS word. e.g. secondary J1708 + primary
J1939 = (0x00400100)
Bytes
4
Units
Hex
Resolution
N/A
Range
N/A
0x6d
ObdBackoff
See OBD Backoff Mode Table below
0x6e
ObdProtocols
0x6f
CrashPacketSize
Unsigned integer
0x70
CrashPacket
Bytes
2
Units
N/A
Resolution
N/A
Range
N/A
A collection of configurable historical reoriented basic
accelerometer vectors structured in little Endian 2 byte values as
x, y, z in milli-G's
Bytes
Variable
Units
N/A
Resolution
N/A
Range
N/A
0x71
ObdTotPTOTime
32-bit unsigned integer
Bytes
4
Units
seconds
Resolution
1
Range
0 to
CONFIDENTIAL AND PROPRIETARY
Page 51 | 92
XT2500 Product Manual
ID
Name
Description
Bytes
Units
Resolution
Range
4294967295
0x72
ObdTotPTOFuel
32-bit unsigned integer
Bytes
4
Units
liters
Resolution
1
Range
0 to 4294967295
0x73
FwRev
16-byte null-terminated ascii string. Version string cuts off the
first 9 bytes, so "AAb1-1133BB1-e6" would report as "BB1-e6".
Bytes
16
Units
ascii
Resolution
N/A
Range
N/A
0x74
OBDPidReserved1
Signed integer decimal value of 4-byte hex string divided by 10
0x75
OBDPidReserved2
Signed integer decimal value of 4byte hex string divided by 10
0x76
OBDPidReserved3
Signed integer decimal value of 4byte hex string divided by 10
Bytes
4
Units
N/A
Resolution
0.1
Bytes
4
Units
N/A
Resolution
0.1
Bytes
4
Units
N/A
Resolution
0.1
Bytes
4
Units
N/A
Resolution
0.1
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
0x77
OBDPidReserved4
Signed integer decimal value of 4byte hex string divided by 10
0x78
OBDPidReserved5
Signed integer decimal value of 4byte hex string divided by 10
CONFIDENTIAL AND PROPRIETARY
Page 52 | 92
XT2500 Product Manual
ID
Name
0x79
ObdTransGear
16-bit unsigned integer
Description
Bytes
4
Units
N/A
Resolution
0.1
Range
-2147483648 to
2147483647
Bytes
2
Units
0,1,2,3
Resolution
1
Range
0=neutral
1=forward
2=reverse
3=park
0x7A
ObdFuelTemp
16-bit signed integer
Bytes
2
Units
Celsius
Resolution
1
Range
-40 to 215
0x7B
ObdOilTemp
16-bit signed integer
Bytes
2
Units
Celsius
Resolution
1
Range
-40 to 215
0x7C
ObdThottlePos
16-bit unsigned integer
Bytes
2
Units
%
Resolution
1
Range
0 to 100
0x7D
ObdMPG
16-bit unsigned integer
Bytes
2
Units
mpg
Resolution
0.1
Range
0.0 to 256.0
0x7E
ObdAccelPos
16-bit unsigned integer
Bytes
2
Units
%
Resolution
1
Range
0 to 100
0x7F
ObdEngLoad
16-bit unsigned integer
CONFIDENTIAL AND PROPRIETARY
Page 53 | 92
XT2500 Product Manual
ID
Name
Description
Bytes
2
Units
%
Resolution
1
Range
0 to 250
0x80
ObdEngTorque
16-bit signed integer
Bytes
2
Units
%
Resolution
1
Range
-125 to 125
0x81
ObdOilLevel
16-bit unsigned integer
Bytes
2
Units
%
Resolution
1
Range
0 to 100
0x82
ObdOilPressure
16-bit unsigned integer
Bytes
2
Units
kPa
Resolution
1
Range
0 to 100
0x83
ObdCoolantPressure
16-bit unsigned integer
Bytes
2
Units
kPa
Resolution
1
Range
0 to 100
0x84
ObdIntakeAirTemp
16-bit signed integer
Bytes
2
Units
Celsius
Resolution
1
Range
-40 to 215
0x85
ObdManifoldTemp
16-bit signed integer
Bytes
2
Units
Celsius
Resolution
1
Range
-40 to 215
0x86
ObdCoolantLevel
16-bit unsigned integer
Bytes
2
Units
%
Resolution
1
Range
0 to 100
0x87
LinkageVer
32-bit unsigned integer; see Linkage Version Table below
CONFIDENTIAL AND PROPRIETARY
Page 54 | 92
XT2500 Product Manual
ID
Name
Description
Bytes
4
Units
N/A
Resolution
1
Range
0x0 to 0xffffffff
0x88
GSPTripOdom2
See Odometer Details Table below
Bytes
4
Units
m
Resolution
1
Range
0 to 4294967295
0x89
GenCfgVal0
Generic Configuration Value set via paramset
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0x8a
GenCfgVal1
Generic Configuration Value set via paramset
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0x8b
GenCfgVal2
Generic Configuration Value set via paramset
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0x8c
GenCfgVal3
Generic Configuration Value set via paramset
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0x8d
GenCfgVal4
Generic Configuration Value set via paramset
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0x8e
OBDPidReserved6
Signed integer decimal value of 4-byte hex string divided by 10
Bytes
4
Units
N/A
Resolution
0.1
Range
-2147483648 to
2147483647
0x8f
OBDPidReserved7
Signed integer decimal value of 4-byte hex string divided by 10
CONFIDENTIAL AND PROPRIETARY
Page 55 | 92
XT2500 Product Manual
ID
Name
0x90
OBDPidReserved8
Signed integer decimal value of 4-byte hex string divided by 10
0x91
OBDPidReserved9
Signed integer decimal value of 4-byte hex string divided by 10
Description
Bytes
4
Units
N/A
Resolution
0.1
Range
-2147483648 to
2147483647
Bytes
4
Units
N/A
Resolution
0.1
Bytes
4
Units
N/A
Resolution
0.1
Bytes
4
Units
N/A
Resolution
0.1
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
0x92
OBDPidReserved10
Signed integer decimal value of 4-byte hex string divided by 10
0x93
OBDHarshAccelValue
Unsigned integer decimal value of acceleration in mph/second
Bytes
1
Units
Mph/s
Resolution
1
Range
0 to 255
0x94
OBDHarshBrakeValue
Unsigned integer decimal value of deceleration in mph/second
Bytes
1
Units
Mph/s
Resolution
1
Range
0 to 255
0x95
CellSerialId
24-byte null-terminated ascii string
Bytes
24
Units
ascii
Resolution
N/A
Range
N/A
0x96
PktChkSum
Check sum for the packet, calculated so all bytes sum to 0x00
CONFIDENTIAL AND PROPRIETARY
Page 56 | 92
0x97
TPSFields0
Inclusion of a configured length variable content section defined
by the corresponding pct config entry
XT2500 Product Manual
ID
Name
0x98
TPSFields1
0x99
TPSFields2
0x9a
TPSFields3
0x9b
TPSFields4
Description
Bytes
1
Units
N/A
Resolution
N/A
Range
N/A
Bytes
variable
Units
N/A
Resolution
N/A
Range
N/A
Inclusion of a configured length variable content
section defined by the corresponding pct config entry
Bytes
variable
Units
N/A
Resolution
N/A
Range
N/A
Inclusion of a configured length variable content
section defined by the corresponding pct config entry
Bytes
variable
Units
N/A
Resolution
N/A
Range
N/A
Inclusion of a configured length variable content
section defined by the corresponding pct config entry
Bytes
variable
Units
N/A
Resolution
N/A
Range
N/A
Inclusion of a configured length variable content
section defined by the corresponding pct config entry
Bytes
variable
Units
N/A
Resolution
N/A
Range
N/A
0x9c
OBDPidReserved11
4-byte ascii normalization of the vehicle response
Bytes
4
Units
ascii
Resolution
N/A
Range
N/A
0x9d
OBDPidReserved12
4-byte ascii normalization of the vehicle response
CONFIDENTIAL AND PROPRIETARY
Page 57 | 92
XT2500 Product Manual
ID
Name
Description
Bytes
4
Units
ascii
Resolution
N/A
Range
N/A
0x9e
OBDPidReserved13
4-byte ascii normalization of the vehicle response
Bytes
4
Units
ascii
Resolution
N/A
Range
N/A
0x9f
OBDPidReserved14
4-byte ascii normalization of the vehicle response
Bytes
4
Units
ascii
Resolution
N/A
Range
N/A
0xa0
OBDPidReserved15
4-byte ascii normalization of the vehicle response
Bytes
4
Units
ascii
Resolution
N/A
Range
N/A
0xa1
Debug-PacketSize
Unsigned integer
0xa2
DebugPacket
Bytes
2
Units
N/A
Resolution
N/A
Range
N/A
Payload
Bytes
variable
Units
N/A
Resolution
N/A
Range
N/A
0xa3
UserVar8[16]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xa4
UserVar8[17]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xa5
UserVar8[18]
8-bit signed integer
CONFIDENTIAL AND PROPRIETARY
Page 58 | 92
XT2500 Product Manual
ID
Name
Description
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xa6
UserVar8[19]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xa7
UserVar8[20]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xa8
UserVar8[21]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xa9
UserVar8[22]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xaa
UserVar8[23]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xab
UserVar8[24]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xac
UserVar8[25]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xad
UserVar8[26]
8-bit signed integer
CONFIDENTIAL AND PROPRIETARY
Page 59 | 92
XT2500 Product Manual
ID
Name
Description
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xae
UserVar8[27]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xaf
UserVar8[28]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xb0
UserVar8[29]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xb1
UserVar8[30]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xb2
UserVar8[31]
8-bit signed integer
Bytes
1
Units
N/A
Resolution
1
Range
-128 to 127
0xb3
UserVar16[8]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0xb4
UserVar16[9]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0xb5
UserVar16[10]
16-bit signed integer
CONFIDENTIAL AND PROPRIETARY
Page 60 | 92
XT2500 Product Manual
ID
Name
Description
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0xb6
UserVar16[11]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0xb7
UserVar16[12]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0xb8
UserVar16[13]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0xb9
UserVar16[14]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0xba
UserVar16[15]
16-bit signed integer
Bytes
2
Units
N/A
Resolution
1
Range
-32768 to 32767
0xbb
UserVar32[8]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0xbc
UserVar32[9]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
CONFIDENTIAL AND PROPRIETARY
Page 61 | 92
XT2500 Product Manual
ID
0xbd
Name
UserVar32[10]
Description
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0xbe
UserVar32[11]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0xbf
UserVar32[12]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0xc0
UserVar32[13]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0xc1
UserVar32[14]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
0xc2
UserVar32[15]
32-bit signed integer
Bytes
4
Units
N/A
Resolution
1
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
Range
-2147483648 to
2147483647
0xc3
OBD Start Reason
16-bit signed integer; see OBD Trip Start Reason (bit mask) table
below
Bytes
4
Units
N/A
Resolution
1
Range
-2147483648 to
CONFIDENTIAL AND PROPRIETARY
Page 62 | 92
XT2500 Product Manual
ID
Name
Description
Bytes
Units
Resolution
Range
2147483647
0xc4
OBD End Reason
32-bit signed integer; see OBD Trip End Reason (bit mask) table
below
Bytes
4
Units
N/A
Resolution
1
Range
-2147483648 to
2147483647
0xc5
TpsTagPayloadSize
Unsigned integer
0xc6
TpsTagPayload
Bytes
2
Units
N/A
Resolution
1
Range
N/A
Payload
Bytes
variable
Units
N/A
Resolution
N/A
Range
N/A
0xc7
OBD Seat Belt Status
Bytes
1
Units
N/A
Resolution
N/A
Range
N/A
0xc8
VehicleBattery_2byte
2-byte representation of vehicle battery voltage
Bytes
2
Units
V
Resolution
0.1
Range
0.0 to 6553.5
0xc9
ExtAdc[0]_2byte
2-byte representation of external ADC[0] voltage
Bytes
2
Units
V
Resolution
0.1
Range
0.0 to 6553.5
0xca
AuxPassthruPacketSize
Size of entire aux passthru packet
Bytes
2
Units
N/A
Resolution
1
Range
1 to 256
CONFIDENTIAL AND PROPRIETARY
Page 63 | 92
XT2500 Product Manual
ID
0xcb
Name
AuxPassthruPacket
Description
Bytes
variable
Units
N/A
Resolution
N/A
Range
N/A
0xcc
Geofence States Bitfield 1
Bitfield representing current state of active geofences 0 to 31,
where 1 is inside, and 0 is outside or inactive.
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0xcd
Geofence States Bitfield 2
Bitfield representing current state of active geofences 32 to 49,
where 1 is inside, and 0 is outside or inactive.
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0xce
Script version
Version number of currently loaded script
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0xcf
Paramset version
Version number of currently loaded paramset
Bytes
4
Units
N/A
Resolution
1
Range
0 to 4294967295
0xd0
Cell ICCID
Cellular ICCID string
Bytes
21
Units
ascii
Resolution
N/A
Range
N/A
0xd1
Cell MDN
Cellular MDN string
0xd2
OBD debug packet size
Unsigned integer
Bytes
20
Units
ascii
Resolution
N/A
Range
N/A
Bytes
2
Units
N/A
Resolution
1
Range
N/A
CONFIDENTIAL AND PROPRIETARY
Page 64 | 92
XT2500 Product Manual
ID
0xd3
Name
OBD debug packet
Description
Bytes
variable
Units
N/A
Resolution
N/A
Range
N/A
0xd4
Cell Access Technology
Cell Access Technology values
Bytes
1
Units
N/A
Resolution
N/A
Range
0 to 7,255
0xd5
Derived Engine Seconds
Derived engine seconds
Bytes
4
Units
seconds
Resolution
1
0xd6
ECU Engine Seconds
ECU engine seconds
Bytes
4
Units
seconds
Resolution
1
Range
0 to
4294967295
Range
0 to
4294967295
0xd7
InputActiveStates
Same as the Input States bitfield, only the reported states are
determined by the IDP config settings (see Input State Bits table
below)
Bytes
1
Units
N/A
Resolution
1
Range
0x0 to 0xff
0xd8
CellularEnvironment
Each byte represents a different value
0xdd
GPS Speed (high-
resolution)
MSB
[CSQ]
[RSRP]
[RSRQ]
LSB
[CINR]
CINR is not currently implemented (always 0xFF).
RSRP & RSRQ are always 0xFF for modules that do not support
AT+CESQ.
Bytes
4
Units
Varies
Range
0 to 0xff (within
each byte)
Unsigned integer. Greater range equals higher accuracy.
Resolution
1
CONFIDENTIAL AND PROPRIETARY
Page 65 | 92
0xde
OBD MPG 5 second
average
Averaging synchronized with OBD derived lifetime odometer
timing.
XT2500 Product Manual
ID
Name
0xdf
GPS Harsh Accel
Violations Cnt
0xe0
GPS Harsh Accel Value
GPS Harsh Decel
Violations Cnt
0xe1
0xe2
0xe3
Description
Bytes
2
Units
kph
Resolution
0.01
Range
0.00 to
655.35
Bytes
2
Bytes
4
Bytes
2
Bytes
4
Units
mpg
Resolution
0.1
Range
0.0 to 256.0
Units
Units
kph/s
Units
Resolution
1
Range
0 to 4294967295
Resolution
0.01
Range
0.00 to 655.35
Resolution
1
Range
0 to 4294967295
GPS Harsh Decel Value
OBD to Fuel Used HR
Resolution
Units
Bytes
0.01
kph/s
2
High resolution total fuel used.
Bytes
4
Units
liters/bit
Resolution
0.5
Range
0.00 to 655.35
Range
0 to
4294967295
CONFIDENTIAL AND PROPRIETARY
Page 66 | 92
XT2500 Product Manual
5.3.2. Input/Output State Bits
Input
Bit
0
1
2
3
4
5
6
7
Bit
0
1
2
3
4
output
Input State
Ignition
Input 1
Input 2
Input 3
Input 4
Device In Motion (Accel)
Main supply voltage available
Accelerometer Reorientation Valid
Output State
Output 0
Output 1
Output 2
Onboard Buzzer
Garmin Power
CONFIDENTIAL AND PROPRIETARY
Page 67 | 92
XT2500 Product Manual
5.3.3. Odometer Details
Odometer
GPS Trip
Odom 1
GPS Trip
Odom 2
OBD Derived
Trip Odom
GPS Lifetime
Odom
OBD Lifetime
Odom
OBD True
Odom
Reset
Reset by script
Reset by script
Reset by script
Never resets
Never resets
Cannot modify
vehicle odometer
Description
Great-circle distance between subsequent sets of GPS latitude and
longitude
Great-circle distance between subsequent sets of GPS latitude and
longitude
Distance calculated based on averaged subsequent OBD speed
readings
Great-circle distance between subsequent sets of GPS latitude and
longitude
Accumulated odometer since install, based either on ECU
odometer or averaged OBD speed readings
Distance acquired directly from ECU, 1m per bit
5.3.4. Linkage Version
Developer Revision
4
5
Number of Defined Fields
208
151
Sum of Defined Field sizes
> 645bytes
> 588bytes
CONFIDENTIAL AND PROPRIETARY
Page 68 | 92
XT2500 Product Manual
5.3.5. Signal Quality Measure (SQM) Table
SQM Value
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
99
dBm
-113.0
-111.8
-110.5
-109.3
-108.1
-106.8
-105.6
-104.4
-103.1
-101.9
-100.7
-99.4
-98.2
-97.0
-95.7
-94.5
-93.3
-92.0
-90.8
-89.6
-88.3
-87.1
-85.9
-84.6
-83.4
-82.2
-80.9
-79.7
-78.5
-77.2
-76.0
-75 or better
not known/ not detectable
CONFIDENTIAL AND PROPRIETARY
Page 69 | 92
XT2500 Product Manual
5.3.6. System State Bits
Bit
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
State
Valid Registration
Valid IP
Valid GPS
Valid Script
DM Session Active
Accel Oriented
Bluetooth Discoverable (TBD)
Bluetooth Paired (TBD)
Bluetooth Authenticated (TBD)
Bluetooth Connected (TBD)
Bluetooth Powered (TBD)
Cellular Powered
GPS Powered
Garmin Powered
Motion Via Accel
Motion Via GPS
External Power
CONFIDENTIAL AND PROPRIETARY
Page 70 | 92
XT2500 Product Manual
5.3.7. OBD Run States Bits
State
Engine Running
PTO On
Moving
Ignition On
5.3.8. OBD Comms State
Bit
0
1
2
3
Value
0
1
2
3
Value
0
1
2
3
4
5
5.3.9. OBD Backoff Mode
Description
OBD not in Backoff
OBD Backoff Scantool Detect
OBD Backoff MIL Detect
OBD Backoff MIL Persisted
OBD Backoff Protocol Fail Detect
OBD Backoff Scantool Detect until Ignition Off
Description
OBD comms off
OBD comms pending (ECU detected, initiating connection)
OBD comms connected (waiting for RPM change or vehicle motion)
OBD comms active
5.3.10. OBD Protocol Table
Value (Hex)
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
0x0040
0x0080
0x0100
0x0200
Description
ISO 9141-2 (Keyword Byte 08 08)
ISO 9141-2 (Keyword Byte 94 94)
ISO14230 (KWP2000) (5-Baud init)
ISO14230 (KWP2000) (Fast init)
J1850 PWM (typically older Ford vehicles)
J1850 VPW (typically older GM vehicles and some older Chrysler and Toyota)
J1708/J1587
CAN protocol 11-bit CAN ids
J1939
CAN protocol 29-bit CAN ids
CONFIDENTIAL AND PROPRIETARY
Page 71 | 92
XT2500 Product Manual
5.3.11. OBD Trip Start Reason (Bit Mask)
Value (Hex)
0x0001
0x0002
0x0004
0x0008
0x0010
Description
Detected Alternator On or Switched Ignition Input
Detected GPS Movement
Detected Vehicle Bus Traffic
Detected Changing Vehicle Speed
Detected Changing RPM
5.3.12. OBD Trip End Reason (Bit Mask)
Value
0x00000001
0x00000002
0x00000004
0x00000008
0x00000010
0x00000020
0x0000040
0x0000080
0x0000100
0x0000200
0x0000400
0x0000800
0x0001000
0x0002000
0x0004000
0x0008000
0x0010000
0x0020000
Description
Start Trip Detect Failed
Protocol detected, but no start trip conditions met
Failed to enable and configure OBD communications to a previous known protocol
Failed all attempts at vehicle protocol communications
Trip was active; failed to monitor any valid messages for x seconds or failed all requests for
mode 1, pid 0
Master Vehicle Speed ECU has stopped responding
Master RPM ECU has stopped responding
Three-Minute Timer expired with no changing RPM.
ECO mode not enabled and RPM of 0 detected
TPS Filed upload request
CAN Transport is not configured
J1939 No Valid Claim Address
CAN Transport - transmit not ready
CAN Send - CAN Controller not Active
CAN Bus Off
CAN Transmit Timeout
CAN hardware Off
CAN Invalid Transmit Length
CONFIDENTIAL AND PROPRIETARY
Page 72 | 92
XT2500 Product Manual
5.3.13. Boot Status Values
Value
0
1
2
3
4
5
6
7
Boot Status
Device can't boot (FW won't run; all 3 LEDs illuminated)
FW Invalid/Faulty (FW reverted by loading Backup FW)
Backup Image Invalid/Missing (current FW stored to Backup FW)
Normal Boot
FW Upgrade with Invalid/Faulty current FW and Invalid/Missing Backup FW(New FW
loaded, New FW stored to BackupFW)
FW Upgrade with Invalid/Faulty current FW (New FW loaded)
FW Upgrade with Invalid/Missing Backup (current FW stored to Backup FW, New FW
loaded)
Normal FW Upgrade (current FW stored to Backup FW, New FW loaded)
5.3.14. Proprietary PID Recipe Slots
Field
OBDPidReserved1
OBDPidReserved2
OBDPidReserved3
OBDPidReserved4
OBDPidReserved5
OBDPidReserved6
OBDPidReserved7
OBDPidReserved8
OBDPidReserved9
OBDPidReserved10
OBDPidReserved11
OBDPidReserved12
OBDPidReserved13
OBDPidReserved14
OBDPidReserved15
Assigned Data
Odometer
Oil Life percent
LF Tire pressure
RF Tire pressure
LR Tire pressure
RR Tire pressure
SPARE Tire pressure
LRI Tire Pressure
RRI Tire Pressure
W5 Tire Pressure
N/A
N/A
Driver Seatbelt Stat
N/A
N/A
CONFIDENTIAL AND PROPRIETARY
Page 73 | 92
XT2500 Product Manual
5.3.15. BuildAndSend Message ACK
Byte(s)
0-1
2-3
Value
0x8888
PacketSerialNum
Description
The first 2 bytes of the ACK must be set to 0x8888.
This value is the unique packet serial/sequence
number (Packet recipe ID: 0x05).
Type
N/A
16-bit
unsigned int,
big-endian
byte order
5.3.16. Packet Creation Characteristics
l A message is created from a single packet recipe and may be appended with fields from a separate append
recipe.
containing up to 16 fields).
l The device can store 128 packet recipes (each containing up to 40 fields) and16 append recipes (each
l Each packet/append recipe is assigned a packet ID (0-254; 0x0 to 0xfe).
l Each append recipe is assigned a range of reason codes.
Example: It’s possible to create an append recipe adding fields [x, y, z] to the end of the message. The designer
can assign a range, e.g. 4 to 7, to this append recipe. Any time the script calls BuildAndSendMsg() with reason
code 4, 5, 6, or 7, [x, y, z] fields are appended to the message. It is up to the customer to design and group
reason codes and use them in the script to append desired data in certain situations.
5.3.17. Packet Creation Recipe Configuration
Command Structure:
:wycfg pcr[<slot_index>] "<recipe_hex_string>"
<slot_index> is in range of 0 to 127
"<recipe_hex_string>" is a quoted string of hexadecimal bytes (represented by two ASCII characters)
String Structure:
<packet_id><num_fields><field_0><field_1>...<field_N>
5.3.18. Packet Creation Append
Command Structure:
:wycfg pca[<slot_index>] "<append_hex_string>"
CONFIDENTIAL AND PROPRIETARY
Page 74 | 92
XT2500 Product Manual
<slot_index> is in range of 0 to 15
<recipe_hex_string> is a quoted string of hex bytes (represented by two ASCII characters)
String Structure:
<reason_lo><reason_hi><flags><num_fields><field_0><field_1>...<field_N>
<reason_lo> to <reason_hi> is the reason code range
NOTE: A single reason code assignment is possible when <reason_lo> = <reason_hi>
<flags> is in range of 0 to 1. See <flags> range table below:
<flags> range table:
Range
0
1
Description
Store the appended fields with the message in non-volatile memory but do NOT send the
appended fields to the backend server.
Store the appended fields with the message in non-volatile memory AND send the appended
fields to the backend server.
5.3.19. Examples
Packet Recipe Creation
The table below represents three example packet recipe configurations (one on each row). The recipes are stored
in the first three recipe slots (out of 128).
Packet ID
0x0
0x14
0xfe
Fields
PacketID, DeviceID, UnixTime
PacketID, DeviceID, Latitude, Longitude, Altitude
PacketID, DeviceID, Hdop,andNumSats
Command
:wycfg pcr[0] "0003010306”
:wycfg pcr[1] "14050103070809"
:wycfg pcr[2] "fe0401031213"
Append Recipe Creation
Reason Code
Range
0 to 13
30 to 38
Fields and description
Do NOT Send appended fields to backend server
Field: GarminPktResp
Send appended fields to backend server;
Fields: MotionStatus, EngineStatus, DerivedOdometer
Command
:wycfg pca[0]
"000d000127"
:wycfg pca[1]
"1e2601032c2d2e"
CONFIDENTIAL AND PROPRIETARY
Page 75 | 92
XT2500 Product Manual
6. COMMAND LANGUAGE
6.1. OVERVIEW
The XT6300 device utilizes commands that can be sent over various methods such as USB, RS232, and SMS. This
command language can be utilized to configure nearly all the device's parameters and morph its functionality to
fit the requirements of a client. The implemented command language has been designed to be easy to
learn/remember, human readable, and flexible. Each command is sent to the device in ascii format, and the
device responds through the same medium that the command was sent with.
The syntax for a command is shown below:
:<verb><module><object> [<arg1>, <arg2>, ....<argN>]
Valid characters for verb/module and objects are as follows:
"_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789"
The subsequent sections illustrate the various components that comprise a command. Each of these
components has a set of rules that dictate how it should be formatted and what it represents.
6.2. COMMANDS VIA UDP
6.3. VERB AND MODULE
The following are rules regarding the syntax of verb and module codes:
l Always single character codes
l Characters MAY be separated by one valid separator: "[space],()[tab]"
6.4. OBJECT
The following are rules regarding the syntax of object codes:
l Must be followed by a valid separator: "[space],()[tab]"
l Unquoted strings of undefined length
l First character must NOT be a numerical digit
CONFIDENTIAL AND PROPRIETARY
Page 76 | 92
XT2500 Product Manual
6.5. ARGUMENTS
The following are rules regarding the syntax of arguments:
l Arguments have multiple valid formats:
o Strings
o Strings representing enumerated values of valid chars
o Hexadecimal or decimal values
l Arguments must be separated by a single valid separator: "[space],()[tab]"
l Arguments must not contain the characters: ":|[]#<>"
l Anything following the symbol '#' is considered a comment and ignored by the interpreter
l Decimal values have an optional prefix of '+' or '-' to designate their sign
l Hex values can be denoted by prefixing '0x' or '0X'
l Octal values can be denoted by prefixing '0'
6.5.1. Verb Codes
Verb
Clear
Create
Enable
Disable
Query
Run
Read
Restore
Save
Send
Set
Toggle
Upgrade
Write
Code
c
a
e
d
q
u
r
o
v
x
s
t
g
w
6.5.2. Module Codes
Module
ADC
Code
a
CONFIDENTIAL AND PROPRIETARY
Page 77 | 92
XT2500 Product Manual
Module
Bluetooth
TPS
Device
Geofence
Flash
GPS
Watchdog
GPIO
Third Party
Backend
CMDLang
Motion
Garmin
OBD
Processor Flash
Interpreter
Buzzer
Telematics/Cell
USB
Aux Passthru
One-Wire-Bus
Accelerometer
System
Zigbee
Main Processor
2nd Processor
available
Code
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
x
y
z
1
2
q3-0
6.5.3. Object Codes
Object
Bootloader
Chipflash
Config
Command
Debug
Debug Mask
DM Msg
Eeprom
Feature
Code
bl
chip
cfg
cmd
dbg
dm
dmmsg
ee
f
CONFIDENTIAL AND PROPRIETARY
Page 78 | 92
XT2500 Product Manual
Code
fw
hp (OR) heap
i (OR) info
m
mem
md (OR) mode
msg
opt
ota
ovrd
p (OR) prop
rc
rec
scr (OR) script
sim
stk (OR) stack
st (OR) state
tab
tsk (OR) task
t (OR) test
trst
val
Object
Firmware
Heap
Info
Monitor
Memory
Mode
Message
Option
OTA
Override
Properties
RAM Console
Record
Script
Simulation
Stack
State
Table
Task
Test
Truststore
Value
6.6.1. ADC
Command
:raval
6.6. DEVICE COMMAND MODULES
Function
Read ADC values
6.6.2. Accelerometer
Command
:rxval
:rxval coefs
:rxval rot
:wxval coefs <num_stages>
<coef1> <coef2> ... <coefX>
:wxval coef <coef_index>
Function
Read current X, Y, and Z accelerations
Read current filter coefficients
Read current reorientation angles (radians)
Write the number of filter stages and all filter coefficients
Write filter coefficient at index X
CONFIDENTIAL AND PROPRIETARY
Page 79 | 92
Function
Query accelerometer info
Enable accelerometer debug channel monitoring
Disable accelerometer debug channel monitoring
Enable accelerometer motion test
Disable accelerometer motion test
Force reorientation to z-axis
Force reorientation to x-axis using acceleration
Force reorientation to x-axis using deceleration
Force void of current reorientation
Command
:uscmd play <song_index>
<volume> <loops>
:uscmd stop
Function
Play a buzzer song out of the config
Stop a buzzer song that is currently playing
XT2500 Product Manual
Command
<coef>
:qxi
:exm
:dxm
:ext
:dxt
:uxcmd findz
:uxcmd findxa
:uxcmd findxd
:uxcmd voidrot
6.6.3. Buzzer
6.6.4. Backend
Command
:ekm
:dkm
:rkval ack_timeout
:wkval ack_timeout
<timeout_val>
:ukcmd tunnel <"cmd" or
"dm"> <dst_index>
6.6.5. Command Language
Command
:wlopt echo <0|1>
Function
Write cmdlang option "echo" to on or off
Function
Enable Backend debug channel monitoring
Disable Backend debug channel monitoring
Read what the current ACK timeout value is set to (ms)
Set the ACK timeout value (ms)
Send "Hello" out the command or DM port to the address configured at
that dst_index (see network tunneling)
CONFIDENTIAL AND PROPRIETARY
Page 80 | 92
XT2500 Product Manual
6.6.6. Third Party
Command
:ejm
:djm
:djdbg
:ejdbg
:qji
:qji diag
:gjfw x <serial_port_id>
:gjscr x <serial_port_id> <flag -
optional>
:ujcmd tag <tag id> <ip_dst>
:ujcmd init
:ujcmd exec
6.6.7. Device
Command
:rdval reset
Function
Enable Third Party debug channel monitoring
Disable Third Party debug channel monitoring
Disable Third Party XVBMG debug trace
Enable Third Party XVBMG debug trace
Print out parameter tag information
Print out tag transaction diagnostic info
Upgrade Third Party via xmodem
Upload VIS file via xmodem (flag = 1; erases all VIS's first)
Run XVBMG on tag id; if no VIS file found, downloads VIS first (:edm &
:ekm)
Initialize Third Party functions (:edm)
Displays Third Party FW version (:edm)
Code
0
Description
Main supply voltage connected to device
Function
Read device reset reason
Reason codes:
Reason
Power
applied
Low Power
Watchdog
Software
User
Brownout
Supply
Monitor
Factory Reset
System Error
Unknown
1
2
3
4
5
6
7
8
9
Reset caused by the micro Hibernation
module (not utilized)
Reset caused by the micro Watchdog
module.
Reset caused by our device firmware.
Main micro reset pin toggled (not
utilized)
Reset caused by the micro BOR module
Not implemented.
Reset caused by the micro Hardware
System Service Request.
Not implemented.
Catch for any other micro reset source
we have not defined.
CONFIDENTIAL AND PROPRIETARY
Page 81 | 92
XT2500 Product Manual
Command
:rdval serial
:rdval uptime
:rdval wake
:wdval serial "<serial_no>"
:qdi
:qdi cell
:qdi gps
:udcmd checkin
:udcmd factory
:udcmd factory keys
:udcmd dslp <mask>
<minutes>
Function
Read device serial number
Read device uptime (seconds since reset)
Read device wake reason (only accurate if device has slept)
Write the device serial number
Query device info ("vtu query")
Query cellular device info ("vtu query modem")
Query GPS device info ("vtu query gps")
Send a Device Manager Check-In message to dst[9]
Reset device to factory state
Reset device to factory state plus revert AES keys to defaults. This is the
only command available outside the AES console login.
Enter deep sleep with <mask> wake setting
Mask Values:
:udcmd slp <mask>
<minutes>
Enter sleep with <mask> wake setting
Mask Values:
Hex
0x0000
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
0x0040
0x0080
0x0100
Hex
0x0000
0x0001
0x0002
0x0004
0x0008
0x0010
0x0020
0x0040
0x0080
0x0100
Description
Ring
Ignition
Input 1
Input 2
Input 3
Input 4
Time
Motion
Battery
Unplug
Description
Ring
Ignition
Input 1
Input 2
Input 3
Input 4
Time
Motion
Battery
Unplug
CONFIDENTIAL AND PROPRIETARY
Page 82 | 92
XT2500 Product Manual
Command
:edm
:ddm
6.6.8. Flash
Function
Enable device debug channel monitoring
Disable device debug channel monitoring
Command
:efm
:dfm
:cfmem [all | <addr> <size>]
Function
Enable Flash debug channel monitoring
Disable Flash debug channel monitoring
all = erase entire flash chip, <addr>,<size>
:rfmem <addr> <size>
:wfmem <addr> "<hex_
string>"
:qfmem
:qfi
:qfrec
:rfrec
:wfrec "<hex_string>"
:qftab <x>
:sftab <x> <sz>
NOTE: Must be multiples of 0x1000
Read <size> bytes of flash memory at address <addr>
NOTE: <addr> is in decimal
Write "<hex_string>" to address <addr>
Query flash memory layoutNOTE: Only available on debug devices
Query flash info (device type)
Query number of pending messages (records)
Read pending messages (records)
Write flash message (record)
Query flash table (x = 2 for packet log)
Fill flash table x leaving only sz bytes available
:ufcmd reset
:ufcmd search <match> <size>
<offset>
NOTE: Only available on engineering devices
Erase pending messages
Search flash for a match
6.6.9. Garmin
Command
:enm
:dnm
:xnmsg <pid> "<ascii_hex>"
<flags>
Function
Enable Garmin debug channel monitoring
Disable Garmin debug channel monitoring
Send a payload destined for Garmin device (needs script trigger/action)
CONFIDENTIAL AND PROPRIETARY
Page 83 | 92
XT2500 Product Manual
6.6.10. Geofence
Command
:eem
:dem
:redm
:wedm <mask>
6.6.11. GPIO
Command
:qii
:rival <pin_id>
:wival <pin_id> <0|1|x>
6.6.12. GPS
Command
:rgdm
:wgdm <mask>
:egm
:dgm
:egt
:dgt
:egcmd
:dgcmd
:qgi
:ugcmd reset
6.6.13. GPS Simulator
Command
:sgsim config <lat> <long>
<heading> <speed>
Function
Enable Geofence debug channel monitoring
Disable Geofence debug channel monitoring
Read GPS debug mask
Write the GPS debug mask
Function
Query GPIO info (GPIO pin IDs and default states)
Read state of GPIO pin
Control the state of GPIO pin (x = give control back to micro)
Function
Read GPS debug mask
Write the GPS debug mask
Enable GPS debug channel monitoring
Disable GPS debug channel monitoring
Enable GPS production test
Disable GPS production test
Start GPS
Stop GPS
Query GPS info
GPS module reset
Function
GPS simulator initialize/enable:
Value
0
1
2
3
4
Description
None
Unlocked
Locked
Sleep
LockedGood
CONFIDENTIAL AND PROPRIETARY
Page 84 | 92
XT2500 Product Manual
Command
Function
:sgsim coord <lat> <long>
:sgsim speed <speed>
GPS simulator force coordinates
GPS simulator force speed
:sgsim head <heading>
:sgsim lock <lock>
Values are in tenths (e.g. 300 = 30 mph)
GPS simulator force heading
Values are in tenths (e.g. 900 = 90 degrees)
GPS simulator force lock state:
Value
0
1
2
3
4
Description
None
Unlocked
Locked
Sleep
LockedGood
:sgsim hdop <hdop>
:sgsim clear
GPS simulator force hdop
Disable GPS simulator
6.6.14. Cellular
Command
:rtdm
:wtdm <mask>
Function
Read transport debug mask
Write the transport debug mask
mask Values:
Hex
0x000
0x001
0x002
0x004
0x008
0x010
0x020
0x040
0x080
0x100
0x200
Description
GSMDebug_None
GSMDebug_State
GSMDebug_Command
GSMDebug_Response
GSMDebug_Parse
GSMDebug_ResponseHex
GSMDebug_Mux
GSMDebug_Backend
GSMDebug_Mno
GSMDebug_URC
GSMDebug_PDU
:etm
Enable transport debug channel monitoring
CONFIDENTIAL AND PROPRIETARY
Page 85 | 92
XT2500 Product Manual
Command
:dtm
:ett
:ett direct
:dtt
:qti
:qti ip
:utcmd factory
:utcmd reset
:utcmd sleep
:utcmd wake
:utota ftp "<filename with
extension>" <type> <index>
<rev>
Function
Disable transport debug channel monitoring
Enable transport test mode (‘ct’ mode)
Connect serial console directly to cellular port
Disable transport test mode (‘ct’)
Query transport info
Query cellular mobile IP
Set cellular module to factory default state
Queue a reset for the cellular module
Stop cellular module
Start cellular module
Request FTP file transfer (only on SARA-R410M and LARA-R202 (HB1) cell
modules currently)
Arg Details:
:utota https "<host>"
"<path>" <port> <type>[[[
<index>] "<filename>"] <rev>]
<index> only applies to overlays
<rev> is the user determined revision value
Request HTTPS file transfer (only on AAb6 currently)
"<host>" is an https server string
"<path>" is an https path to file including file extension
<port> is an https server port
<type> is an enumerated value:
Type
0
1
2
3
6
8
10
11
12
Type
0
1
2
3
6
8
10
11
Description
Bootloader firmware
Application firmware
Script binary firmware
Parameter text file
TPS
Overlay text file
Third party code
Third party data
FTP update
Description
Bootloader firmware
Application firmware
Script binary firmware
Parameter text file
TPS
Overlay text file
Third party code
Third party data
CONFIDENTIAL AND PROPRIETARY
Page 86 | 92
XT2500 Product Manual
Command
:utota s3 "<full S3 presigned
link>" <port> <type>[[[
<index>] "<filename>"] <rev>]
Function
Request HTTPS file transfer (only on AAb6 currently).
"<full S3 presigned link>" https server string and path including file
extension
<port> is an https server port
<type> is an enumerated value:
Type
0
1
2
3
6
8
10
11
Description
Bootloader firmware
Application firmware
Script binary firmware
Parameter text file
TPS
Overlay text file
Third party code
Third party data
<index> only applies to overlays
:rtval mno
:wtval mno <profile>
6.6.15. Interpreter
Command
:erm [<trigger_index>]
:drm
:xrmsg <user_event_id>
:grscr x <serial_port_id>
"<name>"
:rrscr
:rrval odom <index>
"<filename>" is arbitrary and optional name reported in :q1i response
<rev> is the user determined revision value
See Hardware ID and MNO select
Function
Enable interpreter debug channel monitoring [monitor only <trigger_id>]
Disable interpreter debug channel monitoring
Send a user_event to the interpreter
Upgrade interpreter script via xmodem (See TBD; formerly Load a Compiled
Script to a Device
Read interpreter script
Read an odometer
Index
0
1
2
3
4
Description
GPS Trip 1
GPS Trip 2
OBD Trip
GPS Life
OBD Life
CONFIDENTIAL AND PROPRIETARY
Page 87 | 92
XT2500 Product Manual
Command
Function
:rrval flags
:rrval uservar <type> <index>
:rrval timer <index>
:rrval gfnstat
:wrval odom <index> <value>
Read user script flags
Read a uservar
Read remaining time
Read geofence active & inside status bitfields
<value> must be larger than current value:
Index
0
1
2
3
4
Description
GPS Trip 1
GPS Trip 2
OBD Trip
GPS Life
OBD Life
Clear a trip odometer:
Index
0
1
2
Description
GPS Trip 1
GPS Trip 2
OBD Trip
Write user script flags
Write a uservar
:crval tripodom <index>
:wrval flags <value>
:wrval uservar <type> <index>
<value>
:drtask
:ertask
:urcmd bs <packet id>
<reason code> <dst index>
<ack> <qty>
:rrval linkver
6.6.16. Main Processor
Command
:d1dbg [<lock_code>]
:g1bl x <serial_port_id>
:g1fw x <serial_port_id>
:q1fw/:q1i
:u1cmd reset
Suspend interpreter task
Resume interpreter task
Force a build and send of a packet (any reason code less than 0 or greater
than 255 will wrap)
NOTE: <qty> only available on engineering devices
Read linkage version information (See TBD; formerly Linkage Version)
Function
Lock-out JTAG (disable debug); two stage command:
1.
Issue :d1dbg (returns <lock_code>)
2.
Issue :d1dbg <lock_code>
Upgrade main bootloader via xmodem
Upgrade main firmware via xmodem
Query main firmware
Reset main processor
CONFIDENTIAL AND PROPRIETARY
Page 88 | 92
XT2500 Product Manual
6.6.17. One-Wire Bus
Command
:wwdm <mask>
:wwdm ts <mask>
:wwdm drv <mask>
:ewm
:dwm
:rwi <channel 0/1>
:rwval <channel 0/1>
6.6.18. OBD
Command
:qoi info
:qoi status
:qoi persist
:qoi trip
:qoi ss
:qoi ss2
:qoval
:qoi viol
:qost
:roval dtc
:woval p <protocol> <cll>
:woval dtc <mil value> <total
dtc> <total ecu count>
:wocmd debug <0/1>
:wocmd debug erase
:wocmd debug lock
6.6.19. System
Command
:cycfg
:cycfg recipes
:ehm
:gycfg x <serial_port_id>
"<name>"
Function
Sets one-wire bus debug mask
Sets one-wire bus temp sensor debug mask
Sets one-wire bus driver id debug mask
Enable one-wire bus debug channel monitoring
Disable one-wire bus debug channel monitoring
Read one-wire bus info
Read one-wire bus temp sensor value
Function
Query OBD vehicle information
Query OBD status information
Query OBD persisted information
Query OBD trip information
Query OBD snapshot parameter information
Query OBD snapshot additional parameter information
Query OBD calculated information
Query OBD Violations
Query OBD state
Read OBD DTC List
Set OBD protocol to a com logical link
Manually write DTC data (defaults to CAN protocol); if all fields are 0, DTCs
are cleared
Disable/enable obd debug log
Erase OBD debug log
Lock OBD debug off
Function
Clear system configs (set all parameters to default/RAM only and
use :vycfg to make permanent)
Clear system configs (set all parameters to default/RAM only and
use :vycfg to make permanent); clear all recipes/appends from flash
Enable watchdog timer debug monitor
Upgrade paramset via xmodem; "<name>" is the version of the paramset
CONFIDENTIAL AND PROPRIETARY
Page 89 | 92
Function
Read system config
Write system config
Query parameter information
Revert all system configs in RAM (reload from FLASH; must be used before
:vycfg)
Save system configuration
Run system script (after upload via xmodem)
Read system script (not the interpreter script)
Write a new system script (script created to recreate current parameters)
Force a save of persist data
Print out stack high water marks
Print out current network, gps, and system times
Print out system information
Force system time to resync with available source. If time argument is
passed, use as new system time with lower priority than internal sources
Print out the hardware ID value
XT2500 Product Manual
Command
:rycfg ...
:wycfg ...
:qycfg ...
:uycfg revert
:vycfg
:uyscr x <serial_port_id>
:ryscr
:wyscr
:wyval persist
:ryval stack
:ryval time
:qyi
:uycmd resync <new_
system_time_s>
:ryval hwid
:wyval key <key_index>
<okok> <nkok> <oknk>
:wyval ptk <key_index>
<plaintext_key>
:wyval hwid <value>
Set the hardware ID value
Defined HWIDs:
Hex
0x01
0x02
0x03
0xff
Description
Hwid_2400_A
Hwid_6370_A
Hwid_6374_A
Hwid_6300_B
Change AES key, where key_index:
Index
0
1
2
Description
Update
Customer
Transport
Change AES key, where key_index:
Index
0
1
2
Description
Update
Customer
Transport
The desired key value is not encrypted. This command is only available via
physical connection to the device.
CONFIDENTIAL AND PROPRIETARY
Page 90 | 92
Function
Enable TPS debug prints
Disable TPS debug prints
Set debug mask
Write into the TPS simulator header
Command
:ecm
:dcm
:wcdm <mask>
:wcsim hdr
:wcsim tags <protocol> <link> Write a TPS simulator tag
:rctest vin
:rctest file
:rctest hdr
:rctest tag <tag_id>
Check if the current tag VIN matches the vehicle VIN
Checks if there is a valid tps file
Read TPS header
Read TPS tag info
Read TPS tag data
Read TPS block
Sync TPS file with AAb3 target servers
Upgrade TPS file via xmodem
XT2500 Product Manual
6.6.20. TPS
:qci tag
:rctest data
:qci data
:qci block <bock_id>
:qccmd sync
:gcfw x <serial_port_id>
"<name>"
6.6.21. Aux Passthru
Command
:qvi
:evm
:dvm
:wvdm <mask_base10>
:rvdm
:xvmsg <bytes>
Function
Print info
Enable aux passthru debug channel monitoring
Disable aux passthru debug channel monitoring
Write (configure) aux passthru debug mask
Mask Values:
Description
None
Payload
Scratchpad
Value
0
1
2
Read (print out) aux passthru debug mask
Send a packet to be transmitted out over the aux port
If the <bytes> field begins with "0x", the message is sent in hex;
if the <bytes> field does not begin with "0x", the message is sent in ASCII
CONFIDENTIAL AND PROPRIETARY
Page 91 | 92
XT2500 Product Manual
6.7. CALIFORNIA PROPOSITION 65 WARNING
WARNING: This product can expose you to chemicals including Nickel (Metallic), which is known
to the State of California to cause cancer and Bisphenol A (BPA), which is known to
the State of California to cause birth defects or other reproductive harm.
For more information go to www.P65Warnings.ca.gov
CONFIDENTIAL AND PROPRIETARY
Page 92 | 92
1 | User Manual Regulatory Statements | Users Manual | 140.49 KiB | February 19 2021 / August 21 2021 | delayed release |
XT2500 Product Manual
XT2500
Product Manual
Firmware Version: 1183CB
Revised May 27, 2020
CONFIDENTIAL AND PROPRIETARY
Page 1 | 5
XT2500 Product Manual
TABLE OF CONTENTS
1. Regulatory Statements
1.1. FCC
1.2. IC
1.3. CE
3
3
4
4
CONFIDENTIAL AND PROPRIETARY
Page 2 | 5
XT2500 Product Manual
1. REGULATORY STATEMENTS
1.1. FCC
NOTICE:
This equipment with FCC-ID: GKM-XT2500 and IC-ID: 10281A-XT2500, Model: XT2500 is subject to the Federal
Communications Commission (FCC) and Industry Canada (IC) rules.
Changes or modifications not expressly approved by the party responsible for compliance could void the user's
authority to operate the equipment.
This device complies with Part 15 of the FCC Rules.
Operation is subject to the following two conditions:
this device may not cause harmful interference, and
1.
2.
this device must accept any interference received, including interference that may cause undesired
operation.
Changes or modifications made to this equipment not expressly approved by Xirgo Technologies, LLC may void
the FCC authorization to operate this equipment.
NOTE: This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant
to part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful
interference in a residential installation. This equipment generates, uses and can radiate radio frequency energy
and, if not installed and used in accordance with the instructions, may cause harmful interference to radio
communications. However, there is no guarantee that interference will not occur in a particular installation. If this
equipment does cause harmful interference to radio or television reception, which can be determined by turning
the equipment off and on, the user is encouraged to try to correct the interference by one or more of the
following measures:
l Reorient or relocate the receiving antenna.
l Increase the separation between the equipment and receiver.
l Connect the equipment into an outlet on a circuit different from that to which the receiver is connected.
l Consult the dealer or an experienced radio/TV technician for help.
Radio frequency radiation exposure Information:
This equipment, XT2500, complies with FCC and ISED radiation exposure limits set forth for an uncontrolled
environment. This equipment must be installed and operated with minimum distance of 20cm between the
XT2500 and your body. However, the external antenna of this product must be installed and operated with a
minimum distance of at least 65cm between the antenna and your body.
CONFIDENTIAL AND PROPRIETARY
Page 3 | 5
XT2500 Product Manual
1.2. IC
Antenna Statement
Under Industry Canada regulations, this radio transmitter may only operate using an antenna of a type and
maximum (or lesser) gain approved for the transmitter by Industry Canada. To reduce potential radio
interference to other users, the antenna type and its gain should be so chosen that the equivalent isotropically
radiated power (e.i.r.p.) is not more than that necessary for successful communication.
Conformément à la réglementation d'Industrie Canada, le présent émetteur radio peut fonctionner avec une
antenne d'un type et d'un gain maximal (ou inférieur) approuvé pour l'émetteur par Industrie Canada. Dans le
but de réduire les risques de brouillage radioélectrique à l'intention des autres utilisateurs, il faut choisir le type
d'antenne et son gain de sorte que la puissance isotrope rayonnée équivalente (p.i.r.e.) ne dépasse pas
l'intensité nécessaire à l'établissement d'une communication satisfaisante.
This device complies with Industry Canada licence-exempt RSS standard(s). Operation is subject to the following
two conditions:
this device may not cause interference, and
this device must accept any interference, including interference that may cause undesired operation of the
device.
Le présent appareil est conforme aux CNR d'Industrie Canada applicables aux appareils radio exempts de licence.
L'exploitation est autorisée aux deux conditions suivantes:
l'appareil ne doit pas produire de brouillage, et
l'appareil doit accepter tout brouillage radioélectrique subi, même si le brouillage est susceptible d'en
compromettre le fonctionnement.
Licence exempt
1.
2.
1.
2.
1.3. CE
The DOC (Declaration of Conformity) is either included in the packaging or can be found at the following link:
www.xirgotech.com
CONFIDENTIAL AND PROPRIETARY
Page 4 | 5
XT2500 Product Manual
WARNING: This product can expose you to chemicals including Nickel (Metallic), which is known
to the State of California to cause cancer and Bisphenol A (BPA), which is known to
the State of California to cause birth defects or other reproductive harm.
For more information go to www.P65Warnings.ca.gov
CONFIDENTIAL AND PROPRIETARY
Page 5 | 5
1 | Internal Photos | Internal Photos | 348.28 KiB | February 19 2021 / August 21 2021 | delayed release |
1 | External Photos | External Photos | 440.94 KiB | February 19 2021 / August 21 2021 | delayed release |
1 | Product Label | ID Label/Location Info | 53.91 KiB | February 19 2021 / February 22 2021 |
Part #:
Serial #:
HW:
FL360 A YYWW01234 Rev C IMEI #: 123456789012345 FCC ID: GKM-XT2500 IC ID: 10281A-XT2500 Model: XT2500 Contains FCC ID: XMR201707BG96 Contains IC ID: 10224A-201709BG96
1 | Confidentiality Request Letter (Long-term) | Cover Letter(s) | 185.75 KiB | February 19 2021 / February 22 2021 |
775 Montague Expressway Milpitas, CA 95035 Tel: 408-526-1188 Fax: 408-526-1088 Email: sales.eaw@us.bureauveritas.com Confidentiality Request Letter
[ Reason for Amendment (current / obsolete) Revision Histo Approved Date From To Initial Release (obsolete) 1.0 1.0 Nov-14-2006 Adding CFR 2.459 (obsolete) 1.0 2.0 August - 14 - 2008 Updated company template & Added text box 2.0 3.0 Jan-31-2012
(obsolete}
Added IC confidentiality letter form (obsolete) 3.0 40 March-26-2015 Corrections to STC form. Added reference to KDB 4.0 5.0 Nov-19-2015
(obsolete) Updated company logo (current) 5.0 6.0 Jun-26-2019 G HIRGO TECHNOLOGIES 5/16/2020 To:
Federal Communications Commission Authorization and Evaluation Division 7435 Oakland Mills Road Columbia, MD Subject: Permanent Confidentiality Request for FCC ID: GKM-XT2500 Pursuant to sections 0.457 and 0.459 of CFR 47, we respectfully request permanent confidential treatment of the following Exhibits accompanying this application as:
- eg. Block Diagram
- e.g. Schematics
- @.g. Operational Description The above materials contain trade secrets and proprietary information not customarily released to the public. The public disclosure of these materials may be harmful to the applicant and provide unjustified benefits to its competitors. The applicant understands that disclosure of this application and all accompanying documentation will not be made before the date of the Grant for this application. Since hawn Aleman Chief Executive Officer 188 Camino Ruiz Camarillo, CA 93012 Saleman@xirgo.com SCS-F19: Confidentiality Request Letter Page 2 of 2 Rev 6.0
1 | Confidentiality Request Letter (Short-term) | Cover Letter(s) | 215.97 KiB | February 19 2021 / February 22 2021 |
775 Montague Expressway Milpitas, CA 95035 Tek: 408-526-1188 Fax: 408-526-1088 Email: sales.eaw@us.bureauveritas.com Confidentiality Request Letter Revision Histo!
Reason for Amendment (current / obsolete) From To Approved Date Initial Release (obsolete) 1.0 1.0 Nov-14-2006 Adding CFR 2.459 (obsolete) 1.0 2.0 August ~ 11 - 2008 Updated company template & Added text box 2.0 3.0 Jan-31-2012
(obsolete) Added IC confidentiality letter form (obsolete) 3.0 4.0 March-26-2015 Corrections to STC form. Added reference to KDB 40 5.0 Nov-19-2015
(obsolete) Updated company logo (current) 5.0 6.0 Jun-26-2019 G SIRGO TECHNOLOGIES 5/16/2020 To: Federal Communications Commission Office of Engineering and Technology Equipment Authorization Division 7345 Oakland Mills Road Columbia, Maryland 21046 Subject: Short Term Confidentiality Request for FCC ID: GKM-xT2500 To Whom It May Concern:
Pursuant to sections 0.457 and 0.459 of CFR 47, and to avoid premature release of sensitive information prior to marketing or release of the product to the public, the applicant requests the following documents contained in this certification application be temporarily withheld from public disclosure for an initial period of 45 [_] or 180 days; or for a specified date of [_] /_] /_] not to exceed 180 days from the Grant Date. See KDB 726920. e.g. User Manual e.g. Internal Photos e.g. Test Setup photos e.g. External Photos The above materials contain trade secrets and proprietary information not customarily released to the public. The public disclosure of these materials may be harmful to the applicant and provide unjustified benefits to its competitors. Sincerel hawn Aleman Chief Executive Officer 188 Camino Ruiz Camarillo, CA 93012 Saleman@xirgo.com SCS-F19: Confidentiality Request Letter Page 2 of 2 Rev 6.0
1 | Product Certification Representative Auth Letter | Cover Letter(s) | 122.29 KiB | February 19 2021 / February 22 2021 |
775 Montague Expressway Milpitas, CA 95035 Tel; 408-526-1188 Fax: 408-526-1088 Email: sales.eaw@us.bureauveritas.com Project and Product Certification Representative Authorization Letter Revision Histo!
Reason for Amendment (current / obsolete) From To Approved Date Initial Release (obsolete) 1.0 1.0 Nov-14-2006 Revised wording (obsolete) 1.0 2.0 Sept-25-2007 Updated company template (obsolete) 2.0 3.0 Jan-31-2012 Updated letter information (obsolete) 3.0 40 May-23-2014 Added FCC ID field (obsolete} 4.0 5.0 Sep-16-2044 Updated company name & logo (current) 5.0 6.0 Jun-27-2018
BIRGO TECHNOLOGIES 5/16/2020 To: BVCPS, INC. 775 Montague Expressway, Milpitas, CA 95035 USA Dear Sir/Madam, Re: Product Certification Representative Authorization Letter We, Circuit Services LLC hereby authorize Bureau Veritas Consumer Product Services, Inc. to act as a Certification Body for certifying for the following project(s):
FCC ID: GKM-XT2500 Product Description: XT2580 Sincer
(Lt hawn Aleman Chief Executive Officer 188 Camino Ruiz Camarillo, CA 93012 Saleman@xirgo.com SCS-F18: Project and Product Certification Representative Authorization Letter Page 2 of 2 Rev 6.0
1 | Test Setup Photos | Test Setup Photos | 608.06 KiB | February 19 2021 / August 21 2021 | delayed release |
frequency | equipment class | purpose | ||
---|---|---|---|---|
1 | 2021-02-22 | 2402 ~ 2480 | DTS - Digital Transmission System | Original Equipment |
app s | Applicant Information | |||||
---|---|---|---|---|---|---|
1 | Effective |
2021-02-22
|
||||
1 | Applicant's complete, legal business name |
Xirgo Technologies Inc.
|
||||
1 | FCC Registration Number (FRN) |
0021512173
|
||||
1 | Physical Address |
188 Camino Ruiz
|
||||
1 |
Camarillo, CA
|
|||||
1 |
United States
|
|||||
app s | TCB Information | |||||
1 | TCB Application Email Address |
c******@bureauveritas.com
|
||||
1 | TCB Scope |
A4: UNII devices & low power transmitters using spread spectrum techniques
|
||||
app s | FCC ID | |||||
1 | Grantee Code |
GKM
|
||||
1 | Equipment Product Code |
XT2500
|
||||
app s | Person at the applicant's address to receive grant or for contact | |||||
1 | Name |
S****** A****
|
||||
1 | Telephone Number |
80542********
|
||||
1 | Fax Number |
80538********
|
||||
1 |
s******@xirgotech.com
|
|||||
app s | Technical Contact | |||||
n/a | ||||||
app s | Non Technical Contact | |||||
n/a | ||||||
app s | Confidentiality (long or short term) | |||||
1 | Does this application include a request for confidentiality for any portion(s) of the data contained in this application pursuant to 47 CFR § 0.459 of the Commission Rules?: | Yes | ||||
1 | Long-Term Confidentiality Does this application include a request for confidentiality for any portion(s) of the data contained in this application pursuant to 47 CFR § 0.459 of the Commission Rules?: | Yes | ||||
1 | If so, specify the short-term confidentiality release date (MM/DD/YYYY format) | 08/21/2021 | ||||
if no date is supplied, the release date will be set to 45 calendar days past the date of grant. | ||||||
app s | Cognitive Radio & Software Defined Radio, Class, etc | |||||
1 | Is this application for software defined/cognitive radio authorization? | No | ||||
1 | Equipment Class | DTS - Digital Transmission System | ||||
1 | Description of product as it is marketed: (NOTE: This text will appear below the equipment class on the grant) | vehicle tracking unit | ||||
1 | Related OET KnowledgeDataBase Inquiry: Is there a KDB inquiry associated with this application? | No | ||||
1 | Modular Equipment Type | Does not apply | ||||
1 | Purpose / Application is for | Original Equipment | ||||
1 | Composite Equipment: Is the equipment in this application a composite device subject to an additional equipment authorization? | No | ||||
1 | Related Equipment: Is the equipment in this application part of a system that operates with, or is marketed with, another device that requires an equipment authorization? | No | ||||
1 | Grant Comments | Power Output is conducted. Device must be installed to operate with a minimum separation distance of 20 cm from all persons according to mobile exposure conditions of §2.1091. The antenna(s) used for this transmitter must not be collocated or operating in conjunction with any other antenna or transmitter within a host device, except in accordance with FCC multi-transmitter product procedures. Installers and end-users must be provided with transmitter operating conditions and instructions for satisfying RF exposure compliance. | ||||
1 | Is there an equipment authorization waiver associated with this application? | No | ||||
1 | If there is an equipment authorization waiver associated with this application, has the associated waiver been approved and all information uploaded? | No | ||||
app s | Test Firm Name and Contact Information | |||||
1 | Firm Name |
Bureau Veritas Consumer Products Services, Inc.
|
||||
1 | Name |
S**** S******
|
||||
1 | Telephone Number |
+1 92********
|
||||
1 |
S******@bureauveritas.com
|
|||||
Equipment Specifications | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Line | Rule Parts | Grant Notes | Lower Frequency | Upper Frequency | Power Output | Tolerance | Emission Designator | Microprocessor Number | |||||||||||||||||||||||||||||||||
1 | 1 | 15C | 2402.00000000 | 2480.00000000 | 0.0028000 |
some individual PII (Personally Identifiable Information) available on the public forms may be redacted, original source may include additional details
This product uses the FCC Data API but is not endorsed or certified by the FCC