FOTA Update Procedure for NL-SW-LTE-GELS3-C

FOTA Update Procedure for
NL-SW-LTE-GELS3-C
NimbeLink Corp
Updated: December 2017
PN 1001572 rev 3
NimbeLink Corp All Rights Reserved
1
Table of Contents
Introduction
Overview
Prerequisites
3
3
3
FOTA Process
Introduction
Flow chart
Directions
Example Log
4
4
4
5
7
PN 1001572 rev 3
NimbeLink Corp All Rights Reserved
2
1. Introduction
1.1 Overview
This guide documents performing a firmware over the air (FOTA) update for the
NL-SW-LTE-GELS3-C Skywire™ modem using firmware files from an FTP server and
the modem's internal AT commands.
The FOTA process is a device-initiated firmware update triggered by the host system.
Firmware files for FOTA operations are available upon request from NimbeLink. Please
email product.support@nimbelink.com for the firmware files.
The FTP servers referenced in this document are not live servers and firmware files are
not available for download from them. Users are responsible for hosting the firmware
files for their FOTA application.
Please email product.support@nimbelink.com should any questions or support requests
arise.
The modem cannot be powered down during the delta firmware download, and doing so
will cause a failed download and the download will need to be reinitiated.
Applying the firmware update will take around 200 seconds to complete. It is not
recommended to power down the modem during this process. Should the modem be
powered down during this process the update process will pause and then resume once
power is reapplied, but this is not recommended as URC notifications about the update
may be missed, the firmware update may fail, and the modem will reset several times
itself during the update process.
1.2 Prerequisites
The FOTA process is available on the NL-SW-LTE-GELS3-C firmware and later. To
confirm your firmware firmware version, issue the command ATI1, and the Skywire will
respond with:
Cinterion
ELS31-V
REVISION 4.3.2.0
A-REVISION 4.3.3.0-xxxxx
L-REVISION 3.7.6
OK
where xxxxx is the firmware version. Any version 29632 or higher is able to perform a
FOTA update.
PN 1001572 rev 3
NimbeLink Corp All Rights Reserved
3
2. FOTA Process
2.1 Introduction
During the device initiated firmware update, the system host device will issue AT
commands to the modem to trigger the modem to download the firmware file and then
apply the update.
2.2 Flow chart
PN 1001572 rev 3
NimbeLink Corp All Rights Reserved
4
2.3 Directions
The following instructions will document the AT commands that the host system must
send to the modem to perform a FOTA update for the modem. The modem must have
an active SIM card and be registered on the network before starting the FOTA process.
2.3.1 Verify Connection
The FOTA process requires the modem to be registered on the network, and have a
correctly configured PDP context in accordance with the carrier's required settings.
To check that the modem is registered on the network, you can issue the AT+CEREG?
command. The modem will respond with something similar to:
+CEREG: 0,x
OK
where x is a number indicating registration status. 1 means that the Skywire™ is
registered on the network. For other responses, please consult the AT command
manual for more information.
Next, users should check that the PDP contexts are properly configured with the
AT+CGDCONT? command. The modem will respond with the following:
+CGDCONT: 1,"IPV4V6","VZWIMS",,,,0,0,1,1,0
+CGDCONT: 2,"IPV4V6","VZWADMIN",,,,0,0,0,0,0
+CGDCONT: 3,"IPV4V6","APN",,,,0,0,0,0,0
+CGDCONT: 4,"IPV4V6","VZWAPP",,,,0,0,0,0,0
+CGDCONT: 8,"IPV4V6","",,,,0,1,1,1,0
OK
Where APN is the APN that the modem should use for data connections.
Lines-of-service
activated
on
go.nimbelink.com
use
the
APN
NIMBLINK.GW12.VZWENTP. If you activated your line-of-service elsewhere, it will be
different. Please contact a representative of where you purchased your line-of-service to
get the APN.
2.3.2 Activate Context and Confirm IP Address
The FOTA process requires an active data context. You can activate the context with
the command AT^SICA=1,3. The Skywire™ will respond with OK regardless of
activation status. To confirm that the context is active, you can issue AT^SICA?. The
Skywire™ will respond with:
^SICA: 1,1
^SICA: 2,0
PN 1001572 rev 3
NimbeLink Corp All Rights Reserved
5
^SICA: 3,x
^SICA: 4,0
^SICA: 8,0
OK
where x is the activation status. A status of 1 means that the context is active. If your
status is 0, please try the activation command again. If it continues to stay 0, please
confirm your APN and start over at Section 2.3.1.
Next, confirm that you have an IP address using the command AT+CGPADDR. The
Skywire™ will respond with:
+CGPADDR: 1,"IPV6 address"
+CGPADDR: 2
+CGPADDR: 3,"IPV4 address"
+CGPADDR: 4
+CGPADDR: 8
OK
where IPV4 address is the IP address given to you by Verizon. If there is no IP address
listed after 3, the context did not activate. Please return to the beginning of this section
to try and activate the context again.
2.3.3 Initiate Firmware Download
Once the modem's network connection has been verified the modem can begin the
download of the firmware file using the following command:
AT^SFDOA="<firmware_url>"[, <reboot>[, <progress_report>[, <command_setting>]]]
followed by the Enter key. The modem will respond with different responses depending
on the settings below.
<firmware_url> is the username, password, IP address, and port of the FTP server in
the following format:
ftp://username:password@server-ip:port/path/to/firmwarefile.sfp
<reboot> can be set to:
0 - No reboot after firmware is installed. You must explicitly reboot the Skywire to
activate the new firmware
1 - Reboot automatically after the firmware is installed. Default setting.
<progress_report> can be set to:
0 - Do not report the download progress
1 … 100 - Reports the download progress with the unsolicited response code (URC)
"^SFDOA": "downloading",<percentage_downloaded>.
PN 1001572 rev 3
NimbeLink Corp All Rights Reserved
6
<command_setting> can be set to:
0 - Starts upgrade in the foreground. Default setting.
1 - Starts upgrade in the background. Launches the upgrade and returns immediately
with OK if the upgrade was started correctly, or with a +CME ERROR. The upgrade
progress is reported through the URC "^SFDOA".
2 - Cancel upgrade if any, or do nothing, then return OK.
Please see the AT command manual for more information.
Here is an example with the <progress_report> set to 20 and the <reboot> set to 1:
AT^SFDOA="ftp://user:password@123.456.789.012:34/firmware.sfp",1,20
^SFDOA: "downloading",0
^SFDOA: "downloading",20
^SFDOA: "downloading",40
^SFDOA: "downloading",60
^SFDOA: "downloading",80
^SFDOA: "downloading",100
^SFDOA: "installed"
^SFDOA: "rebooting"
OK
2.3.4 Verify Firmware Version
Once the firmware package is downloaded and installed, and the Skywire ™ has
rebooted, you can query the firmware version using the command ATI1. The Skywire
will respond with something similar to:
Cinterion
ELS31-V
REVISION 4.3.2.0
A-REVISION 4.3.3.0-xxxxx
L-REVISION 3.7.6
OK
where xxxxx is the firmware that you are upgrading to.
2.3.5 Example Log
The following is a log of a NL-SW-LTE-GELS3-C modem running 29632 firmware
performing a locally administered FOTA update to 29979 firmware. Comments on each
step are in blue text and start with "//". User-entered commands are in bold.
PN 1001572 rev 3
NimbeLink Corp All Rights Reserved
7
// Wait for boot
^SYSSTART
// Check firmware version
ATI1
Cinterion
ELS31-V
REVISION 4.3.2.0
A-REVISION 4.3.3.0-29632
L-REVISION 3.7.6
OK
// Check signal quality
AT+CESQ
+CESQ: 99,99,255,255,13,47
OK
// Check that the modem is registered on the network
AT+CEREG?
+CEREG: 0,1
OK
// Check that the modem has the correct APN configuration
AT+CGDCONT?
+CGDCONT: 1,"IPV4V6","VZWIMS",,,,0,0,1,1,0
+CGDCONT: 2,"IPV4V6","VZWADMIN",,,,0,0,0,0,0
+CGDCONT: 3,"IPV4V6","NIMBLINK.GW12.VZWENTP",,,,0,0,0,0,0
+CGDCONT: 4,"IPV4V6","VZWAPP",,,,0,0,0,0,0
+CGDCONT: 8,"IPV4V6","",,,,0,1,1,1,0
OK
// Activate the context
AT^SICA=1,3
OK
// Query the context status
AT^SICA?
^SICA: 1,1
^SICA: 2,0
^SICA: 3,1
^SICA: 4,0
PN 1001572 rev 3
NimbeLink Corp All Rights Reserved
8
^SICA: 8,0
OK
// Check IP address
AT+CGPADDR
+CGPADDR: 1,"012.345.678.901.234.567.890.123.456.789.012.345.678.9.0.1"
+CGPADDR: 2
+CGPADDR: 3,"123.456.789.012"
+CGPADDR: 4
+CGPADDR: 8
// Initiate the FOTA process
AT^SFDOA="ftp://user:password@456.789.012.345:21/file/firmware.sfp",1,2
^SFDOA: "downloading",0
^SFDOA: "downloading",20
^SFDOA: "downloading",40
^SFDOA: "downloading",60
^SFDOA: "downloading",80
^SFDOA: "downloading",100
^SFDOA: "installed"
^SFDOA: "rebooting"
OK
// Check new firmware version after reboot
^SYSSTART
ATI1
Cinterion
ELS31-V
REVISION 4.3.3.0
A-REVISION 4.3.3.0-29979
L-REVISION 3.7.6
PN 1001572 rev 3
NimbeLink Corp All Rights Reserved
9