dresden-elektronik / deconz-rest-plugin

deCONZ REST-API plugin to control ZigBee devices
BSD 3-Clause "New" or "Revised" License
1.9k stars 502 forks source link

Support for Salus SP600 Smart Plug #812

Closed GadgetUK closed 5 years ago

GadgetUK commented 6 years ago

This appears as a light switch, but no metering functionality is available.

Details of the device can be found here

https://salus-controls.com/uk/product/sp600/#description

Happy to provide more info if instructions on how to get required data are available.

ebaauw commented 6 years ago

See https://github.com/dresden-elektronik/deconz-rest-plugin/wiki/Request-Device-Support

GadgetUK commented 6 years ago

Ok, think this the right stuff

screen shot 2018-09-29 at 10 29 46 screen shot 2018-09-29 at 10 30 08 screen shot 2018-09-29 at 10 30 30
ebaauw commented 6 years ago

Could you try and read the attributes for the Basic cluster? We need the Model identifier and, preferably, the Manufacturer name.

Could you also please post a screenshot of the Simple metering and Temperature measurement clusters, again, after reading the attributes? The metering might provide life-time consumption and current power, but the scale typically differs per device type. I haven’t seen a plug before, that reports temperature, but if it’s functional, we could support it.

It would be good to know if the plug supports attribute reporting, but we haven’t yet described how to determine that in the Wiki. I’ll see if I can find some for that time this weekend.

GadgetUK commented 6 years ago

Ok. Here goes.

screen shot 2018-09-29 at 16 41 44 screen shot 2018-09-29 at 16 40 12 screen shot 2018-09-29 at 16 40 26 screen shot 2018-09-29 at 16 41 18
GadgetUK commented 6 years ago

If I've followed the deconz manual correctly....

screen shot 2018-09-29 at 17 16 49
ebaauw commented 6 years ago

Thanks.

When you connect something to the plug and turn it on, does the value for Instantaneous demand change? Current Summation Delivered typically takes a while - it's usually updates every 10Wh or so. You want to try setting the reporting config to Min: 1, Max: 300, Change: 1 and create a binding from that cluster to the RaspBee. Select the Bind Dropbox from the Panels menu, drag the 0x702 cluster to Source and drag the 0x01 endpoint on the coordinator to Destination and press Bind: screenshot 2018-09-29 at 19 05 Could you try the same for the OnOff attribute and the OnOff cluster?

The temperature cluster seems to measure internal temperature (49°C), so that doesn't seem too useful.

GadgetUK commented 6 years ago

Ok. Writing changed values to the reporting configuration fails.

ebaauw commented 6 years ago

Does it come back quickly with an error message, or does it take a longer time? Sometimes the GUI doesn’t seems to miss the ack. What happens if you close the popup window, re-open it and read the config?

GadgetUK commented 6 years ago

Ok, seems to have worked

screen shot 2018-09-30 at 17 45 31

Although the reportable change is now greyed out.

ebaauw commented 6 years ago

The GUI doesn’t handle the int24 well.

GadgetUK commented 6 years ago

Is there anything more that I can do to progress support ?

GadgetUK commented 5 years ago

Feel like this has stalled.

Smanar commented 5 years ago

Lol, I haven't the device so I can't make test but the GUI can handle int24 now ? So you can configure reporting now ? I had similar problem on another device, and the GUI was corrected (was dat16 for me)

GadgetUK commented 5 years ago

Ok, still seems that it's not possible to set the reporting configuration (specifically the reportable change) image

You can however see that it does correctly report the power usage (in this case a heater)

Half Power

image

Full Power

image

GadgetUK commented 5 years ago

More info from the Smartthings support

https://github.com/paulsheldon/SmartThings-PS/blob/master/devicetypes/paulsheldon/zigbee-switch-power.src/zigbee-switch-power.groovy

fingerprint profileId: "0104", inClusters: "0000, 0001, 0003, 0004, 0005, 0006, 0402, 0702, FC01", outClusters: "0019", manufacturer: "Computime", model: "SP600", deviceJoinName: "Salus SP600 Smart Plug"

ebaauw commented 5 years ago

@GadgetUK with 2.05.59, you should be able to set Reportable Change, at least for Current Summation Delivered.

@manup, I don't think Instantaneous Demand is working. This is s24 instead of u24, which is working.

manup commented 5 years ago

@manup, I don't think Instantaneous Demand is working. This is s24 instead of u24, which is working.

Good catch, on it.. this will work in 2.05.60.

GadgetUK commented 5 years ago

@ebaauw Ok Can now set Reportable Change for Current Summation Delivered so that's a positive step forward 👍

image

stale[bot] commented 5 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

brettjenkins commented 5 years ago

@gadgetuk how are you getting on with it? Is it working alright? I'm currently on the lookout for zigbee power plugs with reporting to replace my WiFi ones which keep dropping off the network. (I use them to monitor dishwasher, tumble dryer and washing machine)

ebaauw commented 5 years ago

I use them to monitor dishwasher, tumble dryer and washing machine

Better double-check the power rating of the plug. I blew a couple of innr plugs on my dryer, that apparently likes to draw a bit more power than its rating would suggest.

hmonteiro commented 4 years ago

Are there any plans for officially supporting this plug in the future?

hmonteiro commented 4 years ago

@ebaauw Any hints on how to hack something together to make the consumption visible to the Phoscon app as a sensor? When I look at the mesh, I see that the both the instantaneous and summary consumption appear to work, but I don't know what I have to do to make them visible.

