Stacked power plot for Always-on, ID's appliances, and other?


Any plans to make a plot like the one below with the data Sense already has? Since the appliances, always-on, and other already have their time series, this would be a faster way to check what’s going on, make sure Sense is identifying things correctly, etc.


Yes, please. This would be amazing!

The closest functionality I find currently is in the trends > usage graph that shows how a single device stacked in with the total usage.


Thanks, I hadn’t found that one before, it’s useful.


I’m guessing that you don’t really want all devices as a stack - maybe rolled up into categories or top 10… Here’s what it looks like when you have lots of identified devices:


Top 10 or by categories would be fine. Note that if this was done in the real-time power display, typically many fewer devices would be active at one time.

1 Like

I’m not sure your supposition about active devices is entirely correct:

  • thanks to smartplugs, I have 25 or so “active” devices as a baseline at any one time.
  • I’ll typically have another 10 or so identified devices come on within any one hour
  • that number goes to 25 identified devices if you look at at a real-time
    window of 24 hours, 50 total…

So even with real-time, things probably need to be dialed back to top 10 plus other.

1 Like

Wow, I didn’t realize that some folks were getting so many plugs. Point taken. I just got my first HS110 yesterday, so maybe I’ll get in your league in a few months.

But yes, showing the top 10 or something like that (top 7? Depends how crowded the graphs get) would be extremely useful. So show 10 individual devices, other-identified, other-unidentified, and always-on, all stacked.

1 Like

I like your designations… I’ll try to prototype using exported data, either today or tomorrow.

ps: I had a half dozen HS110s prior to the integration. Throw in a couple of HS300s at 6 devices per pop and a few more HS110s and you are at 25 pretty quickly.


Do the HS300s monitor the devices in each outlet separately? Or only the total power from all devices on the strip?


Each outlet is a separate device in both Kasa and Sense-land. My only advice is that there isn’t that great an ROI to to replace an outlet strip connected to an HS110 with an HS300 if you have mostly networking stuff on the strip. All the networking equipment (router/switch/access point/base station/bridges) have very flat power utilization. Better to treat them all as one “virtual device”.


Here’s what a top 10 for daily usage on a per day basis over a 4 month window would look like:


Thanks, very useful!

My only comment is that I would put the less variable ones on the bottom, e.g. always on. And then the most variable ones on top. That way the plot would be easier to read, now it seems that the red is very variable, but it is pretty constant really.

So you (or Sense) could compute the Std Dev of all the points in time for each of them, and calculate the relative std dev (Std Dev / Mean) and stack them with the lowest RSD at the bottom and then by increasing RSD. Except always on probably should always be at the very bottom.

(Not asking what you do this with your plot, though I’d surely be curious to see it if you did … :wink:

1 Like

Reasonable suggestion… R and ggplot are built to do this stuff kind of easily. The trickiest part is blending the special cases (Always On) into the mix.

Sure enough… Looks better:

And here’s the R code

SimplePlot2.R (4.0 KB)


I love this! It really cleared it up putting the low variability on bottom!

1 Like

@kevin1, This is great stuff. What all does one need to run your plots? Is there a post somewhere that has this?



The script I posted, runs in the R language and environment, all free and downloadable. It takes in one or more Sense yearly downloads with 1 hour resolution. R is an open-source statistical language that is taught in virtually all non-comp-sci focused data science courses today.

You can find the base R language here

A great IDE environment for R is R-Studio. The company that developed R-Studio offers a free version that is more than enough for most users.

My script will require a little customization for your specifics, plus will require downloading some additional packages (reader, ggplot2), but R-Studio will help you with that.

If you have done some coding before, give it a try. There are plenty of videos and tutorials on how to use R.


R is something new to me and I’m just getting started trying to learn a little. Where I have my phone all the time and not a computer, I got the app from the Apple store.
Not sure exactly what I’ll be able to do from the phone just yet but the highlight of the description was the ability to learn from the app.

1 Like

Thanks Kevin, I’ll give this a try.


Looks like the App is a fairly full-featured version of R with all the requisite packages. But man, trying to code via a tiny touch screen or view graphical output is going to be challenging. Still useful for learning.


Python (another scripting language) has a similar iPhone app. @kevin1 is correct that programming on a touch screen is difficult/tedious, but if I had a script already made, running it in the app was pretty straight forward. @samwooly1 keep us updated if you get it set up and working in this app… I may try it out if you have some success.