GV300CAN @track Air Interface Firmware Update: GSM/GPRS/GNSS Tracker
GV300CAN @track Air Interface Firmware Update: GSM/GPRS/GNSS Tracker
Update
GSM/GPRS/GNSS Tracker
TRACGV300CANFTAN002
Version: 1.00
GV300CAN @Track Air Interface Firmware Update
Version 1.00
Date 2017-07-27
Status Release
k
General Notes
n
Queclink offers this information as a service to its customers, to support application and
i
engineering efforts that use the products designed by Queclink. The information provided is
l l
based upon requirements specifically provided to Queclink by the customers. Queclink has not
c
undertaken any independent search for additional relevant information, including any
ia
information that may be in the customer’s possession. Furthermore, system validation of this
e t
product designed by Queclink within a larger electronic system remains the responsibility of the
u
customer or the customer’s system integrator. All specifications supplied herein are subject to
n
change.
Q fide
Copyright
This document contains proprietary technical information which is the property of Queclink
Wireless Solutions Co., Ltd. The copying of this document and giving it to others and the using or
communication of the contents thereof, are forbidden without express authority. Offenders are
n
liable to the payment of damages. All rights are reserved in the event of grant of a patent or the
registration of a utility model or design. All specifications supplied herein are subject to change
o
without notice at any time.
C
TRACGV300CANFTAN002 -1-
GV300CAN @Track Air Interface Firmware Update
Contents
Contents ............................................................................................................................................ 2
0. Revision History ............................................................................................................................. 3
1. Scope ............................................................................................................................................. 4
2. Message ........................................................................................................................................ 5
2.1. Command And Acknowledgement...................................................................................... 5
2.1.1. Start the Firmware Update ........................................................................................ 5
2.1.2. Stop the Firmware Update ........................................................................................ 6
2.1.3. Acknowledgement ..................................................................................................... 6
k
2.2. Report.................................................................................................................................. 7
2.2.1. Update Confirmation ................................................................................................. 7
i n
2.2.2. Package Download .................................................................................................... 8
l l
2.2.3. Firmware Update ....................................................................................................... 9
c
3. Firmware Update Process ........................................................................................................... 10
a
3.1. Initiation of the Update Process ........................................................................................ 10
e t i
3.2. Confirmation of the Update Process ................................................................................. 10
3.3. Download of the Update Package ..................................................................................... 10
u n
3.4. Updating of the Firmware ................................................................................................. 11
3.5. An Example of Successful Update...................................................................................... 11
Q fide
o n
C
TRACGV300CANFTAN002 -2-
GV300CAN @Track Air Interface Firmware Update
0. Revision History
i n k
cl ia l
u e n t
Q fide
o n
C
TRACGV300CANFTAN002 -3-
GV300CAN @Track Air Interface Firmware Update
1. Scope
This document describes the firmware update over the air for GV300CAN. This enables end users
to update the firmware of GV300CAN remotely without having to bring their device to the
service centre. Thus the service provider of GV300CAN could conveniently push new features or
bug fix to the end users and promote the customer experience.
k
the backend server: the server which remotely controls the terminal and receives report
from the terminal
i n
the file server: the server which hosts the packages of the update
l l
The file server and the backend server could be hosted on the same machine.
c a
This document describes the process of the firmware update and the necessary message
e i
exchanged during the update, while the information below is not covered:
t
The timing and the strategy that the backend server initiates the update.
u n
The deployment method of the update package.
How to setup a file server.
Q fide
The communication between the backend server and the file server.
o n
C
TRACGV300CANFTAN002 -4-
GV300CAN @Track Air Interface Firmware Update
2. Message
The command AT+GTUPD is used to start and stop the firmware update remotely.
k
To start the firmware update, the backend server sends the AT+GTUPD (sub:0) command to the
device. Upon receiving this command, the device is informed of where to download the update
n
package and how to download the package.
l i l
Start: AT+GTUPD=
c a
Example:
e i
AT+GTUPD=gv300can,
t
0,0,20,0,,,http://fota.queclink.com/GV300CAN_0201_0205.bin,,0,,,0001$
u n
Parameter Length (byte) Range/Format Default
password 4~6 ‘0’-‘9’, ‘a’-‘z’, ‘A’-‘Z’ gv300can
Q fide
sub-command 1 0
max download retry 1 0 – 20 0
download timeout 2 10 – 30 min 20
download protocol 1 0 0
reserved 0
n
reserved 0
o
download URL 100 legal URL
reserved 0
C
update type 1 0|1 0
reserved 0
reserved 0
serial number 4 0000-FFFF
tail character 1 $ $
<password>: The valid characters for the password include ‘0’-‘9’, ‘a’-‘z’, and ‘A’-‘Z’. The
default value is “gv300can”.
<sub-command>: The sub-command of AT+GTUPD. 0 means “Start the firmware update”.
<max download retry>: It specifies the maximum number of retries to download the update
package upon download failure.
<download timeout>: It specifies the expiration timeout of a single download. If the
download expires, it is considered to be failure.
<download protocol>: The protocol used to download the package. Only HTTP is supported
TRACGV300CANFTAN002 -5-
GV300CAN @Track Air Interface Firmware Update
now. Set it to 0.
<download URL>: It specifies the URL to download the package.
<reserved>: Reserved for future extension.
<update type>: It specifies the firmware type to update. 0 means “BB firmware”, and 1
means “MCU firmware”.
<serial number>: As shown in the example above, the exact serial number will be sent back
to the platform in ACK. It is in hexadecimal format. It should begin from 0000 and increases
by 1 every time. It should roll back after “FFFF”.
<tail character>: A character to indicate the end of the command. It must be ‘$’.
k
2.1.2.Stop the Firmware Update
n
Before the device finishes downloading the update package, the backend server could use the
l i
AT+GTUPD (sub:1) command to cancel the current firmware update. If the package is
l
downloaded successfully, this command is ignored.
e c ia
Stop: AT+GTUPD=
t
Example:
u n
AT+GTUPD=gv300can,1,,,,,0001$
Parameter Length (byte) Range/Format Default
Q fide
password 4~6 ‘0’-‘9’, ‘a’-‘z’, ‘A’-‘Z’ gv300can
sub-command 1 1
reserved 0
reserved 0
n
reserved 0
reserved 0
o
serial number 4 0000-FFFF
tail character 1 $ $
C
<sub-command>: The sub-command of AT+GTUPD. 1 means “Cancel the current firmware
update process”.
2.1.3.Acknowledgement
+ACK:GTUPD,
Example:
+ACK:GTUPD,250403,135790246811220,,0001,20090101000002,11F0$
Parameter Length (byte) Range/Format Default
protocol version 6 XX0000 – XXFFFF, X∈{'A'
TRACGV300CANFTAN002 -6-
GV300CAN @Track Air Interface Firmware Update
<protocol version>: The protocol version that the terminal conforms to. The first two
characters XX indicate the device type. 25 means GV300CAN. The middle two characters
represent the major version number and the last two characters represent the minor version
k
number. Both the major version number and the minor version number are hex digits. For
n
example, 020A means version 2.10
i
<unique ID>: The terminal’s IMEI.
l l
<device name>: An ASCII string which represents the name of the device.
c
<serial number>: The <serial number> in the AT+GTUPD command.
ia
<send time>: The terminal local time to send the message.
e t
<count number>: The self-increasing count number will be included in every
acknowledgment message. The count begins from 0000 and increases by 1 every time. It will
u n
roll back after “FFFF”.
Q fide
2.2. Report
n
During the firmware update process, the device reports its status to the backend server via the
message +RESP:GTUPD upon entering different phases, including the update confirmation
o
information, package download information and firmware update information.
C
2.2.1.Update Confirmation
The device sends update confirmation information to the backend server if:
the update command is confirmed by the device
the update command is refused by the device
the update process is canceled by the backend server
the update command is refused because the battery is low
Confirmation: +RESP:GTUPD,
Example:
+RESP:GTUPD,250403,135790246811220,,100,,20090101000000,11F0$
Parameter Length (byte) Range/Format Default
protocol version 6 XX0000 – XXFFFF,
X∈{'A' – 'Z', '0' – '9'}
unique ID 15 IMEI
TRACGV300CANFTAN002 -7-
GV300CAN @Track Air Interface Firmware Update
k
incorrect URL.
n
103/113: The update process is refused because the battery is low.
l i l
Note: If the value of <update type> in the command AT+GTUPD is 1, the value of <code> will be
c
110/111/112/113.
u e
2.2.2.Package Download
t ia
Q fide n
The device sends package download information to the backend server if:
the device starts to download the package
the device finishes downloading the package successfully
the device fails to download the package
n
Downloading: +RESP:GTUPD,
Example:
o
+RESP:GTUPD,250403,135790246811220,,200,1,20090101000000,11F0$
Parameter Length (byte) Range/Format Default
C
protocol version 6 XX0000 – XXFFFF,
X∈{'A' – 'Z', '0' – '9'}
unique ID 15 IMEI
device name <=10 ‘0’-‘9’, ‘a’-‘z’, ‘A’-‘Z’
code 3 200|201|202|210|211|212
download times 1 1|2|3|4
send time 14 YYYYMMDDHHMMSS
count number 4 0000-FFFF
tail character 1 $ $
TRACGV300CANFTAN002 -8-
GV300CAN @Track Air Interface Firmware Update
Note: If the value of <update type> in the command AT+GTUPD is 1, the value of <code> will be
210/211/212.
2.2.3.Firmware Update
The device sends firmware update information to the backend server if:
the device starts to update the firmware
the device finishes updating the firmware successfully
k
the device fails to update the firmware
the update process does not start because the battery is low
l i n
Updating: +RESP:GTUPD,
l
Example:
c a
+RESP:GTUPD,250403,135790246811220,,300,,20090101000000,11F0$
e i
Parameter Length (byte) Range/Format Default
t
protocol version 6 XX0000 – XXFFFF,
u n
X∈{'A' – 'Z', '0' – '9'}
unique ID 15 IMEI
Q fide
device name <=10 ‘0’-‘9’, ‘a’-‘z’, ‘A’-‘Z’
code 3 300|301|302|303|310|311|312|313
reserved 0
send time 14 YYYYMMDDHHMMSS
count number 4 0000-FFFF
n
tail character 1 $ $
o
<code>: The code indicates the update information.
C
300/310: The device starts to update the firmware.
301/311: The device finishes updating the firmware successfully.
302/312: The device fails to update the firmware.
303/313: The update process does not start because the battery is low.
Note: If the value of <update type> in the command AT+GTUPD is 1, the value of <code> will be
310/311/312/313.
TRACGV300CANFTAN002 -9-
GV300CAN @Track Air Interface Firmware Update
The backend server sends the AT+GTUPD (sub:0) command to the device to initiate the update
process. Along with this command, the backend server sends necessary information for the
device to start the update process.
k
It’s the backend server’s duty to decide when and how to initiate the firmware update process to
i n
all the devices it controls. As the response messages collector and the controller, the backend
l l
server has all the information it needs to start an update process including the current firmware
versions of the devices it controls (retrieved with the AT+GTRTO command), the version of the
c a
latest available firmware and the location of the proper update packages.
e t i
3.2. Confirmation of the Update Process
u
Q fide n
Upon receiving the AT+GTUPD (sub:0) command, the device will first check the current battery
capacity. If the battery capacity cannot support the update process, it will report +RESP:GTUPD
(code: 103) to notify the backend server that the update process is to be aborted because of low
battery. If the battery capacity is ample, the device will send +RESP:GTUPD with confirmation
information to the backend server. Then the update process proceeds to the next step.
n
If the update command is confirmed, the device will turn into a non-interactive mode. That is,
o
the end user can no longer make phone call, and all incoming call are rejected automatically until
the update process finishes. At the meantime, the device will ignore all the commands received
C
from the backend server if it is not related to the update process. Also the device will stop all the
reports that are not related to the update process.
If the update command is confirmed, the device will use the information sent by the backend
server to download the update package. If the download fails, the device will retry the specified
times. If all attempts fail, the update process is aborted and the device will automatically reboot
to go back to the normal working mode. If the download succeeds, the update process proceeds
to the next step. Either way, the device will send +RESP:GTUPD with download information to
the backend server.
Before the package is downloaded, the backend server could send the AT+GTUPD (sub:1)
command to cancel the current update process. This is the only chance to abort during the
TRACGV300CANFTAN002 - 10 -
GV300CAN @Track Air Interface Firmware Update
update process.
After downloading the package successfully, the device will check the battery capacity again. If
the battery cannot support the update process, the device will report +RESP:GTUPD (code: 303)
to notify the backend server that the update process is to be aborted because of low battery. If
the battery capacity is ample, the device will send +RESP:GTUPD (code:300) to the backend
server to indicate the start of the update. Then it uses the update package to update the
firmware. After the update, whether it succeeds or fails, the device will reboot automatically.
After the device boots up, it sends +RESP:GTUPD with update information to the backend server
k
and works as usual.
i n
3.5. An Example of Successful Update
cl ia l
u e n t
Q fide
o n
C
TRACGV300CANFTAN002 - 11 -Queclink
Grace Wang Checked
2019.08.07