If you would search the internet you will find quite some DIY pic programmers. However, those designs often either require a true serial or parallel port instead of an easily available USB port or are designed around a pre-programmed controller assuming access to a programmer.
A compelling alternative would be the use of an Arduino as in the ArdPicProg. Load the Arduino sketch, the host program and add a prototype shield with a very limited number of additional components to build your pic programmer. This programmer features also a ICD connector and an RJ-11 jack (ICD2) interface. The complete project including hard- and software is open source and is released under the GNU General Public License Version 3. You can build your own ArdPicProg by using the especially designed PCB.
The complete setup and the application of the ArdPicProg is described in more detail in the User’s Guide.
Host-Software for ArdPicProg
For programming a pic controller a host software would be required. You can select between two options: the terminal program “Ardpicprog” or the “Arduino Pic Programmer” (ArdPicProgHost) with a Windows based graphical user interface. The source code for both programs is Open Source and would be available for download on github.
Arduino Pic Programmer (ArdPicProgHost)
This windows application offers a modern and intuitive way of programming a pic controller.
Controllers which are supported by the Arduino Pic programmer can be read, erased, and written. The user interface and the program options are also described in the User’s Guide.
ArdPicProgHost was programmed with Microsoft VB2010 Express and is released under a GNU General Public License Version 3. The source code is provided through a github repository. The executable (Release 0.2.7) can be downloaded here:
The software does not require any installation. After downloading and unzipping the program can be executed right away.
PicProgHost (terminal program)
You could also employ the host application “PicProgHost” for programming pic controllers which offers a terminal interface. The application is based on the open source Ardpicprog host software you would find on the ArdpicProg project pages. These pages also provide for a suitable documentation of the program operation.
The original source code has been migrated to a Qt 5 environment and the most recent version is now capable of handling COM ports > 9. The can be downloaded here:>
There is no program installation required. The user interface is also described in the User’s Guide.
Arduino sketch “ProgramPic”
The “ProgramPic” Sketch which is required for using the Arduino ArdPicProg shield is released under a GNU General Public License Version 3 The sketch is provided through the ProgramPic github repository.
ArdPicProg printed circuit board
The ArdPicProg PCB is available in the store.