https://github.com/luonghuuphuc/weather-station
Using esp8266 to display weather and climate on ssd1306 OLED
https://github.com/luonghuuphuc/weather-station
Last synced: 2 months ago
JSON representation
Using esp8266 to display weather and climate on ssd1306 OLED
- Host: GitHub
- URL: https://github.com/luonghuuphuc/weather-station
- Owner: LuongHuuPhuc
- License: mit
- Created: 2024-03-13T10:27:38.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-12T18:59:45.000Z (3 months ago)
- Last Synced: 2025-02-12T19:44:22.254Z (3 months ago)
- Language: C++
- Size: 322 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: License
Awesome Lists containing this project
README
This code works best with the NodeMCU V2 ESP8266 module and an 0.96" OLED display
## Install and configure Arduino IDEMake sure you use a version of the Arduino IDE which is supported by the ESP8266 platform. Follow the [tutorial on our documentation platform](https://docs.thingpulse.com/how-tos/Arduino-IDE-for-ESP8266/).
## Install libraries in Arduino IDE
Install the following libraries with your Arduino Library Manager in `Sketch` > `Include Library` > `Manage Libraries...`
* ESP8266 Weather Station
* JSON Streaming Parser by Daniel Eichhorn
* ESP8266 OLED Driver for SSD1306 display by Daniel Eichhorn. **Use Version 3.0.0 or higher!**## Prepare the software
* [Create an API Key](https://docs.thingpulse.com/how-tos/openweathermap-key/) for OpenWeatherMap
* In the Arduino IDE go to `File` > `Examples` > `ESP8266 Weather Station` > `Weather Station Demo`
* Enter the OpenWeatherMap API Key
* Enter your WiFi credentials
* Adjust the location according to OpenWeatherMap API, e.g. Zurich, CH
* Adjust UTC offset## Setup for PlatformIO
If you are using the PlatformIO environment for building
* choose one of the available IDE integration or the Atom based IDE
* install libraries 561, 562 and 563 with "platformio lib install"
* adapt the [WeatherStationDemo.ino](examples/WeatherStationDemo/WeatherStationDemo.ino) file to your needs (see details above)## Why Weather Station as a library?
Because I realized that more and more the Weather Station was becoming a general framework for displaying data over WiFi to one of these pretty displays. But everyone would have different ways or sources for data and having the important part of the library would rather be the classes which fetch the data then the main class.