How to build a weather station using Raspberry Pi and Arduino


Final version of ‘analog’ weather station:

Weather station final version

Weather station final version

Weather station. Transparent version.

Weather station. Transparent version.


Build an analog weather station with temperature, humidity and light sensors, also capable of sending weather data online.

This slideshow requires JavaScript.



  1. A cartonboard of small-medium size
  2. Raspberry Pi model B or B+
  3. Arduino Micro
  4. 1 Protoboard
  5. 3 180º Servos
  6. 1 Photoresistor
  7. 1 10k resistor
  8. 1 0.1-10uF capacitor
  9. 1 DHT22 sensor
  10. 1 USB – micro USB cable
  11. 1 micro USB connector
  12. 1 Wifi Dongle (if you want to send the data online)
  13. 1 Power Supply
  14. A lot of wires and jumpers


Raspberry Pi Temperature and humidity sensor:

I used a DHT22 temperature and humidity sensor connected to the Rasberry Pi.



You can get all the detailed steps from Adafruit website

When you have setup all the hardware, you must get into software stuff, to do that you must download the Adafruit DHT Python library (instructions here)


Raspberry Pi Light sensor:

Add a light sensor using a photoresistor based on this Adafruit tutorial (code included).





 Install and test firmata between Raspberry Pi and Arduino:

The best option to control 3 Servos and avoid flickering is attach them to Arduino and use firmata to control them.

Follow this post to see how to do it

Raspberry Pi and Arduino connected by firmata



With all this stuff, we can start to build and wire the cartonboard weather station, we also use a WIFI dongle to get internet connection.



Code of the analog weather station:

If you want to send the weather data online, take a look at this post or use the new weather station driver

Online weather station graph

Posted in Arduino, DIY, Electronics, Programming, Python, Raspberry Pi Tagged with: , ,
0 comments on “How to build a weather station using Raspberry Pi and Arduino
1 Pings/Trackbacks for "How to build a weather station using Raspberry Pi and Arduino"
  1. […] update the weather station driver to allow not only analog server data output, but also sending data online (integration of […]

Leave a Reply

Your email address will not be published. Required fields are marked *