For the complete documentation index, see llms.txt. This page is also available as Markdown.

Firmware Update Service

Device Type Requirements

The Firmware Update Service can be used to manage the firmware of your KPN Things M2M devices. Before you can use this service, your device types must be configured by a KPN support employee.

Your device type may consist of multiple modules, for which the firmware can be managed in the Firmware Update Service seperately. The names of the modules must correspond with SenML attributes reported by the devices of this type. The SenML attribute values indicate the current versions of the firmware for each of the modules.

Device Requirements

It is required that your devices are configured in a flow, with a decoder and encoder enabled, so the uplink messages from your device will be forwarded to the Firmware Update Service and the downlink SenML messages coming from the Firmware Update Service can be forwarded to your devices.

Firmware Update Process

The firmware update process is depicted below, and consists of the steps described in following sections.

1 - Uploading and activation of firmware

Via the Things Portal, you can create firmware packages for the modules of your device type. A firmware package has a version that corresponds to the SenML attribute value reported by the device when this firmware package is activated. A firmware file must be uploaded before the package can be activated on devices. Release notes can optionally be added for your convenience.

Using the portal, you can select a group of devices, and configure the target firmware for one or more modules for your selection of devices. This initiates the firmware update process.

The firmware service monitors the reported firmware version for each of the modules and if the target firmware version differs from the reported version, the service sends a downlink to your device. The downlink has the SenML format and contains the URL indicating where the new firmware can be downloaded, and a Bearer token, that is required for the download:

The downlink messages will be delivered to the device in the response of an uplink message.

The firmware update service will periodically send new downlinks if the update process takes more time than expected by the service. The devices must be able to process those downlinks correctly.

3 - Download new firmware

Upon receipt of the downlink with the firmware update information, the device shall download the firmware from the specified location using the provided token. HTTP Range may be used to download the firmware in multiple smaller parts.

After downloading the file, the CRC32 in the Digest HTTP response header can be used by the device to confirm successful file(-part) transfer.

4 - Apply new firmware

After downloading the firmware, the device will activate the new firmware.

5 - Report new firmware version

The device with the new firmware will now send new uplinks that contain the updated version information in the SenML. The firmware update service that receives the uplink message will update the current firmware version for the device that completes the firmware update process.

Limitations

Limit
Value
Notes

max firmware file size

100MiB

max number of download attempts

19999

The complete file must be downloaded using max 19999 HTTP requests, or the file may be downloaded up to 19999 times using one request.

token validity

48h

The period the firmware can be downloaded by the device using the provided token. A new token will be provided by the service, if needed, in a new downlink message.

Last updated

Was this helpful?