Using RTL-SDR to read value from wireless electric/gas/water meters

An attempt to use RTL-SDR to read values from wireless electric/gas/water meters and visualize these values on Home Assistant.

Based on RTLAMR Project: GitHub - bemasher/rtlamr: An rtl-sdr receiver for Itron ERT compatible smart meters operating in the 900MHz ISM band.

Python & HA Yaml: RTLAMR: RTL-SDR to read electric/gas/water meters · GitHub


Very interesting project. I have always wanted to monitor my water and gas consumption.

I have ordered a RTL-SDR, hopefully it will be here in a week. Then it will be a good rainy weekend project

this is very cool, thanks for the tips. I was able to get this working to get the readings from my water meter.

Were you able to run the adapter on Raspberry Pi running Hassio?

I used another linux box I had. I don’t know if you could run this on without an addon.

I was actually thinking of making an add-on. :slight_smile: I assume the linux box is not a Pi (or some other ARM based platform)?


With latest golang(>v1.9), rtlamr does not exceed more than 70% on 1 core CPU in RPi3. If an earlier version of golang (<v1.9) is used, it will gobble up all your cores on a RPi3. It highly depends on the symbol length. There is a docker file in that repo as well. One can run it on using a separate docker container, I haven’t tried it!

@debsahu thanks! I’ll try it out and report back if I succeed.

I decided to get another Pi Zero W and install RTAMR on it. It works well. :slight_smile:

Hello @mladem
did you install the software as described in the OP? if yes how did you install it?


I took an Pi Zero W

Hope this helps!


Hey @mladem thanks for the detailed explanation.

Do you think this rtl sdr would work ? I have this one.


It works with this one:
Yours appears to be same/similar chipset, so I assume it should.

Perfect I will try and install on my rpi zero w and see if my rtl sdr works.

Thanks for your help.

@mladem my electricity smart meter is Landis Gyr+ and apparently it uses zigbee. Do you think the rtf-sdr would still sniff the signals ? sorry for the silly questions mate.

Finally how did you install GO? I am struggling.


right so I got this far and when I run the command rtlamr this is my output. Mind you this output is not changing at all and this is surprising as I live in a flat with my neighbours meter next to me, so I would expect to get more than 1 output.

pi@raspberrypi:~ $ rtlamr
15:19:47.035141 decode.go:45: CenterFreq: 912600155
15:19:47.040839 decode.go:46: SampleRate: 2359296
15:19:47.042413 decode.go:47: DataRate: 32768
15:19:47.043984 decode.go:48: ChipLength: 72
15:19:47.046395 decode.go:49: PreambleSymbols: 21
15:19:47.047490 decode.go:50: PreambleLength: 3024
15:19:47.048779 decode.go:51: PacketSymbols: 96
15:19:47.049751 decode.go:52: PacketLength: 13824
15:19:47.053034 decode.go:59: Protocols: scm
15:19:47.053892 decode.go:60: Preambles: 111110010101001100000
15:19:47.054497 main.go:111: GainCount: 5

Does the above look correct to you? I cannot find my meter id in the output above.

Based on your output, I don’t see you are receiving anything… This just shows setup of the SDR. This might be the case because of your particular meter, so you probably have to look at and try to play with different options in order to start getting readings. Once you do start getting readings, use -filterid=xxxxxxxxx option when you run rtlamr

I had a look on the github page what options are you talking about ?

I have a Landis + Gyr power meter with Zigbee and it is not compatible with the RTLAMR library. The problem is that a lot of smart power meters are mesh networked and have FSK encryption.

There is a .csv file Here that indicates tested models. Make sure to check the FCC ID number along with the model number

Edit: forgot to mention, some utility companies have hardware that they allow to pair with the power meter for remote readings. My service provider (EPCOR) allows a device by Rainforest Automation to pair with the meter to allow readings.

1 Like

Thanks for this. So i am getting data from my neptune r900 water meter and had a question on the consumption value. Is that a cumulative value or current flow rate? watching over time the value seems to be the same 2 as below.

sample data:
{Time:2018-11-21T23:47:35.678 R900:{ID:1481890102 Unkn1:0xA1 NoUse: 0 BackFlow:0 Consumption: 278600 Unkn3:0x00 Leak:15 LeakNow:3}}
{Time:2018-11-21T23:47:35.702 R900:{ID:1481890102 Unkn1:0xA1 NoUse: 0 BackFlow:0 Consumption: 2590208 Unkn3:0x00 Leak:15 LeakNow:3}}