Subject: Re: Bluetooth adapter not attaching to ubt
To: Andreas Wrede <andreas@planix.com>
From: Iain Hibbert <plunky@rya-online.net>
List: current-users
Date: 08/17/2006 19:24:51
On Wed, 16 Aug 2006, Andreas Wrede wrote:

> I have an older D-Link DWB-120, which attaches as follows:
>
> ubt0 at uhub0 port 2 configuration 1 interface 0
> ubt0: Broadcom BCM2033 (no firmware), rev 1.01/0.a0, addr 2
>
> (The Broadcom firmware load device is broken, I am sending a pr)

Yes I am working on that just now - the ubtbcmfw device will apparently
work if you fix it to compile with gcc4 - but only if you insert the
dongle later in the boot when the filesystem is up. If it tries to access
the filesystem too soon in the boot process, panic ensues.

I dont see any way around that, so am working on a package that will load
the firmware through a ugen(4) device

> Where is the decision made to which kernel device a new USB device attaches
> and/or how do I get it to attach to ubt?

Its the dev/usb/ubt.c file in the UBT_MATCH() function - if the device
claims to be a bluetooth device then ubt claims it.

In fact, looking at your dmesg output what happens is that the dongle is
reporting itself as a pair of Human Interface Devices. I guess that its a
special package of bluetooth dongle/mouse/keyboard and that they work
transparently?

You will need to do some tweak to make it into a generic bluetooth device,
I think Linux has a program called hid2hci that can do that, and there was
a mention on the FreeBSD bluetooth mailing list last year about it so
there might be a FreeBSD port of it which should be very simple to make
into a package.

iain