MakerBot Print is our newest print-prepration software, which supports native CAD files and STL assemblies,
allows you to interact with all your printers via the Cloud, and many other exciting new features.

Download Now


RaspberryPi0W with eInk display beer tap handle (IoT tap handle)

by de-o Jan 7, 2019
Download All Files

Thing Apps Enabled

Please Login to Comment

Two part question for de-o:

I ordered...https://www.amazon.com/gp/product/B075JLBY57/ref=oh_aui_detailpage_o09_s00?ie=UTF8&psc=1
If you look at that part. On the right hand side near the ribbon...the screen is not square.

The way that this mounts to the pi, puts the ribbon and that non-square edge at the top edge of the tap handle. It is clearly visible through the opening. 90% of the screen looks as the it should and the top 10% you can see the cutout edge. This is not like the expected picture. Any ideas?

Also, can you supply more information on swapping the photo? I am having an issue getting the python scripts to work (SPI errors). I can get the bcm script to work. But that seems to be more of a demo than a tool to change the image.

I would really appreciate your help. If I don't hear anything in a day or so, I'll probably post this on reddit too.


If you're just dry fitting the display in there, then it will be chopped, as you've described. The case was made to have the Pi and display sit on top of a 5/8" bolt head (look at the pic with the translucent case to see the mock up), which will move the whole thing up to fit the epaper into the display area.

Are you using main.py in the ~/epaper/raspberrypi/python directory? Try it with a very basic image first, for example with just a simple "X" that you hand draw. If there's any greyscale, the epaper won't like it because it doesn't know what to do with it. The two images need to be just black and just white.

I think a fix would be to flip which side the pi power port is AND the groove for the pi header to slide into. This would allow me to rotate the pi 180 degrees and I believe the screen would then look appropriate

But the easiest fix would be to shift the screen opening down 8mm. This will hide some of the top part of the screen that is just electronics and it will show the bottom of the actual display that is currently hidden.

Any chance I could get a hand with a remix on this? Looking to give the final product to a friend as a gift, asap.


Any ideas on how you'll remix it @Fermental? Looking to get one of these made for a friend asap

In terms of the pi zero, I wonder if an esp8266 could do the job for even cheaper

This is epic! Thanks! Can't wait to remix.

Do you have any more information on how you set up the Pi? Also, do you just plug in the Pi, set the image then the image stays after you unplug it? I really love this idea, but I have relatively limited RaspberryPi knowledge. Thanks in advance!

Sure! For starters, let me break this up into parts: Hardware, Software, displaying images.

For hardware, I'm using a Raspberry Pi Zero W with 2x20 header pins soldered onto the board. This device is a full fledged linux computer with built in wifi that runs a flavor of the Linux operating system called Raspian. Raspian is based on Debian, but optimized to run on this tiny hardware. For storage, instead of a hard drive, it uses a simple microSD card. They usually cost around $5-$10 USD. When you get one of these, you can either get them with or without the pins soldered on. I recommend getting them pre-soldered because then you can simply press the eInk (aka ePaper) display right on. This ePaper display is a 2.13" (104 pixels X 212 pixels) display made by Waveshare. Its native background color is white, and can change pixels to black or red. It's similar to how an Amazon Kindel displays pages of a book.

For software, simply follow the instructions on RaspberryPi.org for installing Raspian onto a microSD card, insert the card into the RPi Zero W and plug in a microUSB cord to boot it up. This gets the RPi setup as a Raspbian computer. Next, you load the drivers and scripts onto the RPi to use the ePaper display. The instructions for doing that with this particular display can be found here: https://www.waveshare.com/wiki/2.13inch_e-Paper_HAT#Working_with_Raspberry_Pi

For displaying images, first you have to have images to display. You can use anything from Photoshop all the way down to MS Paint to create or edit images to display. The key is to only use black and white images. No grey scale. The image size is 104x212 pixels, so you have to be creative. This display takes two image files in bitmap (.BMP) format and overlays them to make the two color image on the display. You name one file black.bmp and the other red.bmp. Then you run simply run the python script that Waveshare provides in the link above, and the display refreshes. What it will do is first show the black and then show the red. Think of it like in school where your teacher used an overhead projector and wrote on those clear films and layed them on top of each other. Same thing here.

Finally, the way I currently use it, whenever my beer runs out or I change my keg, I'll make my new image files, then I'll plug in a USB cable into the tap handle. After about 2mins, it's booted up. I like to ssh into it and scp my new image files to it from my desktop, and remotely run the image update script to make them show up on the ePaper display. After the display is set, you no longer need power. It stays displayed on the ePaper. I'm going to modify it soon to always pull new images from my desktop automatically whenever it's turned on to save some steps.

I hope this helps. Cheers!