Introduction: Simple JDM PIC Programmer

Picture of Simple JDM PIC Programmer

I have built this project to burn my small PIC's
This is a serial programmer works on the RS232 ( PC serial port ), known as JDM Programmer, thanks to the site which contains the schematic and the programmer software.

The programmer is powered from the Serial port itself, so there's no need to any external power supply.
But be careful this circuit will not work with the Laptop Serial port due to the weak voltages it has.

- I have used a very nice programmer software called "Win PIC Programmer" you can download it from, it's very stable and powerful.

The project has been tested with the following IC's :


Step 1: The Schematic

Picture of The Schematic

The Schematic for this project is shown below, no critical components .

Step 2: The PCB

- I have made the PCB using WinQcad Software it's easy and has a nice autorouting feature. Please download the PDF document which contains the true scale dimensions.

You will see two files :

PCB.pdf and PCB_copper_pour.pdf
the second one has a "mass copper pour" to save your etching solution and to speed up the etching process without affecting your tracks.

- I used the Toner Transfer method draw the tracks, i can say the output is nice. I have included the steps required to make PCB in the following steps.

Step 3: Toner Still on the PCB

Picture of Toner Still on the PCB

This output from the Ironing process, you can see the black toner tracks, the paper has been removed using a tooth brush.

Step 4: Etching

Picture of Etching

The PCB is then inserted in the Etching solution, i used Ferric chloride it's cheap in my country.
Be careful it's a toxic material don't do this step in your kitchen.
Actually i did, but my wife wasn't there :)

Step 5: Final PCB

Picture of Final PCB

I used acetone to remove the toner, then it's ready to drilled.

Step 6: Soldering

Picture of Soldering

The components are soldered.
Note the brown wire, i have made a mistake when routing the PCB in WinQCad, don't worry it's corrected in the attached pdf files.

Notice the drawings on the component side, it's a guide when placing the components in case it's a big project :-)


PhạmL (author)2017-06-26

Can I connect Vdd to a 5V supply or TxD pin with a 78l05?

The PlaidG (author)2016-04-16

Can I drill the holes now?
Or do I need to do something else?

SebastianS29 (author)The PlaidG2017-02-09

did you etch the copper on the board?

The PlaidG (author)SebastianS292017-02-09

Yes, this picture was before I scraped the toner off of the board using steel wool. Underneath is the copper etch.

UtkarshVerma (author)2016-11-11

even though my pc serial port gives 12V, my pc isnt detecting this programmer

faneendra27 (author)2012-08-30

i don''t have serial port on my pc,so can i use serial to usb adapter,will it works?
reply me plzzz i need to program pic16f628A.thanx in advance

KhoiS (author)faneendra272016-09-15

No, it won't work with a usb-serial converter.

roosterdr (author)faneendra272012-10-08

Hi, did anyone ever your question about converting to USB? I have the same issue.


Sjoerd X (author)faneendra272012-09-05

I have the same question :)

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?

KhoiS (author)chetancc2016-09-15

PICKIT2 is the best programmer. I tried an Chineese clone with a pic12f629 and it works fine.

Larry99W (author)2013-02-08

Very Good Article. I need to program a 28 pin dip (PIC18F2220). Will this do the job? What mods are needed other than the bigger socket? What software do you recommend? Many Thanks. This is for a GPS Disciplined Oscillator. 73, Larry

KhoiS (author)Larry99W2016-09-15

nope. Using this programmer with that PIC won't work and it might even kill it!

MTXRooster (author)2013-10-02

Anyone know if a PIC16c54 chip would work? Not sure of the differences between a 16C54 and a 16f84?

KhoiS (author)MTXRooster2016-09-15

16Cxx are HISTORY. It's almost USELESS since you could only program it ONCE.

16Fxx are flash-based so you could program it multiple times. And 16F84 is more powerful.

João DivanyG (author)2016-06-28
It worked very well for PIC16F84A with WinPIC programmer
SoporteP (author)João DivanyG2016-07-04

you tried it with some kind of adapter or directly to the serial port

João DivanyG (author)SoporteP2016-07-05


Some USB serial converters are for the RS232 protocol , thus they are have the txd and RxD functions ( pin 2 and 3) , look for a converssor that can perform communication with flow control hardware.

