Energy monitoring

Can anyone recommend a energy monitoring solution, i have seen the Smappee, that i think is pretty cool.

My current system is using IHC, zwave, rfx

I am still waiting for my order from AliExpress, but you should check out Sonoff Pow.

It’s based of the esp8266 chip and you can reprogram it.

If you do have a little know how in programming with Arduino you can flash a new firmware and connect the device via mqtt to openhab.

Look here for more information:

For a DYI solution I completely agree to this.

If you want a more out-of-the-box solution, given that you mention Z-Wave, I can recommend the following:

Aeotec Home Energy Meter

Fibaro Wall Plug

I have the HEM installed in the circuit box, monitoring my main feed, and wall plugs on various appliances around the house. Both devices are rock solid, and seems to give fairly precise measurements, at least in my experience.

Thanks for the feedback, but i Think i’m looking for something that I can add on the main circuit.

What I was impressed with the smappee was that it can detect what kind of electric device is using what. Just by monitoring the main circuit. It also has a nice layout.

Does the aeotec have that feature?

I have had Smappee installed for nearly a year now, but I’m completely new to OpenHAB so haven’t had a chance to try and bind the two together yet.
My experience with Smappee:


  • It’s stable (haven’t had to reset it for more than half a year)
  • It gives a fairly precise measure (I had to change a few settings though with the help from support)
  • It connects easily to my three phases coming into the house using clamps
  • The app is quite neat and makes my usage accessible from anywhere
  • It recognises single appliances with enough wattage automatically (heaters, oven, cooker, etc)
  • I can turn appliances on/off through what they call Comfort Plugs (433MHz) - They are just reselling DiO plugs though…
  • Comfort plugs can also be controlled via a remote


  • Smappee Support is not very responsive
  • Sophisticated appliances with more than one energy consumer (pump, heater, compressor), especially where the frequency changes are not that easy to get monitoring on - at least I still haven’t been able to catch all consumed energy from e.g. my computers, servers or heat pump.
  • My home uses a lot of energy, but it was hard to actually make smappee monitor my consumption fairly correct
  • The comfort Plugs are only receiving commands from either remote or smappee but can’t give feedback on state - also they always start out OFF if power has been lost. They can’t be programmed or easily hacked (to my knowledge)
  • There are no on/off buttons on the plugs so you can’t actually control them without remote or Smappee app - this is a nice to have though in a smart home setup.
  • The pattern recognition of appliances is still not perfect and I really miss templates for different appliances so that Smappee can tell me with some insecurity of course what type of consumer it has recognised instead of just Appliance 126

Bottomline though is that I quite like the product for what it does!
I love the ability to monitor my electricity usage plug and play and I’m now looking into using it more actively in combination with OpenHAB and getting my hands a bit more dirty with tinkering.

I have added a small DIN sub meter with a pulse output on the main circuit. I have this connected to one IHC input and monitor it this way.

i finally installed Smappee, but now i need a openhab2 binding ?

There is no binding, but depending on what you need, you can accomplish it by using http post requests directly to the Smappee unit.

I’m using it to turn on/off the smappee comfort plugs in a rule.
You need to know the number of the plug. In the Smappee app the order defines the number, so the first one shown in the list has number 1 and so forth.
You can also get the numbers by calling:
curl -H “Content-Type: application/json” -X POST -d admin http://SMAPPEE_LOCAL_IP/gateway/apipublic/logon
Request numbers:
curl -H “Content-Type: application/json” -X POST -d “load” http://SMAPPEE_LOCAL_IP/gateway/apipublic/commandControlPublic

When you know the number you can use it in a rule:
First you need to authenticate:
sendHttpPostRequest(“http://SMAPPEE_LOCAL_IP/gateway/apipublic/logon”, “application/json”, “admin”)

Then you can send commands (the example turns on my plug number 4):
sendHttpPostRequest(“http://SMAPPEE_LOCAL_IP/gateway/apipublic/commandControlPublic”, “application/json”, “control,controlId=1|4”)

I found the internal API here:

I am also interested in getting Smappee but the fact that is not supported in Openhab2 is stoping me form buying it.

Is the someone with acknowledge that can help the community by developing the binding?

Is the other way to communicate with Openhab instead trough binding? Like mqtt or http? If so, can you please publish it here?
@tgr has publish a way to turn on/off the plugs, but how can be the power consumption measures be sent to openhab?

Thanks to the community.

There’ a python script that can be combined with mqtt that some are using to get the current energy values, but it doesn’t include anything about the appliances.

I guess you could integrate Smappee with IFTT and get some triggers through that at least.

BR Thomas

IEC 62056-21 is the best solution I found… (I have bought some toys like the one of theowl).

You just have to buy a ~30€ USB probe that is connected to your energy meter, install it on a raspberry and voila :slight_smile: (of course it’s not that simple…)

I bought this one
and use it with a Raspberry A.

Example of what I can retrieve.

"data set": {“address”: “F.F.0”, “value”: “00000000”, “unit”: “”},
“data set”: {“address”: “0.0.2”, “value”: " 971805", “unit”: “”},
“data set”: {“address”: “C.1.0”, “value”: “16351336”, “unit”: “”},
“data set”: {“address”: “C.1.1”, “value”: " ", “unit”: “”},
“data set”: {“address”: “1.8.1”, “value”: “003210.650”, “unit”: “kWh”},
“data set”: {“address”: “1.8.2”, “value”: “008332.200”, “unit”: “kWh”},
“data set”: {“address”: “1.8.0”, “value”: “011542.850”, “unit”: “kWh”},
“data set”: {“address”: “2.8.1”, “value”: “009186.811”, “unit”: “kWh”},
“data set”: {“address”: “2.8.2”, “value”: “003089.465”, “unit”: “kWh”},
“data set”: {“address”: “2.8.0”, “value”: “012276.276”, “unit”: “kWh”},
“data set”: {“address”: “32.7.0”, “value”: “236”, “unit”: “V”},
“data set”: {“address”: “52.7.0”, “value”: “237”, “unit”: “V”},
“data set”: {“address”: “72.7.0”, “value”: “236”, “unit”: “V”},
“data set”: {“address”: “31.7.0”, “value”: “001.25”, “unit”: “A”},
“data set”: {“address”: “51.7.0”, “value”: “000.11”, “unit”: “A”},
“data set”: {“address”: “71.7.0”, “value”: “000.95”, “unit”: “A”},
“data set”: {“address”: “36.7.0”, “value”: “000.25”, “unit”: “kW”},
“data set”: {“address”: “56.7.0”, “value”: “000.01”, “unit”: “kW”},
“data set”: {“address”: “76.7.0”, “value”: “000.17”, “unit”: “kW”},
“data set”: {“address”: “33.7.0”, “value”: “0.88”, “unit”: “”},
“data set”: {“address”: “53.7.0”, “value”: “0.89”, “unit”: “”},
“data set”: {“address”: “73.7.0”, “value”: “0.93”, “unit”: “”},
“data set”: {“address”: “C.7.0”, “value”: “0024”, “unit”: “”},
“data set”: {“address”: “C.7.1”, “value”: “0041”, “unit”: “”},
“data set”: {“address”: “C.7.2”, “value”: “0045”, “unit”: “”},
“data set”: {“address”: “C.7.3”, “value”: “0043”, “unit”: “”},
“data set”: {“address”: “0.2.0”, “value”: “xxxx”, “unit”: “”},
“data set”: {“address”: “C.5.0”, “value”: “xxxx”, “unit”: “”},
“data set”: {“address”: “C.90.1”, “value”: “0000000016351336”, “unit”: “”}