Review, Teardown: Efergy HM01 Electricity Display Device

When you’re onto a good thing, I suppose it’s natural to just keep going. Knowing that my Efergy Elite 1.0 can be decoded using RTL-SDR, and knowing the e2 (presumably that is, the e2 classic that Nathaniel has) can also be decoded by RTL-SDR got me thinking whether it would work with any Efergy device?

I also wanted to buy another few meters, and in an area as “new” and dynamic as energy monitors, Efergy seems to have a good deal of product revisions and confusion. The Elite 3.0 classic is now for sale, and I have no idea what that’s like.

The Product

So I went on eBay and hit up a few models, the first of which arrived this morning at around 7:30am. This one wasn’t well specified, and I see virtually no trace of it on Efergy’s current website, but it is a genuine Efergy product judging by the manuals available online. It’s called the HM01 energy saving meter / “Electricity Display Device”. It cost around AU$75, a sign of how much “energy saving devices” are made to cost due to them being “fashionable”. I’m sure such a device isn’t really that expensive to make.

Efergy HM01 Package Outside Front

It’s got a very plain product insert in a no-frills type sealed plastic forcefield which we all love to injure ourselves on. But at least most of the parts are visible from the exterior which helps people understand the product when it’s sitting on a shelf.

Efergy HM01 Package Outside Rear

The transmitter is visible in the back, along with the rear of the LCD and the current transformer itself. It was at this point, I noted that the current transformer uses a small round barrel jack rather than the 2.5mm mono plug used by my existing Elite 1.0 transmitter. It also didn’t have any protective caps for any unused ports.

I haven’t pictured here, but included is a warranty statement (one year), a user manual, and two velcro spots for attaching the transmitter. A nice touch, especially given that you will need to remove the transmitter to replace the batteries periodically.


I can say with a loud sigh that this product (as compared to the slightly more expensive Elite 1.0 that I bought several years back) is far inferior.

Firstly, the plastic of the units feels flimsy. It creaks. Worse still, the LCD protective cover wants to peel off once the protective film is peeled, and already has scratches underneath the film. Not all are imaged, but it looks like a thoroughly used device but it isn’t because it was in a perfectly sealed plastic shell.

Screen Scratches

The plastic shell itself is poorly machined, the edges are ragged and the battery door itself doesn’t fit nicely – it just doesn’t have that “quality” feel to it. Look at that panel gap.

Edge Machining and Battery Door

Even the holes where the buttons are have rough edges. The manual itself also features a few issues – including this confusion about the batteries.


Note that it should say two AAA batteries each, rather than three AA as used in the Elite series!

HM01 Current Transformer and Transmitter

Here’s a close-up of the barrel connectors used by the current transformer of this model It’s not the same as the Elite ones, so unfortunately, I can’t just interchange my transmitter without changing the clamp.

Transmission times are every 6 seconds, as with the Elite, and it generally works with a readable LCD and backlight which only activates on button presses in the evenings. Instantaneous power, cost and CO2 figures are provided with a limited memory ability similar to the Elite. No facility for interconnection with a computer is provided.

Does it work with EfergyRPI_001 and RTL-SDR?

In a word, no. If you’re looking for something to work out of the box with it, avoid this model.

The first thing to note is that the transmission frequency is different. Accounting for the 0.04Mhz difference in reception frequency of my RTL-SDR dongle, the transmissions from this device are on 434.03Mhz with a similar width.

Efergy-HM01-different freq

Left pulses in the above centred 433.51Mhz are my Elite (actually, 433.55Mhz).

Can’t you just change the frequency in rtl_fm? Again, no. The FSK transmission format is different. In fact, it’s simpler, but without further detailed study, it’ll be hard to understand and completely reverse engineer the transmission format.

Here’s some wave-captures using rtl_fm piped into a file (raw) and then opened in Goldwave (96000hz sample rate, 16 bit, little-endian, mono). Sorry about the lack of scale, but I think that’s not entirely critical at this stage, as the transmission bitrate may be different for both models.

Here’s the HM01 (raw capture provided as a zip):


Here’s my Elite 1.0:


It’s clear the HM01 format is much shorter, with a 0-1-0-1 repeating preamble (likely for waking up the receiver, syncing the decoder’s clock and getting its FM detector “captured” and centred), followed by some (possibly fixed) data, then a string of zeroes – this may be the ADC value as I had the CTs disconnected, followed by a checksum (possibly). One really has to collect many of these samples before they can make a correlation and understanding of the fixed and variable parts of the transmission.

So it’s clear. It doesn’t work (yet). Ultimately, work needs to be done to make it happen. Is it that hard? Probably not, but it is time consuming. Will I do it? I can’t say I will.

What’s Inside the ‘Box’?

I’m glad you asked! It’s probably something that might be interesting to many people, so I decided to tear this energy monitor down (and reassemble it safely) just so you (and I) can see what’s inside. Remember, doing this voids all warranties, so please don’t do it unless you know what you’re doing. Also, disconnect it from everything before doing this!

Lets start with the transmitter:

HM01 Transmitter Inside

