PrUSB Host
USB Host Stack
Contact us

PrUSB Host overview

PrUSB Host is a host-side protocol stack that complies with USB 1.1/2.0/3.0 (Full Speed/High Speed/Super Speed) for implementing a USB host function on an embedded system. Building a system by embedding PrUSB Host enables communication with USB devices without using a PC.

USB host functions
The following USB host functions that are defined by the USB specification are provided:
  • Detection of USB device insertion/removal
  • Management of USB standard requests via control transfers
  • Management of data flow between host and devices
  • Support for hubs to enable management of multiple USB devices

Transfer types
PrUSB Host supports the following transfer types:
  • Control transfer: Control data transfer between host and target
  • Bulk transfer: Transfer of relatively large amounts of data or non-periodic data transfer
  • Interrupt transfer: Periodic transfer of relatively small amounts of data
  • Isochronous transfer: Method used for transfer when real-time transfer is required

  • Includes sample class drivers

    Includes sample classes that can be used as reference when creating a custom class driver.

    Optional Class drivers available
    The following class drivers are provided as an option:
    • Mass Storage Class diver
    • ACM (Abstract Control Model) supported Communication Device Class driver
    • Audio Class driver
    • HID Class driver

    The Mass Storage Class driver provides a storage function when the connected device, such as a large-capacity device or digital camera, supports the Mass Storage Class. The features of the Mass Storage Class driver are as follows:
    • Supports the Bulk-Only and CBI transfer protocols
    • Supports the following subclasses:
      • SCSI transparent command set
      • SFF-8020i
      • SFF-8070i
      • MMC-2(ATAPI)
    • Supports multiple LUNs
    • A file system is required to operate Mass Storage Class (PrFILE®2, PrFILE2 exFAT is recommended)

    High Portability

    PrUSB Host itself is written in the C language and is not dependent on any CPU. Host controller drivers and code dependent on the operating system are separated to ensure easy porting to a different environment.

    Supports T-Kernel

    PrUSB Host supports eT-Kernel™.

    Availability (Source code provided)

    PrUSB Host is available in source code.

    Maintenance service and customization service

    The following maintenance service is provided. The maintenance service enables developers to use PrUSB Host with peace of mind.

    • Response to email inquiries regarding the product
    • Minor version upgrades

    In addition, a customization service is available for supporting PrUSB Host in different environments, such as a custom real-time operating system (RTOS) or hardware.

    PrUSB Architecture Diagram


    Operating environments

    Successful operation of PrUSB Host has been demonstrated in the following environments:
    • * Host controller: UHCI/OHCI/EHCI/xHCI
    • * Several built-in controllers: please contact us for details

    An RTOS is required for operating PrUSB Host. Please contact us for details about the compatible RTOS and development environments.

    Options and related products

    Class drivers:
    • Mass Storage Class
    • Communication Device Class
    • Audio Class
    • HID Class
    Other class drivers will be supported in the near future.
    For more information on USB host class drivers

    Use Case

    Looking for more information?

    Contact us
    Materials available for Download!