Skip to content

Python-based operating system for touchscreen e-paper devices.

License

Notifications You must be signed in to change notification settings

Cutwell/e-paper-pyos

Repository files navigation

E-Paper PyOS

Python-based operating system for touchscreen e-paper devices.

License: MIT

Setup

Follow this guide to setup your Raspberry Pi Zero 2W and Waveshare 2.13" Touch E-paper Hat:

  1. Follow this Spotify guide to create an app.
  2. Create .envrc, using .envrc.example.sh as a template, and add your client ID/secret, etc.
  3. Install direnv with make install-direnv.
  4. Access variables in your terminal environment with direnv allow.

❗ Developer note: Try using make ssh as a shortcut to connect to your RPi.

Installation

  1. Setup your RPi using the WaveShare documentation. Follow the guide until Libraries Installation, then follow the steps below:

  2. Install dependencies and libraries..

On a fresh Raspberry Pi:

make install-all

Install dependencies selectively:

Dependency
BCM2835 (RPi Broadcom chip) C library make install-bcm2835
WiringPi C library make install-wiringpi
Rust (to install PyOpenSSL) make install-rust
PyEnv & Python 3.9.18 make install-pyenv
Poetry make install-poetry
Poetry-managed Python dependencies make install-poetry-deps

❗ Note: If you're having issues installing PyEnv, make sure your build environment is set up correctly.

❗ Note: Certain e-paper apps require you to login to services on your phone by scanning QR codes. Login tokens are then shared with the e-paper via callback to the devices .local presence on your local network. If your device defaults to HTTPS, you will need to generate an OpenSSL certificate for app servers, using make generate-ssl-cert.

  1. Test your installation was successful by running:
make test-install

Troubleshooting

The following dependencies might be missing from your system:

sudo apt-get install liblcms1-dev -y

Contributing

For information on how to set up your dev environment and contribute, see here.

License

MIT