3.7.1 Introduction
The USB MSD Host Client Driver in the MPLAB Harmony USB Host Stack allows USB Host Applications to support and interact with Mass Storage Class (MSC) USB devices. Examples of such devices are USB Pen Drives and USB Card readers. The USB MSD Host Client Driver along with the SCSI Block Storage Driver Library implement a multi-layer solution to reading and writing to mass storage USB device that implement the SCSI command protocol. The USB MSD Host Client Driver has the following features:
- Implements the Bulk Only Transport (BOT) protocol in the USB MSD specification.
- Supports multiple instances, which allows the application to interact with multiple storage devices.
- Supports multi-LUN devices such as USB Card Reader.
- Automatically (without application intervention) attaches the SCSI Block Driver to an identified device.
- Implements automatic clearing of endpoint stall conditions.
- Implements all three stages of a BOT transfer and provide a simple event driver transfer interface to the top-level application (which is typically a block storage driver library such as the SCSI Block Storage Driver Library).
- Typically operates without application intervention. The BOT transfers are typically invoked by the SCSI Block Storage Driver Library.