ePaper Dashboard POC
I was a bit bored after work and decided to mess with a ePaper Display I purchased a while back ago to try to create a basic dashboard. This is a complete hack but it shows some of the potential uses of this display. I posted a few photos of my dashboard on Facebook and several people asked for the code and instructions to build their own. This is a quick write up, not a planned article so please dont expect much proof-reading to happen.
Disclaimer: This Page Has Been Archived
Please note that this blog post has been archived and may contain information that is outdated, defunct, or covers topics that are no longer of interest. It is being kept available solely for reference purposes, in case others might find portions of it useful.
For more recent and up-to-date tutorials, I recommend visiting KMyers.me or other websites that specialize in the topic you are interested in. It is always advisable to seek the most current information to ensure accuracy and relevance.
Method : There are ways to draw directly to the display with c or python but I wanted to keep it simple. This method uses bach/imagemagick to draw a BMP file that is then sent over to the ePaper display via a python script. This is not the fastest or best method to accomplish this but there are advantages to this method. Please feel free to fork the code and make it your own.
Materials
You will need the following
- Raspberry Pi 3/4 (Affiliate Link)
- A 16-32 SD Card with Raspbian/Raspberry Pi OS (Affiliate Link)
- WaveShare 7.5 Inch ePaper Display (Affiliate Link)
Initial Setup
- Install Raspbian Headless on your Raspberry Pi
- Run “raspi-config and enable “spi” and reboot
- Install the following packages “sudo apt-get install -y python3-pip git wget curl jq bc python3-pil imagemagick”
- Install the following python packages “pip3 install RPi.GPIO spidev”
-
Install the bcrm2835 drivers
wget http://www.airspayce.com/mikem/bcm2835/bcm2835-1.60.tar.gz tar zxvf bcm2835-1.60.tar.gz cd bcm2835-1.60/ sudo ./configure sudo make sudo make checksudo make install sudo make check sudo make install
-
Install Wiring Pi
wget https://project-downloads.drogon.net/wiringpi-latest.deb sudo dpkg -i wiringpi-latest.deb gpio -v
-
Install Sample Dashboard
git clone https://github.com/KeithIMyers/ePaperPOC cd ePaperPOC/dash
You can now run the POC by running ./update-display
Unraid Users
In order to get disk use from your Unraid Server, you will need to setup SSH key authentication so the Pi can access a shell
ssh-keygen (Accept all defaults, do not use a password) ssh-copy-id root@unraid-IP