Built a USB PIC microcontroller programmer, the usbpicprog. I used Marcelo Maggi’s version with daughter boards for the USB and ZIF. The boards had some narrow traces–I had two small defects after eteching, and lost a few more pads soldering the components on. Small wires fixed things up and it worked first time.

The instructions aren’t very clear. The bootloader .hex gets burned using a JDM programmer using the self programmer header. Then place a jumper on the self programming header Vpp and Vdd, plug it into the USB port, run usbpicprog. These messages appear on the command line:
Bootloader Devid: 11240
Autodetected PIC ID: 0x11240

Then open the firmware .hex and burn it. The program said it completed OK. Then quit the program, remove the USB cord, and add a second jumper on the self programming header from the Clk pin to Gnd.

After this it I connected my PIC18F46K20 to the ICSP header (on a breadboard), plugged in the USB cable, and ran usbpicprog again. I opened my .hex and burned it. It said the code burned OK but gave an error for the configuration bits (like I was getting from the JDM programmers). Then I tried erasing it followed by running blank check. Both of these completed OK. I re-burned my program, and this time it worked! Configuration bits were programmed and verified!

So far I’ve only finished the main board. I made the USB board but haven’t populated it yet. I intend this mainly for ICSP programming, so I haven’t decided on whether to make the ZIF board. I do need to make an enclosure.

usbpicprog top side
usbpicprog bottom side
You can see some of the trace repairs.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>