HidD_GetProductString with classic Bluetooth device

CH, Lee 1 Reputation point
2021-05-24T09:10:52.17+00:00

I'm now developing a Bluetooth hid device.
However, when I use pyhidapi to get the product string, it returns None.
After dig in the source code, I found they use HidD_GetProductString to get the product string.
And after asking my first question in the forum, I know that this function currently not support the BLE HID device.
So I changed to use Bluetooth Classic HID but still, no product string can be retrieved.
May I know where do this function gets the product string if the HID device is a Bluetooth Classic HID device?

Windows API - Win32
Windows API - Win32
A core set of Windows application programming interfaces (APIs) for desktop and server applications. Previously known as Win32 API.
2,523 questions
Windows Hardware Performance
Windows Hardware Performance
Windows: A family of Microsoft operating systems that run across personal computers, tablets, laptops, phones, internet of things devices, self-contained mixed reality headsets, large collaboration screens, and other devices.Hardware Performance: Delivering / providing hardware or hardware systems or adjusting / adapting hardware or hardware systems.
1,579 questions
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Rahul Ramadas 6 Reputation points Microsoft Employee
    2021-06-03T01:08:26.52+00:00

    Referencing the Bluetooth HID 1.1.1 spec from here: https://www.bluetooth.com/specifications/specs/human-interface-device-profile-1-1-1/

    The product string returned will be the value of the SDP attribute called "Service Name" in table 5.3 (section 5.3.3) of the spec. HidD_GetManufacturerString will return the value of the SDP attribute called "Provider Name". However, note that the spec says that those attributes are optional, so it is possible that your device does not have those attributes.

    1 person found this answer helpful.
    0 comments No comments