Using Just the Software

The pair of TFT displays or OLEDs are great for life-size props or costumes. If you’re looking for something larger than life, you can use the Raspberry Pi’s video output to feed an HDMI monitor, video projector…or we’ve been having fun with the Gakken WorldEye, a 10 inch hemispherical display from Japan…

Using HDMI video out doesn’t require the Bonnet board, unless you want analog inputs for a joystick control or a light sensor.

Follow the steps on the “Software Installation” page — start with Raspbian Lite, do some first-time configuration and get the system on your network.

Download and run the pi-eyes.sh installer script as explained there.

  • When prompted for a screen type, select HDMI.
  • Install GPIO-halt if you want a single-button shutdown option. This requires wiring up a button between one of the GPIO header pins and ground.
  • Install ADC support only if you have the Snake Eyes Bonnet and want analog inputs for a joystick or light sensor.
  • Install USB Ethernet gadget support only if using a Raspberry Pi Zero (or Zero W) and want a direct USB connection from your main computer. It’s explained a bit in this guide.

After rebooting (about 30 seconds to one minute), you’ll be greeted with a single large eye centered on the screen.

Use an HDMI splitter to feed the same image to multiple screens…

In order to work with the WorldEye display (or other HDMI devices), the code and graphics for this version are slightly different. The TFT/OLED code (eyes.py), designed for two separate physically-wired screens, provides a distinct shape for the left and right eyes to approximate the caruncle (the inner corner of the eyes). The HDMI code (cyclops.py) generates a single symmetrical eye (no carnucle), so it can be fed to an HDMI splitter and not look lopsided on two screens.

If using something other than a WorldEye display, and if the eye image looks oddly stretched and not round, this probably has to do with the screen aspect ratio. We can adjust the Pi’s video output resolution to match your display’s native HDMI resolution:

sudo nano /boot/config.txt

(Or substitute your editor of choice for “nano”)

Look for this line near the end of the file:

hdmi_cvt=640 480 60 1 0 0 0

Change the first two numbers — 640 and 480 — to the desired resolution. Save the changes and then reboot.

This guide was first published on Jan 11, 2017. It was last updated on Oct 19, 2018. This page (Using Just the Software) was last updated on Mar 02, 2018.