Introduction
The HID over GATT Profile (HOGP) defines the procedures and features to be used by HID Devices and HID Hosts using Bluetooth® Low Energy (LE). This profile is an adaptation of the USB HID specification to operate over a Bluetooth LE wireless link.
The HOGP defines two operation modes: Default Operation mode, which is mandatory, and Hybrid Operation mode, which is optional. These two operation modes enable HOGP to flexibly accommodate different HID application scenarios with varying requirements in terms of report rate, end-to-end latency, and data timeliness.
Roles
This profile defines three roles: HID Device, Boot Host, and Report Host.
- The Boot Host and the Report Host are collectively referred to as the HID Host. These two roles are mutually exclusive, and a single device shall act as only one of them at any given time.
- A single device may support both the HID Host role and the HID Device role.
HID Device
A HID Device is a device that connects to a HID Host over Bluetooth Low Energy and provides standard human interface functionality, such as keyboards, mice, and touchpads.
HID Device responsibilities:
- The HID Device shall be a GAP Peripheral, sending connectable advertising when not connected, so that a HID Host can discover and establish a connection.
- The HID Device shall be a GATT Server, exposing services for the HID Host to access and configure.
- The HID Device shall have one or more instances of the HID Service for transporting HID data.
- The HID Device shall have one or more instances of the Battery Service for reporting device battery information.
- The HID Device shall have a single instance of the Device Information Service, which shall include the PnP ID Characteristic.
- The HID Device may have one instance of the Scan Parameters Service to receive scan parameter configuration from the HID Host, enabling optimization of its own advertising behavior.
- If the HID Device supports the HID ISO feature, it shall support Connected Isochronous Stream (CIS) - Peripheral and have a single instance of the HID ISO Service.
- The HID Device may have instances of other services.
HID Host
A HID Host is the controlling endpoint that scans for, connects to, and manages a HID Device. It is responsible for processing HID data received from the HID Device. The HID Host is divided into two roles: Boot Host and Report Host.
General HID Host responsibilities:
- The HID Host shall be a GAP Central, establishing connections to a HID Device.
- The HID Host shall be a GATT Client, accessing and configuring the services and characteristics on the HID Device.
Boot Host and Report Host
| Definition |
A host device that operates in Boot Protocol Mode |
A host device that operates in Report Protocol Mode |
| Use Environment |
Pre-boot environment (OS not yet loaded); only recognizes predefined fixed data formats for keyboards and mice |
Full OS runtime environment; capable of reading and parsing the device's Report Map, supporting multimedia keys, advanced mouse features, gesture operations, and other HID capabilities |
| HID Parser Requirement |
Not required |
Mandatory |
| HID Data Handling |
- After connection establishment, shall write Boot Protocol Mode to the Protocol Mode Characteristic of each HID Service
- Interaction through the Boot Keyboard Input Report Characteristic, Boot Keyboard Output Report Characteristic, and Boot Mouse Input Report Characteristic
- Only predefined report length and format in Boot Protocol Mode need to be handled
|
- After connection establishment, the default is Report Protocol Mode, which may be switched by the HID Host as needed
- Interaction through Report Characteristic, supporting Input, Output, and Feature reports
- Capable of parsing and handling HID data of arbitrary formats
|
| Scan Parameters Profile Requirement |
Shall not support the Scan Client role |
Shall support the Scan Client role, writing its own scan parameters to the HID Device to assist in optimizing advertising behavior |
| HID ISO Requirement |
Not required |
- Supports Connected Isochronous Stream (CIS) - Central
- Supports discovery, reading, and writing of HID ISO Service and its related Characteristics
- Supports LE HID Operation Mode procedures, capable of negotiating and switching between Default Operation mode and Hybrid Operation mode
|
After a LE connection is established between a HID Host and HID Device, HID data can be exchanged using either Default Operation mode or Hybrid Operation mode.

Operation Modes
| Requirement Level |
Mandatory |
Optional |
| Functional Requirements |
|
- LE connection
- GATT
- HID ISO
- Report Host
- CIS - Central
- Implements the Client role for the HID ISO Service
- HID Device
- CIS - Peripheral
- Implements the Server role for the HID ISO Service
|
| Operation Mode Switching |
GATT |
GATT |
| HID Data Transport |
GATT |
- CIS: Transports data requiring higher report rates, flushable transport, or lower latency
- GATT: Transports data not requiring higher report rates, flushable transport, or strict latency requirements
|
The operation mode switching procedure is as follows:
- After a LE connection is established between a HID Host and HID Device, the initial operation mode is Default Operation mode, and HID data is transported only over GATT.
- In Default Operation mode, the devices may negotiate a switch to Hybrid Operation mode. Upon completion of the negotiation, once the CIS is established, designated HID data is transported over CIS, while other HID data continues to be transported over GATT.
- The HID Host and HID Device may also switch back to Default Operation mode, after which the HID Host disconnects the CIS.

Advantages
Low Power Consumption
- HOGP leverages the inherent advantages of LE to maintain a link with low power consumption.
- HOGP supports a Profile-based Suspend mechanism, enabling devices to sleep during idle periods and wake up to transmit only when actual operations occur.
Standardized Configuration and Interoperability
- HOGP adapts the standard USB HID technical specification to GATT. Through standardized device capability definitions, it enhances cross-platform interoperability between different products.
Application Scenarios
PC/Mobile Peripheral
HOGP is suitable for human interface interaction requirements in PC and mobile device peripheral scenarios.
Typical applications include: Keyboards, mice, presentation clickers, simple multimedia controllers, etc.

Consumer Electronics and Smart Control
HOGP can be used for various general-purpose control and interaction devices, where data packets are short and typically transmitted in a discontinuous, event-triggered manner.
Typical applications include: Smart TV or set-top box remote controls, smart home control panels, conference system controllers, etc.
