Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Dec 2004 10:24:49 -0800
From:      Maksim Yevmenkin <maksim.yevmenkin@savvis.net>
To:        vova@fbsd.ru
Cc:        bluetooth@freebsd.org
Subject:   Re: Bluetooth mouse
Message-ID:  <41C32471.2050805@savvis.net>
In-Reply-To: <1103269957.974.7.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>

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

> I have found your message:
> ======================================
> you need to have Bluetooth HID (Human Interface Device) support. someone
> wrote me an e-mail a while ago asking the same question. i tried to
> explain Bluetooth HID and how it works. its not a rocket science - you
> just need write a daemon that opens a couple of L2CAP connection to the
> mouse and read bytes from it. then you feed these bytes
> into /dev/console via ioctl(2) to move actual mouse pointer. i'm not
> sure if this person working on this.
> ======================================
> 
> So I am ready to try it, Can you resend me your explanations ? 

good :)

> Also, I think, it is better to provide usual /dev/*msX interface for
> moused ? 

why?

> It looks like I need to write ng node which will connect to l2cap node
> one side and create /dev/btmsX on another side ? 

well, actually its much simpler :) most of the work already was done. 
take a look at /usr/src/usr.sbin/bluetooth/{bthidcontrol,bthidd}. these 
are not yet connected to the build, but you should be able to compile 
and run them.

bthidcontrol(8) is a utility that can query bluetooth hid devices and 
create configuration for bthidd(8).

% nroff -man bthidcontrol.8 | less -- for more information

bthidd(8) is a bluetooth hid daemon (incomplete but mouse should work). 
it will read configuration created by bthidcontrol(8) and talk to 
bluetooth hid devices.

whats needs to be done:

1) finish and test bthidd(8) and vkbd(4) integration (bluetooth keyboard 
support). i've done most of it, but was never able to finish and test it :(

2) better handling of bluetooth mouse events, i.e. detect double clicks 
etc. and send appropriate ioctl(2) to /dev/console. double clicks etc. 
will work in X, but not in the text mode.

thanks,
max



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