|This article needs additional citations for verification. (February 2011)|
||This article's tone or style may not reflect the encyclopedic tone used on Wikipedia. (September 2014)|
PICkit is a family of programmers for PIC microcontrollers made by Microchip Technology. They are used to program and debug microcontrollers, as well as program EEPROM. Some models also feature logic analyzer and serial communications (UART) tool.
The people who develop open-source software for the PICkit use a mailing list for collaboration.
The PICkit 1 — introduced on March 31, 2003 for US$36 — was a rudimentary USB programmer for PIC microcontrollers, produced by Microchip Technology, the manufacturers of the PIC series of microcontrollers. It was integrated into a demonstrator board, featuring eight LEDs, a switch, and a potentiometer. Its default program, explained in the documentation, rotates the LEDs in series. The light display's direction and speed of rotation can be changed with the button and potentiometer on the PICkit board.
The PICkit 2 — introduced in May 2005 — replaced the PICkit 1. The most notable difference between the two is that the PICkit 2 has a separate programmer/debugger unit which plugs into the board carrying the chip to be programmed, whereas the PICkit 1 was a single unit. This makes it possible to use the programmer with a custom circuit board via an In Circuit Serial Programming (ICSP) header. This feature is not intended for so-called "production" programming, however.
The PICkit 2 uses an internal PIC18F2550 with FullSpeed USB. The latest PICkit 2 firmware allows the user to program and debug most of the 8 and 16 bit PICmicro and dsPIC members of the Microchip product line.
The PICkit 2 is open to the public, including its hardware schematic, firmware source code (in C language) and application programs (in C# language). End users and third parties can easily modify both the hardware and software for enhanced features. e.g. GNU/Linux version of PICkit 2 application software, DOS style CMD support, etc.
The PICkit 2 has a programmer-to-go (PTG) feature, which can download the hex file and programming instructions into on-board memory (128 KB I²C EEPROM or 256 KB I2C EEPROM), so that no PC is required at the end application.
The Microchip version of PICkit 2 has a standard 128 KB memory. 256 KB memory can be achieved by modifying the hardware or from third party.
Additionally, a 500 kHz three-channel logic analyser and a UART tool are built into the PICkit 2. These features are missing from the PICkit 3.
Since release of V2.61, PICkit 2 PC software now supports a maximum 4 megabytes of memory for the programmer-to-go feature. This modification makes the PICkit 2 support eight times as much memory as the PICkit 3. This enhancement has been contributed by Au Group Electronics and the PICkit 2 firmware is also reported to be submitted to Microchip PICkit 2 team in the middle of March 2009. This enhancement may be integrated into future firmware releases, too.
Microchip has gone on to manufacture the PICkit 3, a variation of the PICkit 2 with the same form factor and a new translucent case. It features a faster 16-bit PIC24F processor and a wider voltage regulation range. There are some complaints of it not being as reliable as the Pickit 2.
Both PICkit 2 and PICkit 3 have internal, switch-mode voltage regulators. This allows them, in the case of the PICkit 2, to generate voltages from 2.5 to 5 volts, or in the case of the PICkit 3, 2.5 to 5.5 volts, from a 5 V USB supply, at around 100 mA. Both have options for calibrating the output with a multimeter, for increased accuracy. Additionally, for some PICs, the MCLR programming voltage can be generated, at around 13 to 14 volts. This voltage is required to reprogram the flash memory.
PICkit 2 has been an interesting PIC programmer from Microchip. It can program most PICs and debug most of the PICs (as of May-2009, only the PIC32 family is not supported for MPLAB debugging). Ever since its first releases, all software source code (firmware, PC application) and hardware schematics are open to the public. This makes it relatively easy for an end user to modify the programmer for use with a non-Windows operating system such as Linux or Mac OS. In the meantime, it also creates much DIY interest and clones. This open-source structure brings many features to the PICkit 2 community, such as Programmer-to-Go, the UART Tool and the Logic Tool, which have been contributed by PICkit 2 users. Users have also added such features to the PICkit 2 as 4 MB Programmer-to-go capability, USB buck/boost circuits, RJ12 type connectors, and more. It even penetrated into the Atmel community as it is able to be configured into an AVR ICSP tool.
There are many other USB PIC programmers other than the PICkit series.
- pickit-devel: "Discussion of open-source development for Microchip's PICkit series of programmers." http://groups.google.com/group/pickit-devel
- PICkit 1 press release
- PICkit 2 User's Guide, from which the product introduction date was inferred; also contains warning against using PICkit 2 programmer for production programming
- avrdude listed pickit2 as an programming adapter for Atmel AVR chips: http://www.nongnu.org/avrdude/user-manual/avrdude_4.html
- iCircuit iCP02 USB PIC Programmer
|Wikimedia Commons has media related to PIC development tools.|
- PICkit 2 Microcontroller Programmer User's Guide
- Au Group Electronics CB0703
- A Serial Port Based PIC Programmer
- Microchip PICkit 3 Programmer/Debugger Review Video
- Simplest Pickit 2 Clone 
- Chuck Hellebuyck. "USB PIC programmers". Nuts and Volts magazine.