This embedded USB host class driver controls Human Interface Device (HID) USB devices. HID devices include keyboards, mice, joysticks and “generic devices” (pointers, buttons, sliders, and so on). HID can also be used with devices which provide data in a similar way, such as point-of-sale equipment.

The package provides a HID host class driver for a USB stack. Typically this is used for connecting devices over a USB link to a host.

  • Conforms to the HCC Advanced Embedded Framework.
  • Designed for integration with both RTOS and non-RTOS based systems.
  • Compatible with all HCC USB host controllers.
  • Supports multiple devices connected simultaneously.
  • Supports generic devices, joysticks and gamepads, keyboards, and mice.
  • Has a sophisticated system for managing both input and output reports.
  • Uses a system of callbacks for user-specified events.
HID USB host class driver


The lower layer interface is designed to use HCC Embedded’s USB Host Interface Layer. This layer is standard over different host controller implementations; this means that the code is unchanged, whichever HCC USB host controller it is interfaced to. For detailed information about this layer, see the HCC USB Host Base System User Guide that is shipped with the base system.

The package provides a set of API functions for controlling access to a device.

Integration into your application

Interested in designing-in this software/component into an application? Use our Project Builder to describe your project in an easy way and get an idea whether this software fits your project.