Skip to content

ubiclub/esp8266-weather-station-oled-bmp280

 
 

Repository files navigation

esp8266-weather-station-OLED-DST

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
  • https://github.com/neptune2/simpleDSTadjust
  • 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 https://www.timeanddate.com/time/change/ for DST rules
  • Added AM/PM or 24-hour option for each locale
  • Changed Clock screen to 7-segment font from http://www.keshikan.net/fonts-e.html
  • 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: https://www.wunderground.com/

Wemos D1R2 Wiring

Wemos D1R2 and DHT22 sensor

See code for pin configurations

SSD1306 SPI Wemos D1R2
CS D8
DC D2
RST D0
D1 D7
D0 D5
GND GND
VCC 3V3
DHT22 Wemos D1R2
DATA D4
GND GND
VCC 3V3

About

Customized version of Squix78 ESP8266 OLED Weather Station with BMP280

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C 92.5%
  • C++ 7.5%