Can I use a TP-Link HS110 to determine how often an appliance runs?


(Joe Matise) #1

I have an refrigerator that I want to monitor how frequently the compressor runs (which will draw significantly more electricity) due to some issues with the refrigerator’s functionality. I currently have a few HS100s, and was thinking of trying out a HS110 attached to the refrigerator outlet; but it’s not apparent to me if I’d be able to either use the native monitoring software, or a SmartThings app, to be able to see the watts used over time in this manner.

I don’t think it’s sufficient to tell how much is used for a day, for example; I’m not sure enough of what the wattage used by the refrigerator is during the “compressor off” and “compressor on” periods to simply do the math. I’d want to be able to see a chart showing wattage every minute or so, to see the spikes. I’m a statistical programmer and very comfortable with making charts, but I need to have a data source - happy to use built in charts if those exist, but also happy to have raw data.

Is this possible using the HS110? If not, is it possible using another smart device?

If it is relevant, I have the following other device/hubs:

  • Echo dot (no hub)
  • Phillips Hue bridge (hub) and various lights
  • Logitech Harmony hub (the newer one)
  • A few HS100s, but no Kasa-related hub

I also do have a windows server that I could use for middleware if needed, though it normally doesn’t run (it’s my backup server, which I only normally turn on to do periodic local backups separate from cloud backups, but I could run it if needed for a while for this).

Thanks in advance.


(Dave Gutheinz) #2

Do you have a SmartThings? If not, not a show-stopper.

First, I am the author of the integration of TP-Link plugs, bulbs, and switches into SmartThings. So, I can speak with minimal authority.

SmartThings. The existing device handler/Service support this at up to a 5 minute refresh rate. It call a command that gets the current consumption in watts (which is currently displayed and an event in SmartThings). A Smart App could be authored to capture this data update, send to IFTTT, and then log to a spread-sheet. Effort: Slight mod to device handler to add one minute refresh option. Develop Smart App that sends the data at each 'refresh" to IFTTT which (I believe) has the logging capability.

No SmartThings. Does not exist; however, the basic software already exists in the Hub based version of the integration. This could be modified to (stand-alone) run on your server, get the consumption every minute, and log the data to a text file (every minute) (probably two columns of time vs consumption). Effort: Modify the current hub (server) software to only send the command to the bulb, extract the data, and log to a text file. Install this and software from Node.js onto hub (server). Set up server for auto restart, not go into standby, etc. I already have the instructions to set up the server.


(Joe Matise) #3

I don’t have a SmartThings hub, but am considering getting one (hence, posting here!). Probably should’ve mentioned that I guess… :slight_smile:

I don’t mind 5 minute refresh, I think; probably that would be enough to see what I need to see, but we’d have to see.


(Dave Gutheinz) #4

Let me ponder for a day or two. I want an approach that will benefit many users at once. A power consumption tracking app by the minute may be of interest to many people.

If you buy SmartThings, load the SmartThings Classic app, not the new SmartThings App (used to be Samsung Connect). Why - Classic is compatible with custom device handlers / Smart Apps, the new app is not necessarily compatible with these (still under development).


(Dave Gutheinz) #5

Solution using your spare server.

I decided to test this first w/o using the SmartThings devices/device handler. Wanted to confirm operation prior to a future integration. The link below has the files necessary and the instructions to create your log. You will have to edit one file to (a) add the IP address for your device, (b) set data refresh interval if not at 60 seconds. All other options default for the HS110.

PLEASE let me know if it works (tested on bulbs, should work on plug, but may need more tweaking. I need explicit data from the windows displayed log (copy and paste). Dave


(Joe Matise) #7

Cool, thanks! I have a HS110 coming in from Amazon, and will check back in early next week when it comes in and I have some time to set it up. I will do some of the server set-up ahead of time I think so it’s easier to plug and play, can use my HS100 for that I think though obviously no energy monitoring coming from that.


(Dave Gutheinz) #8

If you use a HS100, you will get a not energy monitor message every poll cycle. Does not hurt, but is unremarkable.


(Chris) #9

Any update on this?

I currently have 4 refrigerators on HS110’s, and one of them has had several outages this year due to various issues. Of course it’s the newer fridge giving us grief, not the 32 year old one LOL.

Anyway, ideally I could get alerts or set off alarms or whatever when the plugs report either no power draw for a specified amount of minutes as well as when the average power draw over a certain # of minutes is below a specified value.

For example, over the last 60 minutes the average draw was under 1 Watt or whatever (something that indicates that while the fridge lights are still working, the compressor isn’t kicking on).

Maybe this functionality exists somewhere already and I just don’t know it, but this is the failure I badly want to alarm for as it’s happened to us twice in 4 or 5 months. In one case our main kitchen fridge accidentally got set to store demonstration mode which disabled the compressor but left all the lights and the front panel still working.

Seems to me like this would be an obvious and valuable usage for these energy monitoring plugs as otherwise you have to remember to manually check power usage yourself in the SmartThings Classic app.

I do have a few webcore Pistons going, but they’re pretty basic at this point. I guess given enough time I could maybe make this happen in webcore, but I don’t relish that task.


(Dave Gutheinz) #10

I am consulting on a proposal right now and do not have time to work this. A smart app would work that links each HS110. Would then get consumption today every hour (or less if needed). The current would be stored as con_now. It would compare to con_prev. If below your threshold (for 1 hour), would send text alert. Then set con_prev = con_now and wait for next poll (i.e., run ever hour).

Dave


(Chris) #11

I might give that a shot myself then if time permits and I develop some additional skills in webcore. Thanks much!