In the logs I see some lines related to the 702 cluster:

16:35:29:633 APS-DATA.indication srcAddr: 0x518f, srcEp: 0x09 dstAddrMode: 2, profile: 0x0104, cluster: 0x0702, lqi: 255, rssi: -58
16:35:29:633    asdu: 08430a00042a1b0000
16:35:29:633 Node data 0x001e5e09021460d5 profileId: 0x0104, clusterId: 0x0702
16:35:29:638 ZCL attribute report 0x001E5E09021460D5 for cluster 0x0702, ep 0x09
16:35:29:638    payload: 00042a1b0000
16:35:29:638 APS-DATA.request id: 81, addrmode: 0x02, addr: 0x518f, profile: 0x0104, cluster: 0x0702, ep: 0x01 -> 0x09 queue: 1 len: 5 tx.options 0x00
ebaauw commented 4 years ago

Not a clue; Phoscon is not open source.

SwoopX commented 4 years ago

Better late than never, I can assist in properly integrating those. However, I need a lab rat for tweaking...

djashjones commented 4 years ago

Just got mine cus it was cheap. The only sensor I see is temperature.

SwoopX commented 4 years ago

Lemme double check the code.

Why are you buying all the stuff that keeps me busy??? 😁

SwoopX commented 4 years ago

Could you please provide a screenshot of the node info panel? In the screenshot further up, the value is missing. This could be the showstopper...

djashjones commented 4 years ago

It really sucks for certain things in the UK But I would not spend too much time on this mate. It's slightly cheaper than the samsung plug. The quality, well I'm not too impressed but it does come with a 5 year warranty.

deconz temp 50 mode

djashjones commented 4 years ago

HA

SwoopX commented 4 years ago

So you got consumpton, but power is missing? Looks like consumption is there...

djashjones commented 4 years ago

yes mate

SwoopX commented 4 years ago

Hm, strange that 2 sensors got created and 1 is still missing. But when there's load applied you see an according value under simple metering for attribute 0x0400 after the attributes have been read in deconz GUI? At times, it also helps to re-read the simple descriptors while searching for sensors in Phoscon...

djashjones commented 4 years ago

I've found a workaround for the time being. I'm still evaluating this plug but I am leaning more towards the samsung. sensor yaml power

djashjones commented 4 years ago

I've extracted the power from the consumption sensor in home assistant power2

SwoopX commented 4 years ago

Ah, so it requires amendments on the HA side. I don't have any such devices having power and consumption on the same sensor, but I could have thought about mentioning it. Sry.

Then we're good here?

djashjones commented 4 years ago

I think so. Hopefully this will useful to others. I did search for sensors and re-read the "read power descriptor" but that did nothing.

SwoopX commented 4 years ago

Alright, then I assume it is working as expected. Just to be clear on that detail: sensors are created on a cluster basis. Since it only has simple metering (besides temperature), there will be no further sensor. In case of this device, however, consumption and power is exposed. That is not a too common combination.

mike182uk commented 4 years ago

I might be missing something here, but why would a plug socket also report temperature?

I have set up the plug via phoscon so i can use in Home Assistant (via deconz plugin) similar to what @djashjones has done ahove and the temperature reads ~40°c, which is not accurate for the room its in (by about 20°c) (unless some kind of conversion needs doing on the value)?

SwoopX commented 4 years ago

To be honest, no clue. A questions Salus has to answer. Maybe they consider it more as device temperature (although there's a cluster for it on its own).

djashjones commented 4 years ago

Could be for their heating products or a safety reason.

I've stopped using mine. Found a disturbing issue which would be nice if someone else can confirm this.

When the plug loses connection to the network, it switches itself one & off every so often. Which is no good if its attached to say something like a server!!!

hmonteiro commented 4 years ago

Regarding the temperature, I have other temperature sensors in the same room and, from anecdotal evidence, the socket temp always looks to be reading about twice as much, so maybe they just report 2x the value?

keemyb commented 3 years ago

Could be for their heating products or a safety reason.

I've stopped using mine. Found a disturbing issue which would be nice if someone else can confirm this.

When the plug loses connection to the network, it switches itself one & off every so often. Which is no good if its attached to say something like a server!!!

I am experiencing this. what are you using as a replacement? I wanted to use this as something to track my server power usage as well, but I can't really afford an unexpected shut down just because of an intermittent connection loss. I've only had mine for a day or so, but when I was trying to set it up, I noticed them turning off /on when I left one in pairing mode.

I think I may just get a UPS with power monitoring functionality and get stats from there, because even if I use something less power hungry like a RasPi, I can't say for certain whether or not I could guarantee a connection 100% of the time. A shame, because otherwise it's perfect.

Edit: I just remembered that I have a Samsung Smart Plug that I thought was incompatible with my Conbee 2, until I realised I just needed a lengthy usb 2 extension cable to get things pairing. I'll try and see what that does when it can't connect. I'll just use the Salus' somewhere that isn't critical.

I do wonder if the plug behaves like this when paired with the official Salus hub. Seems strange to change the power state mid operation.

djashjones commented 3 years ago

All my zigbee plugs are the Samsung ST 2019 version

incarvr6 commented 2 years ago

I know issue is closed but I found that now power reading is out 1 decimal Total 500w showing as 5kw and load 5w showing 50w. One other thing, current load is available as attribute, it should be presented as entity.

Or maybe it is better to start new issue?

incarvr6 commented 2 years ago

Screenshot_2021-12-02-13-14-54-64_c3a231c25ed346e59462e84656a70e50