Skip to content

jscrane/WifiWeatherGuy

Repository files navigation

View this project on CADLAB.io.

WiFiWeatherGuy

WeatherGuy for ESP8266.

Schematic

Hardware

  • Wemos D1 Mini
  • ILI9163-based TFT display, see here

Software

Installation

  • Get an API key for your Provider (required for OpenWeatherMap, not for Open Meteo)
  • Edit data/config.json with your preferences
  • Configure your display in TFT_eSPI/User_Setup.h (if using the Arduino IDE), otherwise edit Makefile
  • Configure your timezone in zone.h
  • Upload the filesystem (Tools > ESP8266 Sketch Data Upload)
  • Upload the sketch

Note

The weather icons must be 24-bit bitmaps; convert from GIF as follows:

% convert foo.gif -type truecolor foo.bmp 

The Airycon icons used by the Open Meteo provider were converted using the GIMP, exporting the PNG files as 24-bit BMPs.

Providers

Open Weather Map

A previously supported provider was OpenWeatherMap.

However as-of 2024-11-04 its version 2.5 API is deprecated in favour of version 3.0 which requires registration of a credit card.

Limitations of this API are:

  • astronomy: moon age, phase
  • forecasts: forecasts in the free API are every 3 hours and you get 40 of them, which is too big to parse on an ESP8266
  • the credit-card thing

Its code remains for reference, for now.

Open Meteo

The latest provider is Open-Meteo.

Limitations of this API are:

  • astronomy: moon age, phase
  • no forecast humidity

Meterologisk

If bad things happen to Open Meteo, the next provider is Meterologisk.

Credits

The Finished Article