New to Weewx - Weewx fording to another Weewx and Usng multiple SDR's

135 views
Skip to first unread message

Glen Collins

unread,
Jan 13, 2023, 1:14:45 PM1/13/23
to weewx-user
Hello everyone! I'm very new to Weewx and so far love the software. I do have some questions though that I cannot seem to find the answers to or I just don't understand the terminology being used. So here goes....

So I just recently purchased an Acurite Atlas 7 in 1 weather station and I liked the idea of having the console/display having wifi think it would be simple to forward everything to Weewx. Boy was I wrong! I found out quickly how "not open" Acurite is on their products so I started looking how to gather the send the weather data in different ways. The one technology I selected was using an SDR to pick up the data from the station and put it into Weewx via RF. So I put together my Raspberry Pi, installed Weewx and it's working as I expected. But I don't want to use the PI as my Weewx instance as I have a virtual system already running Weewx where I want to put everything and run the reporting because it has the resources to do so.

So my 1st question is:

How do I setup my Raspberry PI to forward it's weather data to the instance I want to run the reports on. All the Raspberry PI will be used for is the SDR RF and forward on. Can this be done with a plugin somehow? I've seen posts about MQTT but I don't know anything about it and I don't know if it's the proper method to get the data into the instance I want the reports to run on. Can someone help answer this question?

Raspberry PI (with Multiple SDR's running Weewx)  --->  Virtual Machine (Running Weewx with reporting) --> Posting to Weather Undergroud (if I want to)

My 2nd question is:

Using my Raspberry PI with SDR's to gather the data from my weather station, I found it does not have a barometer as that's derived on console/display. So I want to gather that data too so I have everything. My question is (and I think I know the answer),  can the SDR plugin scan multiple frequencies? The reason I ask it the weather station transmit on 433Mhz and the barometer transmits on 915Mhz. Can I have the one driver looks at both frequencies at one time? Or must I have multiple SDR's to accomplish this. I'm also looking to include a AQ monitor in the future. Don't know what they transmit on but I'm sure it's one of those.

My 3rd question is:

I have read when you have multiple data sources such as I have, the best way to get the data in is to setup a service in Weewx and have the service called. While I see this in the Wiki I'm unclear how I would apply this to the rtl_* executable to read in the RF from the SDR. Can someone explain or point me into the right direction? Maybe provide an example config?

Thanks so much. Looking forward to getting into the fun.

Thanks

Glen



vince

unread,
Jan 13, 2023, 1:37:10 PM1/13/23
to weewx-user
I guess I have to ask what kind of computer is running your virtual machine, and what virtualization software are you running.  We kinda need to know your whole setup from a hardware perspective.

For (1) FWIW - I use MQTT.  I run a primary Davis VP2 station connected to a pi4.  I run a secondary Ecowitt weewx station in a Docker container on a Ubuntu x86_64 host that publishes its data to MQTT using the MQTT extension.  The Davis weewx subscribes to the MQTT data using the MQTTsubscribe extension. That means running a MQTT broker someplace in the middle of course, but I do that in Docker as well.  It's simpler in practice than it sounds.

For (2) I *think* you need separate instances and radios to listen for each frequency, but I might be mistaken there.   For the AQ stuff, it depends on what you buy.  If you go PurpleAir there's an extension for that.  If you go with a Davis Airlink, you could probably modify the purpleair extension I'd think.  The two are very similar.

For (3) there are too many possibilities to answer there. Personally I really like MQTT as a central collector of stuff from all kinds of sources, and MQTTsubscribe on my primary weewx box to grab the readings I'm looking for, unless there's an explicit extension already that I can use directly (purpleair, for me).

Adding a MQTT broker (use mosquitto) is very easy to do and lightweight.

Glen Collins

unread,
Jan 13, 2023, 9:30:23 PM1/13/23
to weewx-user
Vince,
    Thanks for the reply.

I'm using VmWare as my virtualization engine using intel architecture. The Weewx is running under a virtualized Redhat 8 instance.

1) Thanks! I will look into adding a broker. So if I get this correct the Raspberry PI will send to the broker and the Redhat 8 server running Weewx will pick up the message from the broker?

2) I kind of figured that too. I see no way to switch between two frequencies with just one SDR running. I ordered another SDR so now I'll have two of them running.

3) I was thinking Purpleair too. That would probably be the easiest if it's supported by a plugin.

Thanks a lot. This has helped me understand were I need to go with this.

Regards,

Glen

an oldman

unread,
Jan 14, 2023, 4:08:52 AM1/14/23
to weewx-user
switch between two frequencies witth rtl_433
you can try something like this rtl_433 -f 433920000 -f 315M -H 1
but you will most likely miss some of the signals

Glen Collins

unread,
Jan 14, 2023, 9:06:48 PM1/14/23
to weewx-user
The SDR's are so cheap I decided to buy another one and use two of them. One as a drive and one as a service. That should hopefully work.

But thanks for the suggestion!

Thanks,

Glen Collins

bell...@gmail.com

unread,
Jan 15, 2023, 7:20:14 AM1/15/23
to weewx-user
As far as getting the Acurite and barometer data from the pi to the VM, I’d run two ’rtl_433 services’ on the pi. Note, I have only run a single ‘rtl_433 service’, but I see posts on the web describing methods to accomplish it. Each service would publish directly to MQTT. I do this via this invocation, ‘ExecStart=/usr/local/bin/rtl_433 -M utc -F mqtt://localhost:1883,retain=0,devices=rtl_433[/host]/devices[/type][/model][/subtype][/channel][/id]’. Then on the VM run MQTTSubscribe to get the data. Note, this does have multiple points of failure. If any one of the following, the ‘rtl_433 service’, the MQTT broker, or WeeWX, you will lose data during that time.
rich
Reply all
Reply to author
Forward
0 new messages