Firmware


This page describes how to upgrade the device firmware.

Firmware versioning & naming

The device firmware versioning is inspired by the semantic versioning system.

Each firmware is assigned three two digit numbers: MAJOR, MINOR, PATCH:

  • MAJOR: Incompatible changes (e.g. requires major changes to the Configuration File)

  • MINOR: New backwards-compatible functionality (e.g. new fields in the Configuration File)

  • PATCH: Backwards-compatible bug fixes (e.g. no changes to the Configuration File)

The firmware files available for download are zipped with naming as follows:

firmware-[MAJOR].[MINOR].[PATCH].zip

Example:

firmware-01.02.03.zip


Firmware upgrade

The device supports in-the-field firmware upgrades.

Note

The firmware upgrade process is power safe (tolerates power failures). However, it is recommended to ensure that the process completes

Upgrade process

Upgrading initiates when the device is powered and has been prepared with a new Firmware File:

  1. Power is applied to device

  2. The green LED comes on (can take a few seconds)

  3. If the firmware is valid, the green LED blinks 5 times, else the red LED blinks 5 times

  4. The green LED remains solid while the firmware is upgraded (~20 sec)

  5. If the upgrade succeeds, the green LED blinks 5 times, else the red LED blinks 5 times

  6. The upgraded firmware is started

Note

The green LED comes on later than usual when a firmware upgrade is initiated

Note

The device automatically removes any Firmware Files when the upgrade has completed. Firmware Files should never be manually deleted during the upgrade process.

Note

The CANedge2 GNSS upgrades the WiFi related features as a second step of the firmware upgrade process after the main firmware has started. Allow the CANedge2 GNSS a few minutes to complete the second step of the firmware upgrade. If power is lost during the second step, the device will resume next time it powers on.

Configuration update

If a device is updated to a firmware version with a different MAJOR or MINOR number, then the Configuration File also needs updating (i.e. with an updated name and structure matching the new firmware). The Configuration File is named as described in the Configuration section. A default Configuration File and corresponding Rule Schema are contained in the firmware-package (zip).

To modify an existing Configuration File, it can be useful to load the new Rule Schema in an editor together with the old Configuration File. After making the necessary updates, save the modified Configuration File with a name matching the new version.

Note

The firmware can be upgraded without providing a new compatible Configuration File. In this case, the device creates a default Configuration File on the SD-card

Upgrade from SD-card

The firmware can be upgraded by placing a Firmware File on the SD-card and powering the device:

  1. Download the firmware zip (Firmware File + Configuration File + Rule Schema)

  2. Place the firmware.bin file on the SD-card (root directory)

  3. If MAJOR/MINOR is different, update the Configuration File and place it on the SD-card root

  4. Power on the device and wait for the upgrade process to complete

Note

An incompatible firmware image is deleted and does not break the device

Example: Current firmware: 01.01.01, new firmware: 01.01.02

  1. Download firmware-01.01.02.zip and unzip it

  2. Copy firmware.bin to the SD-card

  3. The MAJOR and MINOR versions are unchanged (no need to update the Configuration File)

  4. Power on the device and wait for the upgrade process to complete

Example: Current firmware: 01.01.01, new firmware: 01.02.01

  1. Download firmware-01.02.01.zip and unzip it

  2. Copy firmware.bin to the SD-card

  3. Update the Configuration File (or use the default created by the firmware update)

  4. Power on the device and wait for the upgrade process to complete

Upgrade over-the-air

The device firmware can be updated remotely through the S3 interface. See the Firmware Over-The-Air (FOTA) for more information.