Using rtl_433 to get weather station data

Ah that’s interesting. I have an old USB DVB-T stick lying around that looks like it may be compatible. What hardware do you use? GitHub - merbanan/rtl_433: Program to decode radio transmissions from devices on the ISM bands (and other frequencies)

My base station has gone (slightly) kaput but the data is still coming from the sensors I am sure.

It’s just some cheap generic R820T tuner. Not as good as the V3 mentioned above (I use those for some other applications) but fine for this purpose.

I only bought a sensor set, but it’s WH1080 compatible and runs on 868.350 MHz

such as this
https://www.amazon.co.uk/dp/B013Q94CT6/ref=cm_sw_em_r_mt_dp_U_mQ39Db8HYM754

That’s what I have.

Mine’s an older one, more like this:
https://www.amazon.co.uk/dp/B00BYQMGZG/ref=psdc_1338185031_t2_B013Q94CT6

1 Like

I split the topic as it is way off topic :grinning:

Would you mind sharing the code?

1 Like

Good idea.

It’s a bit of a quick hack, so there’s hard coded configuration embedded throughout, and I’ve modified a bit of that so you don’t try to connect to my emonPi :grin:, but this should be a good starting point.

mqtt_868.py.txt (1.4 KB)

run it using something like:

rtl_433 -f 868350000 -F json -M level 2> /dev/null | ./mqtt_868.py

Excellent. I’ll have a look when the stick arrives and let you know how I get on.

Cheers

That should do the job. For local signals, an el cheapo SDR works fine.

2 posts were split to a new topic: Community.openenergymonitor.org temporarily offline

I am super impressed with this.

Installed rtl_433 from the Raspbian testing repo, plugged in the USB stick and off it goes like magic.

Just used the command (-R 32 for the WH1080)

rtl_433 -R 32

and I get data. beer_cheer highfive

@dbrooke I notice there is now inbuilt MQTT output - no need for your script!

I’m using

 rtl_433 -R 32 -F "mqtt://X.X.X.X:1883,user=posting,pass=postingtomqtt,retain=0,devices=rtl_433_weather"

The only downside is that it sends the data as separate topics. I’ve suggested adding an option to send it as a single JSON payload.

All I need now is a service file to run it by systemd and I’m sorted.

BTW, it is running on my EmonPi.

Prety slick, eh?

The current crop of SDRs are very verstile devices. Did you notice that rtl_433
has direct support for the emonTx? There are well over 100 devices in the list of supported
hardware. emonTx is number 45.
image

Here’s a link to a Python app that’ll take your WH1080 data and draw lots of nice charts and graphs: http://www.weewx.com

Like this one:

1 Like

Ha no I didn’t. What format though :grinning:.

I’ve used pywws for years and I’d like to continue but getting the data into it may be an issue.

How I did it if anyone is interested…
https://tech.borpin.co.uk/2019/12/17/get-data-from-wh1080-maplin-weatherstation-sensors-directly/

1 Like

So there is! It wasn’t in there when I first set this up and I’d not noticed its addition.

1 Like

not sure anyone mentioned but there weewx-sdr driver which is what I use

plus other nice extensions to weewx
weewx-belchertown – Nice webinterface for weewx-
weewx-mqtt– MQTT publishing
weewx-influxdb --which is what I use for long term data storage

2 Likes

Although it doesn’t mention the driver specifically, the chart does make reference to weewx:

1 Like

oh okay was not sure if you were using the builtin drivers connected to via the weather device console by USB or the SDR driver as it was not mentioned…
well maybe in the chart you mention and it was part of that image .but there one image that is broken on my end and I can not see that …

this my current web out put for my station:

also the mqtt format from weewx-mqtt works easily with my esp-TFT-graphing via MQTT just have to change the topic in it slightly ie: for ouside temp it would be weather/outTemp_F.