Non-standard bluetooth mouse?
Maksim Yevmenkin
maksim.yevmenkin at gmail.com
Sun Sep 5 00:31:48 UTC 2010
ok... could you please try the attached patch? if it does not work,
please send sdp trace again.
thanks
max
On Sat, Sep 4, 2010 at 3:37 PM, Maksim Yevmenkin
<maksim.yevmenkin at gmail.com> wrote:
> hi,
>
> thanks for the trace. let's take a look....
>
> [...]
>
>> < ACL data: handle 0x000c flags 0x02 dlen 38
>> L2CAP(d): cid 0x40 len 34 [psm 1]
>> SDP SSA Req: tid 0x0 len 0x1d
>> pat uuid-16 0x1124 (HID)
>> max 0xffff
>> aid(s) 0x0004 (ProtocolDescList) 0x000d (IconURL) 0x0205 -
>> 0x0206 0x0209 (unknown) 0x020d (unknown)
>> cont 00
>
> so here we request sdp attributes 0x0004, 0x000d, 0x0205, 0x0206,
> 0x0209 and 0x020d. that is obviously consistent with the bthidcontrol
> sdp code.
>
>>> ACL data: handle 0x000c flags 0x02 dlen 66
>> L2CAP(d): cid 0x40 len 62 [psm 1]
>> SDP SSA Rsp: tid 0x0 len 0x39
>> cnt 0x36
>> srv rec #0
>> aid 0x0004 (ProtocolDescList)
>> < < uuid-16 0x0100 (L2CAP) uint 0x11 > <
>> uuid-16 0x0011 (HIDP) > >
>> aid 0x000d (IconURL)
>> < < < uuid-16 0x0100 (L2CAP) uint 0x13 > < uuid-16
>> 0x0011 (HIDP) > > >
>> aid 0x0209 (unknown)
>> bool 0x1
>> aid 0x020d (unknown)
>> bool 0x0
>>
>> cont 00
>
> and here is the response from the mouse. as you can see, we only got
> back attributes 0x0004, 0x000d, 0x0209 and 0x020d. we did not get back
> attributes 0x0205 and attributes 0x0206. interesting that attributes
> 0x0205 and 0x0206 requested as range, where as all other attributes
> requested individually. perhaps your mouse is not liking this. i'll
> try to prepare some patches for you later today.
>
> thanks,
> max
>
-------------- next part --------------
Index: sdp.c
===================================================================
--- sdp.c (revision 212118)
+++ sdp.c (working copy)
@@ -54,7 +54,9 @@
SDP_ATTR_RANGE (SDP_ATTR_ADDITIONAL_PROTOCOL_DESCRIPTOR_LISTS,
SDP_ATTR_ADDITIONAL_PROTOCOL_DESCRIPTOR_LISTS),
SDP_ATTR_RANGE( 0x0205, /* HIDReconnectInitiate */
- 0x0206), /* HIDDescriptorList */
+ 0x0205),
+SDP_ATTR_RANGE( 0x0206, /* HIDDescriptorList */
+ 0x0206),
SDP_ATTR_RANGE( 0x0209, /* HIDBatteryPower */
0x0209),
SDP_ATTR_RANGE( 0x020d, /* HIDNormallyConnectable */
@@ -149,7 +151,7 @@
}
if (control_psm == -1 || interrupt_psm == -1 ||
- reconnect_initiate == -1 || normally_connectable == -1 ||
+ reconnect_initiate == -1 ||
hid_descriptor == NULL || hid_descriptor_length == -1)
hid_sdp_query_exit(ENOATTR);
More information about the freebsd-bluetooth
mailing list