Difference between revisions of "Bluetooth successful file transfer"

From Finninday
Jump to: navigation, search
Line 1: Line 1:
 +
=[http://ihyveqo.co.cc This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page]=
 
[[Category: Computers]]
 
[[Category: Computers]]
 
Wednesday, May 4th, 2005
 
Wednesday, May 4th, 2005
  
 
I tried applying my bluetooth knowledge so far to a Yellowdog 4.0 laptop and was able to send pictures from my phone via bluetooth to the laptop. Here is the configuration:
 
I tried applying my bluetooth knowledge so far to a Yellowdog 4.0 laptop and was able to send pictures from my phone via bluetooth to the laptop. Here is the configuration:
<pre>
+
&lt;pre&gt;
 
[rday@bobo rday]$ rpm -qa | grep blue
 
[rday@bobo rday]$ rpm -qa | grep blue
 
bluez-hcidump-1.8-1
 
bluez-hcidump-1.8-1
Line 13: Line 14:
 
[rday@bobo rday]$ cat /etc/yellowdog-release
 
[rday@bobo rday]$ cat /etc/yellowdog-release
 
Yellow Dog Linux release 4.0 (Orion)
 
Yellow Dog Linux release 4.0 (Orion)
</pre>
+
&lt;/pre&gt;
  
 
The only local configuration I did was to change the device name that the bluetooth dongle in the laptop uses to advertise itself. Then I used bluefw to “load the firmware”, whatever that means. And then started the bluetooth service.
 
The only local configuration I did was to change the device name that the bluetooth dongle in the laptop uses to advertise itself. Then I used bluefw to “load the firmware”, whatever that means. And then started the bluetooth service.
Line 30: Line 31:
  
 
Trying to install the old gnome-bluetooth rpm yields a failed dependency:
 
Trying to install the old gnome-bluetooth rpm yields a failed dependency:
<pre>
+
&lt;pre&gt;
 
error: Failed dependencies:
 
error: Failed dependencies:
 
libbtctl.so.1 is needed by gnome-bluetooth-0.4.1-3.i386
 
libbtctl.so.1 is needed by gnome-bluetooth-0.4.1-3.i386
Line 37: Line 38:
 
Suggested resolutions:
 
Suggested resolutions:
 
libbtctl-0.4.1-3.i386.rpm
 
libbtctl-0.4.1-3.i386.rpm
</pre>
+
&lt;/pre&gt;
  
 
Trying to install libbtctl yields a further failed dependency:
 
Trying to install libbtctl yields a further failed dependency:
Line 55: Line 56:
 
I wasn’t very explicit about the recipe for transfering files between phone and laptop. I just had to figure it out again. I took several false starts and so I’m still not sure what the right procedure is, but I think it is something like this:
 
I wasn’t very explicit about the recipe for transfering files between phone and laptop. I just had to figure it out again. I took several false starts and so I’m still not sure what the right procedure is, but I think it is something like this:
 
*make sure the bluetooth service is running via /etc/init.d/bluetooth status
 
*make sure the bluetooth service is running via /etc/init.d/bluetooth status
*start gnome-obex-server (System tools > Bluetooth file sharing)
+
*start gnome-obex-server (System tools &gt; Bluetooth file sharing)
 
*use the phone to drive the transaction
 
*use the phone to drive the transaction
 
*pick a file and send it via bluetooth to the laptop
 
*pick a file and send it via bluetooth to the laptop
Line 72: Line 73:
  
 
From the desktop, I scan for devices with hcitool scan, get the address of the phone, and then use hcitool to open a connection and request authentication. Then the phone beeps and I enter the PIN. Now I have added the desktop to the device list in the phone.
 
From the desktop, I scan for devices with hcitool scan, get the address of the phone, and then use hcitool to open a connection and request authentication. Then the phone beeps and I enter the PIN. Now I have added the desktop to the device list in the phone.
<pre>
+
&lt;pre&gt;
 
hcitool scan
 
hcitool scan
 
Scanning ...
 
Scanning ...
Line 83: Line 84:
 
[root@snapper ~]# hcitool con
 
[root@snapper ~]# hcitool con
 
Connections:
 
Connections:
< ACL 00:0E:07:0C:0B:6D handle 6 state 1 lm MASTER
+
&lt; ACL 00:0E:07:0C:0B:6D handle 6 state 1 lm MASTER
 
[root@snapper ~]# hcitool auth 00:0E:07:0C:0B:6D
 
[root@snapper ~]# hcitool auth 00:0E:07:0C:0B:6D
</pre>
+
&lt;/pre&gt;
 
To close the connection, I can use hcitool dc
 
To close the connection, I can use hcitool dc
  
Line 98: Line 99:
  
 
The dongle is recognized when I plug it in to a USB port:
 
The dongle is recognized when I plug it in to a USB port:
<pre>
+
&lt;pre&gt;
 
[root@snapper ~]# lsusb
 
[root@snapper ~]# lsusb
 
Bus 004 Device 008: ID 0a5c:2033 Broadcom Corp. BCM2033 Bluetooth
 
Bus 004 Device 008: ID 0a5c:2033 Broadcom Corp. BCM2033 Bluetooth
Line 106: Line 107:
 
Bus 002 Device 001: ID 0000:0000
 
Bus 002 Device 001: ID 0000:0000
 
Bus 001 Device 001: ID 0000:0000
 
Bus 001 Device 001: ID 0000:0000
</pre>
+
&lt;/pre&gt;
  
 
This is where I start to flounder. There is a nice pile of documentation at http://www.holtmann.org/linux/bluetooth/ but it is terribly frustrating trying to find the *actual next step* that I might need to take. Random clicks on the links in that long list haven’t yielded a non-obsolete howto document so far.
 
This is where I start to flounder. There is a nice pile of documentation at http://www.holtmann.org/linux/bluetooth/ but it is terribly frustrating trying to find the *actual next step* that I might need to take. Random clicks on the links in that long list haven’t yielded a non-obsolete howto document so far.
Line 119: Line 120:
  
 
One of the things I get in bluez-utils is /etc/init.d/bluetooth. That’s promising, but simply turning it on doesn’t do much. Here is a peek inside:
 
One of the things I get in bluez-utils is /etc/init.d/bluetooth. That’s promising, but simply turning it on doesn’t do much. Here is a peek inside:
<pre>
+
&lt;pre&gt;
UART_CONF="/etc/bluetooth/uart"
+
UART_CONF=&quot;/etc/bluetooth/uart&quot;
  
[ -e /etc/sysconfig/bluetooth ] && . /etc/sysconfig/bluetooth
+
[ -e /etc/sysconfig/bluetooth ] &amp;&amp; . /etc/sysconfig/bluetooth
  
 
start_uarts()
 
start_uarts()
Line 131: Line 132:
 
done
 
done
 
}
 
}
</pre>
+
&lt;/pre&gt;
 
I’ve poked around in /etc/sysconfig/bluetooth (it is a minimal file with not much in the way of clues), but I haven’t done anything with this UART stuff. This script will only try to start the UARTs if the config file exists, which it doesn’t on my system. What should I put in there? Something that hciattach will like…
 
I’ve poked around in /etc/sysconfig/bluetooth (it is a minimal file with not much in the way of clues), but I haven’t done anything with this UART stuff. This script will only try to start the UARTs if the config file exists, which it doesn’t on my system. What should I put in there? Something that hciattach will like…
  
 
Ahh, this is where it gets interesting. The man page for hciattach includes a list of supported serial devices that it can insert into the Bluez stack and my Broadcom device is not listed. It mentions support for these devices: ericsson, digi, xircom, brainboxes, silicon wave, csr. But, it also has a device type called “any”. And so this shot in the dark actually seems to work:
 
Ahh, this is where it gets interesting. The man page for hciattach includes a list of supported serial devices that it can insert into the Bluez stack and my Broadcom device is not listed. It mentions support for these devices: ericsson, digi, xircom, brainboxes, silicon wave, csr. But, it also has a device type called “any”. And so this shot in the dark actually seems to work:
<pre>
+
&lt;pre&gt;
 
[root@snapper bluetooth]# hciattach /dev/ttyS1 any
 
[root@snapper bluetooth]# hciattach /dev/ttyS1 any
 
[root@snapper bluetooth]# hciconfig
 
[root@snapper bluetooth]# hciconfig
Line 144: Line 145:
 
RX bytes:0 acl:0 sco:0 events:0 errors:0
 
RX bytes:0 acl:0 sco:0 events:0 errors:0
 
TX bytes:4 acl:0 sco:0 commands:1 errors:0
 
TX bytes:4 acl:0 sco:0 commands:1 errors:0
</pre>
+
&lt;/pre&gt;
  
 
Wow, I wasn’t expecting to get this far. What else can I do? Using hciconfig to bring up the device doesn’t seem to work just yet, so let’s start again but first I’ll put “/dev/ttyS1 any” in /etc/bluetooth/UART and restart bluetooth.
 
Wow, I wasn’t expecting to get this far. What else can I do? Using hciconfig to bring up the device doesn’t seem to work just yet, so let’s start again but first I’ll put “/dev/ttyS1 any” in /etc/bluetooth/UART and restart bluetooth.
<pre>
+
&lt;pre&gt;
 
[root@snapper bluetooth]# /etc/init.d/bluetooth stop
 
[root@snapper bluetooth]# /etc/init.d/bluetooth stop
 
Stopping Bluetooth services: [ OK ]
 
Stopping Bluetooth services: [ OK ]
Line 163: Line 164:
 
Link policy:
 
Link policy:
 
Link mode: SLAVE ACCEPT
 
Link mode: SLAVE ACCEPT
</pre>
+
&lt;/pre&gt;
  
 
It doesn’t look like it is really talking to the device. Probably this is because I’m telling it to look on the serial port /dev/ttyS1. Isn’t that the old-school serial port? How do I name a device on the USB bus? My xorg.conf is pointing to my USB mouse through the name of /dev/input/mice. That’s the only USB device I have on this system. hciattach really wants a /dev/tty to talk to. It looks like my task is to figure out how to bind a USB device to a /dev/tty* name.
 
It doesn’t look like it is really talking to the device. Probably this is because I’m telling it to look on the serial port /dev/ttyS1. Isn’t that the old-school serial port? How do I name a device on the USB bus? My xorg.conf is pointing to my USB mouse through the name of /dev/input/mice. That’s the only USB device I have on this system. hciattach really wants a /dev/tty to talk to. It looks like my task is to figure out how to bind a USB device to a /dev/tty* name.
Line 175: Line 176:
  
 
For kicks, here is the relevant output of kudzu -p:
 
For kicks, here is the relevant output of kudzu -p:
<pre>
+
&lt;pre&gt;
 
class: OTHER
 
class: OTHER
 
bus: USB
 
bus: USB
 
detached: 0
 
detached: 0
 
driver: bcm203x
 
driver: bcm203x
desc: "Broadcom Corp. BCM2033 Bluetooth"
+
desc: &quot;Broadcom Corp. BCM2033 Bluetooth&quot;
 
usbclass: 0
 
usbclass: 0
 
usbsubclass: 1
 
usbsubclass: 1
Line 191: Line 192:
 
vendorId: 0a5c
 
vendorId: 0a5c
 
deviceId: 2033
 
deviceId: 2033
</pre>
+
&lt;/pre&gt;
 
And here is the snipped output of lsmod:
 
And here is the snipped output of lsmod:
<pre>
+
&lt;pre&gt;
 
[root@snapper ~]# lsmod
 
[root@snapper ~]# lsmod
 
Module Size Used by
 
Module Size Used by
Line 211: Line 212:
  
 
...
 
...
</pre>
+
&lt;/pre&gt;
 
Googling for my device model number gives me this: http://www.broadcom.com/collateral/pb/2033-PB04-R.pdf
 
Googling for my device model number gives me this: http://www.broadcom.com/collateral/pb/2033-PB04-R.pdf
  
Line 219: Line 220:
 
It tells me that I really do need the bluez-bluefw rpm that I thought would be irrelevent to my setup.
 
It tells me that I really do need the bluez-bluefw rpm that I thought would be irrelevent to my setup.
 
After installing it, here is the list of my bluetooth packages:
 
After installing it, here is the list of my bluetooth packages:
<pre>
+
&lt;pre&gt;
 
[root@snapper ~]# rpm -qa | grep blue
 
[root@snapper ~]# rpm -qa | grep blue
 
bluez-hcidump-1.11-1
 
bluez-hcidump-1.11-1
Line 226: Line 227:
 
bluez-pin-0.23-3
 
bluez-pin-0.23-3
 
bluez-utils-2.10-2.1
 
bluez-utils-2.10-2.1
</pre>
+
&lt;/pre&gt;
 
Now I can plug in the bluetooth dongle and see where it shows up on the USB bus:
 
Now I can plug in the bluetooth dongle and see where it shows up on the USB bus:
<pre>
+
&lt;pre&gt;
 
[root@snapper ~]# lsusb
 
[root@snapper ~]# lsusb
 
Bus 004 Device 009: ID 0a5c:2033 Broadcom Corp. BCM2033 Bluetooth
 
Bus 004 Device 009: ID 0a5c:2033 Broadcom Corp. BCM2033 Bluetooth
Line 236: Line 237:
 
Bus 002 Device 001: ID 0000:0000
 
Bus 002 Device 001: ID 0000:0000
 
Bus 001 Device 001: ID 0000:0000
 
Bus 001 Device 001: ID 0000:0000
</pre>
+
&lt;/pre&gt;
  
 
Then use that address to load the bluetooth firmware:
 
Then use that address to load the bluetooth firmware:
Line 244: Line 245:
  
 
And then display the device configuration:
 
And then display the device configuration:
<pre>
+
&lt;pre&gt;
 
[root@snapper bluetooth]# hciconfig
 
[root@snapper bluetooth]# hciconfig
 
hci0: Type: USB
 
hci0: Type: USB
Line 251: Line 252:
 
RX bytes:209 acl:0 sco:0 events:31 errors:0
 
RX bytes:209 acl:0 sco:0 events:31 errors:0
 
TX bytes:1119 acl:0 sco:0 commands:31 errors:0
 
TX bytes:1119 acl:0 sco:0 commands:31 errors:0
</pre>
+
&lt;/pre&gt;
 
Yay!
 
Yay!
<pre>
+
&lt;pre&gt;
 
[root@snapper bluetooth]# hcitool scan
 
[root@snapper bluetooth]# hcitool scan
 
Scanning ...
 
Scanning ...
Line 264: Line 265:
 
Manufacturer: Ericsson Technology Licensing (0)
 
Manufacturer: Ericsson Technology Licensing (0)
 
Features: 0x04 0xca 0x31 0x00 0x00 0x00 0x00 0x00
 
Features: 0x04 0xca 0x31 0x00 0x00 0x00 0x00 0x00
<encryption> <rssi> <sco link> <u -law log> <a -law log> <cvsd>
+
&lt;encryption&gt; &lt;rssi&gt; &lt;sco link&gt; &lt;u -law log&gt; &lt;a -law log&gt; &lt;cvsd&gt;
 
[root@snapper bluetooth]# l2ping 00:0E:07:0C:0B:6D
 
[root@snapper bluetooth]# l2ping 00:0E:07:0C:0B:6D
 
Ping: 00:0E:07:0C:0B:6D from 00:03:C9:23:AC:B2 (data size 20) ...
 
Ping: 00:0E:07:0C:0B:6D from 00:03:C9:23:AC:B2 (data size 20) ...
Line 279: Line 280:
 
10 sent, 10 received, 0% loss
 
10 sent, 10 received, 0% loss
 
[root@snapper bluetooth]#
 
[root@snapper bluetooth]#
</pre>
+
&lt;/pre&gt;

Revision as of 03:25, 24 November 2010

This Page Is Currently Under Construction And Will Be Available Shortly, Please Visit Reserve Copy Page

Wednesday, May 4th, 2005

I tried applying my bluetooth knowledge so far to a Yellowdog 4.0 laptop and was able to send pictures from my phone via bluetooth to the laptop. Here is the configuration: <pre> [rday@bobo rday]$ rpm -qa | grep blue bluez-hcidump-1.8-1 bluez-bluefw-1.0-4 bluez-utils-2.7-3 bluez-libs-2.7-1 gnome-bluetooth-0.4.1-8 bluez-pin-0.23-1 [rday@bobo rday]$ cat /etc/yellowdog-release Yellow Dog Linux release 4.0 (Orion) </pre>

The only local configuration I did was to change the device name that the bluetooth dongle in the laptop uses to advertise itself. Then I used bluefw to “load the firmware”, whatever that means. And then started the bluetooth service. The pin-helper said that it failed, but the phone and laptop were able to pair successfully anyway. And when I used the phone to examine the advertised services available on the laptop, it reported file transfer and synchronization. Cool.

