Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 21 Dec 2004 07:56:07 -0800
From:      Maksim Yevmenkin <maksim.yevmenkin@savvis.net>
To:        vova@fbsd.ru
Cc:        bluetooth@freebsd.org
Subject:   Re: Bluetooth mouse
Message-ID:  <41C84797.80306@savvis.net>
In-Reply-To: <1103623079.954.10.camel@localhost>
References:  <1100552998.1098.5.camel@localhost>	 <419B8353.7040908@savvis.net> <opshmg45c1lo1qsj@mail.xs4all.nl>	 <419B9EF8.2090401@savvis.net> <1103269957.974.7.camel@localhost>	 <41C32471.2050805@savvis.net> <866530fusa.fsf@kamino.rfc1149.org>	 <41C35B92.7080908@savvis.net> <1103489813.1721.14.camel@localhost>	 <41C63A62.20304@savvis.net> <1103527349.1024.18.camel@localhost>	 <41C72A9B.6090405@savvis.net> <1103623079.954.10.camel@localhost>

next in thread | previous in thread | raw e-mail | index | archive | help
Vladimir,

[...]

>> wait, i know why. i just checked your older email and find out that
>> you have
>> 
>> "interrupt_psm 0x19;"
>> 
>> line in your /etc/bluetooth/bthidd.conf file (mouse section). could
>> you please try to change it to
>> 
>> "interrupt_psm 0x13;"
>> 
>> then do the following:
>> 
>> 0) run 'hcidump -w mouse.dump' as root
>> 
>> 1) remove mouse bd_addr from /var/db/bthidd.hids file
>> 
>> 2) disconnect and reconnect batteries on your mouse
>> 
>> 3) press 'connect' button on your mouse
>> 
>> 4) restart bthidd(8)
>> 
>>> It happens when I disconnect/connect batteries and then press
>>> connect button.
>>> 
>>> Even after that mouse does not moved. if I restart bthidd - it
>>> does not connects and mouse does not send any traffic.
>> 
>> it will not move - you do not have hid session, that is you need to
>> open both hid control and hid interrupt channels.
>> 
>> if the above works then there is a problem with
> 
> Yes, it works ! (dump in attachment)

great, thanks for the dump.

>> 1) bthidcontrol(8) - because it has incorrectly parsed sdp response
>> and showed wrong psm for the hid interrupt channel. that is what
>> you put into the /etc/bluetooth/bthidd.conf file (unless of course
>> you hand-edited it as well)
> 
> No, I do not edit this manually.

ok

>> or
>> 
>> 2) mouse itself. it advertises wrong psm for the hid interrupt
>> channel.
> 
> Why it works with winXP in this case ?

i need at least one more extra hcidump to answer this question. the most 
likely answer is that winxp just ignores psm's that mouse advertises and 
uses default ones (0x11 - hid control and 0x13 - hid interrupt). you 
see, initially host and hid device do not know anything about each 
other. so the host must query hid device using sdp (Service Discovery 
Protocol) to find out all hid service parameters (such as psm's, hid 
descriptor etc.). any hid device must provide this information. that is 
what bthidcontrol(8) does - it queries hid devices using sdp and dumps 
all parameters so bthidd(8) can uses them.

> How to find what happens ?

to rule out bthidcontrol(8) i need hcidump while you are doing 'query' 
command.

- run 'hcidump -w bthidcontrol.dump' as root

- run 'bthidcontrol -a mouse query'

note: you may need to reset the mouse again in order for this to work.

thanks,
max



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?41C84797.80306>