A weather displaying clock with a waveshare ePaper screen and an espressif microcontroller
Go to file
Paul Warren 1121e5ce93 typo that was bugging me 2022-12-07 23:23:23 +11:00
images typo that was bugging me 2022-12-07 23:23:23 +11:00
.gitignore Initial import after n embarassing credentials incidient :) 2019-11-22 19:34:26 +11:00
LICENSE Initial import after n embarassing credentials incidient :) 2019-11-22 19:34:26 +11:00
README.md Readme updates 2022-01-29 08:14:50 +11:00
bom-rrd-2022-11-30.py HomeAssistant based temperatures and weather 2022-12-06 23:05:03 +11:00
bom_rrd.py Add current internal and external temperatures 2019-12-30 15:54:43 +11:00
bom_rrd2.py OpenWeatherMap API for outside temp 2022-11-22 14:36:48 +11:00
bom_xml.py Adjust weather image placement 2019-12-01 19:18:20 +11:00
build.sh remove guff from build 2022-12-07 22:53:48 +11:00
darksky.py Working 3 day temperature forecast 2019-11-23 20:21:10 +11:00
epd.cpp Initial import after n embarassing credentials incidient :) 2019-11-22 19:34:26 +11:00
epd.h Initial import after n embarassing credentials incidient :) 2019-11-22 19:34:26 +11:00
esp_time-prior-to-2022-11-30.bin Add old binary 2022-12-07 23:12:34 +11:00
esp_time.ino Bunch of updates to make it work again 2022-12-07 23:11:58 +11:00
esp_time.ino.bin Add build artifacts 2022-12-07 23:12:19 +11:00
esp_time.ino.elf Add build artifacts 2022-12-07 23:12:19 +11:00
quick_check.py Quick check of the weather-au forecasts 2022-01-29 08:03:03 +11:00

README.md

EPClock

ESP8226 Arduino based ePaper clock, using NTP and showing the weather.

Using a Waveshare 4.3" UART module and an ESP8226 R1 Mini from Jaycar Australia, which is a D1 R1 in the Arduino program.

The ESP8266 doesn't really have enough RAM to be able to parse the XML available from the Autralian Bureau of Meteorology, so the bom_xml.py script does that and spits out some simplified json I've put that json on my home web server, and set the script to run hourly.

I've also put in bom_rrd2.py which uses the 'weather-au' library from pip and also pulls some current temperatures from some MQTT sensors I have around the house.

Required Arduino Libraries

Timezone: https://github.com/JChristensen/Timezone

NTPClient: https://github.com/arduino-libraries/NTPClient

AltSoftSerial https://github.com/PaulStoffregen/AltSoftSerial

ArduinoJson https://github.com/bblanchon/ArduinoJson.git

Connections

  • WakeUp -> D7
  • Reset - D8
  • DOUT -> D5
  • DIN -> D6

Creating Images for each digit

Use Images/create_images.py edit for font choice! The current images are in FreeMono.

Weather Icons

I have derived some from the Australian Bureau of Meteorology, Feel free to use those, or make some better ones!