Aeon Labs Energy Meter clamps

Yes, the long term logging seemed to make sense…which is why I was confused about adding it into ST since that is not available. Basically, I look at this like the way I look at Nest. I get all my data from Nest. At the moment, I do have them integrated so they can change from away to home, but that is it.

I just didn’t see any benefit to having the energy monitors in ST and was looking for some use case examples.

Check this out. :slight_smile: Power Meter Logging SmartApps (PlotWatt, ThingSpeak, SmartEnergyGroups)

@brianlees, the long term logging is definitely beneficial in many ways.
I love seeing data like this in an easy to use and understand format. It makes it easier for me to monitor various home functions.

Unfortunately, I don’t have a means of integrating the Nest Protects in a useful manner, every time I try, it causes my ST app to crash once I add the first Nest Protect. I don’t use the Nest thermostats, as we only have boiler baseboard heat and no AC in the home. So, like you, I get all of my Nest data direct from the Nest app.

The HEM unit does definitely have a use within the ST universe, just not as active a use as I’d eventually like to see.
With some plug in energy monitoring appliance modules you can trigger an alert when power usage rises on that module, or when it drops in the event of say, the washing machine finishing it’s cycle.

I haven’t found a good use case for the HEM units to provide that level of alerting, as it is monitoring the entire home instead of an individual appliance or circuit.

Down the road, I’d like to add one of the multi-circuit Z-Wave monitors that checks each individual circuit and calculates usage on a per circuit level.

I use the power meter to tell me if I left a light on or a PC. If the minimum power exceeds 365W then I know to look around to turn it off.

Mainly for monitoring power usage over time as I swap out to LED’s and automate lighting, and a little fun factor. AND, to catch the builder next to my house stealing my power instead of using his own drop while we’re away from the house.

I second plotwatt. In addition to using the Hemv1 with SmartThings to better estimate overall power usage & cost for the month, I also log the data automatically (every 20 seconds) at PlotWatt. After a few weeks of usage, Plotwatt was able to break out the following “appliances” from my monthly total power draw:
–Always on

As it progresses, it’s supposed to learn additional appliances. I guess time will tell, but so far it has been pretty accurate.


I’m looking to purchase a HEM v1, I have a couple questions:

  1. Can I install the clamps before my main “service disconnect” circuit breaker? See the attached pictures. Those cables that I’ve highlighted are coming in from my outdoor meter to my garage. From there, they split off into 2 main service disconnect breakers, each one then feeds into my house and powers a circuit breaker panel that controls various areas of my house. So can I just buy 1 HEM kit and clamp them on the mains coming in, before the main service disconnect breakers?

  2. If so, do I really need to turn off the power before installing because I don’t have a way to interrupt that power, unless I’m missing something outside of my house near my meter.

  3. Is it obvious which clamp needs to go on which cable?

Thanks in advance for any help.

1 Like

It doesn’t matter which clamp on which cable. You have two phases of power, which are usually distributed evenly throughout the house and are combined for any 220v appliances (electric stove, dryer, car charger).

I think it may matter which “direction” the coil faces, but the clamps aren’t labeled top / bottom / in / out, so maybe not. Just try to have them both face the same way (i.e., have the bottoms with the wire on it both on the “incoming” side of the power mains).

Shutting of the Main Breaker of the circuit box helps to keep you away from any shocks due to loose wires of any of your individual circuits.

You are correct, however, that those two power cables that you actually will be putting the coils around, probably do not have a user disconnect; so these will be live. I presume there may be some place these can be decoupled, but possibly only by the power company.

The second picture seems to show that you have Service Disconnect Breakers – I wish I did! You appear to be in a very safe configuration for this installation.

But if you are aware these could be live cables (and are also aware of everything you’ve cut with breakers … but still be cautious), then you can deal with these just very carefully.

(i.e., handle only by the insulation, wear insulated gloves and shoes, if one gets loose, stop and reconnect it – don’t let it short with some other metal in or around the box, etc.).

1 Like

Well, the cables coming in to this box come from outside and feed into those Service Disconnect Breakers. So I have easy access to the main wires before they feed into the Service Disconnect Breakers. Sounds like I can do what I was hoping to do. I prefer this because I can buy just one HEM unit and monitor there, instead of buying 2 and having 1 installed in each Service Disconnect breaker box.

1 Like

Yup… Sounds right. I only have one breaker box which handles both phases, so hard for me to compare. Feel free to send more pictures if you get stuck.

Your electric company power meter is outside the house?

Is it possible to use this device (HEM v1) to detect a power outage? Because it has batteries as well as AC options, I thought maybe a smart app out there could notify you if your main power is out (similar to what they’ve done with a SmartThings Motions Sensor v1 device).

I think so. I may have to double check. :wink:

Sure… As long as the batteries still kick-in if USB is plugged in. Heck, it might even manage to send a Z-Wave event of the drop in power usage before the wall-wort drains…

To me, that would almost be as useful as the main purpose this device serves of collecting energy usage! Has anybody successfully implemented this? (I’m sure if it can be done, it already has been).

1 Like

Don’t be so “sure” :wink:

I haven’t read of a SmartApp that I can recall, but try some searches. If you don’t find one, I’ll take a shot…x

@johnconstantelo wow, your device type is absolutely awesome. I’m glad I found it in this thread as there are a lot of community device types out there but it’s hazy at best to know which ones work good, have updated UI’s, and which are best for the v1 hardware versus v2. Thanks for your contribution as it totally fits the bill. A couple of questions for you:

  1. with iOS, the only text I see on the main screen is "Home is currently using XXXw."
    I see the following code that also mirrors what you show in your screen shot above:

