`lock_devices()` only protect the devices list, this mutex protect the single device instance.
Check if the device still exists. @return: true if exists
Get the BT Device Address of a HID Device @return: pointer to the BDA byte array or NULL
Get the name of a HID Device @return: pointer to the character array or NULL
Get the HID Device Transport @return: the transport of the connected device or ESP_HID_TRANSPORT_MAX
If no Report ID item tags are present in the Report descriptor, it can be assumed that only one Input, Output, and Feature report structure exists and together they represent all of the device’s data.
Set_Report command. @return: ESP_OK on success
Get_Report command. @return: ESP_OK on success
Get_Idle Command. @return: ESP_OK on success
Get the VID of a HID Device @return: the VID value
Get the PID of a HID Device @return: the PID value
Get the version HID Device @return: the version value
Get the calculated HID Device usage type @return: the hid usage type
Get an array of all reports found on a device @return: ESP_OK on success
Send an OUTPUT report to the device @return: ESP_OK on success
Send a FEATURE report to the device @return: ESP_OK on success
Get the value a FEATURE report from the device @return: ESP_OK on success
Set_Idle Command. @return: ESP_OK on success
Get_Protocol Command. @return: ESP_OK on success
Set_Protocol Command. @return: ESP_OK on success
Get the HID Device Cofiguration @return: pointer to the config structure or NULL
Get the manufacturer of a HID Device @return: pointer to the character array
Get the serial number of a HID Device @return: pointer to the character array or NULL
Get an array of the report maps found on a device @return: ESP_OK on success
Free HID Device Memory This function MUST be called when handling ESP_HIDH_CLOSE_EVENT Only then all memory used for the device will be freed. @return: ESP_OK on success
Close HID Device @return: ESP_OK on success
Get the appearance of BLE HID Device @return: the appearance value