/home-life-display

Make a Raspberry Pi E-paper display show org tasks and other stuff I care about

Primary LanguagePythonMIT LicenseMIT

Home Life Display

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