Welcome to the PIC based pummer

PIC is shorthand for ``Programmable Interface Controller'', a microcontroller family from Microchip.

Here the PIC10F200 (datasheet) is in use, an awesome powerhouse with memory for 256 instructions (each 12 bit wide) and 16 byte of main memory (and featuring a hardware stack of depth two!).

The street price of the IC is about one dollar or one euro or so.

The pummer uses one I/O pin for LED output and one for solar cell light / dark detection.

pic pummer
(click pic to enlarge)
(click pic to enlarge)
The circuit simply needs a LED with some resistor to limit the current (the PIC10F200 can drive 25 mA) and a diode to allow the solar cell to charge the accus, but to get a low signal in case of missing sunlight.

As diode i used a BAV20, but i think any other will do. Using one with lower voltage drop (germanium diode) should give a better charge voltage. I did not try this way, instead i added another 0.5 volt solar element to the 4 volt one, suitable for three AAA accus ;-)

The program switches the LED for some time on, then drops the brightness from 99 percent to 1 percent (with decreasing pulse widths) and stays some time on 1 percent, followed by an LED off time.

The flash of a ``real'' pummer is more bright, than simply lighting the LED here for some time, but it is imho good enough ;-)

The voltage of the solar cell is used as light detection sensor with high level indicating charging and no blinking and a low level indicates darkness, where we start blinking!

On high level without blinking the PIC is put into sleep mode, drawing a very low input current (100 nA or so). To wakeup the PIC the ``wake-up on pin change'' feature is used: If the input level of the solar cell flips, the PIC wakes up and the value is checked.

pib pummer
(click pic to enlarge)
pic pummer
(click pic to enlarge)
The MPLAB (to MPLAB home at Mircolab) from Microchip is a nice tool to translate the assembler source:

the source: pic-pummer.asm

the hexfile: pic-pummer.hex

To program the PIC there are awesome simple RS232 (via PC serial connection) based circuits out there.

I started with a JDM (to JDM's PIC-Programmers) based version from ebay (around 10 euro or so).

As programmer software WinPic800 (to winpic800's homepage) worked very well.

pic programmer
(click pic to enlarge)
Then I switched to the K8076 board from velleman (to K8076 product page, got it from conrad [note: page is in german]).

The ZIF socket is very helpful to avoid contact problems, but be sure to check the delay setting: if you can read a PIC, but get errors writing to (like me, with windows vista), increasing the dealy setting made it work.

The PicProg2009 (to the download page) programmer software works very well, but misses automatic reload of the hex file on changes, like the WinPic800 does.

Both PIC programmers are connected with a streight through serial cable, not a null modem cable. A serial extension cable works very well for me.

pic programmer
(click pic to enlarge)
And a PIC10F202 is pin compatible to the 200 and works fine too:

Some links about pummers:

• many sources at Google images
• to the beam wiki (www.beam-wiki.org)

And about the PIC microprocessor:

• to the wikipedia's pic page
• to the sprut's pic pages (www.sprut.de) [note: german only]

pic pummer
(click pic to enlarge)
And if you like, here is a little movie about the PIC pummer in action:

It's about ~40 secs, but not very action based - no need to have your heart pills handy :-)

original mp4 (~13 mb - best quality)

avi format (~4 mb - moderate quality)

mpeg format (~4 mb - low quality)

The breadboard version has two Supercaps (Greencaps 3 F, 2.5 V) in series instead of NiMH cells.


pic pummer movie

Not using Flash ?

Excellent choice !


Have fun, blink blink...

• back to bertnase.de

Sat May 22 19:06:08 CEST 2010