Introduction: Persistence of Vision (PoV) Display Using Arduino

About: STEMpedia is a place bringing project-making tools at one place- kits, online courses, coding platforms, controller app and tons of free learning resources.

Time for a fun-filled, easy-peasy Japan-easy to make a project! Today, we’re going to show you how to make an LED POV Display. POV, an acronym for the persistence of vision, is a kind of optical illusion in which a visual image seems to persist even when the light from it ceases to enter our eyes and this makes it super cool! You can display any text or image that you want to in the display.

Sounds awesome, right? So, why are you still here?! Let’s begin right away!

Step 1: List of Components Needed


  • evive
  • Arduino Nano
  • IR Sensor
  • General Purpose Board
  • LEDs
  • Resistors
  • DC Motor
  • Battery
  • Wires
  • Glue Gun
  • Soldering Iron
  • White Paper
  • Some 3D Printed Parts


  • Arduino IDE

Step 2: Understanding Some Basic Concepts

What is Persistence of Vision?

Persistence of Vision, or POV, occurs when a visual image seems to persist continuously when a stream of light is repeatedly interrupted for very brief instances and does not enter our eyes during those durations.

How does the Persistence of Vision works?

The human eye cannot process more than 10-12 images per second. When a series of images more is presented in quick succession, it gives us the illusion that the images are in motion.

This is the basic principle behind the making of the animated movies.

Step 3: Printing the 3D Printed Part

Here we are going to 3D Print the holder to which we will be fixing our complete assembly. Download the .STL given below.

The Holder consists of two parts.

  1. The Rotating Part
  2. The Stable Part

Step 4: Assembling the LEDs

Once you have the 3D Printed parts with you, its time to start the making.

Take the General Purpose Board and cut it in the size that fits the Rotating part.

Once done, its time to add the LEDs.

In this project, I have used 8 red LEDs, you can use as many and of any color you want.

Once done, short (common) the cathode terminal of all the LEDs by soldering them on the GPB.

Add resistors to protect the LEDs from blowing up due to high voltage supply (5V). I have used the 220ohm resistors. Solder one end of each resistor to the anode terminal or positive leg of each LED.

Solder jumper cables to the second leg of each resistor.

Step 5: Connection With Arduino Nano

Connect all the LEDs to Arduino Nano as given below:

  • LED0: D2 of nano
  • LED1: D3 of nano
  • LED2: D4 of nano
  • LED3: D5 of nano
  • LED4: D6 of nano
  • LED5: D7 of nano
  • LED6: D8 of nano
  • LED7: D9 of nano
  • Common cathode: Ground of nano

Step 6: Attaching the DC Motor

Attach the DC Motor to the given space in the holder.

Power the DC Motor using evive.

Step 7: Adding IR Sensor

It's time to add the IR Sensor.

As we need to indicate the beginning from where the text should be written. Attach a small piece of white paper to the steady assembly, which will be detected by the IR Sensor.

Varying the place of the paper leads to a change in the position of the text displayed.

Connect it to Nano:

  • GND: GND of nano
  • Vin: 5v of nano
  • Out: D10 of nano

Step 8: Completing the Assembly.

We need to power up the Nano. For that, connect the battery to it.

Once done, fix the Nano into the Rotating Part.

Fasten the Rotating Part to the holder.

Step 9: Arduino Code

Upload the following code to Arduino Nano:

Step 10: Working

When the IR sensor detects the white paper, the LEDs start glowing and create the illusion that something is displayed by the LED. This is due to the persistence of vision, where the LEDs turn on and off in such a way that the different images overlap each other forming letters.

Step 11: Conclusion

With this, your very own LED POV Display is all set to display the message of your choice!

Arduino Contest 2019

Participated in the
Arduino Contest 2019