Installing on Linux.

This slideshow requires JavaScript.

OHSummit 2013 Sponsors

Windows users should start here.

Mac users should start here.

Wifit was developed on Ubuntu 12.04 LTS.  Linux users should not have any difficulty installing it.


  1. Python2.7
  2. PIL
  3. Numpy

I’ve written a small script (also included below) to do the legwork for you.  This will work on the Raspberry Pi too, but its pretty slow.


sudo apt-get install python
sudo apt-get install python-imaging
sudo apt-get install python-imaging-tk
sudo apt-get install python-numpy
sudo rm -f $
unzip -o $

Either copy and past the above script into a file or save the script into  Your desktop might be a reasonable place to save it or in a temporary folder.  Change directories to where you saved the script.  And execute it.  You will be prompted for your root password.

Now use it!

Installing on Windows.

Mac users start here. Linux users here.

Here are the minimal requirements run  If you know how to install packages on your platform, you should not have any trouble installing wifit.  These links and photos below are for windows. Wifit has been tested on Ubuntu 12.04, Windows 7, and Windows 8.

  1. python2.7
  2. numpy
  3. PIL
  4. wifit


1. Install python2.7, by running the python installer.  Use default settings.

python-install-012. Install numpy by running the installer accepting defaults.


3. Install PIL by running the installer and accepting the defaults.

image (1)

4. Unzip wifit to your desktop (or favorite location).  Open the wifit folder and double click

image (2)

5. Make some wifs!  Save as .WIF or .png.  Post your results!

When an image comes along, you must wifit…

Screenshot from 2013-08-08 07:44:17

Wifit is a program to create images for E-Paper Displays (available at Adafruit).  It is written in Python using the amazing Python Image Library.


Download: Right now is only available as a source zip file (or Fork me on GitHub!)  The py2exe build has one quirk right now that prevents you from writing text.  Hopefully we will get that worked out soon. requires python2.7, PIL, and numpy.

CommandsAfter you download the entire directory as a zip file, start EPD/libraries/EReader/examples/Album/ from the command line or by double clicking the file icon from windows explorer.

The default image will be displayed.  Familiarize yourself with the controls:

  • left-mouse-click: select image or text
  • left-mouse-drag: translate image or text
  • right-mouse-drag: scale image or text
  • ctrl-c: copy selected image or text
  • ctrl-v: paste selected image centered under mouse, or paste image at web url
  • type “I”: insert BigAscii text box
  • type “i”: insert Unifont text box (normal ascii)
  • <RETURN>: Exit text mode
  • <ESC>: Exit text mode
  • <DELETE>: Delete selected image or text
  • <CTRL>-i: Invert an image (black/white)
  • <CTRL>-c: Copy selected image
  • <CTRL>-v: Paste copied image (or paste image from url)
  • <CTRL>-r: Rotate image 90 degrees counter-clockwise
  • <CTRL>-h: Flip image horizontally
  • <CTRL>-u: Flip image vertically
  • <SHIFT>-<UP>: Nudge image up
  • <SHIFT>-<DOWN>: Nudge image  down
  • <SHIFT>-<LEFT>: Nudge image left
  • <SHIFT>-<RIGHT>: Nudge image right


  • File–>Open: Open a new image file (close current image)
  • File–>Save: Save current view port image in WIF or png
  • File–>Exit: Quit the program
  • Size–>EPD_LARGE, _MED, _SMALL: Set view port size to EPD standard sizes.
  • Size–>Headshot: Set view port to standard headshot size for badges.
  • Insert–>Image: Open new image on top of old image.  Images can be edited independently.
  • Insert–>Big ASCII Text: Start typing in 16×16 pixel font
  • Insert–>Unifont Text: Start typing in (mostly) 16×8 pixel font
  • Insert–>5×7 Text: Start typing in 5×7 pixel font
  • Insert–>4×4 Text: Not implemented

Use it! 
This example will work with any Arduino compatible with an SD card (like AlaMode).

Now lets use to make our badge for the Open Hardware Summit.  The badges will come pre-loaded with the information you provided at registration.  But you will want to customize it.

1. Start and delete the default image after you have played around with it.

2. Select a photo from the web by right clicking in your browser and selecting “copy image url” and pressing ctrl-v to paste in wifit.  A Google image seach of “wyolum” produces a lot of cool pix.Screenshot from 2013-08-09 22:33:13

Screenshot from 2013-08-09 22:33:55

3. Adjust the image: move the image to the desired location (right-drag) and scale it (left-drag).  Use the sliders on the bottom to control contrast and brightness.

4. Add text: Insert–>Big ASCII Text. Type text and left-drag into position.  You can also rescale text with right-drag.

Screenshot from 2013-08-09 22:48:56

5. If your computer has an SD slot, you can save it directly to the SD card in the primary image location: “/ALBUM/A/A.WIF”.  Now insert the SD card back into BADGEr and hit reset (far right button).  Walla!

Have fun!

P.S.  You can thank my office mate for getting DEVO stuck in your head.


I’ve added some more features: invert, rotate, flip, and nudge your images.  Tkinter allows you to detach menus from the menu bar.  This is handy if you don’t like keyboard shortcuts.


A Little (Time)Piece of History…

This is where it all began for me, the discovery of the unique ClockTHREE on Kickstarter. As an avid fan of putting electronic kits together, especially those of the time-telling variety, I couldn’t resist the opportunity to own a ClockTHREE and decided to put one together. This also served as my introduction to Justin and the ingenious team at WyoLum and after several years of building ClockTHREE Jr’s for friends and colleagues I was flattered to join the team and try and contribute new ideas! I recently spruced my ClockTHREE up and positioned it ‘pride of place’ in my new living room along with another cherished time-piece (see photos). Interested in owning a unique timepiece? Check out the ClockTHREE Jr here at and build one of your own. [available here]