statusTextmsg = "Home is currently using ${device.currentState('powerDisp').value}.\nMin was ${device.currentState('powerOne').value}.\nMax was ${device.currentState('powerTwo').value}."
That does show up in the “Recent” tab, so I can get that information there, but it would be nice to have it on the main screen like your screenshot.

  1. Clicking the “Configure” button does nothing, are there any settings other than kwh cost that I should be worried about (I can edit the kwh cost in the “edit device” menu, which works great.

Lastly, would you mind taking a shot at creating a smartapp to send a notification if the hardware itself switches from AC power to Battery power? My smartthings hub, modem and router are all on a battery backup UPS so I theoretically could get a notification in the house power goes out… I just need a “connected” device that can report on a trigger. Does this device send an event, or could it be done in the poll() to check if it is now on battery, and then be able to send a push or text notification?

Thanks again for the awesome work!

Maybe this code could be retro-fitted for the HEM v1 device? I could give it a shot, I just don’t know what the equivalent handlers or references for powerSource.battery and powerSource.powered that is called in this app would be for the HEM v1.

 *  Power Is Out
 *  Copyright 2014 Jesse Ziegler

    name: "Power Is Out",
    namespace: "smartthings",
    author: "Jesse Ziegler",
    description: "Alert me of power loss using motion detector's change from wired-power to battery-power. SmartThings hub and internet connection must be working! You can connect the hub and internet connection device (e.g. modem, router, etc.) to a battery backup power strip so that the motion detector and detect the loss and the hub and router will still have enough power to get the message out before they fail as well.",
    category: "Safety & Security",
    iconUrl: "",
    iconX2Url: ""

preferences {
	section("When there is wired-power loss on...") {
			input "motion1", "capability.motionSensor", title: "Where?"
	section("Via a push notification and a text message(optional)"){
    	input "pushAndPhone", "enum", title: "Send Text?", required: false, metadata: [values: ["Yes","No"]]
		input "phone1", "phone", title: "Phone Number (for Text, optional)", required: false


def installed() {
	subscribe(motion1, "powerSource.battery", onBatteryPowerHandler)
    subscribe(motion1, "powerSource.powered", PoweredPowerHandler)

def updated() {
	subscribe(motion1, "powerSource.battery", onBatteryPowerHandler)
    subscribe(motion1, "powerSource.powered", PoweredPowerHandler)

def onBatteryPowerHandler(evt) {
	log.trace "$evt.value: $evt"
	def msg = "${motion1.label ?:} sensed Power is Out!"
	log.debug "sending push for power is out"
    if ( phone1 && pushAndPhone ) {
    	log.debug "sending SMS to ${phone1}"
   	sendSms(phone1, msg)

def PoweredPowerHandler(evt) {
	log.trace "$evt.value: $evt"
	def msg = "${motion1.label ?:} sensed Power is Back On!"
	log.debug "sending push for power is back on"
    if ( phone1 && pushAndPhone ) {
    	log.debug "sending SMS to ${phone1}"
    	sendSms(phone1, msg)

@drshaw, this could be an issue between iOS and Android. Can you try replacing the line above with:

statusTextmsg = "Home is currently using ${device.currentState('powerDisp').value}.  Min was ${device.currentState('powerOne').value}.  Max was ${device.currentState('powerTwo').value}."

I removed the “\n” characters that causes the next to go to the next line, and maybe the iOS version of the app doesn’t handle that well.

The Configure button doesn’t do anything that you can visibly see right away. It configures the device for reporting options you can change in the code, like reporting frequency. Go to the last few lines of code and you’ll see what I mean.

As for a SmartApp, the device doesn’t report back if it’s on AC or battery power that I know of. Saying that, there’s a built in SmartApp from ST called Energy Alerts. You could use that to notify you of when usage falls below normal levels that could potentially indicate a power outage.

Hope that helps.

Thanks for the tip on “Energy Alerts”. I’ll definitely look into that.

Here is a before and after screenshot of your device type. The before is the default code, the after is with your change (removing the “\n” characters).



I want to think that the “\n” is successfully breaking the line, it just needs to start 2 lines up from where it’s currently starting :slight_smile:

By default it updates every 30 seconds… if I wanted to change that to every 15 seconds, I assume I’d change this line:

zwave.configurationV1.configurationSet(parameterNumber: 111, size: 4, scaledConfigurationValue: 30).format(),   // Every 30 Seconds

To this:
zwave.configurationV1.configurationSet(parameterNumber: 111, size: 4, scaledConfigurationValue: 15).format(),   // Every 15 Seconds

Then push “configure”?

Wow, what a difference between Android and iOS in terms of the overall quality, look ,and feel of that on your device. I’m a little embarrassed to show you what it looks like on Android (Samsung Note 4)

I like yours a lot, but not enough to switch to an iPhone :wink:

I knew there were differences between iOS and Android, but I don’t know how to work around that for you to make iOS behave like Android. Sorry about that. I’ll need some help from other Community members.

I need to look at Aeon’s documentation, but I believe that and the one below determine when to send updates:

zwave.configurationV1.configurationSet(parameterNumber: 4, size: 2, scaledConfigurationValue: 50).format(),     // Don't send unless watts have increased by 50

Here are 3 in a row for me. Times and values vary: