IBM Integrated Bluetooth IV with 56K Modem (BMDC-3)
- IBM FRU PN: 39T0022 ($37.50 in July 2005) - no longer available at IBM
- IBM FRU PN: 39T0024 ($49.00 in September 2005) - no longer available at IBM
- IBM FRU PN: 39T0026 ($56 in Dec 2006, $50.00 in July 2006)
This part takes the place of the 56K Modem board. It requires a Bluetooth antenna, and some ThinkPads built without Bluetooth already have the antenna installed -- the antenna wire may be found disconnected and taped under the Modem board.
In addition to the Modem/BT module, a Bluetooth Thinkpad also uses an extra indicator LED below the LCD display, and another indicator LED on the top of the lid. To see these two LEDs, two new clear plates are required. The entire set of replacement sticker plates can be ordered as FRU 26R8409 (unavailable as of Dec 2006; $16.50 as of March 2006; formerly FRU 13R2455)
As of January 2006, IBM charged $13.50 for airborne shipping.
See Buying FRUs.
Linux Bluetooth driver
The Bluetooth device is implemented using USB. Enabling/disabling bluetooth (i.e. by use of) leads to USB connect and disconnect events.
As Bluetooth is implemented using USB, this will only work with USB drivers enabled:
# modprobe uhci-hcd ; modprobe ehci-hcd
The bcm203x kernel module, which is included in recent kernels, supports this chipset. You have to make sure to compile it as a module since the kernel won't detect the chip at boottime (when Bluetooth is turned off).
Some problems have been reported using bluetooth after a suspend/resume cycle on the T43. These problems can be mitigated by unloading the USB kernel modules (uhci_hcd, ehci_hcd, hci_usb, bcm203x) before the machine is put to sleep, and by re-loading these modules when the machine wakes up again.
You could also try this patch which adds suspend/resume support to the hci_usb module. This patch is already in kernel 2.6.18-rc1. Or you use the bluez mh4-patch for 2.6.17 which adds suspend/resume and also fixes an issue with the SCO buffer size.
On a T43p you must ensure that you call hotplug (re)start upon resume or you will lose bluetooth functionality. See the ACPI area for sample suspend scripts, or if bluetooth flakes on a debian system at any time you can manually call
# /etc/init.d/hotplug restart
and it will come back with anotherpress.