Make an E-Ink screen show daily info
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Macoy Madson d70ba28ca8 Layout tweaks, fix font rendering 10 months ago
dropbox-sdk-python@08cf819f36 Added Dropbox, settings loading 3 years ago
e-Paper@fb7f6c324b Updated e-Paper to recent version 2 years ago
ubuntu-font-family-0.83 Update fonts, delete Dropbox, check in font 10 months ago
.gitignore Update fonts, delete Dropbox, check in font 10 months ago
.gitmodules Added Dropbox, settings loading 3 years ago
EInk.jpg Added EInk in world picture 3 years ago
HomeLifeDisplay.py Layout tweaks, fix font rendering 10 months ago
LICENSE Initial commit 3 years ago
ReadMe.org Remove ubuntu step 10 months ago
__init__.py Update fonts, delete Dropbox, check in font 10 months ago
epd7in5bc.py.patch Updated e-Paper to recent version 2 years ago
settings.json Merge branch 'master' of github.com:makuto/home-life-display 10 months ago

ReadMe.org

Home Life Display

/code/macoy/home-life-display/src/branch/master/EInk.jpg

Make a Raspberry Pi E-paper display show info in the morning/evening which I care about:

  • Org agenda

  • Weather conditions for biking to work on the current day

  • Kanji study schedule

The E-paper panel is a Waveshare E-Ink three-color 7.5 inch panel with HAT.

Setup

More for my own reference than anyone else, which is why there are some obvious general setup steps specific to Pi, not this project.

Operating System

This section documents a general, minimal, and useful Pi setup.

  • Install Raspbian Lite via NOOBs onto Raspberry Pi 3 B+.

  • Run passwd to change default password

  • sudo apt update && sudo apt upgrade

Raspi-config

sudo raspi-config

  • Enable SSH in Interfacing Options

  • Set localisation options (for me, it means checking en-US and setting timezone to Los Angeles)

  • Set Wifi hostname and password, if necessary

Clone Repository

sudo apt install git
git clone --recurse-submodules https://github.com/makuto/home-life-display

If run with --recurse-submodules as shown, it will automatically get the Waveshare e-Paper code repository.

If you forgot:

cd home-life-display
git submodule init
git submodule update

Third Party Setup

Org Parsing

I use Org-mode for my Agenda:

sudo pip3 install orgparse
Fonts

For Japanese:

sudo apt-get install fonts-takao

E-paper Setup

Python dependencies
sudo apt install python3-pip libjpeg-dev
sudo pip3 install spidev RPi.GPIO pillow
Install Python API

There was no setup.py nor init.py for the e-Paper API, so just symlink them to the same directory instead:

cd home-life-display
ln -s e-Paper/RaspberryPi_JetsonNano/python/lib/waveshare_epd/epd7in5bc.py epd7in5.py
ln -s e-Paper/RaspberryPi_JetsonNano/python/lib/waveshare_epd/epdconfig.py epdconfig.py

If you get failure to import, open the epd7in5.py and fix it like so:

import epdconfig
Enable SPI interface
nano /boot/config.txt

Uncomment the line with dtparam=spi=on.

Third Party Documentation

Waveshare Example Code

Left here for reference.

Download E-paper Demo code (direct link) (Github).

For decompressing the Waveshare example code:

sudo apt install p7zip
Install Fonts

For the unmodified demo code, you need to install the Chinese + English font they chose:

sudo apt install ttf-wqy-microhei