KhoiS (author)João DivanyG2016-09-15

Converters won't work, since the programmer needs 12v from the PC and converters could only supply 5v

ratiga (author)2016-08-13

this work for pic 16c625?

KhoiS (author)ratiga2016-09-15

no. by the way, 16c625 is an OTP mcu so you can only use it once. Get a pic 16f84.

rabehrock (author)2016-09-05

i made it and tested it on pic16f84a and it works fine, thanks elab

The PlaidG (author)2016-05-12

Programmer still is not working I tried using a null modem cable and still have no luck please help thanks...

SoporteP (author)The PlaidG2016-07-04

you tested directly connected to the com port on your PC without any type of adapter usb

Bob_ee (author)The PlaidG2016-05-13

You bought the wrong type of connector from Amazon - you have to remove it. The female and male versions don't have the same pinout because one is the mirrored version of the other. so you;ve connected pin1 to pin5, pin5 to pin1 etc. etc.

Alternatively to using the null-modem cable you can solder not a connector but coloured wires to the programmer board and then solder a female connector (making sure pin numbers match correctly) on the other end of those wires. Then you would plug the female connector directly into the COM port of your PC. Don't make the wires too long though. This works - I tested it.

ravichandra14556 (author)2016-05-11

sir iam programmed comparator program in 16f628a micro controller.after some time the processor getting out of from to avoid sir

The PlaidG (author)2016-05-09

The programmar is not working I followed the schematic exactly but the Program doesn't detect the pic

Bob_ee (author)The PlaidG2016-05-10

Looks from your photo like you are using a female DB9 Sub connector. The picture above posted by the author shows that he used a male version of the connector (which should be used with a null-modem cable).

The PlaidG (author)Bob_ee2016-05-11

Can I just you a m/f null connector? Instead of replacing my female sub connector?

The PlaidG (author)Bob_ee2016-05-10

This is the one that I used: So are you saying I need to switch it with a Male sub connector and then use a null-modem cable to connect it?

The PlaidG (author)2016-05-09

The programmar is not working I followed the schematic exactly but the Program doesn't detect the pic

The PlaidG made it! (author)2016-05-04

I finally made it. Still have to test it out though

GarethA1 made it! (author)2014-10-13

Used a slightly different circuit but it works! p.s zener diode is under the board

The PlaidG (author)GarethA12016-04-10

Could you show the underneath? (soldered part)

GarethA1 (author)The PlaidG2016-04-12

Hi, I don't have this circuit board anymore but

I believe I followed this diagram:


The PlaidG (author)2016-04-09

What size PCB is used?

The PlaidG (author)2016-04-09

What size board did you use?

Dave R.M (author)2016-01-05


surya raju (author)2015-12-06

Hello!will this work with a USB to RS232 converter?i have read that the programming process becomes slow and in few cases it wont work altogether.

surya raju (author)2015-12-06

Hello!will this work equally well with a USB to RS232 converter,i have read that programming gets slower in some cases.

YULIA3 (author)2015-08-20

YULIA3 (author)2015-08-20

thanks for sharing..

SamannoyG (author)2015-05-07

Can the circuit work equally well,if i use 1N4007 diode instead of 1N4148??

hedra.adel (author)2015-01-05

i have a problem , my Serial port outpot is just 9 volt , what is the solution?

thank you for your time :)

Yoruk (author)2014-08-19

could you share with us the parts layout, component side, for the new design ? thanks !

xenonic (author)2012-08-19

I made it and it just works... AWESOME! really fast programming with PICPGM. Thanks a lot! Now i only need a software to write the code in basic and compile it to hex. Does anybody knows that kind of software? THANKS!

eshahnazi (author)xenonic2014-07-17

micro bacic

Sjoerd X (author)xenonic2012-09-30

I've asked that question in the Q&A and here's the answer:

edy91 (author)2011-09-16

hello... can any one give me te references of the computer compatible with thes circuit... i am trying using a intel core 2 due but it is not detecting the circuit im the paralel port...
please help me... i am trying for a long time now...

About This Instructable




More by hosam_eldin:Simple JDM PIC ProgrammerHow to make Lithium chargerNiCd - NiMH PC Based Smart Charger - Discharger
Add instructable to: