July 10th, 2024

Reading my electric meter with RTLSDR

The author shares their journey of accurately tracking energy consumption using RTLSDR technology with HomeAssistant. They resolved incomplete data issues by decoding smart meter information, enhancing energy monitoring.

Read original articleLink Icon
Reading my electric meter with RTLSDR

In a blog post, the author discusses their efforts to accurately track their energy consumption using HomeAssistant and RTLSDR technology. Due to their house's wiring setup, their energy statistics were incomplete, leading to discrepancies in reported values. They explored various solutions and settled on using RTLSDR to read data from smart meters in the USA, particularly those using the Encoder Receiver Transmitter protocol by Itron. By utilizing the rtlamr project, they were able to capture and decode meter data, sending it to HomeAssistant via MQTT for analysis and visualization. The author detailed the setup process, including configuring RTLAMR, selecting the appropriate meters, and integrating the data into HomeAssistant for monitoring. They also discussed options for handling tariff data to provide a more comprehensive view of energy costs. The post highlighted the flexibility and accuracy achieved through this approach, offering a practical solution for monitoring energy usage effectively.

Link Icon 4 comments
By @ArchOversight - 8 months
My old house had a meter that could be read by rtlamr but the new one has a newer meter that sends encrypted data back over some proprietary mesh network, and no longer provides that data in cleartext.

I wish there was an open standard and one I could easily plug in to. Even just a flashing LED on the side of the meter would work for me.

By @RebeccaTheDev - 8 months
My utility also installed smart meters a few years ago - the Focus AXRe with Gridstream RF. It theoretically has Zigbee in it. It even has the Zigbee logo on it. It also uses some frequency hopping radio thing for reporting that I was never able to quite figure out.

But I DID discover that my utility, buried down in like 5 menus on some random screen of the account portal, offers a usage graph at 15 minute intervals. It's not real time - it seems to be delayed by 1-3 hours - but it is far better than getting a surprise bill. And while it used some weird SAP JSON interface, I could deduce what was what and could get the data out of it.

So I whipped up a script to basically scrape this "API" and shove the data into InfluxDB. I also added daily scrapes for the billing page and the rate page so I know when I was billed and how much the current rate is. This is because my utility bills at a lower rate for the first 1,400 kwh, and a higher rate for everything over that. I was not able to discern any pattern to when the bills were issued and the utility company was very unhelpful in this regard, just "sometime ever 27 to 35 days depending on holidays and weekends."

While I would really like realtime data directly off the meter, even being delayed a few hours is better than a random surprise $370 bill. I've written enough scrapers in my life to know it will probably break at some point, but it's been humming along nicely for the last few years.