This project is a special kind of circular LED display. With the help some mechanical assembly, LED count, hardware requirement, and hence overall cost is cut to very affordable price. Also, maintenance and repairing of the display is so easy, that anyone having a little electronics knowledge, can take care of this. All the synchronising can be implemented through software.

First of its kind, made using the 20-pin 8051 series microcontroller, this project use the principle of Space Multiplexing. This propeller display is mechanically scanned and displays the characters in digital format. Made from scrap it can be used anywhere and everywhere and the most amazing fact about this display is it’s crystal clear display. This display consists of just 8 bright LEDs which are rotated to show the display.

For building this project, requirement is just a small 20 pin microcontroller, a position encoder, and LEDs. This display can show the messages, which will require a whopping 525 LEDs. So hardware and cost minimisation is achieved.

Step 1: What Is a Persistence of Vision (POV)...?

Persistence of vision is the theory where an afterimage is thought to persist for approximately one sixteenth of a second on the retina, and believed to be the explanation for motion perception; however, it only explains why the black spaces that come between each "real" movie frame are not perceived. The true reason for motion perception is the phi phenomenon while the true reason for perception of continuous light is Flicker fusion.

You can read more about POV on this ink

Step 2: Building Materials.....

Here are the list of things required for this Project.
** I have increased the quantity in the list as it might be possible that some of the components gets broken during the connection process

  1. Zero PCB -- Quantity = 3 medium size
  2. Connecting wires (buy it in bunch)
  3. LED's preferably white colour, or any colour you want for your message display -- Quantity =10
  4. AT89C2051 microcontroller. its a 20 pin microcontroller wiich has a single port (I/O pins)
  5. Crystal for microcontroller (4.9152 MHz)
  6. Voltage Regulators (LM7805- microcontroller power supply)
  7. Capacitors.
    • 1000 µf 25 volts -- Quantity = 2 (electrolytic)
    • 10 µf 16 volts -- Quantity = 2 (electrolytic)
    • 33 pf -- Quantity = 4 (ceramic)
  8. Resistors.
    • 220 Ω -- Quantity = 10 (are basically connected to LED's to adjust its perfect brightness)
    • 10 kΩ -- Quantity = 4
    • 1 Ω -- Quantity = 2
  9. MOC 7811 (motorola interrupt circuit)
  10. Tape Recorder Flywheel
  11. 12 volt DC motor
  12. 12 volt Adapter (we can also use an adjustable voltage adapter)
  13. Soldering gun and soldering wire.
  14. Microcontroller program burner. (interfacing hardware between your pc and microcontroler to dump your programs in microcontroller.

Step 3: Display Functioning

LED's are arranged in a straight line over a propeller kinda structure so if the LED's are kept on and making the propeller rotate we would see a circular disc kind of display.

To make an alphabet display through the LED's we need to switch on and switch off our LED's in a patterns as required for an alphabet.

I have attached an image of letter A how to display through the rotating LED's.

Our eyes cant focus on very fast moving objects so we see the fast moving objects as a blur. Similarly taking the advantage of fast rotating propeller and led's blinking in a patterns we are able to display numbers alphabets and many more things on a propeller display.

The images in this section are self explanatory.

Step 4: Block Diagram and Physical Overview

The block diagram represents the overall relationship between each components connected in this project.

The microcontroller is interfaced with an interrupt circuit and an output port has been connected to 8 LED's.
The power supply circuit incorporates voltage regulator for microcontroller and connected to the microcontroler in such a way that a metal wire constantly slips over the flywheel (like a brush in a motor) completing path to transfer the power to the Microcontroller.

Step 5: Circuit Diagram

This circuit diagrams give you the brief description of the connections to be made between each and every components of this project.

While making connections to the LED's make sure that you are connecting the right terminal I mean if the programming is in Positive logic then all the anode need to be connected in microcontroller pins through the resistor and the cathode is connected to all LED's cathode should be grounded otherwise like the negative logic used in my programming we need to connect anode terminal of all LED's together and the cathode needed to be connected to each respective pins of microcontroller through resistor.

Power to microcontroler can be given in 2 ways.

  • We can place a 9 volt battery over the rotating module and connect the voltage regulator to drop the voltage to 5 volts for microcontroller
  • We can have an arrangement like a brush of a motor which constantly slips over commutator to provide power to the windings similarly the whole module can be mounted over a metal flywheel and a wire from the main power supply can slip over the flywheel to provide power tho the microcontroller module.

I find the second option more fruitful as adding a battery over the module can cause in additional weight which can also cause in decrease of speed as the propeller display can provide a sharp image(display) at high speed.

Step 6: Programming

I did the programming on KEIL IDE as its the best one for microcontrollers.

We can even display numbers, a clock animation or a picture animation on a propeller display..
But all you need is the basics of how to code your microcontroller and the pattern to display a letter.

so constantly working on your logic and improving your code can definitely help you if you want to display a complex images too :)

This software also allows you to make a .HEX file after your programs do not have any errors and also you can change the crystal speed while creating the .HEX file.

Step 7: Pseudo Code

1. Code for the timer 0 interrupt

interr: ;T0 interrupt

cjne r6,#0ffh,sk

mov r6,#00h

acall disp

sjmp sk1


mov r6,#0ffh


clr tf0


This interrupt is intended for displaying each segment at regular time interval. The interrupt gets executed after each timer 0 overflow, which overflows at adjustable time intervals.

2. Code for the External Interrupt

; EXT0


clr tr1

clr tr0

mov a,th1

mov r1,a

mov a,tl1

mov r0,a

mov r3,#00h

mov r2,#160

acall div16_16

mov a,r2

subb a,0ffh

mov th0,a

mov tl0,a

mov th1,#00h

mov tl1,#00h

setb tr1

setb tr0

mov r0,#23h

mov r5,#00h

mov r6,#00h


This interrupt performs the basic task of synchronization. It also
resets the character pointer (R0), the segment pointer (R5). Another thing performed in this interrupt is that, the previous time gets divided into number of segments, and the concluding result will be stored in the timer register TH1

Step 8: Programming Your Microcontroler

After verifying your program you can generate .HEX file which can be burned to the microcontroller.

Atmel programmers are easily available in a local electrical and electronics shops. This programmer is capable of programming 40 pin as well as 20 pin microcontrollers.

Proload Software is generally provided with the programmer itself to interface your pc to the microcontroller. this is a very simple software easy to understand and asks you for your .HEX file location.

Make sure the com port number in the software is correct. If you do want to check it then open your device manager and check for the com ports, you will get the idea.

Step 9: Hardware Model

These are the pics of my propeller display model

This model can be also be implemented for displaying the time or animation.

*Note - make sure you balance your propeller before attaching the flywheel in the centre of gravity. If the balancing is not done properly then it can cause your module to wobble and on high speeds it can actually cause damage to the mounted components.

Step 10: The HEX File

This is a .HEX file which you can directly dump in your microcontroller.

The .a51 file can be opened in keil software to see the actual code.

I have also attached a simple code (propeller.c) for understanding purposes. This is a simple code which can be edited into keil software and can be customised according to the requirements.

Step 11: Scope of Propeller Display

Implementation of this technology can be done in creating innovative advertisements on a bicycle wheels.

It can also be implemented in homes as a propeller clock

This module can be customised with coloured LED's to create a coloured display which can be more appealing and can also be used to replace big power consuming displays.
It is also useful to hobby projects enthusiasts.

**The images in this step are taken from Google as to demonstrate the scope of propeller display.

<p>Props for using the real Atmel and not the shitduino.</p>
<p>sir, may i have your assembly language file (like the one in the pseudo code) ? I am interesting to learn assembly using your project</p>
I want the program for the alphabets a to z and number 0 to 9.by using AT89S52 microcontroller
Rpm of motor is around 3000 rpm
<p>I use pic16f84a and a Chamber become figures everywhere I'm not used Is it a problem or programming</p>
<p>Yes I do have an alternative for your issue.</p><p><br>you can make an IR interrupt using IR transmitter and receiver as given in below image of you cannot find MOC7811<br><br>make sure you solder them beneath the Displaying LED's where MOC7811 is placed in circuit diagram and the IR transmitter and receiver should face each other and when the propeller is rotating , a small solid piece of sheet should block the IR transmitter and receiver as shown in module diagram. This would be more cheap and efficient.<br><br>I hope you got the idea</p>
<p>Hello Can you tell me why is used ir led in the circuit please</p>
<p>What RPM Motor have you used here..?? </p>
<p>1200 rpm</p>
<p>hey whats going on ssrivastava11? first off I want to start off by saying you are incredibly resourceful and creative I like this project so much im adding this as a portion of a final project I am doing for college. I worked on the F18/EF super hornets in the NAVY, a lil background for you on my base knowledge. I am in my final class for Computer and Electronic engineering, I have been number one in my school since the beginning now I want to finish with a bang so I am creating one hell of a project to WOW the crowd when I present. I was wondering if I could pick your brain on a few things in this project. </p><p>Thank you for your time </p><p>Jake L. USN </p>
<p>Hey Jake,</p><p>working on F18/EF a big WOW and its so cool..<br>and thanks for your appreciation for this project, If you need any help please mail me for an instant reply. shubhamsrivastava271@outlook.com<br><br>Sorry for the delay in response as I don't open instructables website so frequently.</p><p>Thanks</p><p>Shubham</p>
can i use an arduino uno r3?
<p>hey <a href="/member/FaizulI">FaizulI</a> you can use any microcontroller but you need to keep in mind the programming style or pattern for whatever you need to display.</p>
Need help regarding moc7811 how to connect it ?? In te circuit
i have provided the circuit diagram, you need to understand the pin structure of moc 7811 by looking at the data sheet for that<br><br>i have also given an additional circuit for interrupt circuit if you have issues with mic 7811 due to the very less gap opening
<p>It's possible to use it as a clock? I mean, which changes in the program should I make?</p>
<p>Hi <a href="https://www.instructables.com/member/LautaroR/" rel="nofollow" style="">LautaroR<br></a> you have to make a lot of changes in programming<br><br>need to map out the lights to be blinked during the rotation and an internal infinite loop stating the time of the clock <br><br>you need to have additional buttons to set the time or you can do that by ir remote sensor.</p>
Help, did you scavange the MOC 7811 (motorola interrupt circuit), i can not find it on mouser or digikey. Not to mention the cost of most optical encoders start around $12.<br><br>Can you provide an alternative or a retailer?
<p>Hi <a href="https://www.instructables.com/member/tdragovich/" rel="nofollow" style="">tdragovich</a></p><p>Yes I do have an alternative for your issue.<br><br>you can make an IR interrupt using IR transmitter and receiver as given in below image of you cannot find MOC7811<br><br>make sure you solder them beneath the Displaying LED's where MOC7811 is placed in circuit diagram and the IR transmitter and receiver should face each other and when the propeller is rotating , a small solid piece of sheet should block the IR transmitter and receiver as shown in module diagram. This would be more cheap and efficient.<br><br>I hope you got the idea<br><br>thanks <br>Shubham</p>
Thank you
<p>you are welcome <a href="https://www.instructables.com/member/tdragovich/" rel="nofollow" style="">tdragovich</a></p>
<p>very nice...</p>
<p>Thank You <a href="https://www.instructables.com/member/Neerajplum/" rel="nofollow" style="">Neerajplum</a></p>
<p>Thanks for the clear slip ring diagram. I have a Blinky POV that has been sitting around a couple years because I couldn't get past the slip ring problem.</p>
<p>Hi <a href="https://www.instructables.com/member/The+Lightning+Stalker/" rel="nofollow" style="">The Lightning Stalker<br><br></a>I even faced the same issue of powering up my microcontroller coz i was not in the favour of adding a battery on propeller as it will be bulky so after searching a few of tape recorder flywheel in electronics market I was able to find one with plastic in the centre where the motor shaft connects and a metallic ring on the outside. <br></p>
<p>good to see microcontroller again :) . . made some thing like this 2yr back </p><p>https://www.instructables.com/id/Write-on-the-thin-Air/</p>
<p>I made this 3 years back, but uploaded now :P :) </p>
<p>Hmm... build a propeller display clock onto the bottom of a ceiling fan....</p>
<p>Yes you can do that...!</p>
It would be awesome to make a computor monitor like this but everything would have to be reversed or use goggles when you use it<br>
<p>Like in monitors, tvs we have progressive scanning.<br><br>similarly this project is also about progressive scanning but in a different way.<br><br>in TV and monitors scanning is very fast so we see the moving objects smoothly and if we can increase speed then definitely we can display videos.<br> <br>check this video out &gt; https://www.youtube.com/watch?v=QAGnpKz7zvY</p>
It's interesting , I want to learn , but how to start from beginning.
<p>start from the scratch.<br><br>just learn what is POV and basic microcontroller coding. </p>
<p>double thumbs up, A great post. many guys post similar projects, but they seldom explain how the vision trick works &amp; its timing. thank u indeed. </p><p>How would the code look like with Arduino ?</p>
<p>Hi <a href="https://www.instructables.com/member/goldenshuttle/" rel="nofollow" style="">goldenshuttle<br><br></a>Thanks for your appreciation.<br><br>I have attached a propeller.c file in step 10 <br>you can go through it, though its a microcontroller programming but the logic would be same for Arduino.<br>There will be changes only in the library files and the way of programming.<br>I have not worked with Arduino so I wont be able to provide you with a working code.<br><br>Go through this &gt; <a href="http://www.lakos.fs.uni-lj.si/images/Predmeti/MK/2014/C%20Programming%20for%20Arduino.pdf" rel="nofollow">http://www.lakos.fs.uni-lj.si/images/Predmeti/MK/2...</a><br>and the propeller.c and i am sure you can definitely come up with the programming code for Arduino.</p>
<p>Many thanks indeed. You re a generous man.</p>
very cool! I've always liked propeller displays. good job!
<p>Thanks a lot <a href="https://www.instructables.com/member/JavaProgrammer/" rel="nofollow" style="">JavaProgrammer</a> :)</p>
it's possible use arduino to make this project???
<p>@mario.julio <br><br>Yes it is possible to use arduino to make this project. <br>I made this project way back in 2012 when I was in second year of my electrical &amp; electronics engineering and had newly studied 8051 microcontrollers as my part of my academics.</p>
This would require more coding I'm sure, but using RGB led would really make it pop.
<p>Mikenaly<br><br>exactly..!! it is possible to have a RGB led's and as shown in STEP 11.<br><br>the images are more expressive and will definitely catch everyones eyes :)</p>

About This Instructable




Bio: I am a Software Engineer by profession but love to code and make mini projects in embedded systems, microcontrollers etc. I also like to travel ... More »
More by ssrivastava11:Propeller Display 
Add instructable to: