How to trigger OTA update on INNR SP240

Hi all,

I have some INNR SP240 smart plugs. It seems they are mis-reporting the kWh. I found some other topics of people running into this. The fix seems to be to upgrade them to the latest firmware. I have been trying to upgrade them to the latest firmware using the zigpy guide.

So far I have added this to my confiugration:

# Zigbee Over The Air updates (OTA)
zha:
  zigpy_config:
    ota:
      otau_directory: /config/zigpy_ota

Downloaded the latest firmware version from here and stored it in the config ota directory.

Now I’m trying to trigger the image_notify action from the manage modal for the zigbee device. According to the guide I can leave the mandatory fields empty and trigger the action. However it seems I cannot trigger without filling out the fields.

Anyone know what might be the issue?

Try adding the Z2M list, it might be in there.

Otherwise look in the documentation I think is also linked in that thread, there might be another one that would work. The Z2M list is updated often, though.

Not sure I fully grasp what you mean (bear with me I’m a new HA user). Do you mean trying to update the firmware using zigbee2mqtt? As I’m currently using ZHA to connect these Zigbee plugs to HA.

edit: I think I see what you meant. There is an option to enable z2m provider in the zigpy config on this page: OTA Configuration · zigpy/zigpy Wiki · GitHub

Ok getting close. I now have the zigpy ota z2m repository correctly configured. And Home Assistant picks up the firmware versions. However it says the firmware is up-to-date while the UI already states that zigpy knows of a newer version for the plug. I cannot trigger the upgrade action from the UI. Triggering the command manually also doesn’t upgrade the plug. Any ideas?

Suggested by Innr support team:

Paste the following code into the bottom of the configuration.yaml file, save it and restart HA:

zha:
  zigpy_config:
    ota:
      extra_providers:
        - type: z2m

Ok took a while, but was able to fix this. I was actually already on a more recent firmware version than is available in koenk’s repo (1.9.34). This is why HA wouldn’t let me upgrade the fi, while the fi didn’t match the most recent.

The fix is to apply a custom quirk that sets the metering divisor to 1000. Follow the instructions in this comment on the Github issue.