Skype Bluetooth

Jesse Guardiani jesse at wingnet.net
Tue Mar 8 11:29:34 PST 2005


Maksim Yevmenkin wrote:

> Randy,
> 
>>> FreeBSD does not yet have support for bluetooth headsets, sorry.
>>> however such support can be added given time and hardware. i'm
>>> planning to get me one of these headsets as soon as they get in $20
>>> price range.
>> 
>> i don't use my nokia headset, and can ship it to you next week when i
>> am back on the left coast of the states.
> 
> thanks, but i'd say no need to rush things right now :) last time i
> tried (which was quite a while ago) i could not get usb isochronous
> transfers to work on FreeBSD. that is the major reason why FreeBSD does
> not have support for bluetooth audio/video. i can test usb isochronous
> transfers with cheap usb webcam (got to get me on of those too :). after
> i get this working we can talk about bluetooth headsets etc.

Linux's bluetooth support for audio isn't very good yet either. A lot of
these things depend on the bluetooth host adapter you're using. Marcel from
Bluez recommended the D-Link DBT-120 rev B3 to me when I asked (that's right,
rev B4 has a few problems! It has to be B3! ARGH!) My AnyCom USB-240 wouldn't
do the job because it had buggy ROM (non upgradeable) firmware.

Also, unless the FreeBSD folks build a Bluetooth audio mixer so that BT audio
can be mixed with normal system audio, you'll have difficulty using a BT
headset with a soft VoIP phone.  Unless the VoIP phone supports multiple
input/output audio devices at the same time, you'll be stuck using either
the system mixer *OR* the Bluetooth mixer. Not both. In other words, receiving
a call from your system speakers and microphone, then switching to your BT
headset in the middle of the call would be *impossible*. You'd have to hang
up the call, reconfigure your phone software to use the BT mixer, then call
the person back. This is how it works under Linux currently. I *really* wish
those Linux folks would implement a software mixer so that BT audio could be
mixed into the normal system audio channels and vice-versa. This sort of
thing should definitely be looked into in FreeBSD, especially since we already
have virtual dsp device support (kernel level software audio mixing).

In addition, "profiles" are not OS based. They are *sometimes* (but not always)
hardware bound, and they tend to require application support. So different phone
software has the "opportunity" (sarcasm) to implement BT technology in different
ways on the same OS, much less across multiple OSes. This is unfortunate, but I
don't really see any way around it.

Take the headset and handsfree profiles, for example. Most BT headsets support
both profiles, but the headset profile is quite limited. The headset profile
only allows for microphone and speaker audio from and to the headset. Handsfree,
on the other hand, allows for control of the audio stream from the headset
device and allows an incoming call to make the headset device "ring" to notify
you of an incoming call. (There is no "ring" functionality in the headset profile,
AFAIK.) Anyway, if a soft VoIP phone wants to implement handsfree support under
Linux, it has to do it itself by interfacing directly with the Bluez library.

So, if anyone plans to implement BT headset support in FreeBSD, please do! But
be aware of the multitude of issues involved with BT audio. Hardware bugs,
headset bugs, application interfaces, audio mixing, etc.... It's all fairly
complicated, IMO.

Still, I certainly don't think BT audio is going away anytime soon. Cell phones
drive the market, currently. Most new phones support BT, and BT headsets are really
coming down in price. I bought my BT 1.2 Logitech Mobile Freedom Headset for
just $40 shipped. Too bad I have nothing to use it with... :)

-- 
Jesse Guardiani, Systems Administrator
WingNET Internet Services,
P.O. Box 2605 // Cleveland, TN 37320-2605
423-559-LINK (v)  423-559-5145 (f)
http://www.wingnet.net




More information about the freebsd-mobile mailing list