Inside the transmitter, there is two PCBs. Battery power (from the left) is connected to the bright green PCB facing us. This one is marked Send.cpb, and is dated 31st May 2007 by Inventronic. It is connected to the top PCB labelled Send1 which is dated 7th July 2007, which is mainly responsible for the current transformer jacks. There is a bundled up piece of red wire to the side, with masking tape – that’s the antenna which has been unlovingly shoved into place.

On the Send.cpb (likely to be pcb mistyped), there is a bank of back-to-back germanium diodes, six in a row. These act as “clamps” to limit the incoming voltage from the CT to the diode’s forward voltage drop (likely 0.7v). This prevents short transients from causing damage to the input stages. Interestingly, there seems to be a provision for a fourth channel – this may have been for a special model for use with a single phase solar PV CT to measure power contribution from PV, but that’s only speculation.

There’s one 20-pin IC on this side labelled F9222 T 742X. I’m not sure what it is, but if I had to guess, it’s probably an op-amp or instrumentation amp of some sort.

Undoing the screws (all four of them) and flipping over …

HM01 Transmitter Insides 2

We see the signs of a very interesting assembly method. Gold plated DIL headers shoved unceremoniously into through holes and soldered down, and at a very strange angle. They couldn’t afford the connector?

Anyway, there’s an LED on this side to indicate transmissions, connections to the PCB housing the CT sockets which have a resistor on this side (probably also matched to the capacitors on the other side of the main board, C10-C12 to form an RC filter). There’s spaces on this side to fit a transmitter module surface mounted, with supporting ancillaries scattered, but instead the transmitter is a separate PCB module with chip-on-board construction and crystals and antenna attached to it. The whole module is supported on a set of pins which are soldered on both ends.

Here’s a better look at the whole thing …

HM01 Transmitter Insides 3

The gold “interlocking” finger on the CT PCB is actually for the push button, based on a rubberized dome as used in cheaper keyboards and calculators. Nothing really exciting.

Transmitter Rubber Dome Button

With that totally torn down, lets move to the LCD display.

Inside HM01 LCD Display

I’m sorry, but I won’t pull this one apart any further, as it’s really not productive to do so. The main reason is the large rows of soldered pins on the left and right of the main board – they’re the LCD which is directly soldered onto the board. Too much flex could be catastrophic.

But you can see, one main board with a matching transmitter/receiver module on it. Red wire antenna connected to that, running around the frame. Top right corner has the alarm buzzer. There’s a NEC D78F0512 (likely a microcontroller, with the crystal directly attached to it) and an HL9578 IC (most likely the LCD driver judging from the pin connections). There’s also one marked L16 6089W which may just be an amplifier. Q1 appears to be a transistor for driving the buzzer.

Interestingly, there’s several other connectors unpopulated. J3 might appear to be a JTAG header, but it’s probably more likely an alternative wireless module connector as one of its pads runs right to the footprint for X2 (a crystal mounting point). There’s an unpopulated IC1 and a J2 next to it which seems to be a four pin connector, maybe for an alternative LCD? Not too sure. Underneath the wireless module, you see the same footprints for a surface mounted module which matches that of the transmitter. Also curious is S1, a three position jumper just under IC2 which has positions 1 and 2 bridged with solder. I wonder what that changes? Programming mode for the microcontroller possibly?

All of this is connected by hand-soldered links to the bottom PCB which is solely responsible for the button inputs.

I think it’s clear from the construction inside that a power monitor isn’t exactly too special, and that the construction quality of this one might leave a little to be desired. There seems to be many options to this PCB design – the one you buy might not be the same as the one I bought!


It’s one of the cheapest Efergy power monitors you will find for sale online. As a power monitor, it does a passable job of it, although the scratches on the LCD were unwelcome and the cheap plastic construction just doesn’t quite exude quality like the earlier Efergy Elite series products do. Further to this, the use of AAA batteries almost certainly ensures more frequent battery replacements, which might put some users off, but that still might only mean once a year.

Unfortunately, given the above caveats, I find it hard not to recommend the slightly more expensive Elite model. You are getting a better quality build, although slightly larger, they run on three AA’s and last over a year and a half on Sanyo Eneloops which is plenty good.

As a bonus, if you did buy the Elite model, you’d probably have a better chance of hitting one that was decodable by the already-developed EfergyRPI_001 software.

As it stands, this model is not yet decodable by rtl-sdr, and work needs to be done to determine the data format. This will necessitate taking multiple samples with different power conditions and comparing the output – a time consuming process which I probably won’t get myself involved in (at least, not in the near future).

About lui_gough

I'm a bit of a nut for electronics, computing, photography, radio, satellite and other technical hobbies. Click for more about me!
This entry was posted in Computing, Electronics, Opinion, Radio and tagged , , . Bookmark the permalink.

One Response to Review, Teardown: Efergy HM01 Electricity Display Device

  1. Scrooge says:

    Talk about “fashionable” pricing: the HM01 was on sale in Bunnings in Caroline Springs at $22.59 each yesterday. This possibly reflects the true cost of the products. Contacting efergy in Melbourne (just down the road from that Bunnings store) by phone to find that additional sensors to measure three phase were $20 each and an extra $10 overall for postage. Bought three outright from Bunnings – cheaper than buying the additional sensors separately!

    Guess who’ll be whipping out their arduino and Raspberry Pi boards this weekend to see how to decode these signals?

Error: Comment is Missing!