USBThumb is a miniature PIC USB development platform with an integrated USB bootloader. Its main purpose is development of thumb-sized USB gadgets , for example: serial converters, mouse, gamepad , keyboard emulators, usb dongles, etc.
USBThumb has the minimum necessary hardware to implement a USB device. Its bill of materials is minimalistic on purpose – so you could understand what is really necessary to create a USB device.
USBThumb was build as a small-size version of Mircochip's Low Pin Count USB Develpment Kit. All sample code that Microchip provides for Low Pin Count USB Board will also work with USBThumb since they are both based on same MCU PIC18F14K50.
Here are just few applications that you can customize or use "as is" once you download the Microchip's USB Framework, now part of Microchip Application Libraries:
USB Device – Audio – Microphone
USB Device – Audio – MIDI
USB Device – Bootloaders
USB Device – CDC – Basic Demo
USB Device – CDC – Serial Emulator
USB Device – HID – Custom Demos
USB Device – HID – Digitizers
USB Device – HID – Joystick
USB Device – HID – Keyboard
USB Device – HID – Mouse
USB Device – HID – Uninterruptible Power Supply
USB Device – LibUSB – Generic Driver Demo
USB Device – MCHPUSB – Generic Driver Demo
USB Device – WinUSB – Generic Driver Demo
USB Device – WinUSB – High Bandwidth Demo
USB OTG – MCHPUSB – Generic Driver Demo
USB PC – WM_DEVICECHANGE Demo
USB Precompiled Demos
USB Precompiled Library Projects
UsbThumb comes with some firmware applications that we have created/customized. UsbThumb mates and is pin compatible with Acc_Gyro shields. Other prototyping shields can be used for developing more complex applications.
Free development tools are available courtesy of Microchip: MPLAB IDE, C18 compiler, Microchip USB Framework .A PIC programmer is not necessary, because USBThumb comes with a built-in USB booloader, so you can upload your firmware using the USB port and a software utility part of USB Framework Library (USB Hid Bootloader). For more advanced work we recommend PicKit2/PicKit3 in-circuit programmers/debuggers.
Documents / Resources
Instructions for Updating Firmware using Bootloader
PIC18F14K50 MCU Information / Datasheets
MPLAB IDE (Free)
C18 compiler (Free LITE/Academic Editions)
Microchip USB Framework (Free, also contains tons of sample projects look for the ones compatible with “Low Pin Count Usb Development Kit”)
Sample Projects and Code:
http://code.google.com/p/usbthumb/ (USBThumb Code Projects Home)
http://code.google.com/p/usbthumb/source/browse/#svn/trunk (SVN Repository of code projects for USBThumb)
http://www.starlino.com/usbthumb_mouse_emulator.html (USB Mouse Emulator using UsbThumb)
http://www.starlino.com/usb_thumb_imu.html (USB HID Gamepad Emulator + IMU Device using UsbThumb and Acc_Gyro)
http://www.starlino.com/usbthumb_firmware_upgrade.html (Updating Firmware using bootloader)
http://www.starlino.com/usbthumb_propeller_programmer.html (Using UsbThumb as a Propeller Programmer)
Note: UsbThumb comes preloaded with Serial-To-USB converter firmware that can be used among other things to program a propeller board , other firmwares can be loaded using the bootloader or a PIC programmer.