Introduction: Cheap PIC Programmer

Picture of Cheap PIC Programmer

This programmer works only with PIC16F84 but it's great because it never causes errors and works with almost all computers,unlike some other homemade programmers.

Step 1: Step One : Materials

For this programmer you won't need many materials.In fact , you will find all you need in your local electronics shop ;)

So here's what materials you will need:
-IC Board
-RS232(Serial) FEMALE connector
-BC547B or 2N3904 (I couldn't find the BC so i used 2N3904,it works great)
-5.1 V diode
-100 uF 16V Electrolytic Capacitor
-18 PIN IC Socket
-10Kohm resistor
-15Kohm resistor

-Flashing red LED / 2.1 V Standard Red LED
-3.3Kohm Resistor]

-PIC16F84A Microcontroller

-Soldering Iron
-Scissors or any other cuting tool

-Hot glue gun]

Step 2: Step Two : the Scheme

Picture of Step Two : the Scheme

This is the scheme you will use for your programmer.
As you can see , i tagged two connection in the scheme as "Optional point" one and two .
Those are the points where you will connect the "Optional" circuit i will show you in step 3

Step 3: Step Three : the Optional Circuit

Picture of Step Three : the Optional Circuit

The optional circuit consists of the LED and 3.3 Kohm resistor marked as optional in step one.
One pin of the resistor goes in the Optional point one , the other pin goes in the anode(+) of the LED.
The cathone(-) pin of the LED will go in Optional point two.
If you don't understand , use the ellipse marked area of the scheme below.

Step 4: Step Four : Let's Build It !

Picture of Step Four : Let's Build It !

Ok , you've got all you need.Now it's time to build it.
First solder the RS232 female connector in a corner of your IC Board.If you don't know what are the connectors of the RS232 i uploaded an image.
After you soldered the RS232 , solder all elements according to the schematic,and then cut the board.
After you cut the board,secure all solderings with hot glue (optional).
You're done!

Step 5: Step Five : Programming?!

To program you can use Microcode Studio PICBASIC Pro.To find it search for PICBASIC on google.
After you programmed and you got a HEX code , plug the programmer in the PC , and start WinPic (get it here: ) . Go to interface tab and configure it for your programmer.Then load a HEX in the buffer go to device,config , configure your device (PIC16F84), and click "program device".

Step 6: Step Six : If You Have Problems...

There are some problems that can appear,here is how to solve them:
Error Message:Warning!Could not initialize programmer!
Solution:Configure the interface again or check the circuit for soldering errors.
Error Message:Programming FAILED!(but the programmer initialized succesfully)
Cause:Soldering error/Too low voltage
Solution:Check the circuit for soldering errors / change the port

Step 7: That's All

Picture of That's All

Here is where the instructable ends.I hope i helped you with the programmer.
By the way , here is how mine looks like:


alzrc_13j (author)2009-06-29

ei broken swords im from philippines too,laguna naman...uhm could anyone please tell me what PIc means???i've been searching the net for any definitions but i can't get any.i want to know about controllers,programmers and ics but somehow i find it difficult specially if i dont even know the basics...hhahahaha so anyone to help and give anything that can help is greatly appreciated....thanks...

theXmaker (author)alzrc_13j2009-09-05

Programmable Integrated Circuit !!

KhoiS (author)theXmaker2016-08-18

No. That would be like a GAL or a SPLD

alzrc_13j (author)alzrc_13j2009-09-07

hahahaha tnx everybody especially to cidXI hahahahaha i'll start looking for the components hehehehe

cidXI (author)alzrc_13j2009-09-05

PIC = Peripheral Interface Controller

teh_noob (author)alzrc_13j2009-07-03

PIC is a type of microcontroller. you should get a book on it, i suggest you get PIC Microcontroller Project Book Second Edition

ET2009 (author)2009-10-06

which software ware we use computer side

KhoiS (author)ET20092016-08-18

WinPic, WinPic800, PICPgm, ICProg.

henyo2490 (author)2010-07-06

i have question, do I need a external power supply using this circuit?

KhoiS (author)henyo24902016-08-18


double_g (author)2013-04-25

I don't understand your schematic. You have GND going to Vdd (Vdd should be your positive voltage)? And then Vss is just your VDD run through a cap? The diode theoretically wouldn't even do anything since Vss should always be less than Vdd. Can you give me some insight into what's going on here?

KhoiS (author)double_g2016-08-18

