[Depreciated] Aeotec HEM (Gen 5) ZW095-A Driver

I think it has something to do with the way the series 700 or C7 Z-wave works as compared to the C4. The driver works on my C4 but not on my C7. I'm not a dev so I'm just guessing from observations.

I use @csteele AM6 driver, that I see he converted to C7 security. I tagged him in case he has some insight that could help you convert this one (if that is the issue)

I just installed this driver and after a bit of swearing, parameter changes and couple of include/exclude cycles managed to get it working well. I just use it for power tracking and ideally voltage and current. I was finding for a couple of hours of playing with it that it could get the power reading initially but was not continuously updating. Almost gave up and re-included on defunct ST hub.

The settings of note that work for me are:

  • CRC-16 encapsulation: off
  • Selective reporting: off
  • Rpt Group 1: Watts HEM, Watts 1, Watts 2
  • Rpt Group 2: Voltage HEM, Voltage 1, Voltage 2
  • Rpt Group 3: Current HEM, Current 1, Current 2
  • Firmware v1.35

Strangely when I only selected one value in each Rpt Groups (HEM) it didn’t work. Only adding them all worked (I only have one clamp).

Anyway, it’s working now and pretty fast.

1 Like

Do you have a copy of that driver you can share? Not sure if it's public. I can read though it and see what he's doing.

Thanks. I had it very easy with the Aeotec MultiSensor 6 code because it was already funneling all ZWave traffic into a single place. I only had to change ONE method.

I changed this:

private command(hubitat.zwave.Command cmd) {
	if (state.sec) {
	    if (debugOutput) log.debug "Sending secure Z-wave command: ${cmd.toString()}"
	    return zwave.securityV1.securityMessageEncapsulation().encapsulate(cmd).format()
	} else {
	    if (debugOutput) log.debug "Sending Z-wave command: ${cmd.toString()}"
	    return cmd.format()

To This:

private command(hubitat.zwave.Command cmd) {
	    if (debugOutput) log.debug "Sending Z-wave command: ${cmd.toString()}"
	    return zwaveSecureEncap(cmd.format())
1 Like

Thanks for the snippet. I'll try the zwaveSecureEncap() method and see what happens.

What is the latest with this driver? I see one other thread discussing drivers for the Gen 5 HEM (Aeon Home Energy Meter ZW095-A) that seemed to have a promising 22-Apr-2020 post from @codahq with a link to github code but that link is 404-ing for me. Is that still the most functional driver maybe accessible via a different link?

But then there is activity on this thread in the last few weeks that sounds really encouraging. Thanks for the efforts of everyone involved thus far. I do note though that on this thread @viertaxa is working on a driver for the US gen 5 device (obviously, since presumably he is in the USA and that is what he needs and probably also immediately benefits the highest number of other people) but does anyone know how much change that is likely to require to support the single phase UK version of the Gen 5 HEM?

I'm trying to work out what my best path forward is here, try to install one of the various drivers already mentioned in the various threads and have a stab at doing whatever changes are necessary to get it working on my HE C7 or wait a while for a better starting point to get posted presumably on this thread?

Would you mind pming the driver to me as well?

I've released a BETA MVP driver for the Aeotec HEM Gen 5 over here:


A couple things to note:

  • This is BETA software, and is subject to be totally broken. I'm still testing it out myself, but more eyes are always appreciated.
  • This is a MVP. Minimal functionality has been achieved, but I'm not doing anything extra, like calculating dollar costs.
  • This is my first driver released to the public, so I've probably done some things incorrectly.

Please feel free to open an issue on my GitHub for support for the UK version here: https://github.com/viertaxa/hubitat. If you're open to working with me for testing and providing information, I believe we can relatively simply take care of the 1 phase variant.


Fantastic. Thanks. I have just filed an issue (feature request) for the addition of UK support under Github user name mtaun01 where I did also confirm that I'm happy to help with testing. Unless anyone tells me it's pointless I'll actually download the US version you linked to in the next few days anyway since I assume (or at least would hope) that the basics of pairing, polling etc are probably the same across all versions of the device so I might as well check that there are no weird version-differences anomalies regarding the basic "plumbing" even if the data I get back right now isn't valid for the UK device.

Well, that was painless! I installed the latest groovy file from your github repository, excluded and re-included my HEM-Gen5. Hubitat picked up the fingerprint and got the right device type and I see "power" and "energy" as the "Current States" on the Hubitat UI when I click into the device. The power looked plausible and I then toggled on and off a 2kW fan heater and the figure changed by pretty much exactly 2,000 on each on/off test so it seems to be reading the instantaneous power consumption just fine. I'm guessing that probably means that the energy readings are good too but I'll mess around a bit more later. So far this is all without changing any of the default settings.

Now that I have what look like accurate energy readings coming in I need to go down that rabbit hole of working out how I want to log them, display them, use them etc.

Honestly I'm such a technology enthusiast (some might say "victim") that I really didn't give any thought to any of that when I bought the device, I was buying other stuff from a home automation online retailer, needed to add more stuff to my order to get free delivery, saw the HEM listed and though "yeah, That looks cool. I'll get one of those too".

Thanks Taylor for helping me get at least the basics of my totally un-considered purchase up and running and moving me on to the next stage. In retrospect thank goodness this didn't turn out to be a complete waste of money.


Thank you very much for the driver. Iwas looking this monitor against the sense but not sure if there was a driver available. Now I can go easily with this.

Hey there, don't even know if this is possible or allowed -yet- but I'm a BrandNew HE C7 user and was trying to install my Aeotec HEM.
So where can i find this driver or any other driver that will work ?

Welcome to the Hubitat community.

Which version Aeotec HEM do you have? There are drivers for different versions throughout this thread.

Or, are you instead asking how to install a custom driver on your C-7 ? Those instructions are here:

How to Install Custom Drivers


Hey @672southmain,

Thanks for your welcome and information.
I'm in the process of switching from a Fibaro HC3 to HE C7 and have a lot to learn.
One of the devices that never really worked on the HC2 or HC3 from Fibaro was Aeotec's HEM Gen 5 (i think the latest version unless an updated version is available now) And so I decided to get this installed on the HE. I know about drivers and the philosophy behind it. I read also that some drivers need some maintenance and that some people who used to maintain the aeotec HEM-driver stopped writing drivers for HE. So, I know how to install a driver bit am a bit confused now: is there still a working driver for this HEM or is none of the existing ones still working ? And, if yes, there is a working one (even if not perfect) can you point me to the place where I can find it ?

Thanks and sorry for the annoying newbie-stuf?


It’s not annoying at all. All of us had questions when we first came.

Here’s the good news and the bad news. I don’t have any power reporting devices, and many people have reported that the C-7 (but not the C-5, for some reason) has trouble becoming overwhelmed by power reporting devices unless the power reporting is changed to be infrequent. Search the forums for that discussion.

However, @viertaxa and @Julian2, upthread, were working on getting the HEM-Gen5 working back in December 2020 (just a couple of months ago), and @Julian2 seems to have gotten it working.

I suggest you send them a private message, see if they can help.

And, again, welcome.

Thanks, @672southmain,

I will do that !


I've used this driver for a while, and it used to work. It no longer responds sensibly, and it now issues a log message " [error]org.codehaus.groovy.runtime.typehandling.GroovyCastException: Cannot cast object '49.98' with class 'java.lang.String' to class 'java.math.BigInteger' on line 185 (updated)" when I try to change setup. The message makes no sense to me, and does not appear to be traceable. I'm getting some reports at random intervals, but can't seem to change the intervals, nor reset the energy usage. Any ideas what could be wrong and how ot fix it?

1 Like

This thread is no longer valid, as many things have changed and @codahq is no longer supporting hubitat. Please use the thread below which is more current, and still supported TMK

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.