Jump to content

Sierra :: Bluetooth USB Dongle [0x0a12:0x0001] - doesn't work (cheap)


osx151212
 Share

12 posts in this topic

Recommended Posts

Hello,

I wonder if somebody managed to make work inexpencive Bluetooth USB Dongle in Sierra
 

Bluetooth HCI:

 

  Product ID: 0x0001

  Vendor ID: 0x0a12  (Cambridge Silicon Radio Ltd.)

  Version: 1.34

  Speed: Up to 12 Mb/sec

  Location ID: 0xfd330000 / 2

  Current Available (mA): 500

  Current Required (mA): 100

  Extra Operating Current (mA): 0


Thank you

osx151212

 

Link to comment
Share on other sites

I did. You have to edit BroadcomBluetoothHostControllerUSBTransport.kext inside IOBluetoothFamily.kext/Contents/Plugins in S/L/E. The file I attached is for 10.12.3 (16D32).

 

It gets overwritten after every update, so you have to change it every time you update the system.

 

1. Copy IOBluetoothFamily.kext from S/L/E to Desktop

2. Right-click the file and choose Show Package Contents

3. Go to Contents/Plugins

4. Find BroadcomBluetoothHostControllerUSBTransport.kext

5. Right-click the file and choose Show Package Contents

6. Go to Contents folder

