Whether you are a weather junky, hobbyist, or just an interested soul, building your own personal weather station can be an exciting project. It can also be quite challenging, depending on how much information you want your weather station to gather.
Here I will cover the steps I took in building my own weather station, and also describe the parts I ended up using. As a learning curve I will also cover other parts that I thought I would need but in the end did not use.
In short, I wanted a weather station that gathers wind speed, wind direction, temperature, rain amounts, and humidity. I then want the weather station to transmit this data to my computer so I can see it real-time, with updates every couple seconds. I live in Europe, so I want metric values. Finally, I want to harness the power of the sun to power my weather station. Oh… and I don’t want to use cables.
I will probably break this down in to a couple parts so the reading isn’t as dreadful. So, what did I use and what might you need? Mostly everything I used was purchased from Sparkfun and its distributors.
- USB Weather Board V3: SEN-10586
- Weather Meters: SEN-08942
- 2 x Xbee Modules: Xbee Buying Guide
- Mini USB Cable
- RP-SMA 2.4GHz Duck Antenna: WRL-00145
- RP-SMA to U.FL Interface Cable: WRL-00662
- Xbee USB Explorer: WRL-11812
- Sparkfun Sunny Buddy: PRT-12885
- Voltaic Solar Panel 3.5W: PRT-13782
- LiPo Battery, 3.7V, 1000mAh: PRT-13813
- 2 x RJ11 6-pin Connectors: PRT-00132
- Weatherproof Outdoor Case: Type 1000
- 10-pin Female Headers: PRT-11896
- BlueSMiRF Bluetooth Modem (optional): WRL-12582
I purchased the SEN-10586 USB Weatherboard V3. Unfortunately, you will find that this board has been discontinued and replaced by the DEV-12081 Weather Shield. The board I am using senses barometric pressure, humidity, temperature, and light levels. There are also two areas on the board for sensing wind and rain values through the use of weather meters.
The weatherboard is already programmed to gather weather information so there is no need to program anything unless you wish to modify it. If so, then you will need the Virtual COM Port driver, located here. You will also need to download the latest Arduino IDE version.
After you download and install the driver and IDE, plug the weatherboard in to your computer using a mini USB cable. If the board does not locate and install the driver automatically, open up the Device Manager and right-click the device (it should have a yellow yield with exclamation point). Update the driver manually by selecting the location folder of the driver you just downloaded. Once installed, be sure to note which COM port your weatherboard is using. Open up the Arduino IDE and select this port from the Tools menu. With this particular board you will also want to make the following changes also in the Tools Menu:
Board: “Arduino Pro or Pro Mini”
Processor: “ATmega328 (3.3V, 8MHz)”
The latest code (Firmware v1.4) for this board is located here.
You will need to solder on two RJ11 connectors to the bottom of the board like in the picture below if you wish to use the meters. The weather meters can measure wind speeds, wind direction, and the amount of rain fall.
How Do We Communicate?
When I first started this project, I bought the BlueSMiRF Gold, also from Sparkfun. When I read the description about how it was tested successfully with a distance of 106m, all seemed great so I bought it. For Bluetooth to communicate flawlessly, it needs open-air with no obstacles to interfere. I obviously looked over this in the description. My weather station will be on top of the house and won’t have line-of-sight unless I run wires and equipment through windows for line of sight communication to work. I don’t want this to happen so a BlueSMiRF wasn’t going to work for me. Next idea!
Note: If line of sight would work for you (such as working in a building next to your weather station that you can clearly see, without obstacles), then the BlueSMiRF is an excellent choice! If you choose this route than I recommend soldering a 6-pin female header to the weatherboard and male headers to the BlueSMiRF for removal convenience.
The next thing that came to my mind was using Xbee modules. Xbee modules use the IEEE 802.15.4 technical standard which communicates using low-rate wireless personal area networks. I will need two Xbee modules for them to communicate with each other, of course. There are many different types of Xbee modules which can make buying one quite confusing. For a list, be sure to check out the Xbee Buying Guide to help you out.
I need an Xbee module on my weather board (to transmit data), and I need an Xbee module hooked up to my computer (to receive the data). On the weatherboard there is a spot allocated for an Xbee module. All you have to do is solder two 2mm 10-pin Xbee female sockets to the board so you’re able to attach the Xbee module.
Note: Be mindful of correct orientation when connecting the Xbee module! Incorrect orientation can damage the Xbee and possibly your weatherboard! If you look closely you will see a little symbol on the board that shows the correct orientation, in case you forget.
I chose an Xbee module with an U.FL connection so I’m able to attach an external 2.4GHz Duck Antenna. Since everything will be in a weatherproof box, I figured I might have a better signal on the top of the house if I have an external antenna. To make the connection you will also need a RP-SMA to U.FL cable that attaches to the Xbee module on the weatherboard. The duck antenna screws on to the other end.
Now that we have the weatherboard side ready to transmit, we need to switch to the receiving side. This Xbee module will be connecting to a computer, and will receive the information being transmitted from the Xbee on the weatherboard. For this I chose a module with a wire antenna, but if you use one with a trace antenna I hear you have about the same results, although I don’t know first-hand.
To connect the Xbee module to the computer, you will need two things: an Xbee Explorer and a mini USB cable.
Note: When it comes to buying an Xbee explorer, make sure you buy the one with the USB connector attached (link above). By accident I purchased an explorer where I needed to solder on the USB connector. No thanks! If you wish for this to be more of an unnecessary challenge then by all means, reach for the stars.
In summary, we have soldered two RJ11 connectors to the weatherboard for our weather meters, as well as two headers so we could attach an Xbee module.
We also have our Xbee USB Explorer with mounted Xbee connected to the computer so we can see the weather transmitted from our weatherboard.
So far I have covered only the setup portions of everything you need for the Xbees to communicate. In the next article to come I will cover:
- How to set up the solar power portion
- Receiving weather data as well as modifying
- Final preparations – putting it all together to placement outside
Thanks for following – stay tuned!