Clone PicKit2 projetado e fabricado em casa

PicKit2 clone designed and manufactured in-house

PicKit2 is a programmer developed by Microchip to program their pic microcontrollers. PicKit2 supports many series of 8-bit pic microcontrollers. PicKit2 supports almost all Pic-10/12/16/18/24 and dspic-30/33 flash series microcontrollers. Pickit 2 is an ICSP programmer (in-circuit serial programmer). In the ICSP interface, the microcontroller can be programmed while working in the circuit. An ICSP programmer uses 5 pins to program the target microcontroller. Pickit 2 uses an integrated pic18f2550 microcontroller that programs the target microcontroller. Pic18f2550 communicates with computer software using its USB interface and talks to the target microcontroller using its ICSP interface. Thanks to the microchip, they released the pic18f2550 program software. Now you can reverse the pickit 2 circuit and make the pickit 2 programmer at home as a DIY project.

The Pickit 2 requires the following pic microcontroller pins to program it.

  • PGC (clock input for microcontroller)
  • PGD ​​(data input for microcontroller)
  • Vpp (programming mode voltage)
  • Vdd (Power pin apply 5v to it)
  • Gnd (ground this pin)

To program a pic microcontroller you need to identify the top 5 pins on your pic microcontroller and then make connections to the pickit 2 icsp header. Consult the datasheet for your pic microcontroller to identify these pins and then connect the PicKit2 signals to these pins. Typically all pic microcontrollers have icsp pins located at the pin numbers given below.

Source from Wikipedia

Source from Wikipedia

I designed a clone copy of the PicKit 2 programmer at home as a DIY project. All the components needed to build the kit can be easily found at an electronics store. I bought all the components from an online electronics store.

The circuit I followed to build the Kit is obtained from

I made some changes to the Circuit.

  • The inductor I used in my Pickit2 is 680uH.
  • Button with pin #26 is included to reload the boot loader if the boot loader is corrupted.

If you use the circuit given in tiktakx.wordpress.com, you will not be able to load the boot loader if it is corrupted. You will have to manually remove the Pic18F2550-ICSP controller from the Kit and reprogram it from another Pickit2. The circuit diagram of the clone is given below.

PicKit2 Circuit

PicKit2 Circuit

My final kit is below. I made Pickit2 and the program executor on a single board. I program the Pic microcontroller on one side, then remove the controller, place it on the other side of the zif socket, turn on the power, and my program starts running.

Note: My PicKit2 is chosen by my PC the first time when I connected it to the PC for the first time. This means there is no problem with the circuit and components. I didn't receive any errors on the hardware or software part of PicKit2. It means I'm lucky :D

Homemade PicKit2 clone

Homemade PicKit2 clone

I divided my painting into two parts.

  • Program Executor
  • PicKit2 Circuit

I made the PCB for both the circuit program executor and the PicKit2. Then I printed them on the PCB sheet one by one manually. I first printed the circuit on the sticker sheet using a laser printer and then pasted the circuit onto the PCB sheet with the help of an iron.

I designed the PCB of the program executor and PicKit2 circuit using EasyEda online PCB editor software. Easyeda is an online PCB editor software and it is easy to use and design PCB using easy eda. Numerous defined component footprints are available in Easyeda, you can also import and use footprints from many other PCB editing software in easy eda.

Download pickit 2 programmer PCB files from the links below

Program Executor PCB

Program Executor PCB

Program Executor PCB

PicKit2 printed circuit board

PicKit2 printed circuit board

PicKit2 printed circuit board
Once my hardware is complete, it's time to download the boot loader onto the pic18f2550 microcontroller. I programmed the PIC18F2550-ICSP from another image programmer. You must initially program the PIC18F2550-ICSP controller. The programming file is available below and also on the Microchip website.

PicKit2 programming file pic18f2550 – Bootloader

This file is required to be loaded into the 18F2550/ICSP. When you connect Pickit2 to your PC, this file tells the PC that this is a USB device. Once Pickit2 is picked up by your PC, now it's time to download the bootloader on it. A flashing LED on the kit informs you of this. If the red LED is blinking, it means your pickit2 wants the boot loader to be loaded into it. You can load the bootloader from PicKit2 software or MP-Lab IDE. I loaded it from MP-Lab IDE.

Just connect your PicKit2 to your PC. Open MPLAB-IDE Go to Programmer>Select Programmer>PicKit2. As soon as you select PicKit2, a status will appear in the MPLAB window that says Pickit2 found and you will see MPLAB loading the Boot Loader on PicKit2.

pickit2bootloader.hex
File size: 11kb
File type: hexadecimal

⇬ Download the file


MPLAB IDE Downloading the PicKit2 bootloader into the Kit.

MPLAB IDE Downloading the PicKit2 bootloader into the Kit.

Now PicKit2 is ready and it's time to test it. I tested it and the first test gave me 100% results. Connect the Pickit 2 programmer to the PC and see what the software is showing and the hardware status.

PicKit2 message found and connected in PICKit2 programmer

PicKit2 message found and connected in PICKit2 programmer
It's time to import a hex file and program a target microcontroller. I am going to program an 8-bit pic16f877 microchip microcontroller with pickit 2 programmer

Hex file loaded successfully

Hexadecimal file successfully loaded into pickit2 programmer

Hexadecimal file successfully loaded into pickit2 programmer
Successful program

Pickit2 program success message displayed in PicKi2 programmer

Pickit2 program success message displayed in PicKi2 programmer
Please give us your feedback on the project. If you have any questions, write them below in the comments section.

Related Content

Back to blog

Leave a comment

Please note, comments need to be approved before they are published.