Basic JDM PIC Programmer

Help me to develope
If you find this project interesting, give it a like and share it!


Fig.1 - The basic JDM programmer

Fig.1 – The basic JDM programmer

Some years ago, in order to make some experiment at home with the PIC16F84A microcontroller, I needed to build a programmer. Surfing on internet I found lots of solutions and I decided to realize one of the easiest ones: a JDM programmer.

The cost of the project is probably a couple of Euros. In the PCB in figure 1, I used only components I had available at home and for that reason the DIP socket is 20 pin instead of 18.

I remember leaving the schematic as it was and drew it directly on Eagle, as shown in figure 2. Today I tried to find on the web the original project with no success. A similar one is published on the PICPgm‘s website (figure 3) but others are available on various websites as well. So, I don’t know exactly who to thank for this :-)


Some variations on the PICPgm’s suggested circuit

Fig.2 - The basic JDM programmer's schematic

Fig.2 – The basic JDM programmer’s schematic

I tested the programmer with PICPgm (the Linux version) and it works well enough.

Fig.3 - The PICPgm's programmer version

Fig.3 – The PICPgm’s programmer version

Sometimes the write verification finds some errors and you need to reprogram the PIC. I discovered also that the programmer works perfectly on all my computers except my partner’s laptop (but no problems with mine). Apart from that, the programmer does what it has to do and, thanks to its simplicity and its ridiculous cost, it deserves to be at least tried.

The JDM programmer supports many other microcontrollers than the PIC16F84A . The list is published on the PICPgm‘s website but of course, for physical reasons, is restricted to the 8 and 18 pin ones.


Build the PCB

Fig.4 - The PCB layout

Fig.4 – The PCB layout

Fig.5 - The PCB mask

Fig.5 – The PCB mask

The realization is elementary. After having made the PCB, pay attention to solder all the components with the right polarity.  Once built, the programmer is ready to use and it should work when connected to a serial port of your computer.

If you are tempted to modify the circuit and connect the board’s GND to the cable shield, don’t do it. For that reason you cannot see the metal plate installed on the RS232’s connector in figure 1.

If the board doesn’t work, try it on another computer. Notice that USB-to-Serial adapters don’t work and serial extensions may cause problems with the transmissions of the data.


Download the project

Pressing the button below you can download a compressed file with all the necessary material to build this project:

  • the pictures of the final project, the schematic, the PCB mask and the PCB layout as shown in this post;
  • the schematic and the board files in Eagle format.

If you need some help please do not hesitate to contact me or leave your comments below. Enjoy it!

BP0002 (715.2 KiB, 370 downloads)


I have decided to share my knowledge and my projects for free, so I have not inserted any annoying ads on Despite this, if you like my website, please help me in developing it by leaving comments and suggestions, or by making a small donation pressing the button below.
Grazie di cuore, Andrea Dal Maso



This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

One thought on “Basic JDM PIC Programmer

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>