On Yellowdog, even Nautilus was able to understand “bluetooth:///” as a file path. But it didn’t see my phone. I’ll have to poke at that more.

After the devices were paired, I could start a transfer from the phone and send pictures which magically appeared in my home directory on the laptop.

May 4th, 2005 at 1:24 pm

Trying to get gnome-bluetooth to work on RHEL 4.0WS like it does on Yellowdog has been hard. I’m stuck in dependency hell. It ought to be easy given a working system that I can copy, right?

First problem is that there isn’t a gnome-bluetooth rpm for RHEL. So I have to reach back to RHL 9.0 to get gnome-bluetooth. (I tried installing from source, which compiled and installed successfully, but somehow still doesn’t work.)

Trying to install the old gnome-bluetooth rpm yields a failed dependency: <pre> error: Failed dependencies: libbtctl.so.1 is needed by gnome-bluetooth-0.4.1-3.i386 libopenobex-1.0.so.0 is needed by gnome-bluetooth-0.4.1-3.i386 libsdp.so.2 is needed by gnome-bluetooth-0.4.1-3.i386 Suggested resolutions: libbtctl-0.4.1-3.i386.rpm </pre>

Trying to install libbtctl yields a further failed dependency:

error: Failed dependencies:
libsdp.so.2 is needed by libbtctl-0.3-4.i386

libsdp.so.2 is provided by bluez-libs-2.7-1 on Yellowdog

I have bluez-libs-2.10-2 on RHEL.

The changelog for this package says that in version 2.8 the dummy SDP library was removed. Doh. I’m stuck on a dependency for a dummy library.


July 26th, 2005 at 6:11 pm

I wasn’t very explicit about the recipe for transfering files between phone and laptop. I just had to figure it out again. I took several false starts and so I’m still not sure what the right procedure is, but I think it is something like this:

  • make sure the bluetooth service is running via /etc/init.d/bluetooth status
  • start gnome-obex-server (System tools > Bluetooth file sharing)
  • use the phone to drive the transaction
  • pick a file and send it via bluetooth to the laptop

I don’t think all the business with hcitool are actually required, but it does let you see some reassuring debugging info.

Earlier attempts

Tuesday, May 3rd, 2005

The basic connections are in place for talking between my work desktop and my cell phone. Now I need to be able to do useful things like transfer files.

On the desktop, I just need to have the bluetooth service running. On the phone, if I scan for devices, it sees the desktop, but when I try to establish a connection from the phone, it fails saying that the passkey doesn’t match.

I can work around this by establishing the connection from the desktop instead.

From the desktop, I scan for devices with hcitool scan, get the address of the phone, and then use hcitool to open a connection and request authentication. Then the phone beeps and I enter the PIN. Now I have added the desktop to the device list in the phone. <pre> hcitool scan Scanning ... 00:0E:07:0C:0B:6D T616ryan [rday@snapper ~]$ hcitool cc 00:0E:07:0C:0B:6D Can't create connection: Operation not permitted [rday@snapper ~]$ sudo bash Password: [root@snapper ~]# hcitool cc 00:0E:07:0C:0B:6D [root@snapper ~]# hcitool con Connections: < ACL 00:0E:07:0C:0B:6D handle 6 state 1 lm MASTER [root@snapper ~]# hcitool auth 00:0E:07:0C:0B:6D </pre> To close the connection, I can use hcitool dc

I would like that service list to include things like synchronization and object push. To get that, I installed gnome-bluetooth from http://usefulinc.com/software/gnome-bluetooth but that hasn’t worked for me yet. This howto from a gentoo user is very helpful: http://gentoo-wiki.com/HOWTO_mobile_phone,_Bluetooth_and_GNOME

Monday, April 25th, 2005

Starting from Redhat EL4WS, I’m trying to plug in a bluetooth dongle and be able to talk to my cell phone. Here is what I have so far.

The dongle is recognized when I plug it in to a USB port: <pre> [root@snapper ~]# lsusb Bus 004 Device 008: ID 0a5c:2033 Broadcom Corp. BCM2033 Bluetooth Bus 004 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 002: ID 413c:3010 Dell Computer Corp. Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000 </pre>

