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