I have a C7 hub, and need a US smart plug (peanut style) that has the fastest possible power change response time (prefer without polling). Can be Zigbee, Z-wave or wifi (less preferred).
Use case: I need to monitor the power level of my AV receiver and if it goes above 20w, then trigger a Webcore piston to change Hue lighting scenes. And when it drops under 20w, use a different Hue scene.
I got a Kasa wifi plug today, but unfortunately the community driver doesn't detect the plug on my LAN and resorts to cloud connection with has a 1 minute polling interval. LAN operation can go down to 5s polling. 5s would be OK (although I HATE polling), but due to apparent bugs that's not working for me. So I'm looking for other options.
Anyone have a blistering fast US smart plug power monitoring threshold trigger plug that is being sold today?
You might have trouble finding anyone to recommend a zigbee or zwave option. General consensus is that power monitoring is a sure fire way to bog down your mesh and cause all kinds of problems. Most will recommend wifi for that application.
I have two Kasa KP115 plugs with power monitoring and they seem to work just fine with LAN connection.
I also have a Zooz ZEN04 which is Zwave, you can configure the reporting on that. I have a published community driver for it.
I have two of these Sengled G2 plugs as well, I am actually using the power reporting on these. One for a LED desk lamp to detect when it is on, and the other to monitor my Sump which only runs for about 10 seconds at a time but it will report the power spike every time. I just use it to keep track of how often it runs and also to send an alert if it gets stuck on somehow.
Most of my power monitoring plugs are Zooz Zen15s. However, if I have it report back too frequently, it triggers error messages. Rather than polling the power every few seconds, I only poll the plug every 5 minutes, but have the device send information if it detects a sudden increase in power. In my case, I am using them to monitor my washer, gas dryer and backup sump pump, so power changes are set for 50 watts. When my backup sump pump runs, it usually only stays on for about 10 seconds, but the plug will report the activity. If I looks at my logs, it reports only every 5 minutes, but it will catch transients of only a few seconds duration.
So first I have seen several occasions where Hubitat staff have suggested the Kasa outlets with power monitoring. Simply put Wifi has a several order of magnitude advantage over Zwave or Zigbee when it comes to bandwidth. Because power reporting can be a bit bandwidth intensive on Zwave or Zigbee they are generally not the first suggestion for power reporting
That said I have ZEN04, ZEN15, and a Zen25 that all do some level of power reporting through the Zwave network. The key to power reporting on zwave or zigbee is to properly qualify and limit the reporting as much as possible so you only get what you need and nothing more. The best example I have for this is with my Samsung TV. It generally uses around 80-125 watts depending on what it is doing. I have my ZEN 25 setup to report when there is a 70 watt change. Because the tv idles around 80 or so watts I always get the report when it starts up. Then occasionally I may get one while running if for some reason the TV spikes > 140watts. I used this method because i want to know when it is on and off only.
Allot of devices don't have consistent power usage. So setting a value to small for power reporting by change can be very harmful to a network. On that same Zen25 if i set it to say post changes for every 5 watts it can generate updates constantly. I have seen that device generate 4 events in less than 1 second when the value was set to low.
So my point is know your power usage on the device and make a plan to reduce the reporting as much as possible if on Zigbee or Zwave.
Run the device under various loads and identify how its power usage changes or fluctuates
What kind of device do you need for the load. This will be determined by it's max load
Identify the proper method to collect the Power data. Then disable, or set to a max value to minimize reporting methods that don't contribute to what you want.
a. Report by change
b. Report by time
c. Report by % difference from last report
For Zwave devices it would probably be best to avoid the Zen25 and stick with the Zen04 if the load isn't to high or a Zen15 if the load can get high and draw allot of amps. For many the Zen25 is known to be a little bit problematic and cause instability even when setup properly
Since you asked specifically about 20 watt load i will say that if the max load is over 100 or 200 and fluctuates allot you will probably be better served with a Kasa Plug. I don't now how frequently you can poll them, but it is probably better to do that then set the plug device to 20 watts to catch the first event and then overload the zwave/zigbee network with events as the power fluctuates.
Thanks for the detailed response. For my situation I'm monitoring the power of my AV receiver and I merely need to know when it's in standby or powered on. Standby is ~6w and on is about ~90w+, per the Kasa plug readings. I do NOT care about continuous power readings. I just want a super fast trigger push notification to HE when power consumption jumps to more than 20w, or drops to less than 20w. Nothing more.
Just a quick note on my Kasa plug woes. The Kasa HE app/driver has an issue discovering my plug on the LAN, and never finds it. Via the cloud option it can find it, but polling is reduced to once a minute. LAN supports 5s. The HE Kasa contributor reached out and helped with some troubleshooting, but in the end said the problem is on my network not with the HE app. However, the TPLink HOOBS plugin instantly detected my Kasa plug on the LAN and it works flawlessly in Homekit. So to me the HE Kasa app has some issues that won't be resolved.
I suppose I could do the light automations in Homekit with the HOOBS Kasa plugin, but I'm trying to centralize automations in HE. The iOS Eve app will read the power usage status of the Kasa plug, so technically I can do that in HK.
I just use Aeotec V7 power modules for my AV reciever and WC. I check for 20W+ when the TV comes on and the sub pretty well powers up right away. There are a lot of configuration options in the driver.
Standby is about 6w, and just turning it on power idles around 95w. I have a separate external power amp for all speakers, so the AV receiver power draw should be pretty consistent around 100w with no spikes.
Wifi polling wont get you "super fast", even with 5 second polling you are looking at on average a 2.5s delay before you know.
If you use a Zigbee or Zwave plug and set the reporting to 50w changes, that should get what you need. If it happens to power spike at all from the 95w you may get additional reports but as long as its not constantly surging you should be fine. Zigbee seems to tolerate excessive traffic better than Z-Wave does but with the newest ZWave firmware updates on the C7 it is working much better than it did a year ago.
Based on what you said @jtp10181 suggestion is spot on for the fastest notification. Personally i would set it to whatever value i can set it to which is closest to what you know means it is on . If it always idles at 95 maybe 75 or 80. It just gives you more headroom incase it spikes.
Ok, so after a lot of trial an error, I found a great solution for me that is SUPER responsive and reliable. In case someone else has a similar requirement, let me describe what is working very well.
I ditched my old Harmony remote and wanted an automation replacement. The Harmony "TV" activity would: turn on Denon receiver, turn on LG TV and switch to HDMI 2, turn on Apple TV, and control my Hue lights via Hubitat to turn them on to a certain level. I now want to push my Apple TV power button and do the same automation tasks.
The Denon Hubitat driver was very unreliable due to the way Denon deals with telnet. The Hubitat TPLink Kasa driver would NOT discover my Kasa power monitoring plug via the LAN for whatever reason (long story). The Hubitat LG OS app would not discover my TV. The Homebridge Kasa plugin DID discover my smart plug, and I could configure the Homekit "In Use" property for the plug. However, there was a multi-second delay in the Kasa plug reporting that the receiver turned on. Not a total failure, but I wanted faster response time to on/off events. I tried the zwave Zooz ZEN4 smart plug, but its power reporting was a bit too chatty for my tastes and the reporting latency was longer than my final solution that didn't use smart plugs.
What did work:
Configure receiver, LG TV and Apple TV 4K (Gen 3) for HDMI-CEC.
Hard wire the LG TV via ethernet to the network (turn off Wifi), and enable Quick Start in the TV menu. This is KEY, as Wifi massively slowed down the "on" power reporting state to Homekit.
In Homebridge configure the LG WebOS plugin. Add the LG TV to Homekit.
In Hubitat configure a virtual switch that Homekit can toggle to tell Webcore if the TV is off or on. Expose to Homekit via the beta Hubitat Homekit integration.
In the Apple Home app (not third party Homekit apps) setup two automations tied to the LG TV accessory to toggle that virtual Hubitat switch depending on TV power state.
Configure my Webcore pistons to trigger on the TV virtual switch state to control my lights.
After I worked through all of that, the Webcore light control pistons have very low latency when I push the Apple TV on/off button. Probably <2 seconds for "on" and almost instant for "off".
Now if I had simple light control needs, I could have just done all the automations in Homekit and skipped the Hubitat webcore pistons. But my lighting control rules are too complex to easily do in Homekit.