The library has a common interface that is compatible with the ImageDraw module of the Python Imaging Library . A two-layer driver model means that any display can be used either with the common library framework, or independently for access to the native hardware interface.

'Portable' means anything that pyparallel or libusb runs on. Pydisplay has been tested on Ubuntu and Windows XP.

pydisplay is a portable graphics library for small monochrome graphic displays. It supports many popular controllers for graphic LCDs, VFDs, OLEDs, and ELs.

What's new

Version 0.2.0 now available for download

It's been a long time since the last release, but pydisplay development is still a going concern. There have been big improvements in the sample scripts. Windows testing is now more routine, although new features will still tend to show up on Linux first. More USB development has been done, including KS0108 support for the latest released firmware for the USB Bit Whacker.

Windows

Pydisplay will now install and run on Windows XP. USB displays do not work on Windows yet, but all parallel port displays should. Note: for some reason pyparallel/giveio run much faster if you reboot after installing them. I have no idea about Vista.

USB

I'm pleased to announce the inclusion of support for USB-connected displays. The USB Bit Whacker is a PIC18F24xx board that you can build yourself or buy here. The first display to get support is the KS0108, but others will be forthcoming.

Another USB option is the FTDI interface, either the FT232R or FT245R. The first displays to get support are the Planar EL320.240 and Noritake GU7000, but others will be forthcoming. You can buy breakout boards for these from DLP Design or Spark Fun.

Sample scripts

Pydisplay is meant to be a graphics library, but there are some fun and possibly useful sample scripts to go along with it. They are meant to be examples, and they may or may not work for you.

linuxstat.py is a script for computer case displays. The display cycles through three screens.

The first has some host info:



...then some CPU info:



...then some storage info:



Of course, you still want to be alerted when interesting events happen, like the mail:



superclock.py is a network-connected clock. It shows current weather conditions. It has an smooth-scrolling RSS ticker for stocks, weather, and news. It shows an alert when new mail arrives in your gmail account, and shows the unread inbox count on the main page. Superclock works with GU300, GU3900, SED133x, and USB/Planar EL320.240 displays.

Superclock with a bluetooth-serial-attached GU3900 is now known to work on Mac OS X. Watch for more Mac support via USB.