Instructables
Picture of Magic POV Wand (yet another POV toy)
Parts.JPG
DiagramII.bmp
With Handle.JPG
schematic.bmp

NEW! (11/14/2014) This kit has been upgraded to a professionally manufactured circuit board and the price has been reduced to only $9 per kit. (And for educators, a discount price of only $8.00 per kit.)

This Persistence of Vision (POV) toy is simple to assemble and fascinating to play with. It is a good introduction to digital electronics and soldering. It works by flashing each column of “pixels” in rapid succession producing the illusion of text in mid-air. You can program in your own messages using two push-buttons. The message is saved in “Flash” memory and will remain in the MCU’s (PIC16F628a) memory even when powered off. The message can be changed as often as you like.

This POV toy is similar to the MiniPOV3 with a few important exceptions:

* Button cell battery - more portable. Easier to mount onto a bicycle or other spinning object.
* Change the message without using a computer.
* Less components to solder in.
* Less expensive ( Now only $9! )
Buy kits at http://www.chinchillakits.com/product/magic-pov-wa...

 
Remove these adsRemove these ads by Signing Up

Step 1: What you need

Picture of What you need
Tools:

Soldering iron
Solder

Everything pictured here is included in the kit.  If you already have most of these components, you can order the circuit board and/or the programmed chip individually.

ID Qty Part
A 2 Momentary Push-buttons
B 7  Diffuse Red LEDs
C 7 200 ohm resistors
D 1 Mini Slide Switch
E 1 18-pin IC Socket
F 1 Programmed Integrated Circuit
G 1 CR2032 Button Cell Battery
H 1 Button Cell Battery Clip
I 1 Engraved Circuit Board
1-40 of 108Next »
anoopanil3 months ago

how can i generate hex file from a c program file

very urgent................... pleaseeeee..............

anoopanil3 months ago

how can i generate hex file from a c program file

very urgent................... pleaseeeee..............

anoopanil3 months ago

please explain progam from void programming.........................

NaveenK14 months ago

Hii sir very nice project but iam facing some errors with system.h and eeprom.h when i compiled ur .c and . hex file.. how could i get these for successful compilation in my pic16f628a ???????????? please help me sir .... !!!

rleddington (author)  NaveenK14 months ago

Hello NaveenK1,

You can just download the .hex file from here so you don't have to compile. If you're not using SourceBoost, you'll probably have to make quite a few changes to the code to get it to compile.

kishore0017 months ago
Please mail me the pcb design
kishore.kiski@gmail.com, I will be grateful to you
Hi,
Check out my videos:
http://www.youtube.com/watch?v=-MieUpclCfI
http://www.youtube.com/watch?v=10EoIdXPkQc
Regards
Pieter

HI,

I have build the POV with the IR interface, works great!!!! Thanks for all the help on the hex file!
I will post a shortcut as soon as I uploaded my video to Youtube.

Thanks Again!!

Kind Regards

Pieter
rleddington (author)  Pieter Jamneck1 year ago
Excellent! Nice job Peiter, I can't wait to see the video.
Hi,
I found the two line's in the code and un comment them. SourceBoost gives me an error:

"Faled to open debug/new code.hex"
"Failed"
Sorry for all the posts, I dont know Source boost that good. Thanks for all the help!

Regards

Pieter
rleddington (author)  Pieter Jamneck1 year ago
No problem Pieter, I sent the modified .hex file to your e-mail. Let me know how it goes. If anyone else reading these comments wants to syncronize the POV toy with a sensor to stabilize the image, just let me know and I'll send you the modified .hex file. (rleddington -at- gmail dot com.)
Hi,
Thanks for the reply.

Stil does not want to compile!! I think its me doing something wrong.
Could you please email me the changed hex file. pieter@dieseli.co.za

I am going to use a NPN transistor to pull RB0 to GND via a IR TX&RX.
Thanks again for you reply!!!

Kind Regards

Pieter
rleddington (author)  Pieter Jamneck1 year ago
Here’s what you need to do:
In SourceBoost, right-mouse-click on the project name and select “Add file to project”
Then navigate to:
C:\Program Files\SourceBoost\Lib\eeprom.pic16.lib

Add that to your project. Then try building again.
Hi
I have tied to edit the code with sourceboost but no result. I want to activate RB0 as a input for a speed switch as per you commet below "Download the source file and SourceBoost C compiler. In the source file there is an infinate loop that starts with "while(1)" . Inside of that loop you'll put something like:
while(RB0); // Wait for RB0 to go low
while(!RB0); // Wait for RB0 to go high
That should just sit there until RB0 is pulsed, then it will display the message and go back to waiting for the pulse."

Any help PLEASE!!!

Regards
Pieter
rleddington (author)  Pieter Jamneck1 year ago
Hello Pieter,

You may have changed the code in the wrong while loop. The one to change is at the very end of the code in the main() routine. The lines you need are already there, you just need to un-comment them. Give that a try and if you're still having problems, I can probably build you a hex file and e-mail it to you.

while( 1 )
{
showMessage(message,address);
while(portb.0);
while(!portb.0);
delay_ms(7);
};
The Wheel2 years ago
Can you make the .hex file for a pic16f84a please? I would appreciate it!
rleddington (author)  The Wheel2 years ago
Hello, I'd love to help, but I'm afraid the program wouldn't work on the 16F84. For one, the 16F84 doesn't have as much program memory as the 16F628 so the program wouldn't fit. Also the 16F84 does not have internal oscillators so you would also have to change the hardware by adding some sort of clock input. Then you would have to change the timing to match your oscillator. You'd be better off just ordering a programmed 16F628 chip for a $3.50 at www.chinchillasoft.com/purchase.aspx.
OK, thanks anyway. The problem is that in my city momentary aren't any 16f628s. I can order them with 4-5$ but it's not so important. I have pic programator and i sucsessfully programed a 16f628 with the hex you uploaded and it's working perfectly.
jacoman2 years ago
I made my pcb and it works. I put it on a piece of wood to make a propeller and then on a motor, but the image is instabl iIt runs too fast and flashes.
How many rpm need i to have for a stable image?
Many thanks for this project it's really amusing.
rleddington (author)  jacoman2 years ago
I expect around 200rpm would be ideal depending on the length of the message. If you want the image to be really stable, you are going to want to add a syncronization signal of some sort. RB0 is tied to a weak pull-up resistor so if you can have a switch that connects RB0 to ground momentarily each time around the circle at the exact same spot, it would be easy to syncronize the message from there. You would have to change the program to wait for the signal before displaying the message. Many POV toys have a tilt switch to signal the start of the message but that won't work for a spinning propeller because the tilt switch would never activate. You would need some sort of brush contact or a non-touch sensor such as a hall-effect switch or an infrared emitter/detector pair. It would be fun to play with a motorized propeller, I just havn't taken the time to do it.
Thanks for your reply and your kindness.
Well I can put a hall effect to RB0 with a magnet to have impulse.
How can I change the program to wait for the signal before displaying the message?
rleddington (author)  jacoman2 years ago
Download the source file and SourceBoost C compiler. In the source file there is an infinate loop that starts with "while(1)" . Inside of that loop you'll put something like:
while(RB0); // Wait for RB0 to go low
while(!RB0); // Wait for RB0 to go high
That should just sit there until RB0 is pulsed, then it will display the message and go back to waiting for the pulse.
I have a ss495a hall sensor but I don't know if it's OK, it works on 5v.
I guess gotta find one 3v, right?
Thanks
rleddington (author)  jacoman2 years ago
I bet it would work for 3V. If you want, you can always change the voltage in the circuit to 5V. I think the PIC has an operating range from 2.5V to 6V. The resistors should be fine too, the LED's will be just a little bit brighter.
The Wheel2 years ago
https://www.dropbox.com/sh/ttlk6mgdmnmufex/OvTufAw9RC

Here is my schematic and pcb for eagle. It's working perfectly!
rleddington (author)  The Wheel2 years ago
Excellent! nice work.
Thanks. I'll post a video of it later. How did you convert the .c file to .hex?
rleddington (author)  The Wheel2 years ago
I compile using SourceBoost's C compiler. Here's a link: http://www.sourceboost.com
a, and I made the pic programer too. It uses PICPgm software. Here is the schematic and pcb. https://www.dropbox.com/sh/n2khzy8il9o5h5v/1UwTn6Z-QW
nodoubtman2 years ago
works with pic16f628a?

thanks!
rleddington (author)  nodoubtman2 years ago
Did you get it working? It should work with 16F628A.
yes i finally did, i had to shake it a little :)

thank you!
marC:)
rleddington (author)  nodoubtman2 years ago
Excellent! I found that putting it on the end of a stick and then use a nail or something on the other end of the stick to spin it in a big circle works really well. Congratulations!
how can i use it?? and see the letters finallY?? :(
rleddington (author)  nodoubtman2 years ago
Huh?
not working yet :(
i will try it again, does 220 ohm resistor is okay?

thanks!
marC:)
rleddington (author)  nodoubtman2 years ago
220 should be fine, however if you're using blue LEDs, you will need to change the voltage to 5-6 volts.
nodoubtman2 years ago
only one led is lit up brighly the others are not too bright, is it normal??

thank you!
marC:)
nodoubtman2 years ago
do you have to make it turn to see the letters?? with a motor ??

thank you so much!
marC:)
turkin_ar2 years ago
Hi! i'm very new in this world of pics.. i download de .c and i can't compile it with CCS, because i don't have system.h and eeprom.h.. Where can i get them?? This pov is very simple, it's excelent. Congratulations!!
1-40 of 108Next »