Enabling OS X’s Bluetooth On/Off Switch

June 19th, 2010

Apple / Mac, Hardware

One of the vast options available to you when you purchased your Inspiron 1525 was the addition of an integrated Broadcom Bluetooth chip. Dell was offering it for an extra $25, so I jumped on the opportunity of having one extra means of connectivity. Three years and many experiences later, I’ve probably used the Bluetooth module twice. I’ve even gone as far as disabling Bluetooth in the BIOS to save a little battery life. My only problem with that is if a situation suddenly arises where I need my Bluetooth, I have to restart to enable it. It’s a rather unnecessary inconvenience that I would like to avoid. After some quick googling intense researching, I was able to find a solution to my problem.

If you purchased your Inspiron 1525 with Bluetooth, you have a Broadcom BCM2045 chip/card. Luckily enough, Apple supports a wide variety of Broadcom wireless chips, so we have native Bluetooth support. Apple doesn’t, however, directly support our exact card, so we’re missing the ability to power the card on/off from inside OS X. This feature can be added though with a quick change to IOBluetoothFamily.kext. Simply add your Device ID and Vendor ID to the correct info.plist file and, after a quick reboot, you will have the ability to turn the card on and off directly from within OS X. Remember, this physically turns the card off, thus saving you battery power. And since you can just as easily turn the card back on, I don’t see why everyone wouldn’t turn the card off.

To enable this feature, simply kext helper the proper kext included below (either the version for 10.6.4 or 10.5.7) and restart. Note that the 10.6.5 kext will only work on 10.6.5, the 10.6.4 kext will only work on 10.6.4, and the 10.5.7 kext will only work on 10.5.7. These are the versions of these OSs that I’ve been able to test, so I was able to make these myself. If you aren’t running either of these versions, you can follow this superb guide by prasys to edit any version of the kext. Alternatively, you can follow my quick breakdown of the guide below. It’s super simple to do and will result in some extra battery life to dedicate to other tasks.

IOBluetoothFamily.kext for 10.5.7

IOBluetoothFamily.kext for 10.6.4

IOBluetoothFamily.kext for 10.6.5

Quick breakdown:

1. Navigate to /System/Library/Extensions/ and copy IOBluetoothFamily.kext to your desktop

2. Using the copy on your desktop, navigate to IOBluetoothFamily.kext/Contents/PlugIns/BroadcomUSBBluetoothHCIController.kext/Contents/ (To get to the Contents folder, right click on the kext and select Show Package Contents)

3. Open info.plist in TextEdit.

4. Find and replace

<key>idProduct</key>
<integer>33292</integer>
<key>idVendor</key>
<integer>1452</integer>

with

<key>idProduct</key>
<integer>33062</integer>
<key>idVendor</key>
<integer>16700</integer>

5. Save the file.

6. Kext Helper the newly updated IOBluetoothFamily.kext. Also be sure to run a Tag Cache Rebuild.

7. Reboot.

You’ll now notice a new Turn Bluetooth Off option under the Bluetooth menu bar icon. Turning Bluetooth off both physically turns the Bluetooth hardware and the Bluetooth LED off.

, , , , , ,

About Thomas

Thomas is a self-proclaimed guru (just ask him). He enjoys long walks on the beach, running Mac OS X on his Inspiron 1525, and tweeting about nonsensical life happenings. You can follow Thomas on twitter, email him, or search the interwebs for all his personal information. Neither should be too difficult.

View all posts by Thomas

6 Responses to “Enabling OS X’s Bluetooth On/Off Switch”

  1. e12

    My problem is Bluetooth isn’t pairing with Magic Trackpad. It is found, but it doesn’t pair and I get the message “pairing attempt unsuccessful” or “there was an error when….”

    After lots of web researching, I have reasons to think the things you describe here has something do to with what my problem is.

    But when I try to see my vendor and product ID, this is what shows up:

    Vendor ID: 0
    Product ID: 0x1

    I feel it’s wrong.

    How can I find this information, so?

    Thanks!

    I’m running a Retail 10.6.5 in a DP35DP desktop with Core 2 Quad Q9550 @2.83Ghz / 8GB 800Mhz RAM

  2. LeXa

    Hi! I have BroadCom BCM92070MD BT chip in my HP Mini 311.

    Vendor ID 0xbfff
    Product ID 0xe4e8

    After hex conversion I have:
    Vendor ID 49151
    Prod ID 58600

    I think it`s not correct values and that is why I can`t use this “magic” button

    What I need to do to use this button?

Trackbacks/Pingbacks

  1. Enable Bluetooth OSX Switch For Broadcom Adapters! - December 12th, 2012

    […] nugget tonight. Supposedly works wonders for Broadcom-based systems with switches like HP laptops http://dailyblogged.com/post/enablin…-onoff-switch/ Tweet !function(d,s,id){var […]