Skip to content
Arduino code and other files related to my 3D persistence of vision display
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
Eagle Better folder structure Mar 7, 2016
PixelLayout Added pixel layout files & Matura paper Dec 24, 2014
code minor changes Oct 5, 2016
image_creation minor changes Oct 5, 2016
.gitignore Refreshed empty image program Mar 7, 2016 fixed dead link Mar 24, 2018


This is the github repo for my 3D persistence of vision display. Here you can find the arduino/teensy source code (./code/), eagle schematic and board files (./Eagle/), and the python program I wrote to simplify the creation of images containing simple shapes (./image_creation/).


This was my Matura project (the end of (the equivalent of) high school in Switzerland), and I did most of the work in the second half of 2014. You can find various more detailed reports below, but here's a quick summary:

The display itself consists of 10 LED rows mounted in a double-helix arrangement. Each of them contains 16 RGB LEDs driven by three shift registers, for a total of 480 LEDs or 160 Pixels.

The shift registers are controlled by a Teensy 3.1 microcontroller board using an SPI bus (All 30 shift registers are daisy chained together). The controller is mounted on a wooden disc below the ten LED boards.

All of this is mounted on a 4mm steel shaft, supplied with 3.3V DC using two copper slip rings, and spun up to 60 Hz by a brushed DC motor. A hall sensor and a magnet enable the controller to measure the rotational speed and to adjust its timing, so that the image always stays still despite the speed not being quite constant. The image is updated 100 times per revolution, or 6000 times a second.

Currently there's no way to supply images at runtime, the display has to be stopped so that a new program can be uploaded using the Teensy's USB port.

Various versions of the paper

Original in German

English long version, not quite finished

English short version

Other english stuff


one two

Press etc

Hackaday article

ETHZ D-ITET in German or English

Swiss Youth in Science article

EUCYS 2016 link

Links to discussion

one two three


Photo of it in action

Photo of it standing still

Me at EUCYS 2016 being super happy

You can’t perform that action at this time.