This project showcases the code for my personalized home dashboard, which runs on the LilyGo T5 V213 device with an e-ink display.
The Home Dashboard project was initially created to serve my specific use-case, and as a result, there are a few hardcoded constants in certain sections of the code. However, these constants are straightforward to replace, and you can easily add new data sources by following the examples provided for the existing ones. Feel free to copy and modify it to your liking.
- Current date display (includes the month in Finnish to facilitate language practice)
- Bus arrival times for two directions in Helsinki using the DigitTransit Routing API
- HSL bike availability information at a specific station. Station IDs can be found at: https://www.hsl.fi/en/citybikes/helsinki by clicking on the "Closest bike stations" button and taking the ID from the URL.
- Outdoor temperature using: Pirate Weather
- Get PlatformIO for VSCode: https://platformio.org
PlatformIO automatically fetches the dependencies of the project, and manages the building and installation of the software.
- Create a header file in the
/include
directory called assecrets.h
with the following content:
#define WIFI_SSID "..."
#define WIFI_PASSWORD "..."
#define HSL_API_KEY "..."
#define STATION_A_ID ...
#define STATION_B_ID ...
#define STATION_A_DIRECTION "..."
#define STATION_B_DIRECTION "..."
#define BIKE_STATION_ID ...
#define WEATHER_API_KEY "..."
#define WEATHER_COORDS ""
You can request a key for the HSL journey planning API on the website of digitransit.fi
.
More information at: https://digitransit.fi/en/developers/api-registration/
For the weather API key and coordinates, see: https://docs.pirateweather.net/en/latest/API/
- Plug in the board, build and upload with PlatformIO.
And that's it! Hope you find it useful as a reference for similar dashboard implementations.
If you liked this project, check out my other software at: https://headprocess.com