Build a Persistence-of-Vision Display

Using LEDs and PIC32

Learn how these two Cornell University students created a persistence-of-vision (POV) display. They found a way to fit an LED strip onto the mechanically rigid base of a box window fan. The POV display creates the illusion of an image and show anything from an analog clock to ASCII text and complex images.

By Han Li and Emily Sun

Visual feedback is a key aspect of human interaction in everyday life. With technology, the beauty of the visual world can be preserved with images and videos. We set out to create a persistence-of-vision (POV) display that is both multifunctional and easy to use, through the use of a large box fan. Box fans are often found by the window on hot summer days, and can be quite unique with the integration of a “cool” POV display. For our project, we found a way to fit a DotStar LED strip onto the mechanically rigid box base of a box fan. As such, the box fan serves as an ideal platform for a POV display, without needing to construct a well-calibrated rotating setup with a DC motor. The box fan also has preset settings for speed which is convenient for testing.

The novelty of this POV display makes it a good conversation starter, and it can be easily assembled and customized. The display creates an illusion of an image and shows anything from an analog clock to ASCII text and complex images.

In designing our POV fan display, the first thing we measured was the fan’s speed of rotation. This was calculated by flashing a blinking strobe light through the fan blades. On the slowest setting, the fan rotates at approximately 7 Hz, which is equivalent to 143 ms per rotation around the circular radius of the spinning fan. The angle resolution of the image generator of the POV display is limited by time constraints, so we defined 100 tick locations around the peripheral of the fan. Since the LEDs are programmed to light up twice per rotation, the images can be rendered twice as fast, thus increasing the refresh rate of the display to around 14 Hz—each pixel is blinking 14 times per second. For the human eye, the POV effect is achieved around 15 Hz, which means we are getting a decent result with our setup.

With an interrupt time of approximately 1 ms, and through the use of the Hall effect sensor that updates the period on each rotation, the positioning of displayed elements on the fan varies to at most 2.5 degrees. During testing, there are no observations of rotational jittering greater than 2.5 degrees with 100 display angles.


The hardware components are a box fan, DotStar LED strip, tri-state buffer, Hall effect sensor, 5 V battery bank, 9 V battery, a piece of 0.635 cm × 2.54 cm × 50 cm plywood and a Microchip Technology PIC32 microcontroller on a custom PCB [1].

Figure 1
Hardware setup with a closeup of Hall effect sensor and magnet placement

The custom PCB with the mounted PIC32 is secured onto the protoboard above a piece of Styrofoam to prevent short-circuiting (Figure 1). The protoboard itself contains the necessary power distribution and level shifting required for the LED strip. The DotStar LED strip must be driven at 5 V and takes about 60 mA per LED at full intensity. Because of the PIC32’s 3.3 V output, an ON Semiconductor 74LS125 tri-state buffer [2] is used as a level shifter. This is done by shorting the gate on the tri-state buffer to ground and powering the buffer with the 5 V rail (Figure 2). The 9 V battery is then connected directly to the custom PCB with the adapter, and the 5 V battery pack is connected to the power rail on the protoboard (Figure 1).

Figure 2
Schematic of hardware setup

In terms of mechanical setup, the front-facing grill on the box fan is removed for easy access. A piece of plywood is mounted onto the fan with two wood screws on the opposite side of the fan’s plastic centerpiece. The DotStar LED strip is secured to the plywood with zip ties. The metal ridges that secure the front facing grills are bent outward to allow for smooth rotation of the mounted plywood piece.  …

Read the full article in the October 339 issue of Circuit Cellar

Don’t miss out on upcoming issues of Circuit Cellar. Subscribe today!

Note: We’ve made the October 2017 issue of Circuit Cellar available as a free sample issue. In it, you’ll find a rich variety of the kinds of articles and information that exemplify a typical issue of the current magazine.