Weather Clock

I have built a weather clock using a Raspberry PI, a USB to Serial adapter and a second hand Point of Sale display.

History

When I started this project in 2014, I had just started working from home and I wanted an outdoor thermometer. Around this time, while shopping at a used book store, I noticed that they were selling their old Point of Sale equipment, having recently upgraded. So for $25, I bought one of the old POS displays to see what I could do with it. Also, I had been looking at the Raspberry Pi's and even though I was thinking "How cool!", I still couldn't figure out what to do with one. Having built the Current Weather PARFAIT API just a few years before, I realized that perhaps I could bring all of these things together into the Weather Clock. Since then, I have moved most of the logic to what is now the Weather API, vastly simplifying the code required in the clock itself. So much so, using a Raspberry Pi is definitely overkill.

Hardware

  • Raspberry Pi Model B+ V1.2
  • Partner Tech CD7220 Vacuum Fluorescent Display
  • TRENDnet TU-S9 USB to Serial Cable

Python3 Modules

Using Python3, I wrote 3 modules.

  • POS.py
    • This is used to house the connection and control commands for the POS Display.
  • POSClock.py
    • This is the main program.
  • POSClockGears.py
    • This is used to house the functions for getting the current time from the OS and the current weather observations from the Weather API.
  • All 3 can be downloaded here. (MD5 check sum: 1f963aa23ad6cd58629cce8f8c432380)

Running the Clock

To have the clock run when the Raspberry Pi starts, I setup a systemd service pointing to POSClock.py. Instructions on how to do that can be found here.

Weather Clock Image