This isn't his schema. This is from some random guy named "JDM" from about '96 (I'm serious! He used to have a website, but now the site no longer exists.) btw you HAVE to supply external power to the programmer (more exactly the pic)

black_demon_31 (author)2013-01-20

Great! Built the board, but I have the problem of Low voltage! What should I do?

KhoiS (author)black_demon_312016-08-18

If you used it on a LVP chip (like a dsPIC) then, you have just killed the chip! JDM programmers aren't meant for LVP. GET A PICKIT2!

kuyabunso (author)2013-02-03

can I use rs232 to usb adaptor?

KhoiS (author)kuyabunso2016-08-18

No it won't. Because it needs 12v from the PC to program the chip (Vpp requires 12v).

INdek (author)2013-07-20

Anyone know if it works with rs232 to usb adapter?

KhoiS (author)INdek2016-08-18

No it won't. Because it needs 12v from the PC to program the chip (Vpp requires 12v)

chetancc (author)2012-12-28

I want to program PIC12F629 with readymade .hex code. Which programmer should I use? I would like to know the best and cheapest programmer available. I bought PICKIT2 clone from India but I had very bad experience with it. I couldn't program with it.
Can you please suggest me good programmer?

aadarsh13 (author)chetancc2015-01-10

Me too have pic12F629 to program pic......I have PICpgm programmer software but still I didn't tried...If you get solution please help me..If I get I will help.....

KhoiS (author)aadarsh132016-08-18

I tried using a JDM programmer with a pic12f629 and a pic16f54. It didn't work. I think that both of those chips needs Vpp(MCLR) before Vdd or Vdd before Vpp, which pic16f54 doesn't need that.

KhoiS (author)chetancc2016-08-18

Simply because PICKIT2 clones NEVER support high voltage programming(hvp) (only 5v max), which requires 12v+ supply for Vpp(MCLR). I tried already. No luck. I would suggest an REAL PICKIT2 from Microchip.

LinkerL (author)2015-11-27

Go to interface tab and configure it for your programmer. The question is, which type is this one?

devavrat.munagekar (author)2015-03-19

hi I want to make 20 pins IC programmer what should I do? what is the circuit diagram for it ?

mansman (author)2010-07-28

can i use 5.6 zener instead of 5.1v please tell me i can't find 5.1v zener in my place

TanishqA (author)mansman2014-08-03

I was wondering the same thing.

Suraj Grewal (author)2012-05-05

I tested on pic 16f84a

Suraj Grewal (author)2012-05-05

This is working,working smoothly without any problems it programms very fast,efficiently,and without any errors.

SDJ012 (author)2011-12-27

is this really working? thanks

mujtaba ali (author)2011-11-14

plz tell me that using of this programer, can we programe to PIC16F628 PIC16F877 & PIC16F876.......?


dhamidovic (author)2011-07-08

please, can anyone say is this correct what 'eng3mda' said..
should I put resistor value-330 ohm or 3.3k ohm ????

yours31f (author)2011-06-23

I got everything from ebay for $13.12 total. Not a bad price plus I can build 2, with tons of left over parts, I did have to modify for an 8 pin chip though.

female serial : 1.95
2N3904 transistor: 2.50
5.1 V diode: 1.59
100 uF 16V Electrolytic Capacitor: 1.99
8 PIN IC Socket .99
10Kohm resistor 2.05
15Kohm resistor 2.05

robomatt1999 (author)2011-04-11

will this work with a pic18f4550 microcontroller if you use a 40 pin ic socket?

xAxrules (author)2011-03-04

Same as Revenna, most recent PCs don't meet the spec of RS232 (that is, that it can output 15v), I am able to read the pic and initialise the programmer fine, but I can't write as I can't get the voltage high enough on the MCLR pin.

nadav (author)2011-02-23

can i use a 2N2222 transistor instead of the 2N3904?

Revenna (author)2011-02-04

Just made one of these and I thought I'd state that my PC doesn't seem capable of outputting enough current/voltage to actually program a PIC with this device. It can read a PIC just fine, but I get tons of errors every time I try to write one. I'd suggest trying a battery/AC powered programmer if you can't get something like this to work. 

Here's some useful links for the people asking for help:
9-pin serial pinout
25-pin serial pinout
PIC16F84A Datasheet
Electronic components

frawtan (author)2010-12-05

Hi!..i just wanna ask if this programmer can program PIC10F200 and PIC12F629?..


Makeman (author)2010-11-17

i dont understand the scheme

femap (author)2010-04-06

I don't understand the schematic. Is there a pin labeled 20? Would someone please show the soldered part of the programmer?

xAxrules (author)femap2010-11-13

If you read the OPTIONAL schematic, the pins are labelled correctly there.

10032685 (author)femap2010-06-06

I think it's the terminals if this circuit were connected to a 25 pin serial connector. Here is a way to translate the pin layout:

Psychic Master (author)2009-08-10

what is a common appliance where the diode can be found

Maybe a time dilation device. Or a flux capacitor.

obie87 (author)2010-08-08

hi, i want to know if this Programmer can program PIC 16LF628A, Thanks

shaf789 (author)2010-07-28

its ot woking? yyyyyyyy? o :(

shaf789 (author)shaf7892010-07-29

its not working y? a need a halp plx

mansman (author)2010-07-07

can this programmer work with 16f628a properly

XxShadowxX14 (author)2009-10-05

would this programmer work with a PIC16F88 by any chance?

arcane2rox (author)XxShadowxX142010-05-19

I just checked and  both ICs have the same pinout so it should work!

mtor (author)XxShadowxX142010-04-07

I don't think so.  I got the schematics from another site and it stated that it would only work for the PIC16F84, PIC16F84A, PIC16C84 PIC16F628A (Basically all the same chip)

About This Instructable




Bio: I make electronic stuff.Because I Can.
More by Vladmakesstuff:Portal "Still Alive" on AVR microcontrollersBuild the Penguin game systemChange the led's from your keyboard
Add instructable to: