Tuesday, 31 May 2016

PaPiRus improvements

Display Refresh Improvements

Gratis changes

Since my last post about the PaPiRus display the developers of the gratis code have fixed the driver code for the display. The old code was preventing partial updates working correctly.

The display is now much improved and motivates me to use this for projects that need active information rather than the assumed static image and text. 

If you want to see this in action then go along to the https://github.com/repaper/gratis web page and look at the posted video. The counter demo now works really well and the old performance issues have been highlighted at the start of the video. 

PaPiRus changes

Code fixes have been made to fix all the issues I listed in my last post. Get the update from https://github.com/PiSupply/PaPiRus

There are some new python scripts to demonstrate access to the 4 buttons and the temperature sensor. 

Demonstration of the refresh rate improvements

I wanted to do something like this from the first time I ran code on the PaPiRus, but the updates were far too slow using the old code. 

This is a demonstration using a 10 frame animation.
I modified the ImageDemo.py in the Gratis code to open PNG files, grey scale the image and apply Floyd Steinberg dither. I removed all the resizing code and changed epd.update() to epd.partial_update() apart from the very first frame which needs an epd.update() to work correctly.
All the time.sleep(3) calls were removed and the frames update as quickly as possible. 

The effect is a stop animation of a crow flying and the trees panning along. The test intended to show a small area of change with the crow just moving and then a larger movement with the trees also moving. 

I think it does a great job with the code improvements. Ghosting and odd artifacts are to be expected as this isn't a high refresh display and graphics are better suited to other display types. 
Typically the display is good with text and static graphics, but now it's much more responsive.