zha-device-handlers icon indicating copy to clipboard operation
zha-device-handlers copied to clipboard

[Device Support Request] Salus SP600

Open hmonteiro opened this issue 5 years ago • 11 comments

I am using a Salus SP600 smart plug and, although it correctly shows as a smart plug with energy monitoring capablities in HA, there are some problems:

  • The temperature reported is always 2x the actual value
  • The instantaneous demand reported is always 1/10 of the actual value
  • The total consumption (attribute current_summ_delivered attribute from the metering cluster) is not reported

It would be great if these values were correctly reported by the system.

The device signature is below. If you need any more informations let me know.

Device signature

{
  "node_descriptor": "NodeDescriptor(byte1=1, byte2=64, mac_capability_flags=142, manufacturer_code=4216, maximum_buffer_size=82, maximum_incoming_transfer_size=255, server_mask=0, maximum_outgoing_transfer_size=255, descriptor_capability_field=0)",
  "endpoints": {
    "9": {
      "profile_id": 260,
      "device_type": "0x0051",
      "in_clusters": [
        "0x0000",
        "0x0001",
        "0x0003",
        "0x0004",
        "0x0005",
        "0x0006",
        "0x0402",
        "0x0702",
        "0xfc01"
      ],
      "out_clusters": [
        "0x0019"
      ]
    }
  },
  "manufacturer": "Computime",
  "model": "SP600",
  "class": "zigpy.device.Device"
}

hmonteiro avatar Oct 17 '20 18:10 hmonteiro

I have the SP600, and it works ok. After making the switch from zigbee2mqtt to zha, it still works, but now reads power 10x too high. Could it be the same as this issue: https://github.com/Koenkk/zigbee-herdsman-converters/issues/897

I see that in zigbee2mqtt, there is a specific handler for a certain datecode: https://github.com/Koenkk/zigbee-herdsman-converters/blob/d751f07919cc1122da3f0ac75053a7ba0cfe137b/converters/fromZigbee.js#L1650-L1669

There are different versions of firmware for this device, as described here: https://github.com/Koenkk/zigbee-herdsman-converters/issues/915

They behave differently. Can something similar be accommodated in ZHA?

davet2001 avatar Jan 25 '21 22:01 davet2001

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

github-actions[bot] avatar Aug 05 '21 23:08 github-actions[bot]

I still have problems with my sp600 -over reading power by 10x -not reporting energy consumption (just live power and temperature)

Attached: dishwasher is not really using 23kW! image

davet2001 avatar Aug 06 '21 06:08 davet2001

FYI, it looks like support for more Zigbee clusters attributes is now being worked on for ZHA integration in Home Assistant core, see:

https://github.com/home-assistant/core/pull/56909

and

https://github.com/home-assistant/core/pull/56666

Also, note the last comment from Adminiuga in PR for ZHA in Home Assistant core -> https://github.com/home-assistant/core/pull/56909

"Support for other attributes could be extended later, as I couldn't find too many devices other than Sinopé RM3250ZB Electrical Load Controller – 50A – Zigbee https://www.amazon.com/dp/B07CGJ6XH2/ reporting anything interesting on the electrical measurement cluster."

So maybe could now try to get this working with the latest Home Assistant beta (dev branch) or wait for the next upcoming release:

https://www.home-assistant.io/faq/release/

PS: There is much more discussion about the current ZHA limitation of only supporting 1 sensor per cluster here -> https://github.com/zigpy/zha-device-handlers/issues/605 and https://github.com/zigpy/zha-device-handlers/issues/1045

Hedda avatar Oct 06 '21 09:10 Hedda

Agreed, the additional kWh sensors are reporting values now for this device using the development HA version.

But the 10x problem remains on these SP600 devices.

Generally I think scaling errors on kWh sensors will become much more of an issue to users now that those sensors are being used to visualize the split of total energy consumption in a house. E.g. "House used 10kWh today made up of 1kWh lights and 20kWh dishwasher" ??!?!.

I am considering updating my PR #1051 to make the behavior correct just for the newest firmware, then add ZHA FW update capability for Salus to resolve the /10 issue for legacy users. Currently ZHA can't select quirk behaviour based on FW datecode.

davet2001 avatar Oct 06 '21 12:10 davet2001

Contact salus and ask for the firmware update where they fixed the scaling?

Adminiuga avatar Oct 06 '21 12:10 Adminiuga

@Adminiuga Sorry, probably I did not explain well.

The FW is available online, I have the latest flashed and it works perfectly (by removing the ZHA quirk in place for the old firmware).

So a valid solution is to merge that deletion then tell people who then complain about a /10 sensor error to upgrade their FW.

But they can't do that upgrade natively in HA yet (they could move to Zigbee2mqtt, then upgrade FW, then move back).

davet2001 avatar Oct 06 '21 18:10 davet2001

Would be interesting to know how many non updated devices nare there.

You can update firmware in zha too, if you have the file. See https://www.reddit.com/r/homeassistant/comments/fak430/how_to_update_your_ikea_or_ledevance_firmware for hint, all you really need to do is to put the ota file into a dolder

Adminiuga avatar Oct 06 '21 19:10 Adminiuga

add ZHA FW update capability for Salus to resolve the /10 issue for legacy users.

But they can't do that upgrade natively in HA yet (they could move to Zigbee2mqtt, then upgrade FW, then move back).

@davet2001 ZHA support native OTA upgrade but option(s) are not available in GUI and there is no OTA provider for Salus in zigpy:

https://www.home-assistant.io/integrations/zha#ota-firmware-updates

https://github.com/zigpy/zigpy/blob/dev/README.md#zigbee-device-ota-updates

https://github.com/zigpy/zigpy/tree/dev/zigpy/ota

https://github.com/zigpy/zigpy/blob/dev/zigpy/ota/provider.py

If you have the skills then would be great if you could port some OTA providers from zigbee-herdsman-converters to zigpy lib(?):

https://github.com/Koenkk/zigbee-herdsman-converters/tree/master/lib/ota

https://github.com/Koenkk/zigbee-herdsman-converters/blob/master/lib/ota/salus.js

https://github.com/Koenkk/zigbee-herdsman-converters/blob/master/lib/ota/zigbeeOTA.js

https://github.com/Koenkk/zigbee-OTA

FYI, there are some requests and a lot of discussions about OTA providers for zigpy (and thus also for Home Assistant's ZHA) here:

https://github.com/zigpy/zigpy/issues/154

https://github.com/zigpy/zigpy/issues/535

https://github.com/zigpy/zigpy/issues/522

https://github.com/zigpy/zigpy/pull/505

Hedda avatar Oct 07 '21 11:10 Hedda

@hmonteiro The FW update for this device is now supported in HA (not GUI but in the YAML config). Info here:

https://www.home-assistant.io/integrations/zha/#ota-firmware-updates

Please could try this to see if it solves your issues?

davet2001 avatar Feb 12 '22 12:02 davet2001

There hasn't been any activity on this issue recently. Due to the high number of incoming GitHub notifications, we have to clean some of the old issues, as many of them have already been resolved with the latest updates. Please make sure to update to the latest version and check if that solves the issue. Let us know if that works for you by adding a comment 👍 This issue has now been marked as stale and will be closed if no further activity occurs. Thank you for your contributions.

github-actions[bot] avatar Aug 11 '22 13:08 github-actions[bot]