Is there a proper way to upgrade an integration?

Have found several of my integrations have updated versions in addition to new firmware for the remote that I have been prompted to install, so am doing several updates one at a time.

For most I was able to upgrade with no issue (deleted the integration, then installed the new version) but am having an issue with 3 devices with its new inegration version - an Oppo blu-ray player, a MadVR video processor and a Trinnov receiver.

With all three, I reverted back to a previous version and strangely the previous version that used to work is now not working either.

Was able to sort out the Oppo with the help of the developer. After some initial suggestions that weren’t an issue, he suggested that power cycling the device might help as sometimes he says “the network stack on the unit gets in a bad state” and unplugging the device for several minutes resets it. It actually worked so am doing the same for the other two devices, hoping it will help. Will try again tomorrow.

I wonder though, is there a proper way to install an updated version of an integration?

  • Is a reboot in-between deleting an existing integration and installing the new one necessary?
  • does one have to delete the associated exisiting entities or can they be left as is? I haven’t been deleting the entities under each activity after deleting the integrations, as I noticed when the new version of the integration is installed, the existing entities seem to still work.

I wonder if perhaps doing an update incorrectly might leave some code remnants that messes things up. Am not a programmer so forgive me if this sounds ludicrous.

Are you using the integration manager from Jack Powell?

If not, you’re probably going to want to

I do have this integration but it doesn’t always work when installing or upgrading that I ended up just uninstalling/installing the manual way.

I do like how it identifies entity orphans and that there are new versions available. I also use its backup function.

Integrations which are written under ucapi-framework will support an upgrade, integrations which are written under ucpi will not.
Integration Manager will clearly warn you if it is upgradable or not.
if yes, it will retain settings, if not, it will upgrade but will require you to reconfigure
if you do not want to use integration manager - any integration you will need to remove the integration (twice) from web-configurator , re uplaod the latest tar.gz and re configure OR use docker for auto upgrade via docker using watchtower.

1 Like