SparkFun will be closed Friday 7/3/2020 for the 4th of July holiday. All orders placed after 2 pm MT on Thursday 7/2/2020 will be shipped out on Monday 7/6/2020. SparkFun Support will also resume on Monday 7/6/2020. Have a safe holiday!

Weather Meter Kit

Whether you're an agriculturalist, a professional meteorologist or a weather hobbyist, building your own weather station can be a really rewarding project. When you're measuring weather, however, you need some pretty specialized sensors. This kit represents the three core components of weather measurement: wind speed, wind direction and rainfall.

None of the sensors in this kit contain active electronics, instead they use sealed magnetic reed switches and magnets so you'll need to source a voltage to take any measurements. The positive side of this is that the sensors are easy to interpret:

The rain gauge is a self-emptying bucket-type rain gauge which activates a momentary button closure for each 0.011" of rain that are collected. The anemometer (wind speed meter) encodes the wind speed by simply closing a switch which each rotation. A wind speed of 1.492 MPH produces a switch closure once per second. Finally, the wind vane reports wind direction as a voltage which is produced by the combination of resistors inside the sensor. The vane’s magnet may close two switches at once, allowing up to 16 different positions to be indicated.

All of the included sensors are supplied with RJ11 terminated cables, for information on the pin-out of the cable, check out the datasheet.

Note: Some basic assembly is required.

  • Wind Vane
  • Cup Anemometer
  • Tipping Bucket Rain Gauge
  • Two-Part Mounting Mast
  • Rain Gauge Mounting Arm
  • Wind Meter Mounting Bar
  • 2 x Mounting Clamps
  • 4 x Zip Ties

Weather Meter Kit Product Help and Resources

Wireless Remote Weather Station with micro:bit

May 11, 2020

Monitor the weather without being exposed to it through wireless communication between two micro:bits using the radio blocks! This is useful if your weather station is installed in a location that is difficult to retrieve data from the OpenLog. We will also explore a few different ways to send and receive data.

Weather Meter Hookup Guide

July 20, 2017

How to assemble your very own weather meter!

Core Skill: DIY

Whether it's for assembling a kit, hacking an enclosure, or creating your own parts; the DIY skill is all about knowing how to use tools and the techniques associated with them.


Skill Level: Noob - Basic assembly is required. You may need to provide your own basic tools like a screwdriver, hammer or scissors. Power tools or custom parts are not required. Instructions will be included and easy to follow. Sewing may be required, but only with included patterns.
See all skill levels

Core Skill: Electrical Prototyping

If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.

1 Electrical Prototyping

Skill Level: Noob - You don't need to reference a datasheet, but you will need to know basic power requirements.
See all skill levels


Looking for answers to technical questions?

We welcome your comments and suggestions below. However, if you are looking for solutions to technical questions please see our Technical Assistance page.

  • Guys, what about to make a HAT for Raspberry Pi? Arduino Uno not anymore interesting, MicroBit does not fit for bigger projects.. You have a lot of great products which could fit to Pi.

Customer Reviews

4 out of 5

Based on 1 ratings:

Currently viewing all customer reviews.

Very good for the price

The instructions provide approximate values for a voltage divider based on a 5V Arduino. These days there are probably more 3.3V devices out there and the values are different. I found it was better to simply work off of the analog values after sampling at every possible direction (N, NNW, NW, WNW, W........). Takes a bit of time, but then a simple table allows a more reliable reading. I've included mine (using a 10k resistor. The value read must be LESS THAN the table value to represent the direction. Hope this is useful to someone. struct wind_Dir_Def { char dir_ASC[4]; uint16_t dir_Val;
uint16_t dir_Cnt;
}; // Uses a 10K resistor for VD wind_Dir_Def windDirTable3V[16] = { {"ESE",84,0}, {"ENE",92,0}, {"E",126,0}, {"SSE",185,0}, {"SE",245,0}, {"SSW",287,0}, {"S",408,0}, {"NNE",463,0}, {"NE",599,0}, {"WSW",629,0}, {"SW",702,0}, {"NNW",784,0}, {"N",824,0}, {"WNW",883,0}, {"NW",939,0}, {"W",1024,0}}; // Check all the possible values to determine the closest to what we have for(int ix = 0; ix < numDirs; ix++) { if(rawWindDir < windDirTable3V[ix].dir_Val) { // We tally up the number of hits for a particular direction and then use the one with the most for reporting windDirTable3V[ix].dir_Cnt++; prevWindIdx = ix; break; } }