Device identification from power consumption

Tags: #<Tag:0x00007f61736eddf0> #<Tag:0x00007f61736edb20>

Is there a way (via rules? or 3rd party software?) to identify specific devices, just from the overall power consumption.
e.g. I “know”, which devices cause which spikes in my graph, but I don’t see a solution to filter them…

Does anyone know of a sophisticated rule or a 3rd party, which can do that?

Goal is, to identify the power consumption of e.g. the fridge or the cooking hood and get actions on this. Those devices don’t have a OH-item, so I can’t tell their status - and I don’t want to install separate sonoff-PoWs on each one of them! :wink:

1 Like

Can you tell me which devices you will control with its power consumption?

I now control the power consumption of my wasching machine and dryer (both very very usefull) and my dish washer (not so usefull, only nice to have).

What are your future plans if you can log each device on its own?

I have knx and i´m using switching actors with power measurement function, so i can control each power outlet, if i want. But for this i don´t have much ideas, what i can do with all the additional informations.

Is this screenshot from inside oh2? Do you use influxdb/grafana or is this made with an external application?

at present I’d like to see these ones:

  • fridge: just to Monitor its power consumption (its 12 years old, perhapts time for replacement - in fact I hope to identify more of those power beasts)
  • cooking hood: if on, I’d like to temporarily speed up my ventilation system
  • dishwasher: i’d like to be notified, if this ones ready

I do have two separate Sonoff PoWs for my washing machine and the dryer - as they operate in the cellar and we tend to forget they’re running! :wink:
unfortunately I don’t have KNX-actuators, which measure power, so I can’t use them (pretty expensive stuff! :wink: )

The screenshot is directly taken from HABPanel. I just added the power consumption overall and actual to a new graph - prerequisite on that is, you have a mysql-persistance, if I remember correctly.

As a simple work around, you could calculate the difference between the current power consumption and the last value.

power_diff = power - power_old
if (power_diff > XXX and power_diff < YYY)
then fridge is on

if (power_diff > AAA and power_diff < BBB)
then dishwasher is on

Of cause this might be more complex in reality.

So what you are asking about is a signal processing task. To do it right your sensor needs to be reporting frequently enough (which looks like it could be the case here) and then apply a Fast Fourier Transform (FFT) to tease out the signal from each individual device. There are tons of third-party libraries out there but you still have to apply a good deal of math to know how to apply the FFT.

There might be some short cuts you can apply like Christoph suggests but I don’t think they will be wholly accurate. For example, I think it would fail to detect the fridge running just before 01:00 in your graph.

1 Like

I knew it - math… :wink:
I have to ask my brother, he’s math teacher for seniors… :roll_eyes: :sunglasses:

Ha great! I’m not confident that you’ll find any obvious correlations in this aggregated signal of complex behavior though :smiley: Edit: Without a prior per device observation… Edit2: Now I want to see the prove of concept!

I still trust that you would be able to identify the combination of devices based on certain (persistence based) pattern recognition and combination logic.

Quite bluntly I’d install a Sonoff POW and be done with it :slight_smile: Not cool and clever but it will work instantly and be reliable for years. :dizzy:


I’m not thaaaat confident anymore:

it burst at 5A max… around 1200W with my washing machine attached.

Hui, you are the first to report this. Are you maybe a victim of ITEAD Sonoff switches and sockets - cheap ESP8266 Wifi+MQTT hardware

I’m monitoring my washing machine with a Homematic component btw.

i tested my device back then and it was not affected… :confused:

I can only give a very general answer: a while ago I came across some control device on kickstarter I think, that supposedly identified everything in the house by a combo of sound and electrical use pattern. Though that seemed a bit farfetched, supposedly it is possible, by indeed the FFT that some people mention.
But I think that is not something that is easily put together on a sunday afternoon. Nevertheless I admire your vision

This is what you are looking for:

But i have seen some reviews, this should not be very accurate.

1 Like

I’ve been using a Sense monitor to do this for the past few months and it’s been pretty impressive. I’ve posted a couple screen captures from my system below; feel free to ask me anything you’d like to know.

1 Like

Thanks for smappee and sense (didn’t know that one yet…).
As far as I can see, smappee exposes a cloud based API (with monthly costs) and Sense is somehow working on one.

From my experience with gadgets, I prefer solutions, which offer on-premise APIs. Makes it safer, that I have always access to the informatione - but I’m also sure, the API delivers, what I need. Unfortunately I bought two devices, one still lacks the 2015-promised API, the other cloud-based API was just shut down… Now I have basically some expensive bricks at home. Perpaps, Sense will come up with an extra device collecting the data…

I agree, having an API is a priority for me as well. I would love to be feeding all of that data into my Splunk server so I could run my own analyses, and integrate it with OpenHAB as well. I’ve considered trying to man-in-the-middle the HTTPS traffic as it leaves my network, but I haven’t gotten around to it yet.

I think that Sense is focusing on making their offering easier to use and better at detecting and identifying devices right now, which is understandable since that’s what the mass market is looking for. Hopefully the API doesn’t fall by the wayside…

1 Like