[ST Edge] Is it possible to upgrade device's firmware using OTA?

@nayelyz anything?

Hoping for a reply from the team! This must be an issue for all partners no?

Keep hoping. My advice is not to expect anything though. @nayelyz any updates? Ty

1 Like

Bump @nayelyz

Looks like @nayelyz has gone dark, which is unfortunate. Donā€™t hold your breath. I too would like to have an update on this as I have been waiting for a way to manually update a few devices since I bought the v2 hub way back in the day. The manufacture provides the update files, just need SmartThings to provide the firmware update path. I am not doing that dog and pony show described in the posts above, thatā€™s just silly! Hey @nayelyz please ping the team again.

Hi, @sdbg, @JKnight

Sorry for the delay.
Enabling the OTA firmware update through the ST Hub is not on the roadmap. So, youā€™ll have to use the workaround mentioned before to update your deviceā€™s firmware.

image

5 Likes

@nayelyz, I appreciate the update. Each disappointment brings me closer to starting from scratch elsewhere, thanks for that!

1 Like

Something Iā€™m doing now is adding the firmwareUpdate capability to Zwave and ZIgbee device profiles, as the current firmware version is shown on the Information tab on the device details.

For Zwave, I set the firmware version in the added lifecycle event, by calling a function like:

--- Update the built in capability firmwareUpdate's currentVersion attribute with the
--- Zwave version information received during pairing of the device.
--- @param self st.zwave.Driver
--- @param device st.zwave.Device
local function updateFirmwareVersion(self, device)
  for _, component in pairs(device.profile.components) do
    if device:supports_capability_by_id(capabilities.firmwareUpdate.id,component.id) then
      local fw_major = (((device.st_store or {}).zwave_version or {}).firmware or {}).major
      local fw_minor = (((device.st_store or {}).zwave_version or {}).firmware or {}).minor
      if fw_major and fw_minor then
        local fmtFirmwareVersion= fw_major .. "." .. string.format('%02d',fw_minor)
        device:emit_component_event(component,capabilities.firmwareUpdate.currentVersion({value = fmtFirmwareVersion }))
      end
    end
  end
end

Once set, the value is displayed here:

And you can also view the value in the API browser.

Iā€™ve also used a custom capability so that the version can be displayed in the details area but its nice to use the standard component.

1 Like

Is this not concerning? The hub supports zigbee and zwave devices as a core function for itsā€™ existence. If it cannot also perform basic and necessary firmware updates on these devices to keep them functioning and current, then this ā€œroadmapā€ @nayelyz referred to is leading nowhere. Iā€™d say itā€™s planned obsolescense, but that actually assumes there is planning involved on the part of Smartthingsā€¦ Sigh.

All the while Smarthings support is saying the hub supports OTA updates for zigbee devices. Honestly, you canā€™t make this stuff up. Itā€™s just a a reality of how poorly run and disconnected this business is from itself and its consumers.

@nayelyz,

Since the teamā€™s roadmap is apparently a dead end, are there any plans to relaese enough information so the community can build and implement this vital capability? It would be nice to keep SmartThings (Smartā€¦ the team may want to consider a re-brand at this point) limping along a little longer.

The edge drivers run on the hub, not on the individual devices, so there shouldnā€™t be any need to update the firmware of a Z wave device just because the hub is now using an edge driver instead of a Groovy device type handler. So Iā€™m not seeing the transition to the new architecture as being something that changes the fact that smartthings has never offered OTA updates for zwave devices and itā€™s always been annoying that they have never offered it.

That said, because of the independent third party zwave specification, it should always be possible to update the firmware on any Z wave device with a different Z wave controller which has been added as a secondary to the smartthings Network. And, indeed, people have done that for 4 or 5 years, most commonly using an Aeotec USB stick or something like the z flash from Homeseer. You can find these options discussed in other forum threads.

Doing it this way requires several things:

One) the device manufacturer has to release their update Files (some do, some donā€™t)

Two) the customer has to acquire a device that can be used as a secondary Z wave controller

Three) the customer has to follow the instructions for that device to individually update any device that needs the firmware update.

It works, itā€™s just tedious and annoying when this is a built-in function on most certified Z wave primary hubs. :rage:

See the following discussion thread from 2017 (!) the issue was discussed at length with a smartthings engineer, the third-party alternatives are also discussed, and as far as I know, none of this has changed one way or the other with the introduction of edge drivers.

Support of OTA firmware updates for Z-Wave / Z-Wave Plus devices

2 Likes

Thereā€™s no way for the community to make the hub do this. But you can get a third-party device and do it that way, community members have been doing so for several years.

I wrote the following post explaining the process back in 2018. As far as I know, everything there still applies.

Support of OTA firmware updates for Z-Wave / Z-Wave Plus devices - #45 by JDRoberts

2 Likes

Thanks @JDRoberts,

I am aware of all the silly workarounds, and luckily for me this isnā€™t terribly urgent yet (missing power monitoring on 3 devices), but if I am going to buy additional hardware to ā€œMacGyverā€ what should be a built in essential feature, I will just invest in moving to a different platform. Samsung and the SmartThings Team almost have me completely convinced that it is time to move on, I just have to schedule the time to migrate/rebuild everything onto a different platform. Like I said before, every disappointment inches me ever closer. Anyway, as always I appreciate your vast contributions to the community and your efforts to help all of us keep SmartThings limping along.

2 Likes

The OP is about Zigbee, not zwave. I believe my Philips hue and other zigbee devices have been upgrading firmware via smartthings for years, before the migration to Edge.

Specifically, I came here to ask because according to the developers at Inovelli Smartthings has been quiet about this. As a paying customer of both I am interested in a consumer friendly solution.

See Blue Series 2-1 Firmware Changelog | VZM31-SN - #61 by EricM_Inovelli - Firmware Discussion - Inovelli Community for reference

3 Likes

Fair enough, apologies for any confusion. I read the comment as implying that device firmware had to be updated to use edge, which is not true. OTA updates will just be a missing feature moving forward on the platform, which, yeah, is really annoying. :rage:

If this is a definitive answer from smartthings I guess a lot of consumers will be moving elsewhere.

The majority of ST users couldnā€™t tell you what firmware is much less why it needs to be updated. As @JDRoberts has pointed out again and again, people with hubs are a small minority of ST users and thus a minority of people who have Zigbee/Z-Wave devices that would need to be upgraded OTA.

3 Likes

I donā€™t think there are many left, honestly. By way of scanning through forums and also seeing how many resale hubs are for sale on e marketplaces (Facebook, Kijiji etc), Iā€™m guessing Samsung has lost a huge amount of hub marketshare and they seem to be fine with it. Clearly it is not a focus area for them.

Iā€™m also part of the group who stopped home automation projects due to lack of OTA updates. I think smart things donā€™t have their priorities right. They should allow an advance mode to allow us to push our own firmware files if they donā€™t feel like managing the platform