Check for firmware upgrade
Using following API you can check if there is avaliable firmware upgrade for the device.
URL: For server URL, please contact us on support@silixcon.com
Send the following JSON as POST request to the server using HTTPS.
{
"tool": {
"name": "my_awesome_iot_device",
"version": "1.2.3"
},
"device": {
"sn": "451VPP14264C",
"uuid": "20343531565050140026004C"
}
}
- One of the following must be present
sn
oruuid
. If both are present, they must match. - The
tool
object is optional. It may help debugging.
Response
The response is different if the device using container or not.
Without container
No upgrade available.
{
"server": "Odoo 17 Silixcon",
"result": 0,
"string_result": "OK",
"current_rom": {
"swid": "VECTOR_LYNX_generic v6.0.0-nightly Nov 27 2024",
"release_type": "nightly",
"available_upgrade": false
}
}
New release available.
{
"server": "Odoo 17 Silixcon",
"result": 0,
"string_result": "OK",
"current_rom": {
"swid": "VECTOR_LYNX_generic v6.0.0-nightly Nov 27 2024",
"release_type": "nightly",
"available_upgrade": {
"swid": "VECTOR_LYNX_generic v6.3.2-nightly Nov 30 2024",
"note_public": "Build message"
}
}
}
To upgrade to latest container release, use query UPGRADE
With container
The device is using latest container release.
{
"server": "Odoo 17 Silixcon",
"result": 0,
"string_result": "OK",
"current_rom": {
"swid": "VECTOR_OPHION_generic v4.4.1-testing Apr 2 2025",
"container_token": "C-0005",
"container_release_token": "CTR-0016",
"release_type": "container",
"available_upgrade": false
}
}
The device has new container release available.
{
"server": "Odoo 17 Silixcon",
"result": 0,
"string_result": "OK",
"current_rom": {
"swid": "VECTOR_OPHION_generic v4.4.1-testing Apr 2 2025",
"container_token": "C-0005",
"container_release_token": "CTR-0016",
"release_type": "container",
"available_upgrade": {
"swid": "VECTOR_OPHION_generic v4.4.1-testing Apr 2 2025",
"note_public": false,
"container_note_public": false,
"container_release_id": "CTR-0017"
}
}
}
To upgrade to latest container release, use query UPGRADE-container
Errors
If result
in response is non-zero, it is signalising an error.
Error response examples
SN and UUID provided, but do not match.
{
"server": "Odoo 17 Silixcon",
"result": 1,
"string_result": "SN and UUID mismatch.",
"current_rom": {}
}
SN provided, but not registered siliXcon device.
{
"server": "Odoo 17 Silixcon",
"result": 1,
"string_result": "Device with sn:178GD721 not found in database",
"current_rom": {}
}
Provided UUID is not registered siliXcon device.
{
"server": "Odoo 17 Silixcon",
"result": 1,
"string_result": "Stock lot not found for the provided UUID.",
"current_rom": {}
}
Incoplete request.
{
"server": "Odoo 17 Silixcon",
"result": 1,
"string_result": "Either 'sn' or 'uuid' must be provided.",
"current_rom": {}
}