Keil Logo Arm Logo

USB Host Interface

USB Host Overview

The USB Host library is an embedded USB stack supporting USB MSC (Mass Storage Class) and HID (Human Interface Device) classes. It has been designed to be high-performance while using as little memory as possible.


  • Abstraction layer allows a standard API to be used for different USB Host controllers
  • USB Host controller support
    • Generic Open Host Controller Interface (OHCI)
    • Low level driver support for NXP LPC17xx/23xx/24xx devices
    • Custom Host controller driver for STM32F105/7 (connectivity line) devices
    • USB 1.1 Low Speed (1.5Mbit/s) and Full Speed (12Mbit/s)
  • Common USB Device Class support
    • Human Interface Devices (HID)
    • Mass Storage Class (MSC)
  • High-performance (670KB/sec) and small code-size (~6KB)
  • Integrated with other MDK-Professional components
    • MSC works with Flash File System to support USB Flash drive and SD/SDHC/MMC card storage devices
    • USB Host works with the RTX Real-Time Operating System

The USB Host library includes examples which demonstrate using USB mass storage devices together with a Flash File System, and using an external HID input devices.

Notes Note

  • The USB Host Interface is provided in binary form as part of MDK-Professional. It is not included with other MDK-ARM Editions.

Keil logo

Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

ARM’s Privacy Policy has been updated. By continuing to use our site, you consent to ARM’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.