Skip navigation

emUSB-Host HID Class

  • Communicate with virtually any keyboard & mouse
  • Receive and send data from vendor-specific HID devices
  • Small memory footprint, ideal for embedded devices

The Human Interface Device class (HID) is an abstract class protocol defined by the USB Implementers Forum. This protocol was defined for the handling of devices which are used by humans to control the operation of computer systems. The class enables the use of input devices such as keyboards, mice, trackballs or touch-controllers.

Keyboards, mice, trackballs, touch-controllers and also joysticks are typical devices which use the HID class.

Typical Applications

  • Keyboards
  • Mice
  • Trackballs
  • Touch-Controllers
  • Touchscreens
  • Joysticks

Types of HIDs

  • "True" HIDs: joystick, mouse, keyboard, trackball, touch-interface
  • HID for data

Example Code Included

Example code which is provided with any shipment or eval software including emUSB-Host. It outputs mouse and keyboard events to the terminal I/O of debugger.


Components required to use emUSB-Host HID:

  • emUSB-Host HID (Included in emUSB-Host Base package)
  • emUSB-Host core (Included in emUSB-Host Base package)
  • emUSB-Host target driver (One driver is included in emUSB-Host PRO package)
  • RTOS (embOS)