Simple Arduino POV Wand





Introduction: Simple Arduino POV Wand

Persistence of Vision or [POV] is an optical illusion whereby multiple discrete images blend into a single image in the human mind. I.e. when you look at a working fan, you'll see its blades forming a transparent circle! But, Why?!

The eye hold information for an instant longer than it's there and the brain merges those images together in one scene. This is because that the images we see take about tenth of a second to be registered in our brains, so when the blades move in a time less than tenth of a second, the brain combines the images of the different positions of the blades together and we start to see that circle.

See this video for further explanation..

Step 1: Layout

In this instructable, I'm making an array of LEDs that displays letters and symbols in parts. As we move on, you'll understand it more and more. So, let's begin with the hardware.

The main steps are:

  • Required Tools
  • Wiring
  • Code

Step 2: Tools

  • 7 LEDs ( any color )
  • 7 Resistors (220 ohm)
  • Arduino UNO
  • Breadboard
  • 9v battery with battery holder
  • Zip tie
  • Jumpers
  • Staples
  • A camera ( with slow shutter speed )

Step 3: Wiring

#01:Put the Arduino and the breadboard back to back, then tie them together with the zip tie.

#02: Put the jumper wires between the arduino and the breadboard according to the order displayed in Image n.2

#03: [optional] Wire a 9v batterry to the Vin and GND terminals in the Arduino board to be able to use the project without the USB cable connected to your laptop.

Step 4: The Code

Before uploading this code to your Arduino, you can modify the message to display through the first two lines in the code. Just open the arduino sketch and change the message length and the message itself.

Customize your message, upload your code, then wave your wand in front of a camera set to a long shutter speed.

Step 5: How Does the Code Work?

The main idea of this code is to divide any input text input into characters, then divide each character into columns, then display the columns on a single column LED array with a short period of display time separating each column.

Assume that you're displaying the letter "S" on a 5x7 LED Matrix. You may describe the state of the LEDs in each column (from top to bottom) in binary like this:

Column1:[ Row1: LOW Row2: HIGH Row3: HIGH Row4: LOW Row5: LOW Row6: HIGH Row7: LOW ]

in short, Column1: LOW - HIGH - HIGH - LOW - LOW - HIGH -LOW or 0 1 1 0 0 1 0

and for the rest of columns it will be like this:

Column2: 1 0 0 1 0 0 1

Column3: 1 0 0 1 0 0 1

Column4: 1 0 0 1 0 0 1

Column5: 0 1 0 0 1 1 0

On the 7 LEDs, the code will display Column1 for about 8 milliseconds, then Column2, and so on.

You'll find some tips and comments in the code itself, just try to read it.

Thanks \ (u_u) /

10 People Made This Project!


  • Epilog Challenge 9

    Epilog Challenge 9
  • First Time Author Contest 2018

    First Time Author Contest 2018
  • Sew Warm Contest 2018

    Sew Warm Contest 2018

We have a be nice policy.
Please be positive and constructive.




Nice made you friend Saeed. I hope my POV wand display work. I made with your steps.

how to code in 10 led display? pls help

What is the specific speed at which you should move your hand so that we can see it clearly?

I'm not robot master at all and while optimistic, this is my very first project and I require some help. Where do the staples come in? Sorry, I am doing this without any outside help.

Thank you

Check out Step #3 photo from Step #3. He's just used the staples as small jumpers on the breadboard between the Arduino wires and the LEDs. You could use any other short wires to make the connection over the center divider in the breadboard or span the gap with the positive leg of the LED itself.

Going to try this. Love that staples idea!

is there a pov watch with a spinning blade in the middle? Think it might be my next project inspiered by this