The PICKit 1 is a combination programmer and development board for midrange PIC micro-controllers. In addition to being able to program FLASH pic devices, it also allows them to run and access 8 (charlieplexed) LED’s, a pushbutton switch, and a potentiometer. It’s a great little board for learning the basic of micrcontroller programing, but unfortunately it is not supported by Microchip’s new MPLAB X software (that is written in Java, and supports Linux/Mac in addition to Windows).
You CAN however use the PICKit 1 under linux. The piclab software is supposed to support it (I have not tested this). I use version 1.6 of the PicKit1 flash usb programmer for unix. Even the newest 1.6 version reports checksum errors after writing the hex file, but it does work correctly.
To make it work as an external program in MPLABX I had to select the “format HEX file for download” option under the Linker so that it would not fill all 2048 flash bytes when the program was smaller than that. I am able to manually run the usb_pickit command after building to flash the code, but it’s kind of annoying, as that program has a problem verifying the checksum and reports an error every time (which is interpreted as a build failure) plus, I have to run mplab X with root permissions to be able to access my USB port.