I've just recieved my new 3com pcmcia bluetooth card (3CRWB6096). According to google it was supposed to work with Linux.
I think it will, but there's something about needing the windows firmware file- BT3CPCC.bin. I have said file, and have tried putting it in both /etc/bluetooth/firmware and /lib/firmware (where the community package bluez-firmware puts similar files for other cards).
However, I'm still getting the following in dmesg on plugging the card in...
pccard: PCMCIA card inserted into slot 0 pcmcia: registering new device pcmcia0.0 bt3c_interrupt: Call of irq 4 for unknown device bt3c_open: Firmware request failed bt3c_interrupt: Call of irq 4 for unknown device bt3c_open: Firmware request failed bt3c_interrupt: Call of irq 4 for unknown device
So the question is- where do I put this file? What should it be called? Is it in the kernel config or something? Where do I find out?
Any pointers would be very much appreciated
Thanks in advance
OK I've found out that "BT3CPCC.bin" is the name defined in the source for bt3c, but I don't know what the path is. I would assume that since it's calling a global function called firmware_open() it must be in the standard kernel firmware location. Which is where? /lib/firmware? Putting it in there doesn't make any difference.
I'm not sure if this will help but I know that blueZ has undergone some major changes and is known be problematic with some hardware (http://en.opensuse.org/Bugs:Most_Annoying_Bugs), especially with PCMCIA devices. I runboth arch and suse 10.1 and my pcmcia bluetooth card works perfectly under suse which has older versions of the blueZ-libs and blueZ-utils (2.24 if I'm not mistaken). So perhaps try using an older version of the blueZ packages if thats possible.
Oh I'm stupid. It turned out that I hadn't properly extracted the firmware, and that the file was actually empty. Once I managed to get the file out of the package, I put it in /lib/firmware/BT3CPCC.bin and it now loads it. However, hciconfig reports the device as having the address 00:00:00:00:00, and times out when trying to start or reset it.
I found someone with a Debian laptop and bluez installed at a recent LUG meeting. It worked! So now I know that it's possible. I then downloaded debian and installed in on a spare partition. After finally realising that I hadn't upgraded to a 2.6 kernel, I got my card working there as well. That's with bluez 2.15 and a patched kernel 2.6.8, which is quite a lot older than Arch's packages (I"m especially surprised at the kernel version).
So, where can I get hold of Arch packages for bluez 2.x?
Woohoo!!! It finally works in Arch!!! 4 months later!
Hopefully this will be of help to others with similar problems:
The only thing that needed downgrading was bluez-utils. The latest version of bluez-libs (3.7-4) works fine- this is especially good, as it means that no dependencies get broken.
To get an old version of bluez-utils:
As root, run abs to update the abs tree. Then as a normal user copy the directory /var/abs/system/bluez-utils to somewhere sensible. Edit the PKGBUILD: change the version to 2.25, and remove the last line of the install script (the one about passkey-agent). Run makepkg.