Jump to content
Marchrius

Broadcom Bluetooth Injector

13 posts in this topic

Recommended Posts

Hi guy!

 

For who have problem to make work a Broadcom Bluetooth USB device can install this Injector and cross the finger!

 

But first, check if your idProduct and idVendor are in the list below, if not feel free to post yours and I'll add it to both kext and list:

	idProduct		idVendor
	 0x3404			 0x13D3		(AzureWave AW-CE123H)
         0x21EC                  0x0A5C         (Inateck BTA-BC4B6)


Download: Broadcom BCM20702A0 Kext Injector

Share this post


Link to post
Share on other sites
Advertisement

 

My problem was : No bluetooth recognition (not only for handoff). After injection the card works. Then I applied handoff patch.

Share this post


Link to post
Share on other sites

yeah I know - mobster replied to my post with the BTFirmwareUploader.kext which helps to inject a lot of bluetooth modules. The source is here I think:

http://forum.osxlatitude.com/index.php?/topic/2925-bluetooth-firmware-uploader/

 

I haven't looked into the kext you provided but maybe it's the same/a similar approach?

My kext inject only the product and vendor id. So, it doen't load any binary in the kernel space because the official broadcom kext do that. So, I think that, if I can use a vanilla kext why I'll install a thirdy part kext?

 

My approach is same as the kext in BTFirmwareUploader.kext/Contents/PlugIns/BluetoothDevInfoInjector.kext/Contents/Info.plist but with my kext I have a full functionally bluetooth with handsoff support and hotspot with the BTFU.kext I don't have this.

 

 

Vendor ID: 0x0A5C

  Product ID: 0x21FB

 

Thanks, I'll add it! Can you tell me the name of your card?

Share this post


Link to post
Share on other sites

Can you inject this card

  Apple Bluetooth Software Version: 4.3.4f4 15601

  Hardware, Features, and Settings:

  Name: navaratnam’s MacBook Pro (2)

  Address: 24-0A-64-03-AC-F6

  Bluetooth Low Energy Supported: Yes

  Handoff Supported: Yes

  Instant Hotspot Supported: Yes

  Manufacturer: Broadcom

  Transport: USB

  Chipset: 20702A3

  Firmware Version: v14 c5744

  Bluetooth Power: On

  Discoverable: Off

  Connectable: Yes

  Auto Seek Pointing: On

  Remote wake: On

  Vendor ID: 0x0A5C

  Product ID: 0x21FB

  HCI Version: 0x6

  HCI Revision: 0x1670

  LMP Version: 0x6

  LMP Subversion: 0x220E

  Device Type (Major): Computer

  Device Type (Complete): Mac Desktop

  Composite Class Of Device: 0x380104

  Device Class (Major): 0x01

  Device Class (Minor): 0x01

  Service Class: 0x1C0

  Auto Seek Keyboard: On

 

 Vendor ID: 0x0A5C

  Product ID: 0x21FB

Share this post


Link to post
Share on other sites

Can you inject this card

  Apple Bluetooth Software Version: 4.3.4f4 15601

  Hardware, Features, and Settings:

  Name: navaratnam’s MacBook Pro (2)

  Address: 24-0A-64-03-AC-F6

  Bluetooth Low Energy Supported: Yes

  Handoff Supported: Yes

  Instant Hotspot Supported: Yes

  Manufacturer: Broadcom

  Transport: USB

  Chipset: 20702A3

  Firmware Version: v14 c5744

  Bluetooth Power: On

  Discoverable: Off

  Connectable: Yes

  Auto Seek Pointing: On

  Remote wake: On

  Vendor ID: 0x0A5C

  Product ID: 0x21FB

  HCI Version: 0x6

  HCI Revision: 0x1670

  LMP Version: 0x6

  LMP Subversion: 0x220E

  Device Type (Major): Computer

  Device Type (Complete): Mac Desktop

  Composite Class Of Device: 0x380104

  Device Class (Major): 0x01

  Device Class (Minor): 0x01

  Service Class: 0x1C0

  Auto Seek Keyboard: On

 

 Vendor ID: 0x0A5C

  Product ID: 0x21FB

If you have this you have the injection with official kext

Share this post


Link to post
Share on other sites

Any time you have an injector kext which only uses an Info.plist (no binary), you can put the same info into the Info.plist of FakeSMC.kext and then you don't need the extra kext.

Share this post


Link to post
Share on other sites

