The OTAUpgradeAdmin service (com.prosyst.mbs.services.zigbee.zcl.app.controller) is used to update the firmware of a device.
Registered by Bundles
The OTAUpgradeAdmin service is registered by the ZCL Application Controller bundle.
Used by Bundles
The OTAUpgradeAdmin service is used by the following bundles:
ZigBee DA Items Provider Bundle.
General Device Class Provider Bundle.
ZigBee Commands Bundle.
Additional Details
Overview
The main goal of Over The Air Upgrade cluster is to provide interoperable means for devices from different manufacturers to upgrade each other's image. The server side of the OTA Upgrade Cluster is provided by the coordinator, while the client side resides on the router/end devices. The support of the OTA Upgrade Service is provided by the com.prosyst.mbs.services.zigbee.zcl.app.controller.OTAUpgradeAdmin service, which is part of ZigBee module. OTAUpgradeAdmin service is registered by com.prosyst.mbs.zigbee.zcl.app.controller bundle and it is used by ZigBee console commands and related device class\item providers.
Supported Start Parameters
Parameters accepted by the start operation:
overwrite.manufacturer.id - Force the server to use manufacturer identifier provided in incoming request, instead of manufacturer identifier provided by the firmware image. Use this property with caution, only in cases when manufacturer changes its identifier and there is a incompatibility between manufacturer identifier on device and this in firmware image.
overwrite.image.type - Force the server to use image type provided in incoming request, instead of image type provided by the firmware image. Use this property with caution, only in cases when there is a incompatibility between image type on device and this in firmware image.
upgrade.time - The parameter specifies approximately the operation upgrade time in seconds i.e. the physical upgrade should finish within this time. If the parameter is missing, the default upgrade time will be set to 120.
delay.time - an optional parameter, can be a Long or its string representation. The parameter specifies with how many seconds to delay the physical upgrade operation. If the parameter is missing, the default delayed upgrade time will be set to 0 seconds. The DELAY_TIME_MANUAL value has a special meaning - the physical upgrade operation, won't happen until parameters are updated and another delay time is set.
maximum.data.size - The value indicates the largest possible length of data (in bytes) that the server can send at once. The server may send the data that is smaller than the maximum data size specified in ImageBlock request, for example, to account for source routing payload overhead if the client is multiple hops away. Maximum data size for some controllers without any routing is 52 bytes and every hop decrease it with two more bytes. If the parameter is missing, the default maximum data size will be set to 48 bytes.
Event with this topic is send at the end of OTA Upgrade download operation. The event is synchronous, allowing an option to change upgrade end parameters.
During firmware image download and delay.time interval the device status remains STATUS_ONLINE. Than the physical upgrade of the device is started and the status is changed to STATUS_FIRMWARE_UPDATING. When firmware upgrade finishes, the status is changed back to STATUS_ONLINE and a full device refresh is done.