Home
Welcome to usbpicprog, an open source Microchip PIC programmer for the USB port. As the therm “open source” implies, the hardware design, the software and the firmware are all available for download free of charge.

Usbpicprog is an USB in circuit programmer for Microchip PIC processors. The hardware is as simple as possible, the current version only contains one PIC18F2550, 4 mosfets, and besides the connectors a hand full of passive components.
On 7 February 2009, Frans Schreuder did a presentation about usbpicprog on the Fosdem, the Free and Open Source Developers European Meeting. The video is available here
Components
Usbpicprog consists of three main components which can be found on the download page:
- Hardware - A PCB design which contains the necessary components to interface from the USB port to a Microchip ICSP (in circuit serial programming) header.
- Firmware - The software that runs on the processor on the PCB. It contains the USB framework, and high and low level functions for PIC in circuit programming.The firmware can also be divided into two parts:
- The bootloader (Microchip Picdem bootloader) has to be loaded only once, after that this part of the firmware can be upgraded through the usbpicprog interface.
- The usbpicprog part of the firmware contains the actual programming algorithms for all the implemented PIC devices.
- PC software - A wxWidgets based (cross platform) application to communicate with the usbpicprog hardware / firmware. This application is known to function well on Linux, Windows (XP / Vista) and Macosx.
The design of the hardware is open and free of charge for the people who have their own PCB production facilities, for those who are not able to build their own usbpicprog, it’s possible to buy usbpicprog in the webshop. Though at the moment I am busy developing the new version of the hardware (0.3), when this version is ready and fully tested I will open the shop page again.
The official releases can be found at the sourceforge download page. If you can’t wait, there are some snapshot releases here.
Status
Currently, a version of the PCB (v0.21) has been released, a new version (0.3) is being developed at the moment and will be available soon.
The embedded software has been released as version 0.2.0, but a lot of work has to be done. Only a few microprocessor families have been implemented as can be seen in the supported devices section.
Version 0.2.0 of the PC application has been released, Check the download page! This PC application is functioning well in Linux (binary build for ubuntu i686 and amd64), Mac OS X and Windows. Special thanks to Jan Paul Posma (Gluggie) for the Mac OS X build!