toothless
Active Member
So my nasa clipper mast top wind instrument is playing up, with it always showing the wind as off my port quarter even when beating to windward. The speed is also intermittent and fibs a lot. Fiddled with cables, but no joy so I am sure the issue is at the masthead. I was looking to replace it when I realised I had something that might do the job.
I had been given a weatherstation - a vevor 7 in 1 unit. It is solar powered and sends data wirelessly to the base station including temp, humidity, wind direction, wind speed, solar intensity and a few other bits and bobs. Given it was wireless, I assumed I could probably do something clever with a raspberry pi. I already run openplotter and have messed around with signalk a lot, so felt confident I could get something out of it.
I had a left over USB TV tuner from previous experiments with AIS before buying a proper unit. I hooked this up to the raspberry pi and installed node-red via the signal k plugin store. I also installed rtl_433 using the terminal. After a quick reboot, I was able to access node-red via the signalk webapps tab. It looks a bit scary to be honest, but it really isn't too bad and there are lots of examples online of how to do things in it. Under pallet options I installed the rtl_433 node.
I created this little flow.
Moving from left to right, the rtl_433 node is listening to the frequency 868M, and protocol is 263. If i didnt add a protocol this still worked, but I was picking up other things from the surrounding area so thought it might get confusing. The output of the rtl_433 node is then piped into a change node that changes the temperature to kelvin instead of centigrade (signalK prefers that) and wind from km/h to knots. The result is then filtered into a couple of streams, with each being sent to signalK using the send delta nodes. I was able to separate out the gusts and average windspeed reporting, which the unit sends every 5 seconds or so.
I was then able to send the data from signalK to my nmea 2k network. It works! I have mounted the weather station on my stern arch for the time being, which no doubt will mean it is less accurate - but I don't know how long it'll last so I didn't want to stick it too far up the mast.
Pros:
I did this using only stuff I had laying around.
I enjoyed myself doing it.
I have lots of extra weather data on my NMEA network.
Less work and cheaper even if I had to buy all the bits than climbing the mast to replace the nasa system, which didn't output NMEA anyway.
I learned how to use node-red.
Cons:
I don't know how long it will survive. I suspect it will be ok, it is designed to go on a pole and sit outside in all weathers after all. Time will tell.
It only sends data every 5 seconds. Fine if you are cruising and using this for interest more than anything, not so good if you are trying to use it to operate an autopilot.
Sometimes you can miss one or more updates and so only get info after 10 seconds or so - this is probably because I am using the crappy antenna that came with the USB stick and it is in a locker. An easy enough fix.
I had to learn how to use node-red.
I had been given a weatherstation - a vevor 7 in 1 unit. It is solar powered and sends data wirelessly to the base station including temp, humidity, wind direction, wind speed, solar intensity and a few other bits and bobs. Given it was wireless, I assumed I could probably do something clever with a raspberry pi. I already run openplotter and have messed around with signalk a lot, so felt confident I could get something out of it.
I had a left over USB TV tuner from previous experiments with AIS before buying a proper unit. I hooked this up to the raspberry pi and installed node-red via the signal k plugin store. I also installed rtl_433 using the terminal. After a quick reboot, I was able to access node-red via the signalk webapps tab. It looks a bit scary to be honest, but it really isn't too bad and there are lots of examples online of how to do things in it. Under pallet options I installed the rtl_433 node.
I created this little flow.

Moving from left to right, the rtl_433 node is listening to the frequency 868M, and protocol is 263. If i didnt add a protocol this still worked, but I was picking up other things from the surrounding area so thought it might get confusing. The output of the rtl_433 node is then piped into a change node that changes the temperature to kelvin instead of centigrade (signalK prefers that) and wind from km/h to knots. The result is then filtered into a couple of streams, with each being sent to signalK using the send delta nodes. I was able to separate out the gusts and average windspeed reporting, which the unit sends every 5 seconds or so.
I was then able to send the data from signalK to my nmea 2k network. It works! I have mounted the weather station on my stern arch for the time being, which no doubt will mean it is less accurate - but I don't know how long it'll last so I didn't want to stick it too far up the mast.
Pros:
I did this using only stuff I had laying around.
I enjoyed myself doing it.
I have lots of extra weather data on my NMEA network.
Less work and cheaper even if I had to buy all the bits than climbing the mast to replace the nasa system, which didn't output NMEA anyway.
I learned how to use node-red.
Cons:
I don't know how long it will survive. I suspect it will be ok, it is designed to go on a pole and sit outside in all weathers after all. Time will tell.
It only sends data every 5 seconds. Fine if you are cruising and using this for interest more than anything, not so good if you are trying to use it to operate an autopilot.
Sometimes you can miss one or more updates and so only get info after 10 seconds or so - this is probably because I am using the crappy antenna that came with the USB stick and it is in a locker. An easy enough fix.
I had to learn how to use node-red.