Aug 052016
PaPiRus Zero thumbnail

A few weeks ago I did a “mailbag” video/blog and ran a poll on which product(s) you’d like me to review.

There was a clear winner right from day one. Pi-Supply’s Papirus Zero took first place and held it by a comfortable margin for three weeks. So I’m going to have a play with that one first and share my findings with you.

PapiRus Zero

PapiRus Zero

Initial Impressions

Both PaPirus Zero Screens

Both PaPirus Zero Screens

It’s a nice dainty little display. In my review pack there were two displays of different sizes; 1.44 inch and 2.0 inch. It just so happens that the height of these screens is an almost perfect match for the Pi Zero. The wider of the two doesn’t quite fill a pHAT sized board, so they both fit nicely on the PCB.

The 1.44″ is 128 x 96
The 2.00″ is 200 x 96

Both have a pixel density of 111 dpi with square pixels 0.229 x 0.229mm

They are very thin indeed. I got the calipers out and measured 0.95mm thickness of the TFT itself. The PCB and GPIO connector add significant “bulk”, but overall, the size is typical of a pHAT.

It also has a built-in LM75 temperature sensor and 5 buttons connected to GPIO ports.

Data Sheet Info

According to the data sheets they are… “active matrix TFT, Electronic Paper Display (EPD) panel. The panel has such high resolution (111 dpi) that it is able to easily display fine patterns. Due to its bi-stable nature, the EPD panel requires very little power to update and needs no power to maintain an image.”

They also feature…

  • Ultra low power consumption
  • Super Wide Viewing Angle – near 180°
  • Extra thin & light
  • SPI interface

Hardware Setup

Hardware setup is easy. You just connect the screen to the PCB using the ribbon cable and connector, then secure the other end with one of the supplied sticky pads, or using a little bit of tape (as I’ve done to enable swapping over the screens). Connecting the PCB to the Pi requires care to avoid putting pressure on the screen. It would be easy to crack the thin glass.

Software Installation

The first generation PaPirus was widely criticised for being hard to install and use. Is the Papirus Zero any better? I’m delighted to say that it was for me. I just followed the installation instructions on GitHub and was delighted to see that “it just worked”. I’m always a happy bunny when that happens – even though it ought to be ‘normal‘.

Built-in Demos

There are several demo programs in the PaPirus software installation. Each one is run from the command line using sudo xxx-yyy

papirus-clock Is a basic clock demo showing time and date. It updates once every five seconds from the Pi’s system time.

PaPirus Zero clock demo

PaPirus Zero clock demo

papirus-gol runs Conway’s game of life.

PaPirus Zero GoL demo

PaPirus Zero GoL demo

papirus-temp displays the temperature of the LM75 temperature sensor on the PCB.

PaPirus Zero temperature demo

PaPirus Zero temperature demo

papirus-buttons press one of the five onboard buttons and it will show which button you pressed on the screen. (This worked partially for me. Not all of the buttons ‘did something’ and the order was not quite as expected.)

PaPirus Zero buttons demo

PaPirus Zero buttons demo

Unfortunately, these last three examples didn’t work at all for me…

papirus-snakes A snakes game

papirus-system Show system information

papirus-framepush Push framebuffer to screen

What Else Can You Do With It?

There are Python and command line interfaces for controlling the PaPirus Zero screen output. You can display text or images limited only by your imagination and the the shape, size and monochromatic nature of the screen. You must run the scripts as root to be able to control the screen.

To write text to the screen…

from papirus import PapirusText
text = PapirusText()
text.write("PaPirus Zero Review by RasPi.TV")

or from the command line…
sudo papirus-write "PaPirus Zero Review by RasPi.TV"

PaPirus Zero Text demo

PaPirus Zero Text demo

To display an image on the screen…

from papirus import PapirusImage
image = PapirusImage()

or from the command line…
sudo papirus-draw /home/pi/PaPiRus/RasPiO-logo-200.jpg

PaPirus Zero

PaPirus Zero

On the RasPiO image there are a few “stray pixels” that do not appear in the original graphic file, which was resized to fit the screen perfectly.

Strengths And Weaknesses

PaPirus Zero…

  • is awesome for applications requiring infrequent refresh and low power usage
  • has an excellent viewing angle
  • is fine for relatively low res graphics as long as they work in monochrome
  • is not good at applications needing fast screen refresh (by which I mean more often than once every few seconds).
  • could do with some nicer/alternative fonts on the text interface
  • is easier to install and use than previous editions. The software is much better, but some of the examples don’t work (for me).

Where and How Much?

You can get a PaPirus Zero from Pi-Supply priced at…

  • £24 for the smaller screen
  • £26 for the larger screen
  • £40 for both screens


Here’s a little ‘Vine’ showing you some of what it can do…

Edit To Add (8th August 2016)

3 days after I pubished this blog post, I saw some epaper screens being used as price tags in a shop in Lódź, Poland. I thought it was so funny/ironic that I tweeted some photos…

  8 Responses to “Playing With Papirus Zero”

  1. Are the black dots on the top image failed pixels or dust / dirt ? I note they also exist on the connection cable to the right of the display.

  2. The 3 demos (papirus-snakes, papirus-system, papirus-framepush) not working is because they are not implemented (look at the source code).
    The button demo is written for the larger Papirus hat, which only has 4 buttons and connected to the GPIO in a different manner (look at the schematics on the PaPiRus github).
    In general the software on the PaPiRus github could use some TLC.

    • Thanks Ton :) I didn’t delve into the source, merely tried pretty much everything in the GitHub ReadMe.

      I suspect the need for sudo is no longer “real” but only there because of the way the scripts are coded. AFAIK spi and i2c no longer need sudo.

      • Correct. You can delete the checks for sudo in the python code when running under the current Raspbian Jessie.

Leave a Reply