This is where I start to flounder. There is a nice pile of documentation at http://www.holtmann.org/linux/bluetooth/ but it is terribly frustrating trying to find the *actual next step* that I might need to take. Random clicks on the links in that long list haven’t yielded a non-obsolete howto document so far.

What software and tools do I have at my disposal?

[root@snapper ~]# rpm -qa | grep blue
bluez-hcidump-1.11-1
bluez-libs-2.10-2
bluez-pin-0.23-3
bluez-utils-2.10-2.1

One of the things I get in bluez-utils is /etc/init.d/bluetooth. That’s promising, but simply turning it on doesn’t do much. Here is a peek inside: <pre> UART_CONF="/etc/bluetooth/uart"

[ -e /etc/sysconfig/bluetooth ] && . /etc/sysconfig/bluetooth

start_uarts() { [ -f $UART_CONF ] || return grep -v '^#' $UART_CONF | while read i; do /usr/sbin/hciattach $i done } </pre> I’ve poked around in /etc/sysconfig/bluetooth (it is a minimal file with not much in the way of clues), but I haven’t done anything with this UART stuff. This script will only try to start the UARTs if the config file exists, which it doesn’t on my system. What should I put in there? Something that hciattach will like…

Ahh, this is where it gets interesting. The man page for hciattach includes a list of supported serial devices that it can insert into the Bluez stack and my Broadcom device is not listed. It mentions support for these devices: ericsson, digi, xircom, brainboxes, silicon wave, csr. But, it also has a device type called “any”. And so this shot in the dark actually seems to work: <pre> [root@snapper bluetooth]# hciattach /dev/ttyS1 any [root@snapper bluetooth]# hciconfig hci0: Type: UART BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0

DOWN RX bytes:0 acl:0 sco:0 events:0 errors:0 TX bytes:4 acl:0 sco:0 commands:1 errors:0 </pre>

Wow, I wasn’t expecting to get this far. What else can I do? Using hciconfig to bring up the device doesn’t seem to work just yet, so let’s start again but first I’ll put “/dev/ttyS1 any” in /etc/bluetooth/UART and restart bluetooth. <pre> [root@snapper bluetooth]# /etc/init.d/bluetooth stop Stopping Bluetooth services: [ OK ] [root@snapper bluetooth]# /etc/init.d/bluetooth start Starting Bluetooth services: [ OK ] [root@snapper bluetooth]# [root@snapper dev]# hciconfig -a hci0: Type: UART BD Address: 00:00:00:00:00:00 ACL MTU: 0:0 SCO MTU: 0:0 DOWN RX bytes:0 acl:0 sco:0 events:0 errors:0 TX bytes:8 acl:0 sco:0 commands:2 errors:0 Features: 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 Packet type: DM1 DH1 HV1 Link policy: Link mode: SLAVE ACCEPT </pre>

It doesn’t look like it is really talking to the device. Probably this is because I’m telling it to look on the serial port /dev/ttyS1. Isn’t that the old-school serial port? How do I name a device on the USB bus? My xorg.conf is pointing to my USB mouse through the name of /dev/input/mice. That’s the only USB device I have on this system. hciattach really wants a /dev/tty to talk to. It looks like my task is to figure out how to bind a USB device to a /dev/tty* name. One quick google search later and I think the answer is in this page: http://www.linux-usb.org/USB-guide/x356.html The USB device files don’t exist on my system, so I make a directory “/dev/usb” and put ttyUSB0-3 in it. Then I tell /etc/bluetooth/uart that hciattach should use the parameters “/dev/usb/ttyUSB0 any”. Then I stop and start bluetooth. On start, I get this:

[root@snapper init.d]# /etc/init.d/bluetooth start
Can't open serial port: No such device [ OK ]
Can't initialize device: Illegal seek

Dang. Even if that would have worked, it would not explain how the mapping works between a USB device and the namespace of ttyUSB0. Maybe ttyUSB0 is pointed at my mouse. How do I find out what it is really pointed at?

For kicks, here is the relevant output of kudzu -p: <pre> class: OTHER bus: USB detached: 0 driver: bcm203x desc: "Broadcom Corp. BCM2033 Bluetooth" usbclass: 0 usbsubclass: 1 usbprotocol: 1 usbbus: 4

