The Magic Wand Clock: a Persistence of Vision Toy !





Introduction: The Magic Wand Clock: a Persistence of Vision Toy !

Hold this magic wand in your hand, swing it and push the button : a complete digital clock will appear floating midair. Amaze your kids and friends !

Step 1: Description

This is a persistance of vision project of the kind we have seen lately in large quantities. POVs are fun to watch anyways. This one comes in the shape of a tooth brush case (courtesy of Swissair, now gone) one must hold as a magic mand. At the top of the case 7 LEDs provide the display, at the middle two small button set the time and a larger one triggers the display: push the button (this turns the display on otherwise the display is normally off) and swing the wand right to left and the time of day will float midair !
How is this accomplished ?
The display is virtual, being made of 25 columns of 7 LEDs each. Only one column is shown at a time. The single column of LEDs shows one after the other the columns forming the digits of minutes and hours, right to left : pushing the trigger button starts the display of minutes, tens of minute, separating colons, hours and tens of hours, one column at a time rightmost column to leftmost column. Your eye's retinas will retain the image of each column one close to the other and the image of the clock will appear. Difficult to explain, much easier and fun to try.

The circuit is based on a PIC16F84 micro, a 32768 Hz crystal watch salvaged from a dead watch 8 resistors, two capacitors and two AA or AAA batteries.
The circuit consumes very little power due to the low voltage supply and the low frequency crystal.
Synchronizing button push and wand swing may take time to learn, but not much.

The time is set with trials and errors: read the time, push minutes set button to meke them advance one minute per second, read time again. The same to set hours.
Below the schematic, the source code commented so as to make it understandable as much as possible and the HEX file ready to burn into the PIC.

I'd rather not delve into how to program the micro. There are many tecniques and sofware described over the net. This would probably deserve a whole instructable of itself. I successfully used PonyProg as programming software and its HW interfaces. Also found excellent WinPIC.

Make sure to check the video attached at the bottom. The quality is not good being taken with a photographic camera. The clicking noise is the 'wand!' button being clicked while swinging. The voices in the background are my family's.

Now on with step two: construction

This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 2.5 License

Step 2: Building the Circuit

Cut a piece of perfboard in a shape suitable for the top of your toothbrush case.
Solder at the top the seven LEDs, shorter pin is Cathode, the one that goes to ground. Better mark a black spot on the side of the LED's case before you cut the wires to correct lenght.
Solder one pin per LED first, align them in a row, solder the other pin of each LED.
Solder the socket in place, pay attention to position of pin no.1 (the one with the dot). Do not mount the micro on the socket for now.
Solder the crystal and the seven resistors.
Start wiring with very thin enameled copper wire.
One resistor and capacitors can be soldered on the solder side.
Connect battery holder un pushbuttons with thin plastic insulated wire.
The battery holder can be made out of thin cardboard: cut a square of cardboard the size to make one round around the two batteries. Hold with some scotch tape. Wrap another sheet of cardboard and hold again with scotch tape. Remove batteries and inner cardboard. The removed sheet of cardboard served to give batteries some room and slip easily inside the tube. The two electrical contacts can be taken from a broken toy or another electrical piece of equipment.

Buon divertimento ! Have fun !



  • Epilog Challenge 9

    Epilog Challenge 9
  • Sew Warm Contest 2018

    Sew Warm Contest 2018
  • Gluten Free Challenge

    Gluten Free Challenge

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




Nice project,will try it for sure.

and yes,I read the licence terms.

5Volt I am tring to make your clock. (Good job on the info it is all there) I have a few question. On the schematic it says "82 or 100 W (x7)" does that me 82-100 ohm resistors? My 2nd question is will this work on a 16f84a? And can you give me the numbers off of the caps that you used for pin 15 & 16. I have assembled it with caps marked 82 on them and a 16f84a. When I push the buttion all I get is a quick light flash on and then off and stay off. I think it my be my caps I am using. I don't have any 820's. Thanks again good job

Ooops! apparently the font I chose replaces the Omega with a W... Yes it's Ohm. It should work fine on a PIC16F84a as well. Capacitors are ceramic, 16V or more Yahoo! The flash you see means the clock is working fine ! Just press the button while swinging the wand right to left. Try not to follow the wand with your eyes. You 'll see the time floating ! Don't get discouraged ! Just try to keep your eyes from following the wand look just in front of you, start moving the wand right to left, click. Watch the video to better understand the synchronicity (?) of swing anf click. Apparently this is the first sample of the magic wand clock done with this instructable ! Thanks for asking. Please post again for success or failure anyways ! Please post photos if possible. Best regards OG ! 5V

hey 5 volt ...
i can see the flash ( change in led's pattern ) but its not visible when i move right to left how its show in video but we can observe can in led's when i press wound button
can u give any solution for this ......
waiting for ur answer
reply asap.... :)



i have a universal pic programmer and i tried to program the hex file to the pic16f84a it gives me an error with mplab winpic800 and wxpic please help soon to send another better hex file thanks

Just for continuity with PMs and comments, I'm pasting here my reply to Youssef comment and PM follow-ups:

The device id PIC16F84 should be input in some menu of your programmer. Very likely you are presented with a pull-down menu to choose from. The HEX file should not contain the device id.
The fuses are included in the HEX file which your programmer should understand well.
Anyways, in some menu of your programmer there should be some device configuration where you can set the fuses (make sure that watchdog timer is off and crystal is set to XT).

Hope this helps.

P.S. Please post any comments/follow-ups here: I'm notified of them by Emails anyways.


Nice kid, congratulations!

Thanks a lot. we found a 32768 hz oscillator..

btw, is the program really designed to show the time only for a few seconds? how can we make it retain the time?