Using the PIC32MX250F128B as a USB Host to
Interface With Mass Storage Devices

By Douglas Katz and Fred Kummer


This project was done in order to allow a PIC32MX250F128B to act as a host to a USB
mass storage device. This would allow for a USB flash drive to be connected to the PIC32
which would allow for data to be read from or stored to a flash drive by the PIC32. This could be
useful in a variety of applications requiring the storage or logging of large amounts of
non-volatile data. The result of this project is a series of peripheral libraries compatible with the
PIC32MX250F128B that allows files to be created, deleted, written, and read to and from a USB
flash drive easily. The libraries were created by Microchip for use with the PIC32 USB Starter Kit
II, but had to be modified and ported for use with the model of PIC used in the ECE 4760 class.
Various examples demonstrating different usages of these ported libraries were also created as
part of the project. Hardware allowing these libraries and examples to be used with a
standalone PIC32MX250F128B was created and is presented in the report to help simplify
future development with the libraries as well.

Report (pdf)

Code Zip