本帖最后由 lilijin1995 于 2022-8-23 11:06 编辑
在蓝牙HID设备中,区分两个报告通过Report ID以区分鼠标键盘不同设备,如report 0是鼠标,report 1是键盘;同样的USB Hid也是有这样的区分,但是如果USB有三个接口:
如我们的摇杆设备:
Interface 0 HID Report Descriptor Joystick
Interface 1 HID Report Descriptor Mouse
Interface 2 HID Report Descriptor Vendor-Defined 4
有三个接口,每个接口都是有独立的 HID Report Descriptor,而不是一个接口通过不同的Report ID区分,这种三个接口的 HID Report Descriptor在蓝牙HID设备中如何体现,是需要创建三个GATT服务吗?抑或是只能通过Report ID区分;
了解到,蓝牙HID只有一个报表描述符,只能通过Report ID区分了,这样做很麻烦,需要读出每个USB接口里面的报表,并修改其ReportID,难搞哦;
项目进展:已经实现了默认接口0的报表描述符转换,usb接口0是鼠标,那么蓝牙主机端枚举出来就是鼠标,但是其他接口就没有做任何操作了;
|