Weather Station Node

Finished off adding a Weather Station Node this weekend.

2 Likes

Cool. Do you mind saying what hardware and how the data arrives in emoncms, please? Would you recommend it for others?

Following this as I would love to be able to get my Netatmo weather station to log quicker than the current 5min intervals.

Is that set on the station? How often does it send the data and how do you pick it up

Currently I have an old Maplin Watson/Fineoffset WH1080 station. I used to use PYWWS to get the data off the station, but that failed a while ago. Now I just use RTL_433 to sniff the RFM messages - less detail but still some info.

Data gets to EmonCMS via MQTT.

/usr/local/bin/rtl_433 -vv -M time:unix -M level -R 03 -R 32 -F mqtt://192.168.7.xx 1883 retain 0 events rtl2[/model]

I created a service file for this and then added a drop-in with the config command above.

So long since I did it I had to remind myself how I did it. It has been running for over a year now without failing.

Been looking at newer alternatives and the Ecowitt looks favourite as it seems to have an open API.

3 Likes

Sorry I’ve been slow getting back to you.

It’s a very homemade weather station, nothing really that you buy off the shelf.

I started off with the first version only measuring Temperature, Humidity, and Pressure. The hardware for this node is.

Arduino Pro Mini.
Jeelabs Shop : RFM69CW Radio kit.
BMP085 Pressure Sensor
SHT31 Humidity/Temperature Sensor.
12V to 5V Regulator

The code is based roughly on what’s been written for the EmonTH Version2.
All stuffed into a plastic weatherproof enclosure and supplied with 12V from the Offgrid solar in my workshop.

I then decided to add in wind speed, it’s up and running but may move in the future so I’ve made this a separate node.

Hardware for this is.

JeeLabs Shop : JeeNode V.6
12V to 5V Regulator.
WH-SP-WS01 Anemometer

I used a JeeNode kit this time as is a compact board with the Radio and Arduino all in one.

Once again I’ve used code similar to the EmonTH V2 to send the data, the rest of the code is used to calculate the windspeed in real time, averages, and maximums.

At some point, I’ll decide where the final permanent location is going to be and make it a single node and one program. At the moment the two nodes are fitted to the shed.

Mike

3 Likes

Taking commercially available parts (like the ones your weather station is made of) and
“putting them together” to make a working system is what this website is all about.

I say well done, sir! and two big thumbsup thumbs_up

2 Likes

Most of my career has been as an applications/systems engineer, and I have to say there’s a great deal of satisfaction when a project that’s made up of items from a multitude of sources - some off the shelf, some custom made - comes together and works.

So I echo Bill’s comment :+1:

1 Like

Mine is a bit like @borpin 's.

I use my bog standard WH3080 with the lovely pywws from this container and that creates files. I have the indoor wireless thing in this cupboard next to my desk. It accidentally gives me another room temp sensor.

I have a cronjob running some Python every minute to sweep the latest file contents up to EmonCMS so they can succeed / fail in their own ways.

The most interesting part for me is that I can now get a pretty accurate “effective temperature” and I use that to guide my heat pump which means the weather compensation works really nicely when it’s stormy to warm the radiators a smidge more which seems to make all the difference.

Of course this all works fine until the storm blows the cups off the anemometer :slight_smile:

Yours sounds rather wonderful @Mike_Henderson - maybe instead of consolidating them you can just have more nodes slowly take over the whole shed.

1 Like

I’d agree with that…

I used the MQTT publish mechanism in pywws to pass the data on.

Sadly the USB on my internal unit died so I can no longer use the excellent pywws. I miss the way it generated average temperatures and the simple, store it to file system :cry:

I did suggest a mechanism to pass the data to pywws from a different source, but that was not taken up.

1 Like