Monitoring Power By Counting Blinks

Monitoring blinking LED for home power usage

What do you do when you want to add a new feature to some electronics but you can’t or don’t want to tear into the guts? You look for something external with which you can interface. We like these hacks because they take some thinking outside the box, literally and figuratively, and often involve an Aha! moment.

[Simon Aubury’s] big household load was electric heating and his ancient heaters didn’t provide any way to monitor their usage. His power meters weren’t smart meters and he didn’t want to open them up. But the power meters did have an external LED which blinked each time 1 Wh was consumed. Aha! He could monitor the blinks.

Home power usage graph
Maximum is white, average is orange, and minimum is blue.

Doing so was simple enough. Just point photoresistors at the two meter’s LEDs and connect them and capacitors to a Raspberry Pi’s GPIO pins. Every time a pulse is detected, his Python code increments the LED’s counter and every fifteen minutes he writes the counters to an SQL database. Analysing his data he saw that nothing much happens before 5 AM and that the lowest daytime usage is around noon. The maximum recorded value was due to a heater accidentally being left on and the minimum is due to a mini holiday. Pretty good info given that all he had to go on was a blinking light.

Where else are there LED indicators which you can tap into? Here’s an only slightly more invasive usage where a washing machine’s “end of cycle” LED  was removed and the power going to it was rerouted to an Arduino for remote monitoring.

14 thoughts on “Monitoring Power By Counting Blinks

  1. Did this 26 years ago with the old rotary disc type electricity meters common in Europe: The disc had a section en the edge painted black and n revolutions corresponded to 1 kWh. I taped a reflective IR sensor on the window in front of the disc and every time the painted par of the disc passed the IR sensor the reflected light dipped, so it was simply a case of hooking it up to a Schmitt trigger circuit that toggled the ring detect pin on the serial port of my pc. A simple program collected accumulated counts every hour, so I could make some pretty graphs of my consumption profile.

  2. Nice but why not using it like this: https://hackaday.io/project/27612-esp8266-d0-reader-sml-logger

    I did this with two of my Smartmeters (Heater, House) and its working like a charm. The Meter pushes the messages out at a given intervall and i push them to my RPi3 running a Emoncms / Node-Red Instance.

    I think he could do it that way too if the D0 Port is unlocked. But the Manual i found after a Quick Online Search is looking very promising.

    1. Because they don’t use that protocol, it’s something proprietary. And the local electricity suppliers have password protected it so even if you have the appropriate software you’re SOL.

  3. I’m doing similar with my mains meter, but using a DS2423 1-wire dual counter connected to the optical sensor (an LED acting as photodiode). The good thing is the counter has a built in accumulator and battery backup, so it can respond to high speed pulses and I only have to poll it every 5 mins.

    Also note – those actually are smart meters with IrDA type interfaces (the round silver things are optical alignment sockets), but the protocols are generally proprietary.

  4. I thought about this solution few years back, but now – my current energy company is providing a free option to activate Wireless M-Bus in the meter along with required authkey.

  5. Why mess around like that when you can make a non contact current sensor and get much more granular readings and not deface your meter. It is an interesting idea, but I don’t think I would go that way.

    1. For my meter I just 3d-printed a bracket with a hole for sensor. No defacing, and removal is easy. (Yes, there is infrared interface there, but.. it is a weird mix of IRDA and CIR (38kHz modulated serial, from what I was able to find), and getting a reader head is all but impossible.

    2. This is simpler, easier to make and it will always read exactly the same as your electricity meter. So if you wanted to use it to give meter readings to your power company, you don’t need to worry about any measurement differences.

  6. Meters in my country are already connected to the internet and you can see your usage in real time. But I’m planning to make a RTC+micro controlled relay to switch on my water heater at night, to save some money on the long run.

Leave a Reply to pixelkCancel reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.