It's a raspberry pi based smart calendar that can tell you the current date, weather, and your events on Google calendar. Updates once per hour. Also supports manual update with a press of button.
- Raspberry pi (2 or 3 or zero) and SD card (with OS installed)
- EInk display: Waveshare 7.5 inch black and white display
- A 7.5 inch photo frame
- A pushbutton
- An LED
- 330 Ohm resistor
- Breadboard
To Enable, pass following command
sudo raspi-config
Select Interfacing Options
Select P4 SPI
Select Yes when asked Would you like the SPI interface to be enabled?
It will prompt The SPI interface is enabled, press ok
Select Finish to exit raspi-config
pip install -r requirements.txt
sudo apt install libopenjp2-7 libtiff5
Also make sure you have at least Python 3.7 installed, which should be the case for the most recent Raspbian releases.
- OWM API key:
- Go to the Weather API page: link
- Subscribe to 5 day / 3 hour forecast
- Google credentials:
- Follow the instructions of this answer on stackoverflow.
- Instead of choosing the drive API, choose Calendar API v3 of scope
https://www.googleapis.com/auth/calendar.readonly
- We will need the client ID, client secrete, refresh token and access token
Or download diagram.fzz. Note that the labeling on the breadboard corresponds to the wires on the hat comes with the screen. The wiring is the same as on page 12 of the official documentation
Once you have got all the credentials and hooked up the wires, you can run
main.py
without any parameter to create the config file:
python3 main.py
and follow the interactive guide to create the config file.
You can specify the config file for later runs as:
python3 main.py -c <config file path>