IMG_2862IMG_2865

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

UsbThumb Schematic

UsbThumb Pinout

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”)

image_thumb[22]

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.