7. Open Info.plist with editor of your choice ( I like Xcode or Brackets or PlistEdit Pro, don't use TextEdit)

 

Choose any of the controllers listed and change idProduct and idVendor integers to look like this:

<key>idProduct</key>
<integer>1</integer>
<key>idVendor</key>
<integer>2578</integer>
 
(just replace the existing numbers with 1 and 2578)
 
Save the changes. 
 
Install this new kext using any kext utility. I use EasyKext Utility. After restart you should have bluetooth working.
 
File for 10.12.3 (16D32): IOBluetoothFamily.kext.zip
  • Thanks 1
Link to comment
Share on other sites

Morpheus NS,

I've inspected a file

/System/Library/Extension/IOBluetoothFamily.kext/Contents/PlugIns/CSRBluetoothHostControllerUSBTransport.kext/Content/Info.plist

 and found that section you mentioned in your post is present there!!!

Could you confirm that this file also has mentioned by you  section?

 

I've attempted to load this kext manually and system still reports "Bluetooth unavailable".

 

NOTE: At first I decided to copy BroadcomBluetooth.....kext into CLOVER/kexts/10.12 and substitude name from Broadcom to CSR -- and at this point I found that there is a kext with such name.

Further investigation of CSR kext gave me the section you included in your post. After this finding I assumed that loading this kext should activate bluetooth but it did not work.

Link to comment
Share on other sites

Hervé,

I've followed your suggestion and inserted the section into my FakeSMC.kext/Content/Info.plist -- after reboot the system had a progress bar on black background and hang there for a while, then the screen turned black (probably the screen saver kicked in).

My guess is that as I use "extended" FakeSMC.kext (reports HDD, Video Card temperature and CPU freq/temperature) there could be some incompatibility with FakeSMC.kext.

I wonder what would involve to make a "stand alone" kext for this module.

I looked at following webpage and due lack of knowledge in this field I do not know how to do it properly

https://developer.apple.com/library/content/documentation/Darwin/Conceptual/KEXTConcept/KEXTConceptIOKit/iokit_tutorial.html

I know that it can be done as it is done with AppleALC.kext module to support "unsupported" sound codecs (I use one of them ALC883). 

 

It would be nice to have kext module for this inexpensive bluetooth module available under CLOVER/kexts and keep OSX untouched.

 

osx151212 

Link to comment
Share on other sites

Hervé,

please see my attache FakeSMC/Content/Info.plist file.

With this modification I restarted the computer, Clover loaded up, I selected "El Capitan" and pressed "Enter".

 

On a black screen appeared white Apple and progress bar. The progress bar was moving close to the middle with high HDD activity and after that HDD activity stopped - the progress bar continued slowly move forward but system never completed to boot.

I booted from flash drive and removed "modification" to FakeSMC/Content/Info.plist file.

I am not sure why it works for you but not for me.

FakeSMC_modified_Info.zip

 

 

osx151212


A few screenshots (sorry for quality) with an error caused by changes made in FakeSMC.kext

post-1635374-0-32422200-1486016803_thumb.jpg

post-1635374-0-20981600-1486016863_thumb.jpg

post-1635374-0-23938100-1486016922_thumb.jpg

post-1635374-0-35090100-1486016965_thumb.jpg

Link to comment
Share on other sites

For reference, this issue is described on following web page

 

 

 

there is kext available on the page. I've downloaded and put under clover bootloader.

After reboot no bluetooth device has appeared in "System Information" but under USB Vendor ID and Product ID has changed.
Although the issue still persists it gives some basis for kext modification. 

In description mentioned that there are a few versions of same device, on my check I found that I have Version 1.00 and Version 1.34.

 

NOTE: it seems that CSR works for some people at least in the past 

osx151212

Edited by buoo
please read the rules
Link to comment
Share on other sites

  • 2 months later...
  • 2 years later...

You can implement Morpheus NS's solution with Clover's patching feature. This maintains a vanilla install, and won't reset after updates. Paste this in the KextsToPatch section:

 

<dict>
	<key>Comment</key>
	<string>Bluetooth adapter fix</string>
	<key>Disabled</key>
	<false/>
	<key>Find</key>
	<data>
	PGludGVnZXI+MzMyOTI8L2ludGVnZXI+
	</data>
	<key>InfoPlistPatch</key>
	<true/>
	<key>Name</key>
	<string>BroadcomBluetoothHostControllerUSBTransport</string>
	<key>Replace</key>
	<data>
	PGludGVnZXI+MTwvaW50ZWdlcj4=
	</data>
</dict>
<dict>
	<key>Comment</key>
	<string>Bluetooth adapter fix</string>
	<key>Disabled</key>
	<false/>
	<key>Find</key>
	<data>
	PGludGVnZXI+MTQ1MjwvaW50ZWdlcj4=
	</data>
	<key>InfoPlistPatch</key>
	<true/>
	<key>Name</key>
	<string>BroadcomBluetoothHostControllerUSBTransport</string>
	<key>Replace</key>
	<data>
	PGludGVnZXI+MjU3ODwvaW50ZWdlcj4=
	</data>
</dict>

 

Link to comment
Share on other sites

  • 6 months later...
On 1/28/2017 at 6:44 AM, Morpheus NS said:

I did. You have to edit BroadcomBluetoothHostControllerUSBTransport.kext inside IOBluetoothFamily.kext/Contents/Plugins in S/L/E. The file I attached is for 10.12.3 (16D32).

 

It gets overwritten after every update, so you have to change it every time you update the system.

 

1. Copy IOBluetoothFamily.kext from S/L/E to Desktop

2. Right-click the file and choose Show Package Contents

3. Go to Contents/Plugins

4. Find BroadcomBluetoothHostControllerUSBTransport.kext

5. Right-click the file and choose Show Package Contents

6. Go to Contents folder

7. Open Info.plist with editor of your choice ( I like Xcode or Brackets or PlistEdit Pro, don't use TextEdit)

 

Choose any of the controllers listed and change idProduct and idVendor integers to look like this:


<key>idProduct</key>
<integer>1</integer>
<key>idVendor</key>
<integer>2578</integer>
 
(just replace the existing numbers with 1 and 2578)
 
Save the changes. 
 
Install this new kext using any kext utility. I use EasyKext Utility. After restart you should have bluetooth working.
 
File for 10.12.3 (16D32): IOBluetoothFamily.kext.zip

I did that and the Bluetooth app appeard under system prerefrances after restart . But Searching for devices not giving any result and non of my devices appeard for pairing . 

Link to comment
Share on other sites

  • 4 weeks later...
  • 6 months later...
On 12/29/2019 at 9:50 PM, kurbads said:

I got it working under High Sierra by placing these three RehabMan kexts in Clover kexts 10.13 folder.

 

https://github.com/RehabMan/OS-X-BrcmPatchRAM

 

1023924043_ScreenShot2019-12-29at16_18_19.thumb.png.db4bf599b415598ab4036e59cf225df4.png

 

Hi 

 

The bluetooth on my '14 MBA failed so i bought a USB bluetooth adapter to pair my AirPods and mouse but i am unable to do so as  they don't show up in the discovered devices... 

I tried debugging, resetting smc, restarting etc. but none of this seems to make it work.. :(

 

Could you please help me with this as i understand that you got it to work somehow @kurbads

 

See screenshots below for your reference - 

1972056546_Screenshot2020-07-04at2_30_15PM.thumb.png.5cb264deaf964bbf5fe4c77db414b9ff.png128025559_Screenshot2020-07-04at2_30_44PM.png.df8aac568633d8b588dfed9af9f550e5.png

 

Link to comment
Share on other sites

  • 4 months later...
On 1/28/2017 at 6:44 AM, Morpheus NS said:

I did. You have to edit BroadcomBluetoothHostControllerUSBTransport.kext inside IOBluetoothFamily.kext/Contents/Plugins in S/L/E. The file I attached is for 10.12.3 (16D32).

 

It gets overwritten after every update, so you have to change it every time you update the system.

 

1. Copy IOBluetoothFamily.kext from S/L/E to Desktop

2. Right-click the file and choose Show Package Contents

3. Go to Contents/Plugins

4. Find BroadcomBluetoothHostControllerUSBTransport.kext

5. Right-click the file and choose Show Package Contents

6. Go to Contents folder

7. Open Info.plist with editor of your choice ( I like Xcode or Brackets or PlistEdit Pro, don't use TextEdit)

 

Choose any of the controllers listed and change idProduct and idVendor integers to look like this:


<key>idProduct</key>
<integer>1</integer>
<key>idVendor</key>
<integer>2578</integer>
 
(just replace the existing numbers with 1 and 2578)
 
Save the changes. 
 
Install this new kext using any kext utility. I use EasyKext Utility. After restart you should have bluetooth working.
 
File for 10.12.3 (16D32): IOBluetoothFamily.kext.zip

 

 

thanks man . this helped me to make my bluetooth work 

  • Thanks 1
Link to comment
Share on other sites

 Share

×
×
  • Create New...