Introduction: Arduino Propeller Message Display (POV)

In this project I want to show you the Persistence Of Vision (POV) to generating a rotating message in the air using only 10 LEDs. It is also called "POV stick".

The apparatus consists of flashing and rotating 8 LEDs at a frequency such that the human eye does not notice a discontinuity in the formation of the message.
All characters that forms the message will be swept (column by column) and the angular rotation speed of the device, combined with the flashing speed of the LEDs will generate the image in the air as if it were for and complete message.


The system requires: an adjustable power supply, a DC motor, a uController, a positioning and rotation system, a battery and some Light Emitting Diodes LEDs
The figure shows the System Block Diagram.

Using variable voltage it is posible to control the DC motor rotation speed (delaying or advancing the system zero point (begining or ending of a whole revolution) that determines when the system should start a new message loop ...
The reed switch is the component that detects this point, the SW does the rest (it will flash the LEDs according of the message letters in a specific speed (persistence of vision delay).

Step 1: The Parts

1 - Arduino Nano (the uController used in the system): The choice of this uController should be a small, lightweight and can be powered from 3.3V.

2 - LEDs: LED - Light Emitting Diode. There are a variety of them in the market (shapes, sizes, colors, etc) - choose a bright LED - I used 2 x red and 8 x blue.

3 - Reed switch + Magnet: Reed Switch is a switch (in ampoule format) of magnetic effect, ie it closes in the presence of a magnetic field. Used in the system to control the passage (complete revolution) by a zero point. Every time the system detects this point it is time to restart the process and re-trigger the message generation. With this we can control the angular speed of rotation (associated with a variable voltage in the motor).

4 - Neodymiun Magnets: Small, cheap but strong ... I used 8 x circular magnets with 1mm x 10mm.

5 - DC Motor: The engine that will provide system rotation. The speed and rotation will be controlled by voltage variation applied to the motor and in the system the reed switch will detect when a lap has been completed, restarting the process of generating the message in the software.

6 - Battery: To power the system (uController and LEDs) we must use a battery with good charge and 3.7V and it must be light. The best option is a Lipo battery. 3.7V / 850mA.

7 - Resistors: To controls the current in the LEDs and to make the pull-down of the Reed-Switch sensor.

10 x 220R

1 x 10K

8 - PCB - Printed Circuit Board: Perforated plate in islands. With at least 210mm by 25mm...

9 - Others: Micro-Switch 1 pole x 2 positions, wire, tools, glue, etc.

Step 2: Diagram

The full diagram is shown in the figure.

A simple wiring of Arduino NANO with the LEDs and Reed-Switch.

Step 3: Code and Librarie

You can download the code and libraries at GitHub:

GitHub to download the code and library

Or ask me by email:

You also can view my original publication at (in Portuguese);

January, 2nd 2017 - addes the digital clock feature. Go to GitHub to download it.

Note for Time library: The Newest Arduino's IDE version does not support this library.

So all SW's project was done in the 1.0.5 arduino's IDE version. You can download the Time library at the GitHub.

Step 4: Photos and Videos

These are some photos and simple videos of the entire project and results.

There are still some adjustments and new codes (such as digital and analog clock), but it is already up and running and ready to be explored .....
I will also post new results on youtube .... Project in progress .......

I hope I have helped someone to reach this objective too.

Thanks a lot and Best Regards

Greetings from Brazil for all people.

Step 5: ​Further Contacts

My contact channels:

1 - Blogger:

2 - youtube:

3 - Skype:


4 - Instructables:

5 - GitHub:

6 - google+:

7 - E-mails:


Sembot made it! (author)2017-07-30

This project is fantastic but I do not get the program in the arduino nano ????

Sembot (author)2017-07-29

Remember, the 2 loose wires are for the sensor, but I do not have a reed contact, so I have to find another solution

Kind regards

Sembot (author)2017-07-29


Fantastic project I love it

I made one with arduino nano but did not get the software

Which software is the best?

Kind regards

matra2011 (author)2017-01-11

Very good Marcelo Muito bom o seu projecto muito bem explicado Quero parabenizá-lo Marcelo

firosekhan (author)2017-01-11

Hi marcelo,

Great work !!! And the best part is, you simplified the home/zero circuit with REED switch due to which no need of IR emitter diode and Phototransistor. Now, i am not an expert with this but want to make such POV, hence want to know from you,

1. circuit shown is complete circuit?

2. where are the REED switch and motor connections?

3. please explain connections between switch S1, 3V battery and 5v pin on NANO.


MrBulp (author)2017-01-02

Great Marcelo... but if i put accelerometer sensor can it be display thru that LED in real time ?

BIGDOG1971 (author)MrBulp2017-01-03

What kind of information you want to display?
Yes, You can put an accelerometer and display any information from... any other sensor... you just need to get the information from the sensor like barometer, termometer, umidity, etc and build a string in order too showing in the display as any other kind of text.

MrBulp (author)MrBulp2017-01-02

i mean the live realtime rpm result been display thru LED.

synoby1357 (author)2016-12-30

Great project Marcelo. How long do you think the LiO battery will power the leds and nano?

BIGDOG1971 (author)synoby13572017-01-03

Hi I really did not have measured it, but I think more than 8 hours long.

erik_montesdeoca (author)2016-12-31

happy new year from México City! 2017

About This Instructable




Bio: I am 43 years old and I live in Brazil. I am a Telecommunication / Electronics Engineer. Sixteen years acting in the industry of "Telecommunication and ... More »
More by BIGDOG1971:Arduino Propeller Message Display (POV)ARDUINO By Myself Mini-CNC (Plotter)ROVER Bot - The Arduino Bluetooth Controlled Tank
Add instructable to: