Updating Ikea device firmware without their gateway

Installed plugin Zigbee2MqttAssistant addon which is meant to be able to update firmware version. It did show this option for my Ikea remote which I did some time ago and its now on 1.2.214

However when checking other resources on how to bind this device it says I need 2.3.014 to support binding. But no update is available within the addon.

Apparently this is a list of the firmware updates available https://fw.ota.homesmart.ikea.net/feed/version_info.json
Within which my devices is listed:-
{“fw_binary_url”:“http://fw.ota.homesmart.ikea.net/Tradfri_OTA_release_signed_2020_06_24_133052/bin/159699-5.1-TRADFRI-remote-control-2.3.014.ota.ota.signed",“fw_file_version_LSB”:17969,“fw_file_version_MSB”:8961,“fw_filesize”:182590,“fw_image_type”:4545,“fw_manufacturer_id”:4476,"fw_type”:2},
Seemingly with an update from 24/6/20 (2.3.0.14), but the addon isnt showing the option to update the firmware. Any ideas why of how I can fix this? Thanks

Where did you get this list from ? No update on 24/06/20 is listed here :

https://ww8.ikea.com/ikeahomesmart/releasenotes/releasenotes.html

(Your second link gives an access denied error)

This list/link is used by a script to download and upgrade the FM with Deconz.
The originally Deconz software, not the HA add-in.

Then deconz uses a different OTA server than zigbee2mqtt.

1 Like

Yes, might be, I don’t use zigbee2mqtt
If I am right, the script mentioned was published by Dresden Elektronik, the manufacturer of the Conbee stick and Deconz.

Maybe that link you have is the gateway firmware?

In this article for my remote, it states I need firmeware 2.3.014 to support binding, so its got to be available.
Plus looking at the link I shared above, it lists the following : 159699-5.1-TRADFRI-remote-control-2.3.014.ota.ota.signed

So given there is a newer firmware available, and that Zigbee2MqttAssistant add on is not showing one being available, any ideas how I can complete the update?

What version of zigbee2mqtt are you on ?

  • Version of Zigbee2Mqtt: 1.14.2
  • Version of Zigbee2MqttAssistant: 0.3.157

The only thing I can think off : re-pair your remote again.

Makes sense, but could I ask how do I fully remove the existing remote before doing that again?

Zigbee2mqttAssistant

Thanks, that worked. Was able to re-pair the remote, and found the manual commands to check for firmware update, but they failed with the following error.

zigbee2mqtt:info  2020-07-27 13:52:03: MQTT publish: topic 'zigbee2mqtt/bridge/log', payload '{"type":"ota_update","message":"Checking if update available for '0xd0cf5efffec08c3b'","meta":{"status":"checking_if_available","device":"0xd0cf5efffec08c3b"}}'
(node:241) UnhandledPromiseRejectionWarning: Error: Timeout - 49936 - 1 - null - 25 - 1 after 30000ms
    at Timeout._onTimeout (/zigbee2mqtt-1.14.1/node_modules/zigbee-herdsman/dist/utils/waitress.js:47:35)
    at listOnTimeout (internal/timers.js:549:17)
    at processTimers (internal/timers.js:492:7)
(node:241) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 3)
zigbee2mqtt:error 2020-07-27 13:52:54: Failed to check if update available for '0xd0cf5efffec08c3b' (Device didn't respond to OTA request)
zigbee2mqtt:info  2020-07-27 13:52:54: MQTT publish: topic 'zigbee2mqtt/bridge/log', payload '{"type":"ota_update","message":"Failed to check if update available for '0xd0cf5efffec08c3b' (Device didn't respond to OTA request)","meta":{"status":"check_failed","device":"0xd0cf5efffec08c3b"}}'

Your remote is asleep. Press a button before you check.

sorry forgot to mention I did this before pushing the command

1 Like

Ok so not quiet sure exactly how this was fixed, but the firmware had now updated!
After the steps above, I tried the manual update commands again, they failed but then a few minutes later I noticed the firmware version was now updated! Crazy since it take hours (I believe) to update normally (it did last time it did work). Anyway thanks for your pointers