USB host stack
Overview
PrUSB/Host is a USB host protocol stack that complies with USB1.1 and 2.0 (full speed/high speed) for embedded systems. PrUSB/Host enables communication with USB devices without using a PC.
USB host function
PrUSB/Host has the following USB host features:
- Detects USB device insertion/removal
- Manages USB standard requests in control transfers
- Manages host-device data flow
- Supports hubs for management of multiple USB devices
Transfer types
PrUSB/Host supports the following transfer types:
- Control transfer: Data transfer for the control endpoint between the host and the target
- Bulk transfer: Transfer of large amounts of data or non-cyclic data transfers
- Interrupt transfer: Cyclic transfer of relatively small amounts of data
- Isochronous Transfer: Transfer mode for streaming audio
Equipped with an HID class driver
PrUSB/Host comes with a standard HID (human interface device) class driver.
Additional sample class drivers
PrUSB/Host comes with a sample class driver as a reference for creating a new class driver.
Optional Class drivers available
We provide optional class drivers including;
- Mass Storage Class diver
- ACM(Abstract Control Model) supported Communication Device Class driver
- Audio Class driver
The Mass Storage Class driver enables connectivity with devices supporting the Mass Storage Class such as external drives or digital cameras. The Mass Storage Class driver has the following characteristics:
- Supports the bulk-only transfer protocol and CBI transport specification
- Supports the subclasses below:
- SCSI transparent command set
- SFF-8020i
- SFF-8070i
- MMC-2(ATAPI)
- Supports multiple LUNs
- A file system is required to operate the mass storage class (PrFILE2 is recommended).
- Other class drivers will be supported in the near future.
Portability
PrUSB/Host is written in C language and is not dependent on the particular CPU. Host controller drivers and OS-dependent code are separated from PrUSB/Host to ensure high portability.
Compatibility with T-Engine and T-Kernel
PrUSB/Host is compatible with T-Engine and T-Kernel.
Availability
PrUSB/Host is available in source code.
Maintenance service and customization service
The following maintenance service is available for PrUSB/Host.
- Email response regarding the product
- Minor version upgrades
eSOL also offers customization service to tailor PrUSB/Host to a different environment, such as original hardware.

Operating environments
PrUSB/Host operates in the following environments:
Host controller: UHCI/OHCI/EHCI
- Controller with TMS320DM35x (manufactured by TI)
- Controller with TMS320DM644x (manufactured by TI)
- Controller with SH7727 (manufactured by Renesas Technology)
- S1R72V05 (manufactured by Seiko Epson)
- µPD720101 (manufactured by NEC Electronics)
- Controller with VR5500 (manufactured by NEC Electronics)
An OS is required to operate PrUSB/Host (PrKERNELv4 is recommended). Contact us for details on appropriate OSes or development environments.
Options and related products
| Optional product: class driver |
|---|
Mass Storage Class
|
| Related products | |
|---|---|
| USB device protocol stack | |
| SDK for PictBridge | |
|
|
Contact us
- Click here for more information.
- Click here for information on customization or contract development.

