A complete FREE tutorial on :

Developing a Persistence of Vision Propeller Display (POVPD)
using the open-source Arduino Duemilanove/UNO (ATmega328P) board



This online tutorial is targeted for students/hobbyist who want to: This tutorial also provides the software tools required but do NOT provides the software directly to the students. It explains how the software could be made, giving numerous examples of inputs and outputs. Sample codes for certain modules are provided wherever needed. The intention is not hiding the code, but to help the students to develop the code themselves. In certain chapters, if source code is not provided then pseudo-code and executable Hex files are provided.


It is the PCB which is rotated at high speed. The LEDs are soldered on it in linear fashion. This propeller PCB is plugged (connected) to an Arduino board.
Propeller PCB
The R G B LEDs are linearly placed on it
It is rotated at high speed.
Mounted with Arduino
It is mounted with Arduino board as a daughter-board (typically called Arduino Shield)
Patterns can be displayed by switching the LEDs with Time Division Multiplexing

Persistence of Vision
Persistence of Vision is the phenomenon of the eye by which an afterimage is thought to persist for approximately one twenty-fifth of a second on the retina. A visual form of memory known as iconic memory has been described as the cause of this phenomenon.

Salient Features of this Project

  1. The electric-power for the propeller is NOT supplied by slip-rings or a battery mounted on it. The electric-power is induced in the propeller.
  2. Since R G B LEDs are used various colors can be generated by mixing RGB.
  3. Remote Control is used to control the visual patterns. Students get a chance to use Philips RC5 protocol
  4. Arduino board is used (Open-source)
  5. The user can control the RPM of the rotating propeller if required.
  6. Graphical User Interface is provided to help the user to generate various patterns on the propeller. It is like a WYSIWYG Editor. The user can save the graphical information into numeric format.
  7. The complete tutorial is provided, with working code examples.
  8. This project is good from beginner level to advanced level developers/students.
  9. It is good for someone who want some hardware to experiment with Real Time programming in C. The time-critical part of the code, can optionally be written in assembly language.
  10. Does not use external memory and shift-registers
  11. Too few electronics components
  12. Adjustable display resolution
  13. Optional: Bluetooth interfacing (by disconnecting 2 LEDs)

e-Book Chapters

(Please click on chapter number to display its contents)
Chapter 1 Introduction to Persistence of Vision Display Project
Chapter 2 A Quick-look at steps involved in development of POVPD
Chapter 3 Circuitry for the Propeller PCB
Chapter 4 Developing a Utility Library for the Propeller PCB
Chapter 5 Interfacing the IR Remote
Chapter 6 Circuitry for Base PCB
Chapter 7 Interfacing the Index Sensor
Chapter 8 Developing an algorithm to generate simple (static) visual patterns
Chapter 9 Using the Remote-Control to change the "Color Map"
Chapter 10 Real Time Programming Concepts
Chapter 11 Generating Dynamic Visual Patterns in Real Time
Chapter 12 Persistence of Vision Propeller Clock
Chapter 13 (Appendix) Handmade Arduino POV Display (without using the kit)
Chapter 14 (Appendix) Versions of Propeller PCB
Chapter 15 (Appendix) Designing a GUI to generate static patterns