Any time you have an injector kext which only uses an Info.plist (no binary), you can put the same info into the Info.plist of FakeSMC.kext and then you don't need the extra kext.

You are rigth, but I personally prefer to have a kext for every injection (or for a specific computer) and leave the fakesmc stock becouse If I update the FakeSMC I have to update also the Info.plist every time. My goal is a kext that will not be overwritten.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By sierra2600
      The laptop in question: Acer TravelMate 8472 TM8472 (Model: ZQ3) (refer to the "Spoiler" at the end if you want the machine specs)
       
      "So what are you bugging us for?" Good question, because I am usually an introvert and usually just keep looking for answers but I could not find some. Jumping to it...
      What does not work and I would like thoughts on:
      Bluetooth does not register, used to on previous installs (sorry, I did not pay attention to see if this was caused by me updating to 10.8.5 but that was necessary for the below functions) (It does not work in Debian either - Ignore) LAN and WLAN  - I have found Kexts (somewhere, I think I just lost them... dang it...) for the WLAN but I have yet to try them, nothing for the LAN I know this is cheating but I read that The NDISulator for FreeBSD (HINT HINT) is a port of NDISwrapper for Linux that runs Windows XP network drivers in Linux or BSD Brightness controls work from the middle down on the "Sun" brightness overlay, I got this far from following this: https://www.insanelymac.com/forum/topic/287133-guide-backlight-brightness-for-intel-80860046-1st-gen-hd-gma-5700mhd/ but I am kind of thinking of trying: https://www.insanelymac.com/forum/topic/287133-guide-backlight-brightness-for-intel-80860046-1st-gen-hd-gma-5700mhd/?do=findComment&comment=2214344 . My "magic number" is: 0xF        I used DSDTEditor in Windows, since I figured all the drivers are loaded, to extract the DSDT and compile something that somewhat works... Wake from sleep issue - I tried the above guide for that but I get a no backlit display and I can see that the cursor in the password field is not flashing when I use an external light source, but it will reboot when I press Ctrl + Alt + Power "button" (it is actually a slider) and then also clear my freaking CMOS right down to the clock... yeah I have the ACPI fix implmented and it usually works... DVD Player.app reports that no viable video device was found (personally I don't care about the DVD Player.app problem, just wanted to put that out there for the heck of it) The microphone port always sounds like it is going through a [dirty] guitar effects petal no matter what sliders are adjusted  
      Likely causes of:
      Bluetooth (BCM92046), WIFI (BCM943225HM) - So, I USED TO be able to turn on the WIFI from within Windows then reboot into Mac OS and have it work but I noticed recently that the indicator light for them turns off BEFORE it reboots now. When Windows or Android load, it lights up- "No... really, captain obvious?!"... anyways... working "No really Sherlock!" so OBVIOUSLY, the OS has to activate them... and preferably ignore the wireless switching button For the WIFI module, if you omit the 9 and HM in a search, results appear! Brightness - Will get reset to full "Bright light! Bright light!" when a "Load System Defaults" is applied from within the BIOS settings but like the WIFI and Bluetooth the OS will forcefully take control of it Microphone In sounding dirty - me being lazy with the audio drivers LAN (BCM57760) - I dunno...  when I search it, nothing comes up...  
      "How did you get this far?"
      Update the BIOS, this is oh so very important (refer to the battery section of the "Spoiler" for the reson) PLEASE BACKUP YOUR BIOS FIRST! PLUG THE MACHINE INTO THE AC ADAPTER/CHARGER! DO NOT FORCE THE COMPUTER TO SHUTDOWN NOR REMOVE THE BATTERY NOR UNPLUG IT FROM THE AC ADAPTER/CHARGER WHILE IT IS UPDATING! I WILL NOT BE HELD LIABLE FOR BRICKED MACHINES! So it will boot off of the (Niresh) Mac OS X 10.8 with no changes to anything "Awesome" but you may still need at least a USB mouse "Aww" If you have the option to remove the display drivers/kexts otherwise it will not to boot or not display If you forgot this, breathe "You think that's air your breathing?"... anyways... during the bootloader, go into single user mode [ -s ] and follow the on screen instructions to allow for modifying the files. You will want to PREFERABLY create a folder where Mac OS cannot read them and move the IntelHDGraphics Kexts into it You are likely going to need an external USB keyboard as well now that it is installed Now install the described Kexts in the "Spoiler" associated with the hardware to get more functionality and loose the USB HICs  
      Any help pertaining to the Bluetooth, WIFI, LAN, bizarre brightness and wake after sleep backlit display issue would be wonderful... Thank you for your time and I hope that I helped anyone else out with some of their own issues pertaining to the Acer TravelMate 8472 TM8472 ZQ3 no nVidia with i5 laptop...
      (Attached are non-modified extracted DSDT DSL and AML files "with errors according to DSDTEditor" for reference of the machine with a Phoenix BIOS version of 1.28 (07/20/2011))
      dsdt.aml
      dsdt.dsl
       
       
    • By AbhilashSathe
      As shown in the image below, bluetooth works fine. However, it can't detect my wireless bluetooth earphones. These same earphones are easily detectable through Windows 10 on my machine. What could be the problem? I'm currently on 10.15.3 - Catalina. Using BrcmBluetoothInjector.kext BrcmFirmwareData.kext BrcmPatchRAM3.kext

    • By Hervé
      Recompiled v2.3.6 sources in fat-binary mode (Xcode 3.2.6, SDK 10.6, Target OS X 10.6). Fully supported in 32bit and/or 64bit mode under all OS X/macOS versions from Snow Leopard 10.6 to Catalina 10.15.
       
      Edits:
      Nov 16th, 2018: updated description to confirm support up to Mojave 10.14 Jan 11th, 2019: updated description to confirm support up to Catalina 10.15  
    • By Slice
      As I see many novices in the forum ask "How to make my Radeon working? I have bad resolution, no QE/CI...." and so on. They come to the section and have no find an answer here because all Radeons are different and they don't know where else they read about this.
      I want to explain all steps needed for launching the Radeon family of videocards.
       
      Bootloader.
      I will speak about Clover because I maintain this bootloader to know recent hardware and modern OSX. Not sure if you will have the same result with other bootloaders. I am carefully checking the injecting of ATI card and correcting it times to times. I am also accessible for bug reports.
       
      OSX version.
      Older card require older system, newer cards require new system.
      ATIRadeon9000 is possible to launch under Tiger.
      ATIRadeonMobilityX1400 requires 10.5-10.6. See RadeonHD topic.
      As I see RadeonHD3xxx was successful only in 10.5
      For new AMDRadeonHD7xxx there must be 10.8.3+ system.
       
      DeviceID.
      This must be the first question before asking about the card.
      You may know the device-id from Windows->DeviceManger->VideoCard.properties->compatibleIDs
      You may boot into system in safe mode (key -x) and see system profiler
       
      And you may boot into Clover GUI, press F2 and get preboot.log. Find here something like
      2:709 0:000 PCI (00|01:00.00) : 1002 6758 class=030000 2:709 0:000 Found Radeon model=AMD Radeon HD 6670 Series It means my DeviceID=6758 (these are hex numbers)
      Then you must check that Apple's drivers support your DeviceID. If not then add it!
      For example HD7850 has DeviceID=6819. If we look into ATI7000Controller (AMD7000... in new systems) we find 6818 here but no 6819!
       
       
      I show you how to do this with terminal commands. Launch /Application/Utilities/Terminal.app. Type in opened window:
       
      cp /System/Library/Extensions/ATI7000Controller.kext/Contents/Info.plist ~/Desktop So you get a copy of the Info.plist on Desktop. Edit it with TextEdit. Change 68181002 -> 68191002.
      Don't edit this file directly in the system folder! 
      Then copy back by terminal. Don't use finder to copy kexts! They will have wrong permissions in this case.
      sudo cp ~/Desktop/Info.plist /System/Library/Extensions/ATI7000Controller.kext/Contents/ sudo rm -r -v /System/Library/Caches/com.apple.kext.caches/* Second command make sure next reboot the kext will use your edited info.plist.
      The same operation you must do with a kext AMDRadeonAccelerator or ATIRadeonX2000 or other one. Check all candidates if they contain such list of possible IDs and choose closest to you.
       
      FakeID
      Since Clover revision 1971+ you may just inject new DeviceID into DSDT instead of correcting kexts. See instruction here.
       
      GraphicsEnabler or Injector
      OSX needs to know some properties (Model name, Family, etc...) that must be somehow injected at boot time. Yes, also real Macs got DeviceProperties string from firmware.
      Alternatives:
      1. Set InjectATI=Yes in Clover (same as GE=y in Chameleon).
      2. Use custom string made with gfxutil. For whom who knows.
      3. Write _DSM into DSDT. You should know what to write.
      4. Use some kext like ATY_init.kext or Natit.kext. If you are sure that the kext is for your card namely.
      I want to say that all this methods make the same thing. Differencies in their tuning.
      The Clover do this automatically for most known cards at this moment.
       
      Connectors.
      As you may see to start HD5000-7000 some strange names used: Pithecia, Orangutan, Elodea... What are they?
      They are configs for framebuffer. Predefined configs how connectors are solded for cards used in real Macs. Strange but these configs rear coincide with PC card. Usually gurus make advice "choose a framebuffer that most appropriate for your card". The chances 1:10. In most cases you may find a FB name that gives you main monitor working. Or nothing at all.
      Great respect to bcc9 who gives us a method to correct one of config to be exactly for you. See here.
      My retelling for Clover is here
      Success example in the thread in posts 44-52
       
      Radeon Mobility
      I tested Clover's methods with two users having Mobility Radeon HD5470 and HD5650M. We found that full memory and QE/CI will be achieved if we set in Clover's config
      LoadVBios=Yes
      even thou no file with bios is provided. This is the key to make Radeon Mobility working!
      Other problem is bad gradients or artifacts. For this case Clover accept the key
      InjectEDID=Yes
      and sometimes you also need to inject CustomEDID.
      See Clover instructions for details.
       
      And my results.
      Gigabyte Radeon HD6670
      <key>Graphics</key> <dict> <key>GraphicsInjector</key> <true/> <key>InjectEDID</key> <true/> <key>FBName</key> <string>Ipomoea</string> <key>LoadVBios</key> <false/> <key>VideoPorts</key> <integer>3</integer> <key>PatchVBios</key> <true/> </dict> <key>KernelAndKextPatches</key> <dict> <key>KernelCpu</key> <false/> <key>ATIConnectorsController</key> <string>6000</string> <key>ATIConnectorsData</key> <string>000400000403000000010000120401050008000004020000000100001102040310000000100000000001000000000002</string> <key>ATIConnectorsPatch</key> <string>040000000403000000010000100001061000000010000000000100000000000100080000040200000001000012040403</string> VTX Radeon HD5570
      <key>Graphics</key> <dict> <key>PatchVBios</key> <false/> <key>FBName</key> <string>Baboon</string> <key>VideoPorts</key> <string>3</string> <key>GraphicsInjector</key> <string>Yes</string> <key>LoadVBios</key> <string>No</string> </dict> <key>KernelAndKextPatches</key> <dict> <key>Debug</key> <false/> <key>KernelCpu</key> <false/> <key>ATIConnectorsController</key> <string>5000</string> <key>ATIConnectorsData</key> <string>040000001400000000010000010201030008000000020000007100002205020110000000100000000001000000100002</string> <key>AppleRTC</key> <true/> <key>ATIConnectorsPatch</key> <string>040000001400000000010000010001040008000000020000007100002200020510000000100000000001000000000002</string> <key>AsusAICPUPM</key> <false/> <key>KextsToPatch</key> <array> <dict> <key>Name</key> <string>AppleAHCIPort</string> <key>Find</key> <data>RXh0ZXJuYWw=</data> <key>Replace</key> <data>SW50ZXJuYWw=</data> </dict> </array> </dict> See PatchVBios=No
      for this card "yes" leads to black screen. Use with precautions.
       
      A sample for Radeon R7 240
       
      UPDATE for ElCapitan.
      It seems has more problems. My HD6670 is not working in ElCapitan OOB unlike Mavericks.
      I had to set FakeID=0x67401002 as correspond to real iMac12,2 and set this model in SMBIOS section.
      It related to GraphicsPM or GraphicsControl.
      Look these kexts to decide what you can do for your configuration.
       
      HighSierra requires change these kexts by version from Sierra 10.12.6
      for Radeon HD6xxx
      AMDRadeonX3000.kext AMDRadeonX3000GLDriver.bundle IOAccelerator2D.plugin IOAcceleratorFamily2.kext .  for Radeon HD7xxx and up AMDRadeonX4000.kext AMDRadeonX4000GLDriver.bundle IOAccelerator2D.plugin IOAcceleratorFamily2.kext .    Black screen after wake problem resolved by follow method radeon_bios_decode.0.2.zip
      ati-personality.pl.0.15.zip
      ati-personality.pl.0.15a.zip
×