PIC18F24K50 USB HID bootloader

This bootloader is compatible with Microchip's HID bootloader, which is available in Microchip application libraries. The original Microchip bootloader is written in C and targeted for Microchip C18 compiler. It consumes 4 kB of the precious PIC program memory, which means already 1/4 of the total available in 18F24K50. This bootloader however is written in ASM, and consumes less than 2 kB, leaving more space for the actual application. This beautiful piece of code is written by a Japanese guy SAKA, with some modifications by me for use with JAKADAPTER.

Here's related downloads:
bootloader-PIC18F24K50-dav-232.zip    The bootloader .HEX v.2.32, compiled 15.10.2014 with MPASM v5.51
usb_bootloader.h    Header file to relocate application program and interrupt vector. For CCS compiler.
microchip_hid_bootloader_v290a.7z    Windows GUI bootloader by Microchip, v2.90a
mphidflash-1.6-bin.zip    Command line bootloader for Linux, OSX and Windows from the excellent mphidflash project

Bootloader switch must be connected on pin RC2 with external pull-up. With the JAKADAPTER, this means keeping joystick 1 fire button pressed during USB cable plug-in. In addition to RC2 pull-up, only the VCC and Vusb bypass capacitors are required. See example schematic diagram below.

PIC18F24K50 HID bootloader schematic diagram

The code uses internal oscillator with sync to USB clock. The config registers are set according to image below:
Config registers for bootloader v.2.32

page created 26.7.2014
last updated 7.2.2015 webmaster@kair.us