usblevel: 1 usbport: 0 usbdev: 9 vendorId: 0a5c deviceId: 2033 </pre> And here is the snipped output of lsmod: <pre> [root@snapper ~]# lsmod Module Size Used by usbserial 29865 0 hci_uart 18205 0 hidp 18753 0 cmtp 22337 0 kernelcapi 49216 1 cmtp rfcomm 38105 0 l2cap 27201 7 hidp,cmtp,rfcomm hci_usb 16961 0 bluetooth 47429 8 hci_uart,hidp,cmtp,rfcomm,l2cap,hci_usb bcm203x 9281 0 ... uhci_hcd 32473 0 ehci_hcd 31813 0

... </pre> Googling for my device model number gives me this: http://www.broadcom.com/collateral/pb/2033-PB04-R.pdf

Better yet, googling for “broadcom bluetooth linux” I got this gem: http://www.twoguys.org/~gregh/nokia-6310i.html

It tells me that I really do need the bluez-bluefw rpm that I thought would be irrelevent to my setup. After installing it, here is the list of my bluetooth packages: <pre> [root@snapper ~]# rpm -qa | grep blue bluez-hcidump-1.11-1 bluez-libs-2.10-2 bluez-bluefw-1.0-6 bluez-pin-0.23-3 bluez-utils-2.10-2.1 </pre> Now I can plug in the bluetooth dongle and see where it shows up on the USB bus: <pre> [root@snapper ~]# lsusb Bus 004 Device 009: ID 0a5c:2033 Broadcom Corp. BCM2033 Bluetooth Bus 004 Device 001: ID 0000:0000 Bus 003 Device 001: ID 0000:0000 Bus 002 Device 002: ID 413c:3010 Dell Computer Corp. Bus 002 Device 001: ID 0000:0000 Bus 001 Device 001: ID 0000:0000 </pre>

Then use that address to load the bluetooth firmware:

[root@snapper ~]# bluefw usb 004/009
bluefw[12478]: Loading firmware to usb device 0a5c:2033
bluefw[12478]: FW loaded

And then display the device configuration: <pre> [root@snapper bluetooth]# hciconfig hci0: Type: USB BD Address: 00:03:C9:23:AC:B2 ACL MTU: 377:10 SCO MTU: 16:0 UP RUNNING PSCAN ISCAN RX bytes:209 acl:0 sco:0 events:31 errors:0 TX bytes:1119 acl:0 sco:0 commands:31 errors:0 </pre> Yay! <pre> [root@snapper bluetooth]# hcitool scan Scanning ... 00:0E:07:0C:0B:6D T616ryan [root@snapper bluetooth]# hcitool info 00:0E:07:0C:0B:6D Requesting information ... BD Address: 00:0E:07:0C:0B:6D Device Name: T616ryan LMP Version: 1.1 (0x1) LMP Subversion: 0x503 Manufacturer: Ericsson Technology Licensing (0) Features: 0x04 0xca 0x31 0x00 0x00 0x00 0x00 0x00 <encryption> <rssi> <sco link> <u -law log> <a -law log> <cvsd> [root@snapper bluetooth]# l2ping 00:0E:07:0C:0B:6D Ping: 00:0E:07:0C:0B:6D from 00:03:C9:23:AC:B2 (data size 20) ... 0 bytes from 00:0E:07:0C:0B:6D id 200 time 32.85ms 0 bytes from 00:0E:07:0C:0B:6D id 201 time 31.16ms 0 bytes from 00:0E:07:0C:0B:6D id 202 time 22.20ms 0 bytes from 00:0E:07:0C:0B:6D id 203 time 26.15ms 0 bytes from 00:0E:07:0C:0B:6D id 204 time 28.28ms 0 bytes from 00:0E:07:0C:0B:6D id 205 time 28.31ms 0 bytes from 00:0E:07:0C:0B:6D id 206 time 26.34ms 0 bytes from 00:0E:07:0C:0B:6D id 207 time 12.31ms 0 bytes from 00:0E:07:0C:0B:6D id 208 time 13.41ms 0 bytes from 00:0E:07:0C:0B:6D id 209 time 28.42ms 10 sent, 10 received, 0% loss [root@snapper bluetooth]# </pre>