Date: Mon, 27 Nov 2006 14:40:33 -0800 From: Maksim Yevmenkin <maksim.yevmenkin@savvis.net> To: Eric Anderson <anderson@centtech.com> Cc: freebsd-bluetooth@freebsd.org, Jona Joachim <jona.joachim@free.fr> Subject: Re: Support for Bluetooth Keyboards? Message-ID: <456B6961.10803@savvis.net> In-Reply-To: <456B4FC6.7070805@centtech.com> References: <20061126005413.0faaea7b@localhost> <1164502329.816.8.camel@RabbitsDen.RabbitsLawn.verizon.net> <456B292D.3000509@savvis.net> <456B43CC.1000107@centtech.com> <456B4888.5060903@savvis.net> <456B4FC6.7070805@centtech.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Eric Anderson wrote: > On 11/27/06 14:20, Maksim Yevmenkin wrote: >> Eric Anderson wrote: >>> On 11/27/06 12:06, Maksim Yevmenkin wrote: >>>> Alexandre "Sunny" Kovalenko wrote: >>>>> On Sun, 2006-11-26 at 00:54 +0100, Jona Joachim wrote: >>>>>> Hi! >>>>>> I wanted to know if Bluetooth keyboards are likely to work on >>>>>> FreeBSD. >>>>>> I'm looking at this marvellous object to be precise: >>>>>> http://www.thinkgeek.com/computing/input/8193/ >>>>>> >>>>>> They say that they "were able to get the Bluetooth Virtual Laser >>>>>> Keyboard to work with Mac OSX using the built-in bluetooth support in >>>>>> the OS." >>>> then it should work in releng_6 and -current. >>>> >>>>> I am running Apple Bluetooth keyboard on -CURRENT. I order to >>>>> accomplish >>>>> that, I have followed steps outlined by Eric Anderson here >>>>> >>>>> http://destari.blogspot.com/2006/01/setting-up-bluetooth-mouse-on-freebsd.html >>>>> >>>>> >>>>> There seems to be a quirk in the bthidd which causes it reattach >>>>> keyboard every couple of minutes, so I am accustomed to seeing vkbd >>>>>> 10000 being attached but these seem to be harmless enough. YMMV, >>>>> though. >>>> hmmm... i'd like to get more information on this. does this happen >>>> when you type on the keyboard? or when keyboard is idle? >>>> >>>> if this happens when the keyboard is idle, then, i'd guess, the >>>> keyboard simply kills the bluetooth connection to conserve battery. >>>> if bluetooth connection was in fact killed then bthidd(8) will close >>>> vkbd(4) device and it will, in turn, detach vkbd(4) keyboard. >>>> >>>> in any case, could you please get an hci dump (binary) when this >>>> happens and sent it to me? or could you please tell me how to >>>> reproduce this locally? >>> I see something like this too, but with mice. I use a microsoft >>> bluetooth explorer mouse, and when it disconnects and goes into >>> battery sleep mode, and then comes back, it registers a new vkbd >>> device. Here's some snippets: >> >> [...] >> >> hmm... could you please post hid descriptor from your microsoft >> bluetooth explorer mouse? > > # bthidcontrol -a msmouse dump > Collection page=Generic_Desktop usage=Mouse > Collection page=Generic_Desktop usage=Pointer > Input id=2 size=1 count=1 page=Button usage=Button_1 Variable, logical > range 0..1 > Input id=2 size=1 count=1 page=Button usage=Button_2 Variable, logical > range 0..1 > Input id=2 size=1 count=1 page=Button usage=Button_3 Variable, logical > range 0..1 > Input id=2 size=1 count=1 page=Button usage=Button_4 Variable, logical > range 0..1 > Input id=2 size=1 count=1 page=Button usage=Button_5 Variable, logical > range 0..1 > Input id=2 size=3 count=1 page=0x0000 usage=0x0000 Const, logical > range 0..1 > Input id=2 size=8 count=1 page=Generic_Desktop usage=X Variable > Relative, logical range -127..127 > Input id=2 size=8 count=1 page=Generic_Desktop usage=Y Variable > Relative, logical range -127..127 > Input id=2 size=8 count=1 page=Generic_Desktop usage=Wheel Variable > Relative, logical range -127..127 > Input id=2 size=8 count=1 page=Consumer usage=AC_Pan Variable > Relative, logical range -127..127 > End collection > Feature id=2 size=1 count=1 page=Generic_Desktop usage=0x004b Variable, > logical range 0..1 > Feature id=2 size=7 count=1 page=0x0000 usage=0x0000 Const, logical > range 0..1 > End collection > Collection page=Consumer usage=Consumer_Control > Collection page=Generic_Desktop usage=Mouse > Input id=3 size=2 count=1 page=Microsoft usage=0xfe01 Variable, > logical range 0..3 > Input id=3 size=1 count=1 page=Microsoft usage=0xfe00 Variable, > logical range 0..1 > Input id=3 size=5 count=1 page=0x0000 usage=0x0000 Const, logical > range 0..1 > End collection > End collection > Collection page=Consumer usage=Consumer_Control > Collection page=Generic_Desktop usage=Mouse > Input id=4 size=8 count=1 page=Consumer usage=AC_Pan Variable > Relative, logical range -127..127 > Feature id=4 size=1 count=1 page=Microsoft usage=0xff04 Variable, > logical range 0..1 > Feature id=4 size=1 count=1 page=Microsoft usage=0xff06 Variable, > logical range 0..1 > Feature id=4 size=1 count=6 page=0x0000 usage=0x0000 Const, logical > range 0..1 > End collection > End collection > > > # bthidcontrol -a msmouse query > device { > bdaddr 00:50:f2:e9:a1:f1; > control_psm 0x11; > interrupt_psm 0x13; > reconnect_initiate true; > battery_power true; > normally_connectable false; > hid_descriptor { > 0x05 0x01 0x09 0x02 0xa1 0x01 0x85 0x02 > 0x09 0x01 0xa1 0x00 0x05 0x09 0x19 0x01 > 0x29 0x05 0x15 0x00 0x25 0x01 0x75 0x01 > 0x95 0x05 0x81 0x02 0x75 0x03 0x95 0x01 > 0x81 0x01 0x05 0x01 0x09 0x30 0x09 0x31 > 0x09 0x38 0x15 0x81 0x25 0x7f 0x75 0x08 > 0x95 0x03 0x81 0x06 0x05 0x0c 0x0a 0x38 > 0x02 0x95 0x01 0x81 0x06 0xc0 0x05 0x01 > 0x09 0x4b 0x15 0x00 0x25 0x01 0x75 0x01 > 0xb1 0x02 0x75 0x07 0xb1 0x01 0xc0 0x05 > 0x0c 0x09 0x01 0xa1 0x01 0x85 0x03 0x05 > 0x01 0x09 0x02 0xa1 0x02 0x06 0x00 0xff > 0x15 0x00 0x25 0x03 0x75 0x02 0x95 0x01 > 0x0a 0x01 0xfe 0x81 0x02 0x25 0x01 0x75 > 0x01 0x0a 0x00 0xfe 0x81 0x02 0x75 0x05 > 0x81 0x01 0xc0 0xc0 0x05 0x0c 0x09 0x01 > 0xa1 0x01 0x85 0x04 0x05 0x01 0x09 0x02 > 0xa1 0x02 0x05 0x0c 0x0a 0x38 0x02 0x75 > 0x08 0x95 0x01 0x15 0x81 0x25 0x7f 0x81 > 0x06 0x06 0x00 0xff 0x0a 0x04 0xff 0x0a > 0x06 0xff 0x15 0x00 0x25 0x01 0x75 0x01 > 0x95 0x02 0xb1 0x02 0x95 0x06 0xb1 0x01 > 0xc0 0xc0 > }; > } > > >> also, binary hci dump (that captures detach/reattach event) would be >> nice. > > Here: > http://users.centtech.com/~anderson/freebsd/bt-mouse-dump.raw beetle% fetch http://users.centtech.com/~anderson/freebsd/bt-mouse-dump.raw fetch: http://users.centtech.com/~anderson/freebsd/bt-mouse-dump.raw: Forbidden :( max > > and corresponding log messages: > > Nov 27 14:45:44 neutrino bthidd[833]: Remote device 00:50:f2:e9:a1:f1 > has closed interrupt connection > Nov 27 14:47:31 neutrino kernel: kbd1 at vkbd9 > Nov 27 14:47:31 neutrino bthidd[833]: Accepted control connection from > 00:50:f2:e9:a1:f1 > Nov 27 14:47:31 neutrino bthidd[833]: Accepted interrupt connection from > 00:50:f2:e9:a1:f1 > > > Eric > > > >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?456B6961.10803>