Customized version of Squix78 ESP8266 OLED Weather Station with BMP280
Switch branches/tags
Nothing to show
Clone or download
Pull request Compare This branch is 2 commits ahead of neptune2:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
resources add TM1637Display for clock Mar 13, 2018
DSEG7Classic-BoldFont.h Initial commit Nov 5, 2016 Update May 3, 2017
WeatherStationFonts.h Initial commit Nov 5, 2016
WeatherStationImages.h Initial commit Nov 5, 2016
esp8266-weather-station-bmp280.ino add TM1637Display for clock Mar 13, 2018


Daylight Saving Time and other customizations of Squix78 ESP8266 OLED Weather Station. Uses SSD1306 128x64 OLED display with with either SPI or I2C interface

New Splash Screen DHT22 Update
cover DHT22 Update
Zurich Standard Time Boston Daylight Saving Time Conditions Screen
Zurich CET Boston EDT Conditions
DHT Sensor Thingspeak Sensor 1 to 3 Day Forecast 4 to 6 Day Forecast
DHT Sensor ThingSpeak Sensor DHT Sensor ThingSpeak Sensor

Specific customizations include:

  • Added Wifi Splash screen and credit to Squix78
  • Modified progress bar to a thicker and symmetrical shape
  • Replaced TimeClient with built-in lwip sntp client (no need for external ntp client library)
  • Added Daylight Saving Time Auto adjuster with DST rules using simpleDSTadjust library
  • Added Locale Setting examples for Boston, Zurich and Sydney
  • Selectable NTP servers for each locale
  • DST rules and timezone settings customizable for each locale
  • See for DST rules
  • Added AM/PM or 24-hour option for each locale
  • Changed Clock screen to 7-segment font from
  • Added Forecast screen for days 4-6
  • >>> Need to change WundergroundClient.h in ESP8266_Weather_Station library
  • #define MAX_FORECAST_PERIODS 12 // Was 7
  • Added support for DHT22 Indoor Temperature and Humidity
  • Fixed bug preventing display.flipScreenVertically() from working
  • Slight adjustment to overlay

Bug Fixes include:

  • Fixed ticker overwrite bug: Split DHT and Wunderground timed updates out to 2 tickers. Thanks @charonofssi

Hardware Requirements

This code is made for an 128x64 SSD1603 OLED display with code running on an ESP8266. Either the SPI or I2C version can be used. You can buy the original Squix78 Weather Station Kit here: Squix Shop or here: US Amazon store

Software Requirements/ Libraries

Additional required library for automatic Daylight Saving Time adjust

You also need to get an API key for the Wunderground data:

Wemos D1R2 Wiring

Wemos D1R2 and DHT22 sensor

See code for pin configurations

SSD1306 SPI Wemos D1R2
D1 D7
D0 D5
DHT22 Wemos D1R2