Big Weather Bug

Simple, Pygame-driven and easy to duplicate weather display

Similar projects worth following
This little display for a Raspberry PI makes a great wall-mounted display.

Years ago, I created a "LittleWeatherBug" display.  It sat in our master bath and gave us time and weather information using a 16 character by two-line LCD display.  It worked nicely, but after several years, the backlight in the display burned out.  I was tired of it, anyway, and so decided to make something better.

Some technical details about the hardware:  The current effort uses a Raspberry PI, a 3.5 inch display from Adafruit, and a nice case, also from Adafruit.  It called the OpenWeather website to get the current conditions and forecast and displays it on the 480x320 color display.  The LCD is a TFT display and, as such, has some limited viewing angles.  It's a lovely display to look at from several angles (including heat-on, the most important), but the particular angle I wanted to look at it from in this particular application just happened to be a lousy angle.  To fix this, I flipped the video in software (the Adafruit website was helpful for this) and it worked great.  I also found that the display was just too damned bright at night, so doubled up the colors in the UI with bright ones for  daytime and alternate dim ones for nighttime.  It would have been more proper to dim the backlight, but I didn't want to complicate things by having to drive I/O pins in Python.

Some technical details about the software:  The whole thing is written in (beginner) Python and hosted at GitHub.  Although I'm a complete tyro at Python, I found it quite easy to write.  For small projects like this, Python works like a dream.  The OpenWeather project provides quite decent weather information.  The conditions I display on the Big Weather Bug are always nearly identical to the same conditions from or the local news.  I treated the whole thing as a game and used the pygame library to create the display.  I opened one window that is the size of the display and it just worked fine.  Pygame has all the stuff you need for displays like this.

Next, I'm going try putting some microcontroller-based sensors in the house and displaying in-house conditions along with the external conditions.  I'm also planning to add Air Quality and UV index to the current conditions.

This simple platform has a lot of potential.

  • 1
    How to build it

    Get a Raspberry PI.  I used a model 3B, but others should work.

  • 2
    Build the computer

    Get the case from Adafruit and build the Pi into the case (this can be tricky, follow the instructions and comments at Adafruit).  The fit is very tight.  Don't forget to remove the paper backing!

  • 3
    Get Pi onto home network.

    Put the Pi on your home network.  There should be lots of instructions around about how to do this. 

View all 5 instructions

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates