HID state power manager module

The HID state power manager module is a minor module that prevents suspending the device when HID reports are exchanged with the host.

Module events

Source Module

Input Event

This Module

Output Event

Sink Module

HID forward module

hid_report_event

hid_state_pm

HID state module

HID Service module

USB state module

keep_alive_event

Power manager module

Note

See the Overview: Firmware architecture for more information about the event-based communication in the nRF Desktop application and about how to read this table.

Configuration

The module is enabled by CONFIG_DESKTOP_HID_STATE_PM_ENABLE Kconfig option. The option depends on CONFIG_CAF_POWER_MANAGER and it is enabled by default.

Implementation details

The module relies on hid_report_event to detect HID report exchange.

Note

In the nRF Desktop application, most of the HID reports are broadcasted as hid_report_event, but there are exceptions. For example, the Configuration channel uses HID feature reports or HID output reports as transport and the configuration channel data is broadcasted using config_event in the application. Hence, the HID state power manager module does not prevent suspending the device when the configuration channel is in use.