HID class

Overview
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.
Key features
- Communicate with virtually any keyboard & mouse
- Receive and send data from vendor-specific HID devices
- Small memory footprint, ideal for embedded devices
Application Samples emUSB-Host HID

Keyboard & Mouse
Barcode Scanner

Touch Screen

Joystick

Fingerprint Sensor

RFID Reader

3D Mouse

Trackball

Uninterruptible Power Supply

Weighing Scale
Types of HIDs
- "True" HIDs: joystick, mouse, keyboard, trackball, touch-interface
- HID for data: software protection dongle, uninterruptible power supply
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. Several application samples can also be found on the emUSB-Host sample page.
Requirements
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)
- Real-time operating system (embOS or other)