OUTDOOR TEMPERATURE and SEASON DISPLAY

I have a Davis Weather Station attached to my garage. The distance from the house to the garage is at the range limit of the wireless connection, so I had to put the control station in the garage. The control is connected to a dedicated PC which relays the information over the web to my PC in the house.

This works OK, but I have to open the browser on the house PC to see the weather data. This is time consuming when all I want is the outside temperature.

Enter the e-paper display. It shows the temperature (in 5 degree intervals) and the season of the year.

The temperature and current day arrive in an API request from the Davis control station and the relative data is "parsed" from the request.

Here is how it is done:

The driver is a Waveshare Universal e-Paper Raw Panel Driver Board, ESP8266 WiFi Wireless # 14138

The display is a Waveshare 400x300, 4.2inch E-Ink raw display, three-color # 13379

The ESP8266 is using the Arduino IDE with the GxEPD library.

The display comes from a combination of black and red bitmaps. There are 4 black (one for each season) and 24 red (outside temperatures from -10 degrees f to 120degrees f in 5 degree intervals). The data received from the API request determines which bitmaps to display. The display updates every 15 minutes which is also the update frequency of the weather instrument.

THE REST OF THE STORY -

I decided to take this project one step further. I obtained another display, this one 7.5" with a resolution of 800 x 480 pixels. This display is only two color, black and white. Just like the Thermometer, the data comes from my Davis weather instrument via an API request in which the JSON string is parsed to obtain the relevant weather information.

The driver board is the same as used for the Thermometer, Waveshare # 14138, and the display is a Waveshare #13187.

 

The source code files are posted below.