Minty JDM PIC Programmer
Intro: Minty JDM PIC Programmer
This project details how to build a JDM style programmer to program PIC Microcontrollers using Microchip's ICSP (In Circuit Serial Programming) and freeware software (PICPgm). Total project cost: less than $10. This device has been tested on both the PIC16F877 and PIC18F4550. Check the PICPgm website to see compatibility with other PIC microcontrollers.
I used information from http://www.olimex.com/dev/images/PIC/PIC-USB-4550-sch.gif and Ian's excellent instructible https://www.instructables.com/id/Business-Card-PIC-Programmer/ to complete this project.
I used information from http://www.olimex.com/dev/images/PIC/PIC-USB-4550-sch.gif and Ian's excellent instructible https://www.instructables.com/id/Business-Card-PIC-Programmer/ to complete this project.
STEP 1: Parts and Tools
Most of these parts are fairly common and can be found at Digikey, AllElectonics, or Radio Shack:
(1) DB9 Female Serial port connector w/ at least a 5 wire cable attached (Connector was $4.50)
(1) Cable with 5 wires and a connector to connect to PIC circuit (I used an old mouse cable)
(1) 1.5K Ohm Resistor ($0.14 ea)
(1) 10K Ohm Resistor ($0.14 ea)
(4) 1N4148 Diodes ($0.18 ea)
(1) 8.2V Zener Diode ($0.32 ea)
(1) 5.1V Zener Diode ($0.27ea)
(2) BC547 Transistors ($0.41 ea)
(1) 22uF Tantalum Capacitor ($0.32 ea)
(1) 100uF Electrolytic Capacitor ($0.27 ea)
(1) Small Prototype Board ($1.99 ea)
(1) Small Mint Tin (Had one laying around)
Some small guage wire for connections
Tools required:
- Soldering Iron and Solder
- Wire Strippers
- Multimeter (for checking connections)
(1) DB9 Female Serial port connector w/ at least a 5 wire cable attached (Connector was $4.50)
(1) Cable with 5 wires and a connector to connect to PIC circuit (I used an old mouse cable)
(1) 1.5K Ohm Resistor ($0.14 ea)
(1) 10K Ohm Resistor ($0.14 ea)
(4) 1N4148 Diodes ($0.18 ea)
(1) 8.2V Zener Diode ($0.32 ea)
(1) 5.1V Zener Diode ($0.27ea)
(2) BC547 Transistors ($0.41 ea)
(1) 22uF Tantalum Capacitor ($0.32 ea)
(1) 100uF Electrolytic Capacitor ($0.27 ea)
(1) Small Prototype Board ($1.99 ea)
(1) Small Mint Tin (Had one laying around)
Some small guage wire for connections
Tools required:
- Soldering Iron and Solder
- Wire Strippers
- Multimeter (for checking connections)
STEP 2: Layout
I chose to layout my components in a straight line and make the connections on the back side of the board. Take a look at the schematic on the next step if you wish to have a different layout. If you use this layout, MAKE SURE YOU GET THE DIODES, CAPS, AND TRANSISTORS PLACED PROPERLY! Notice that the last diode is placed opposite of the others. Make sure you have the capacitors oriented to connect the negative lead to ICSP pin #3.
STEP 3: Schematic
Here is the schematic for circuit. The circuit uses power from the serial port to power the PIC microcontroller during programming. Some USB to Serial converters do not work with this circuit because of the voltage needed on the PIC's mclr pin. This circuit works best with on board ports or serial cards. For the ICSP pins, they are connected to the microcontroller as follows:
1. MCLR Pin
2. VDD Pin(s)
3. VSS Pin(s)
4. PGC Clock Pin
5. PGD Data Pin
1. MCLR Pin
2. VDD Pin(s)
3. VSS Pin(s)
4. PGC Clock Pin
5. PGD Data Pin
STEP 4: Soldering
Once the components are in place, solder the pins together as directed by the schematic in the previous step. Use wire to jumper points together as needed. I tested all connections a couple times with the multimeter to make sure that everything was connected properly and that points weren't shorted together. I've attached a schematic to this step that is a mirrored version of the original, it comes in handy when soldering and testing the connections. It shows the view of the circuit as seen from the solder side.
STEP 5: Place in Tin
Take the tin and drill two holes for the cables. Deburr the holes and sand the area so it does not cut into the cables. Place electrical tape or layer hot glue into the bottom of the tin so it does not short out the connections on the back of the board.
STEP 6: Software
I used PICPgm to use with this circuit. You can download it at http://members.aon.at/electronics/pic/picpgm/
STEP 7: Testing
Once the connections have been tested, it is time to connect is to the computer and a test board with a PIC microcontroller. The connections on the ICSP are:
1. MCLR Pin
2. VDD Pin(s)
3. VSS Pin(s)
4. PGC Clock Pin
5. PGD Data Pin
Make sure that all VDD and VSS pins are connected, some PICs have multiple power pins. Consult your Microchip device manual for pin location and wiring. Once you have it connected, start the PICPgm program and press the identify button. Your device info should appear in the window. Load the hex file that you want to program (a simple test program to start with) and hit the Program/Verify button. If all goes well, your chip will be programmed and it will tell you that the verification was successful!
1. MCLR Pin
2. VDD Pin(s)
3. VSS Pin(s)
4. PGC Clock Pin
5. PGD Data Pin
Make sure that all VDD and VSS pins are connected, some PICs have multiple power pins. Consult your Microchip device manual for pin location and wiring. Once you have it connected, start the PICPgm program and press the identify button. Your device info should appear in the window. Load the hex file that you want to program (a simple test program to start with) and hit the Program/Verify button. If all goes well, your chip will be programmed and it will tell you that the verification was successful!
27 Comments
ikovalchuk 10 years ago
How can I make it work with usb2serial adapter? What If I put external +12V from other source?
dirkandterra 10 years ago
Good question, I have been meaning to look at this for a while. Non-Usb serial ports are getting harder to come across. This might work, but I'm not sure how the constant 12v feeding the MCLR transistor will affect the rest of the circuit. Not sure either if the USB to serial adapter might do something weird to the circuit. I have done a little looking, but I am not clear if this will work or not. Sorry!
bishal 10 years ago
dirkandterra 10 years ago
bishal 10 years ago
John C Sunil 11 years ago
dirkandterra 11 years ago
John C Sunil 11 years ago
dirkandterra 11 years ago
xenonic 11 years ago
arun_jadhav1989 12 years ago
i ahve checked all the hardware. it found ok.plz reply its urgent
dirkandterra 12 years ago
xenonic 12 years ago
Checking connection of JDM Programmer ...
Error opening LPT driver!
No Programmer found! Check connection!
No PIC detected!
WHO CAN HELP ME?
thanks
dirkandterra 12 years ago
arun_jadhav1989 12 years ago
ign407 12 years ago
give me a schematic for 18f248 programmer
dirkandterra 12 years ago
1. MCLR Pin is pin 1 on the 248
2. VDD Pin(s) is pin 20 on the 248
3. VSS Pin(s) is pin 8 and 19 on the 248
4. PGC Clock Pin is pin 27 on the 248
5. PGD Data Pin is pin 28 on the 248
The schematic will me the same for the programmer, just connect it to the pic as described above.
robot1398 12 years ago
dirkandterra 12 years ago
robot1398 12 years ago