Hi guys. From the ble_app_hids_keyboard_pca10040_s132 (nRF SDK v17), there were several HID characteristics added.
- protocol_mode_char (Protocol Mode characteristics)
- Report characteristic
- Report Map characteristics
- Input Report characteristics
- Boot Keyboard Output Report characteristics
- HID Information characteristic.
- HID Control Point characteristics
May I ask two questions.
To be a "Bluetooth Low Energy-GATT-compliant HID device",
are these "must have" HID characteristics to work as a native keyboard device to run on various OSes (Windows, Mac, Linux, etc)?
Or do I only need the
- Input Report characteristics
- Report Map characteristic
to send the keyboard data to the central (Windows, Mac, etc laptop connected to the nRF52 HID peripheral)?
Overall, is there a HID document explaining what "standard" HID characteristics are mandatory?
I did find the Novelbits blog where it shows the characteristics are mandatory or not
https://novelbits.io/bluetooth-hid-devices-an-intro/
but I was wondering what original HID document should I look into. Maybe the USB HID document? https://www.usb.org/hid
Thanks for your help!