Jump to content

BrcmPatchRAM2 for 10.15 Catalina (Broadcom bluetooth firmware upload)


headkaze
429 posts in this topic

Recommended Posts

8 hours ago, liming said:

no, I use BrcmFirmwareRepo.kext. Follow the README, choose one of BrcmFirmwareRepo and BrcmFirmwareData, right?

 

Update:

I'm confused now, I try to use BrcmFirmwareData.kext in E/C/K/O and BT works! I try to cold start twice and it still woks! Amazing! I tried BrcmFirmwareRepo many days ago, but the difference is kexts put in different dictionary. I follow the README to put kext in correct dictionary or only use BrcmBluetoothInjector without other kexts, BT didn't work or be not stable.

 

Anyway, I put BrcmFirmwareData, BrcmBluetoothInjector and BrcmPatchRAM2 the three kexts in E/C/K/O and BT works now.

It looks like that I can't believe the README. :cry:

After cleaning up my folders, I couldn’t get BT working so I tried BrcmBluetoothInjector (in S/L/E) and it's working fine now.

  • Like 1
Link to comment
Share on other sites

EDIT:  So I guess disregard, for now at least.  I switched my Clover bootloader on my main install to OC and found that I somehow was running a completely different version of the BrcmPatchRAM2 kexts for Catalina than what is the current version on the first page of the thread . I replaced with that and all is good now it seems.

 

I have a Dell 1830 (BCM943602BAED) installed on a Asus X299 Prime Deluxe.  I'm having trouble getting this to work with Catalina with OC 0.0.4 as bootloader.  It does work for me with Mojave and Catalina booting with Clover, as well as Mojave booting with OpenCore, but not Catalina booting with OpenCore.  I believe it's an issue with BrcmPatchRAM2 not loading the firmware due to a conflict with OC, possibly caused by my USB config, but I can't figure it out.  Here are some scenarios:

 

If I start Mojave with Clover, BT works correctly. Then restart from OC USB into Catalina, with all three kexts in the OC EFI, BT does not show up.

 

If I start Mojave with Clover, BT works correctly. Then restart from OC USB into Catalina, with only BrcmBluetoothInjector.kext in the OC EFI, then BT works because the firmware is still loaded.  BUT, if I fully shutdown the computer then boot directly into Catalina using OC, then BT doesn't work because the firmware is no longer loaded due to power cycle.

 

Also, if I cold boot Mojave with Clover or Catalina with OC with just BrcmBluetoothInjector.kext, then BT shows up in Sys Prefs, and devices are found, but I can't get any devices to connect.

 

In all scenarios, if I have only BrcmBluetoothInjector.kext installed in EFI, then most of my bus-powered USB3 HDDs will not mount, so something happens with not getting enough USB power.  I do get enough USB power when all 3 kexts are in the EFIs, whether BT is working or not.

 

In Catalina with OC, here is what shows in System Info for BT under USB:

2036802506_ScreenShot2019-08-16at9_47_16AM.png.c1818be68cd4949f3fda3d54d34e21ad.png

In Hackintool I see this for the BT, so I know firmware isn't getting loaded:

1400058748_ScreenShot2019-08-16at10_14_02AM.png.d2f2eec0b33924ad623186554fc22b61.png

Here is a log of the boot and loading of the kexts (there are USB errors): I got this log using a terminal command:

2019-08-16 09:45:11.337331-0700 0xa7b      Default     0x0                  0      0    kernel: (IOHIDFamily) HID: Legacy shim 2
2019-08-16 09:45:11.339465-0700 0x2b4      Default     0x0                  0      0    kernel: (kernel) BrcmPatchRAM: Loaded compressed embedded firmware for key "BCM20703A1_001.001.005.0214.0422_v4518".
2019-08-16 09:45:11.348149-0700 0x2b4      Default     0x0                  0      0    kernel: (kernel) BrcmPatchRAM: Decompressed firmware (43444 bytes --> 109080 bytes).
2019-08-16 09:45:11.348709-0700 0xa82      Default     0x0                  0      0    kernel: Boot args: <private>
2019-08-16 09:45:11.348729-0700 0xa82      Default     0x0                  0      0    kernel: debug=0x0
2019-08-16 09:45:11.348817-0700 0x2b4      Default     0x0                  0      0    kernel: (kernel) BrcmPatchRAM: Firmware is valid IntelHex firmware.
2019-08-16 09:45:11.348865-0700 0x2b4      Default     0x0                  0      0    kernel: (kernel) BrcmPatchRAM2: [0a5c:6410]: USB [48E244F4C2BA v274] "BCM2045A0" by "Broadcom Corp"
19-08-16 09:45:11.352247-0700 0x2b4      Default     0x0                  0      0    kernel: (IOUSBHostFamily) 000044.178462 AppleUSBIORequest: AppleUSBIORequest::cancel: called without first calling prepare
019-08-16 09:45:11.372133-0700 0x2b4      Default     0x0                  0      0    kernel: (kernel) BrcmPatchRAM2: [0a5c:6410]: continuousRead - Failed to queue read (0xe00002c2)
2019-08-16 09:45:11.422713-0700 0xa41      Default     0x0                  0      0    kernel: Warning: Attempt to create a named entry from the kernel_object
2019-08-16 09:45:11.422768-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>buffer->GetAddressRange() failed (result = 0xe00002bf)
2019-08-16 09:45:11.422772-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDescriptor(1,18,0,0,0,0) failed (result = 0xe00002bf)
2019-08-16 09:45:11.422773-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDeviceDescriptor() failed
2019-08-16 09:45:11.422812-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:279][0x1000007ef] CopyConfigurationDescriptor
2019-08-16 09:45:11.422815-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:379][0x1000007ef] Start failed: 0xe00002be
2019-08-16 09:45:11.422819-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>buffer->GetAddressRange() failed (result = 0xe00002bf)
2019-08-16 09:45:11.422823-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:54]Start:0xe00002be
2019-08-16 09:45:11.422826-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:96][0x1000007ef] Start failed: 0xe00002be
2019-08-16 09:45:11.422828-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDescriptor(1,18,0,0,0,0) failed (result = 0xe00002bf)
2019-08-16 09:45:11.422829-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDeviceDescriptor() failed
2019-08-16 09:45:11.422838-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:410][0x1000007ef] Close interface: 0x10000068e 0x0
2019-08-16 09:45:11.422860-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:279][0x1000007f1] CopyConfigurationDescriptor
2019-08-16 09:45:11.422862-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:379][0x1000007f1] Start failed: 0xe00002be
2019-08-16 09:45:11.422865-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:114][0x1000007ef] Stop: 0x0
2019-08-16 09:45:11.422867-0700 0xa41      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:103][0x1000007ef] Start ret: 0xe00002be
2019-08-16 09:45:11.422869-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:54]Start:0xe00002be
2019-08-16 09:45:11.422877-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:96][0x1000007f1] Start failed: 0xe00002be
2019-08-16 09:45:11.422887-0700 0x316      Error       0x0                  0      0    kernel: (IOHIDFamily) AppleUserUSBHostHIDDevice:0x1000007ef IOHIDDevice::Start:0xe00002be
2019-08-16 09:45:11.422889-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:410][0x1000007f1] Close interface: 0x100000656 0x0
2019-08-16 09:45:11.422902-0700 0xa42      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) no services left, exiting
2019-08-16 09:45:11.422914-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:114][0x1000007f1] Stop: 0x0
2019-08-16 09:45:11.422916-0700 0xa5e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:103][0x1000007f1] Start ret: 0xe00002be
2019-08-16 09:45:11.422951-0700 0x2fc      Error       0x0                  0      0    kernel: (IOHIDFamily) AppleUserUSBHostHIDDevice:0x1000007f1 IOHIDDevice::Start:0xe00002be
2019-08-16 09:45:11.422971-0700 0xa5d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) no services left, exiting
2019-08-16 09:45:11.423003-0700 0x3ee      Default     0x0                  0      0    kernel: (ntfs) NTFS driver 3.13 [Flags: R/W].
2019-08-16 09:45:11.423004-0700 0xa0d      Default     0x0                  0      0    kernel: Warning: Attempt to create a named entry from the kernel_object
2019-08-16 09:45:11.423046-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>buffer->GetAddressRange() failed (result = 0xe00002bf)
2019-08-16 09:45:11.423050-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDescriptor(1,18,0,0,0,0) failed (result = 0xe00002bf)
2019-08-16 09:45:11.423053-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDeviceDescriptor() failed
2019-08-16 09:45:11.423056-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>buffer->GetAddressRange() failed (result = 0xe00002bf)
2019-08-16 09:45:11.423060-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>buffer->GetAddressRange() failed (result = 0xe00002bf)
2019-08-16 09:45:11.423062-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDescriptor(1,18,0,0,0,0) failed (result = 0xe00002bf)
2019-08-16 09:45:11.423064-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDeviceDescriptor() failed
2019-08-16 09:45:11.423064-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDescriptor(1,18,0,0,0,0) failed (result = 0xe00002bf)
2019-08-16 09:45:11.423066-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDeviceDescriptor() failed
2019-08-16 09:45:11.423072-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>buffer->GetAddressRange() failed (result = 0xe00002bf)
2019-08-16 09:45:11.423076-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDescriptor(1,18,0,0,0,0) failed (result = 0xe00002bf)
2019-08-16 09:45:11.423078-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>buffer->GetAddressRange() failed (result = 0xe00002bf)
2019-08-16 09:45:11.423078-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>buffer->GetAddressRange() failed (result = 0xe00002bf)
2019-08-16 09:45:11.423079-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDeviceDescriptor() failed
2019-08-16 09:45:11.423082-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDescriptor(1,18,0,0,0,0) failed (result = 0xe00002bf)
2019-08-16 09:45:11.423084-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDescriptor(1,18,0,0,0,0) failed (result = 0xe00002bf)
2019-08-16 09:45:11.423085-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDeviceDescriptor() failed
2019-08-16 09:45:11.423086-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:279][0x1000007e7] CopyConfigurationDescriptor
2019-08-16 09:45:11.423086-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDeviceDescriptor() failed
2019-08-16 09:45:11.423089-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:379][0x1000007e7] Start failed: 0xe00002be
2019-08-16 09:45:11.423096-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:279][0x1000007e9] CopyConfigurationDescriptor
2019-08-16 09:45:11.423098-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:279][0x1000007eb] CopyConfigurationDescriptor
2019-08-16 09:45:11.423099-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:54]Start:0xe00002be
2019-08-16 09:45:11.423100-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:379][0x1000007e9] Start failed: 0xe00002be
2019-08-16 09:45:11.423101-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:379][0x1000007eb] Start failed: 0xe00002be
2019-08-16 09:45:11.423103-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:96][0x1000007e7] Start failed: 0xe00002be
2019-08-16 09:45:11.423110-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:54]Start:0xe00002be
2019-08-16 09:45:11.423111-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:54]Start:0xe00002be
2019-08-16 09:45:11.423113-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:279][0x1000007e5] CopyConfigurationDescriptor
2019-08-16 09:45:11.423117-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:96][0x1000007eb] Start failed: 0xe00002be
2019-08-16 09:45:11.423118-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:279][0x1000007e3] CopyConfigurationDescriptor
2019-08-16 09:45:11.423119-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:410][0x1000007e7] Close interface: 0x10000069a 0x0
2019-08-16 09:45:11.423119-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:96][0x1000007e9] Start failed: 0xe00002be
2019-08-16 09:45:11.423120-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:279][0x1000007ed] CopyConfigurationDescriptor
2019-08-16 09:45:11.423121-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:379][0x1000007e5] Start failed: 0xe00002be
2019-08-16 09:45:11.423121-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:379][0x1000007e3] Start failed: 0xe00002be
2019-08-16 09:45:11.423123-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:379][0x1000007ed] Start failed: 0xe00002be
2019-08-16 09:45:11.423130-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:54]Start:0xe00002be
2019-08-16 09:45:11.423131-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:54]Start:0xe00002be
2019-08-16 09:45:11.423131-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:54]Start:0xe00002be
2019-08-16 09:45:11.423132-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:410][0x1000007eb] Close interface: 0x1000005cd 0x0
2019-08-16 09:45:11.423133-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:96][0x1000007ed] Start failed: 0xe00002be
2019-08-16 09:45:11.423135-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:410][0x1000007e9] Close interface: 0x1000006a6 0x0
2019-08-16 09:45:11.423136-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:96][0x1000007e3] Start failed: 0xe00002be
2019-08-16 09:45:11.423136-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:96][0x1000007e5] Start failed: 0xe00002be
2019-08-16 09:45:11.423147-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:114][0x1000007e7] Stop: 0x0
2019-08-16 09:45:11.423149-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:410][0x1000007ed] Close interface: 0x1000006b3 0x0
2019-08-16 09:45:11.423149-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:410][0x1000007e3] Close interface: 0x100000668 0x0
2019-08-16 09:45:11.423150-0700 0x9dc      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:103][0x1000007e7] Start ret: 0xe00002be
2019-08-16 09:45:11.423151-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:410][0x1000007e5] Close interface: 0x1000005f1 0x0
2019-08-16 09:45:11.423160-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:114][0x1000007eb] Stop: 0x0
2019-08-16 09:45:11.423163-0700 0xa0d      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:103][0x1000007eb] Start ret: 0xe00002be
2019-08-16 09:45:11.423165-0700 0x318      Error       0x0                  0      0    kernel: (IOHIDFamily) AppleUserUSBHostHIDDevice:0x1000007e7 IOHIDDevice::Start:0xe00002be
2019-08-16 09:45:11.423166-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:114][0x1000007e9] Stop: 0x0
2019-08-16 09:45:11.423169-0700 0x9f5      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:103][0x1000007e9] Start ret: 0xe00002be
2019-08-16 09:45:11.423177-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:114][0x1000007e3] Stop: 0x0
2019-08-16 09:45:11.423181-0700 0x2ab      Error       0x0                  0      0    kernel: (IOHIDFamily) AppleUserUSBHostHIDDevice:0x1000007eb IOHIDDevice::Start:0xe00002be
2019-08-16 09:45:11.423181-0700 0x9a7      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:103][0x1000007e3] Start ret: 0xe00002be
2019-08-16 09:45:11.423181-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:114][0x1000007ed] Stop: 0x0
2019-08-16 09:45:11.423182-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:114][0x1000007e5] Stop: 0x0
2019-08-16 09:45:11.423183-0700 0x9db      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) no services left, exiting
2019-08-16 09:45:11.423184-0700 0xa28      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:103][0x1000007ed] Start ret: 0xe00002be
2019-08-16 09:45:11.423186-0700 0x9c2      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:103][0x1000007e5] Start ret: 0xe00002be
2019-08-16 09:45:11.423187-0700 0x31a      Error       0x0                  0      0    kernel: (IOHIDFamily) AppleUserUSBHostHIDDevice:0x1000007e9 IOHIDDevice::Start:0xe00002be
2019-08-16 09:45:11.423200-0700 0x302      Error       0x0                  0      0    kernel: (IOHIDFamily) AppleUserUSBHostHIDDevice:0x1000007e3 IOHIDDevice::Start:0xe00002be
2019-08-16 09:45:11.423202-0700 0xa0e      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) no services left, exiting
2019-08-16 09:45:11.423204-0700 0x2be      Error       0x0                  0      0    kernel: (IOHIDFamily) AppleUserUSBHostHIDDevice:0x1000007e5 IOHIDDevice::Start:0xe00002be
2019-08-16 09:45:11.423214-0700 0x9f4      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) no services left, exiting
2019-08-16 09:45:11.423221-0700 0x9a6      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) no services left, exiting
2019-08-16 09:45:11.423223-0700 0x9c3      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) no services left, exiting
2019-08-16 09:45:11.423225-0700 0x31d      Error       0x0                  0      0    kernel: (IOHIDFamily) AppleUserUSBHostHIDDevice:0x1000007ed IOHIDDevice::Start:0xe00002be
2019-08-16 09:45:11.423227-0700 0xa27      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) no services left, exiting
2019-08-16 09:45:11.424682-0700 0xa98      Default     0x0                  0      0    kernel: Warning: Attempt to create a named entry from the kernel_object
2019-08-16 09:45:11.424740-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>buffer->GetAddressRange() failed (result = 0xe00002bf)
2019-08-16 09:45:11.424743-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDescriptor(1,18,0,0,0,0) failed (result = 0xe00002bf)
2019-08-16 09:45:11.424745-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) USBDriverKit:<private>CopyDeviceDescriptor() failed
2019-08-16 09:45:11.424757-0700 0x316      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Element value capacity 2100
2019-08-16 09:45:11.424769-0700 0x316      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report count: 1
2019-08-16 09:45:11.424770-0700 0x316      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report ID: 0 input:120 output:512 feature:0
2019-08-16 09:45:11.424791-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:279][0x1000007f9] CopyConfigurationDescriptor
2019-08-16 09:45:11.424791-0700 0x302      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Element value capacity 2100
2019-08-16 09:45:11.424793-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:379][0x1000007f9] Start failed: 0xe00002be
2019-08-16 09:45:11.424795-0700 0x318      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Element value capacity 2100
2019-08-16 09:45:11.424800-0700 0x2be      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Element value capacity 3424
2019-08-16 09:45:11.424802-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:54]Start:0xe00002be
2019-08-16 09:45:11.424805-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:96][0x1000007f9] Start failed: 0xe00002be
2019-08-16 09:45:11.424806-0700 0x302      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report count: 1
2019-08-16 09:45:11.424807-0700 0x302      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report ID: 0 input:120 output:512 feature:0
2019-08-16 09:45:11.424807-0700 0x318      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report count: 1
2019-08-16 09:45:11.424808-0700 0x318      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report ID: 0 input:120 output:512 feature:0
2019-08-16 09:45:11.424810-0700 0x2be      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report count: 2
2019-08-16 09:45:11.424811-0700 0x2be      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report ID: 0 input:0 output:0 feature:0
2019-08-16 09:45:11.424814-0700 0x2be      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report ID: 236 input:520 output:520 feature:8
2019-08-16 09:45:11.424816-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserUSBHostHIDDevice.cpp:410][0x1000007f9] Close interface: 0x1000006c3 0x0
2019-08-16 09:45:11.424837-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:114][0x1000007f9] Stop: 0x0
2019-08-16 09:45:11.424839-0700 0xa98      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserUSBHostHIDDevice.cpp:103][0x1000007f9] Start ret: 0xe00002be
2019-08-16 09:45:11.424856-0700 0x31f      Error       0x0                  0      0    kernel: (IOHIDFamily) AppleUserUSBHostHIDDevice:0x1000007f9 IOHIDDevice::Start:0xe00002be
2019-08-16 09:45:11.424871-0700 0xa97      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) no services left, exiting
2019-08-16 09:45:11.424941-0700 0xa7b      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000006b8 open by AppleUserHIDEventDriver 0x1000007f5 (0x0)
2019-08-16 09:45:11.424982-0700 0xa7b      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserHIDEventService.cpp:139][0x1000007f5] Open interface: 0x1000007f4
2019-08-16 09:45:11.425038-0700 0xa7b      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserHIDEventDriver.cpp:145][0x1000007f5] parseElements: keyboard: 228 digitizer: 0 pointer: 0 0 scroll: 0 led: 3
2019-08-16 09:45:11.425063-0700 0xa7b      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserHIDEventDriver.cpp:200][0x1000007f5] parseElements: vendor: 0
2019-08-16 09:45:11.425100-0700 0xa7b      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserHIDEventDriver.cpp:457][0x1000007f5] Start ret: 0x0
2019-08-16 09:45:11.425110-0700 0xa7b      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserHIDEventDriver.cpp:93][0x1000007f5] ASTRA keyboard usagePage: 1 usage: 6 vid: 6700 pid: 19369
2019-08-16 09:45:11.427941-0700 0x685      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000006b8 message: 0xe3ff8001 from: 0x1000007f4 1
2019-08-16 09:45:11.428675-0700 0xab0      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007e4 creating interfaces
2019-08-16 09:45:11.429125-0700 0xab2      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007e6 creating interfaces
2019-08-16 09:45:11.429955-0700 0xab4      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007e8 creating interfaces
2019-08-16 09:45:11.430103-0700 0xab5      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007f0 creating interfaces
2019-08-16 09:45:11.432178-0700 0xab1      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007e4 open by IOHIDEventDriver 0x10000081a (0x0)
2019-08-16 09:45:11.432479-0700 0xab1      Default     0x0                  0      0    kernel: (IOHIDFamily) HID: Legacy shim 2
2019-08-16 09:45:11.434654-0700 0xab6      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007e8 open by IOHIDEventDriver 0x10000081b (0x0)
2019-08-16 09:45:11.434826-0700 0x2ab      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Element value capacity 1776
2019-08-16 09:45:11.434834-0700 0x2ab      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report count: 1
2019-08-16 09:45:11.434835-0700 0x2ab      Default     0x0                  0      0    kernel: (IOHIDFamily) [ElementContainer] Report ID: 0 input:0 output:0 feature:576
2019-08-16 09:45:11.434881-0700 0xab6      Default     0x0                  0      0    kernel: (IOHIDFamily) HID: Legacy shim 2
2019-08-16 09:45:11.434896-0700 0xab7      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007f0 open by IOHIDEventDriver 0x10000081d (0x0)
2019-08-16 09:45:11.435112-0700 0xab7      Default     0x0                  0      0    kernel: (IOHIDFamily) HID: Legacy shim 2
2019-08-16 09:45:11.435161-0700 0x2ab      Default     0x0                  0      0    kernel: (IOUSBHostHIDDevice) 000044.261376 IOUSBHostHIDDevice: IOUSBHostHIDDevice::start: unable to get interrupt pipe
2019-08-16 09:45:11.435285-0700 0x2ab      Default     0x0                  0      0    kernel: (IOUSBHostHIDDevice) 000044.261501 IOUSBHostHIDDevice: IOUSBHostHIDDevice::start: start has failed
2019-08-16 09:45:11.743408-0700 0x685      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007ee message: 0xe3ff8001 from: 0x100000825 1
2019-08-16 09:45:11.751389-0700 0xafa      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007ea open by AppleUserHIDEventDriver 0x10000082f (0x0)
2019-08-16 09:45:11.751410-0700 0xafa      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserHIDEventService.cpp:139][0x10000082f] Open interface: 0x10000082e
2019-08-16 09:45:11.751765-0700 0xafa      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserHIDEventDriver.cpp:145][0x10000082f] parseElements: keyboard: 1 digitizer: 0 pointer: 8367 0 scroll: 0 led: 0
2019-08-16 09:45:11.751896-0700 0xafa      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserHIDEventDriver.cpp:200][0x10000082f] parseElements: vendor: 0
2019-08-16 09:45:11.751919-0700 0xafa      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserHIDEventDriver.cpp:457][0x10000082f] Start ret: 0x0
2019-08-16 09:45:11.751926-0700 0xafa      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserHIDEventDriver.cpp:93][0x10000082f] Stream Deck usagePage: 12 usage: 1 vid: 4057 pid: 96
2019-08-16 09:45:11.753625-0700 0xae1      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007fa open by AppleUserHIDEventDriver 0x10000082b (0x0)
2019-08-16 09:45:11.753646-0700 0xae1      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserHIDEventService.cpp:139][0x10000082b] Open interface: 0x100000827
2019-08-16 09:45:11.753654-0700 0xae1      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [IOUserHIDEventDriver.cpp:145][0x10000082b] parseElements: keyboard: 0 digitizer: 0 pointer: 5 0 scroll: 1 led: 0
2019-08-16 09:45:11.753703-0700 0xae1      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserHIDEventDriver.cpp:200][0x10000082b] parseElements: vendor: 0
2019-08-16 09:45:11.753721-0700 0xae1      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserHIDEventDriver.cpp:457][0x10000082b] Start ret: 0x0
2019-08-16 09:45:11.753728-0700 0xae1      Default     0x0                  0      0    kernel: (AppleUserHIDDrivers) [AppleUserHIDEventDriver.cpp:93][0x10000082b] Genius USB Wheel Mouse usagePage: 1 usage: 2 vid: 1112 pid: 3
2019-08-16 09:45:11.754352-0700 0x685      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007ea message: 0xe3ff8001 from: 0x10000082e 1
2019-08-16 09:45:11.758275-0700 0x685      Debug       0x0                  0      0    kernel: (IOHIDFamily) IOUSBHostHIDDevice:0x1000007fa message: 0xe3ff8001 from: 0x100000827 1
2019-08-16 09:45:11.957453-0700 0xb04      Default     0x0                  0      0    kernel: (apfs) apfs_spec_read_wrapper:10869: apfs_spec_read_wrapper : f_info->fsr_offset 77824  f_info->fsr_length 36864 filesize 113136
2019-08-16 09:45:11.993340-0700 0x64a      Default     0x0                  0      0    kernel: (IOAudioFamily) + IOAudioEngine[<private>]::init(0x0)
2019-08-16 09:45:11.993341-0700 0x64a      Default     0x0                  0      0    kernel: (IOAudioFamily)   properties(0x0) == NULL
2019-08-16 09:45:11.993353-0700 0x64a      Default     0x0                  0      0    kernel: (IOAudioFamily) +-IOAudioEngine[<private>]::setState(0x0. oldState=0)
2019-08-16 09:45:11.993355-0700 0x64a      Default     0x0                  0      0    kernel: (IOAudioFamily) - IOAudioEngine[<private>]::init(0x0)
2019-08-16 09:45:12.047126-0700 0xb0a      Default     0x0                  0      0    kernel: (apfs) apfs_spec_read_wrapper:10869: apfs_spec_read_wrapper : f_info->fsr_offset 77824  f_info->fsr_length 36864 filesize 113136
2019-08-16 09:45:12.523359-0700 0x61a      Default     0x0                  0      0    kernel: (AMDRadeonX5000) *** After calling TTL::initialize()
2019-08-16 09:45:12.530796-0700 0x61a      Default     0x0                  0      0    kernel: (AMDSupport) Accelerator successfully registered with controller.

And my IOReg and OC EFI are attached.

iMac Pro.ioreg.zip

OC 0.0.4 EFI.zip

Edited by flmmkr
Link to comment
Share on other sites

[0cf3:e005] DW1707 Qualcomm Atheros QCA9565 - how extract firmware

 

Good day.
I have a module DW1707 which has Wifi and bluetooth Atheros 9565 Qualcomm QCA9565. I managed to get the Wifi working properly. Unfortunately, in order for Bluetooth to work in macOS, you must first start Windows, and then reboot into macOS, because when you boot Windows, the bluetooth driver loads the Bluetooth firmware into the module.
I read the documentation and looked at the files in the OS-X-BrcmPatchRAM repository and realized that this kext loads the firmware into the bluetooth module and this firmware is in .plist file as base64 data.
I read the instruction in the README file on how to make a similar kext for my bluetooth module, but there are no files with the extension in the driver files for QCA9565 .hex.

 

8bwFo0mnuD4.jpg

 

Can anyone help to modify this kekst to download the firmware in my bluetooth QCA9565? I attached the driver files to the post.


Here are the drivers on the official website: https://www.dell.com/support/home/us/en/19/drivers/driversdetails?driverid=g66t8&oscode=wt64a&productcode=vostro-3267-desktop&lwp=rt

Here are the drivers for bluetooth only: https://yadi.sk/d/cYGax0NEdoCF3w

 

Product ID: 0xE005
Vendor ID: 0x0CF3

 

1.jpg

2.jpg

QCA9565 Bluetooth-Driver.7z

Снимок экрана 2019-08-22 в 22.36.48.png

Link to comment
Share on other sites

18 minutes ago, headkaze said:

These kexts only support Broadcom.

Yes, I know, but brcmpatchram2.kext and BrcmBluetoothInjector.allow the kext to load the firmware in the bluetooth module of kext BrcmFirmwareData.kext. I do not know how well I understood, but I saw that the firmware code in the source code is stored in base64 data, and when compiled it is stored already in .zhx files.
That is, if you do not go into the details of the implementation, a set of these kexts during the MacOS boot loads the firmware (which was extracted from the Windows driver) in the bkuetooth module. So, theoretically, replacing ProductID and VendorID and base64 firmware data itself, you can download absolutely any firmware for any bluetooth module that supports this function.

My Bluetooth works on macOS, but only when the firmware is loaded.

I just want to know which of the driver files is the firmware and, accordingly, is loaded into the RAMUSB of my bluetooth module. I attached the driver files in the comments above.

I will experiment with it myself, but I think you as an Objective-C developer will do it better.

Link to comment
Share on other sites

59 minutes ago, Drovosek said:

Yes, I know, but brcmpatchram2.kext and BrcmBluetoothInjector.allow the kext to load the firmware in the bluetooth module of kext BrcmFirmwareData.kext. I do not know how well I understood, but I saw that the firmware code in the source code is stored in base64 data, and when compiled it is stored already in .zhx files.
That is, if you do not go into the details of the implementation, a set of these kexts during the MacOS boot loads the firmware (which was extracted from the Windows driver) in the bkuetooth module. So, theoretically, replacing ProductID and VendorID and base64 firmware data itself, you can download absolutely any firmware for any bluetooth module that supports this function.

My Bluetooth works on macOS, but only when the firmware is loaded.

I just want to know which of the driver files is the firmware and, accordingly, is loaded into the RAMUSB of my bluetooth module. I attached the driver files in the comments above.

I will experiment with it myself, but I think you as an Objective-C developer will do it better.

As far as I know it will only work with Broadcom hardware but you can try it. The *.dfu files are the firmware files.

 

EDIT: The *.dfu files in your driver do not appear to be a format I recognize. They look compressed but I can't tell you what method. Only a firmware with the first character as ':' will be a valid .hex file.

Edited by headkaze
  • Like 1
Link to comment
Share on other sites

9 hours ago, headkaze said:

As far as I know it will only work with Broadcom hardware but you can try it. The *.dfu files are the firmware files.

  

EDIT: The *.dfu files in your driver do not appear to be a format I recognize. They look compressed but I can't tell you what method. Only a firmware with the first character as ':' will be a valid .hex file.

Hey. I found out that the-darkvoid ported the "dfu-util" utility for macOS (https://github.com/the-darkvoid/dfu-util-osx), I tried to use it and tried to download the file .dfu, but when you try to download the firmware, I got a message that the file is invalid. Bluetooth has not started to work.

I also learned that these .dfu files are in /System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/IOBluetoothUSBDFU.kext/Contents/Resources

Edited by Drovosek
Link to comment
Share on other sites

6 hours ago, Drovosek said:

Hey. I found out that the-darkvoid ported the "dfu-util" utility for macOS (https://github.com/the-darkvoid/dfu-util-osx), I tried to use it and tried to download the file .dfu, but when you try to download the firmware, I got a message that the file is invalid. Bluetooth has not started to work.

I also learned that these .dfu files are in /System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/IOBluetoothUSBDFU.kext/Contents/Resources

You can compile the original dfu-util on macOS using Homebrew.

 

Anyway if you use a hex editor to look at those .dfu files in /S/L/E/... you will notice they all start with a ':' character.

Edited by headkaze
  • Like 1
Link to comment
Share on other sites

7 hours ago, headkaze said:

You can compile the original dfu-util on macOS using Homebrew.

 

Anyway if you use a hex editor to look at those .dfu files in /S/L/E/... you will notice they all start with a ':' character.

Thank you for answering my questions. I appreciate that.
I think the conversation about .dfu files do not correspond to this thread, so I made a separate thread, in which I will publish my ideas and the results of experiments.

 

PS
I have an offtopic question to you as to the staff of the forum. Why I can't upload kexts or comment on anything in the "Downloads" section?
Screenshots: https://www.insanelymac.com/forum/topic/339967-voodoops2controller-modified-by-syscl-kprinssu-and-the-darkvoid

 

Edited by Drovosek
Link to comment
Share on other sites

6 hours ago, Drovosek said:

I'm probably gonna ask a stupid question, but... will these kexts work fine on macOS Mojave 10.14.6 or are they only for macOS Catalina?

Works in Mojave too 

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Even though my device id and vendor are in the kext my bluetooth still doesn't work with this kext. ven 0x13d3 prod 0x3404

I am trying to use BrcmPatchRAM2.kext and BrcmFirmwareData.kext in EFI (have also tried BrcmFirmwareRepo.kext) with no luck.

Bluetooth works fine with BrcmBluetoothInjector.kext

 

 

Shane’s MacBook Pro.zip

Link to comment
Share on other sites

On 7/18/2019 at 7:44 PM, sonicthehedgehog2 said:

Honestly, I’m not sure anymore. I might be - if I do they are leftover from previous installs. My problem is /s/l/e is locked and I can’t clean up with backing up and wiping. I’ll do it sometime for sure. Probably when official release is out but I’m a little busy these days. According to System Report my firmware version is v14 c5575. Really sorry I can’t be more help. Let me know if you need more info.

Just did a complete and thorough clean and updated to Public beta 7. After much experimenting installed BrcmFirmwareData, BcrmPatchRAM2, BrcmPatchNonRAM2 kexts in //EFI/EFI/Clover/kexts/Other. I made the mistake of trying to install BrdmFirmwareRepo before, which was never going to work there. :( @headkaze Used your tool to clean up. It saved me a lot of time - Thank you.

Link to comment
Share on other sites

21 hours ago, SavageAUS said:

Even though my device id and vendor are in the kext my bluetooth still doesn't work with this kext. ven 0x13d3 prod 0x3404

I am trying to use BrcmPatchRAM2.kext and BrcmFirmwareData.kext in EFI (have also tried BrcmFirmwareRepo.kext) with no luck.

Bluetooth works fine with BrcmBluetoothInjector.kext

You need all three kexts; BrcmFirmwareData.kext, BrcmPatchRAM2.kext and BrcmBluetoothInjector.kext. The first first one stores the firmware, the second one uploads it and the last one injects the native BT driver.

  • Like 2
Link to comment
Share on other sites

On September 8, 2019 at 11:13 PM, Hameer Abbasi said:

Hey. These files worked perfectly for me with one exception: I actually needed to go into Windows and update their firmware before the firmware updater would work. Anyway, great work!

Me too with the same issue in Z87 and Z97 hackintosh .

Edited by jsl2000
Link to comment
Share on other sites

Seems to work perfect with my 14.6 install on Dell 1560. I am getting 1 error though:

 

BRCMPatchResidency does not seem to be available 

 

From memory on -v so maybe a little different. What does it mean?

 

Screen Shot 2019-09-14 at 2.40.23 PM.png

Edited by Modmike
Link to comment
Share on other sites

  • 3 weeks later...

Unfortunately headkaze's driver doesn't work on my Dell Inspiron 13 5370 with the Dell DW1560. I investigated the issue and finally decided to offload support for Catalina to a completely new driver BrcmPatchRAM3.kext, which is based on headkaze's work but goes one step ahead as I dumped a lot of obsolete code and restructured it's architecture from scratch.

 

Source code can be found on GitHub: https://github.com/Mieze/OS-X-BrcmPatchRAM-Catalina

 

It's build for Mojave and Catalina but as I still haven't got any machine running Catalina, I ran my tests under 10.14.6. Anyone who's interested in testing is encouraged to try the attached binaries which are built for Mojave and Catalina.

 

Kernel boot parameter "bpr_probedelay" is obsolete now and for the DW1560 "bpr_preresetdelay" too, because I found out that the Bluetooth controller indicates when it has finished processing downloaded firmware patches by sending a "vendor specific event" (event code 0xff) to the host. It looks like more devices also support this mechanism because those I tested, work this way and I won't be surprised if it's a common feature of all Broadcom Bluetooth controllers but this assumption is still waiting to be verified.

 

Good luck!

 

Mieze

BrcmPatchRAM3-V2.3.0-Debug.zip

Edited by Mieze
  • Like 7
Link to comment
Share on other sites

5 hours ago, Mieze said:

Unfortunately headkaze's driver doesn't work on my Dell Inspiron 13 5370 with the Dell DW1560. I investigated the issue and finally decided to offload support for Catalina to a completely new driver BrcmPatchRAM3.kext, which is based on headkaze's work but goes one step ahead as I dumped a lot of obsolete code and restructured it's architecture from scratch.

 

Source code can be found on GitHub: https://github.com/Mieze/OS-X-BrcmPatchRAM-Catalina

 

It's build for Mojave and Catalina but as I still haven't got any machine running Catalina, I ran my tests under 10.14.6. Anyone who's interested in testing is encouraged to try the attached binaries which are built for Mojave and Catalina.

 

Kernel boot parameter "bpr_probedelay" is obsolete now and for the DW1560 "bpr_preresetdelay" too, because I found out that the Bluetooth controller indicates when it has finished processing downloaded firmware patches by sending a "vendor specific event" (event code 0xff) to the host. It looks like more devices also support this mechanism because those I tested, work this way and I won't be surprised if it's a common feature of all Broadcom Bluetooth controllers but this assumption is still waiting to be verified.

 

Good luck!

 

Mieze

BrcmPatchRAM3-V2.3.0-Debug.zip

Thanks man working on Catalina with OpenCore! Question, is there a proper way to inject this with OpenCore? I don't know if the injector kext should be first, followed by the Data and BrcmPatchRAM3.kext or should it be Data, RAM3 and then Injector? Just a thought as OpenCore, you need to define the order of the kexts.

Edited by Andrw0380
  • Like 1
Link to comment
Share on other sites

As BrcmPatchRAM3.kext depends on BrcmFirmwareData.kext, it is clear which one is first but with regard to the injector kext, I'm not sure but from my point of view it makes sense to put it in the third position.

 

Mieze

  • Like 1
Link to comment
Share on other sites

1 hour ago, Mieze said:

As BrcmPatchRAM3.kext depends on BrcmFirmwareData.kext, it is clear which one is first but with regard to the injector kext, I'm not sure but from my point of view it makes sense to put it in the third position.

 

Mieze

 

here is my log.

thank you for hard work.

Spoiler

Timestamp                       (process)[PID]    
2019-10-07 19:10:47.113609+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Firmware store start
2019-10-07 19:11:02.001483+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: OSKextRequestResource Callback: dc008006.
2019-10-07 19:11:02.001551+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: OSKextRequestResource: 00000000
2019-10-07 19:11:02.253007+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: OSKextRequestResource Callback: dc008006.
2019-10-07 19:11:02.253063+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: OSKextRequestResource: 00000000
2019-10-07 19:11:02.415256+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: OSKextRequestResource Callback: dc008006.
2019-10-07 19:11:02.415302+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: OSKextRequestResource: 00000000
2019-10-07 19:11:02.473706+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: OSKextRequestResource Callback: dc008006.
2019-10-07 19:11:02.473748+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Loaded compressed embedded firmware for key "BCM20702A1_001.002.014.1483.1651_v5747".
2019-10-07 19:11:02.474264+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Decompressed firmware (29732 bytes --> 70201 bytes).
2019-10-07 19:11:02.474695+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Firmware is valid IntelHex firmware.
2019-10-07 19:11:02.474777+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: start
2019-10-07 19:11:02.474851+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: setPowerState: which = 0x1
2019-10-07 19:11:02.574939+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: USB [ACD1B8E2A4D0 v274] "BCM20702A0" by "Broadcom Corp"
2019-10-07 19:11:02.574946+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Available composite configurations: 1.
2019-10-07 19:11:02.576536+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Set device configuration to configuration index 0 successfully.
2019-10-07 19:11:02.576542+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: USBDeviceShim::findFirstInterface
2019-10-07 19:11:02.576547+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: getValidatedInterface returns <private>
2019-10-07 19:11:02.576552+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Interface 0 (class ff, subclass 01, protocol 01) located.
2019-10-07 19:11:02.576570+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: set configuration and interface opened
2019-10-07 19:11:02.576573+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: findPipe: direction = 1, type = 3
2019-10-07 19:11:02.576576+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: endpoint found: epDirection = 1, epType = 3
2019-10-07 19:11:02.576580+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: found matching endpoint
2019-10-07 19:11:02.576868+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: findPipe: direction = 0, type = 2
2019-10-07 19:11:02.576872+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: endpoint found: epDirection = 1, epType = 3
2019-10-07 19:11:02.576875+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: endpoint found: epDirection = 1, epType = 2
2019-10-07 19:11:02.576878+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: endpoint found: epDirection = 0, epType = 2
2019-10-07 19:11:02.576881+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: found matching endpoint
2019-10-07 19:11:02.577164+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: got pipes
2019-10-07 19:11:02.577168+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Unknown" --> "Initialize".
2019-10-07 19:11:02.579979+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: READ VERBOSE CONFIG complete (status: 0x00, length: 10 bytes).
2019-10-07 19:11:02.579984+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Firmware version: v4096.
2019-10-07 19:11:02.579995+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Initialize" --> "Firmware version".
2019-10-07 19:11:02.580001+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: getFirmware
2019-10-07 19:11:02.580005+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Retrieved cached firmware for "BCM20702A1_001.002.014.1483.1651_v5747".
2019-10-07 19:11:02.581012+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: DOWNLOAD MINIDRIVER complete (status: 0x00, length: 4 bytes).
2019-10-07 19:11:02.581022+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Firmware version" --> "Mini-driver complete".
2019-10-07 19:11:03.026305+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: END OF RECORD complete (status: 0x00, length: 4 bytes).
2019-10-07 19:11:03.026323+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Instruction write" --> "Firmware written".
2019-10-07 19:11:03.088265+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: RESET complete (status: 0x00, length: 4 bytes).
2019-10-07 19:11:03.088282+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Firmware written" --> "Reset complete".
2019-10-07 19:11:03.089213+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Device reset.
2019-10-07 19:11:03.089394+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Device status 0x00000003.
2019-10-07 19:11:03.089407+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Reset complete" --> "Update complete".
2019-10-07 19:11:03.089413+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Firmware upgrade completed successfully.
2019-10-07 19:11:03.089439+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Processing time 0.614 seconds.
2019-10-07 19:12:35.780218+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: setPowerState: which = 0x0
2019-10-07 19:12:41.538225+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: setPowerState: which = 0x1
2019-10-07 19:12:41.698899+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: stop
2019-10-07 19:12:41.714418+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: init
2019-10-07 19:12:41.714445+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: probe
2019-10-07 19:12:41.714453+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Version 2.3.0 starting on OS X Darwin 19.0.
2019-10-07 19:12:41.714471+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Device doesn't support handshake.
2019-10-07 19:12:43.714768+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: BrcmPatchRAMResidency does not appear to be available.
2019-10-07 19:12:43.714782+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: getFirmware
2019-10-07 19:12:43.714788+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Retrieved cached firmware for "BCM20702A1_001.002.014.1483.1651_v5747".
2019-10-07 19:12:43.714876+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: start
2019-10-07 19:12:43.715009+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: setPowerState: which = 0x1
2019-10-07 19:12:43.815115+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: USB [ACD1B8E2A4D0 v274] "BCM20702A0" by "Broadcom Corp"
2019-10-07 19:12:43.815123+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Available composite configurations: 1.
2019-10-07 19:12:43.817452+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Set device configuration to configuration index 0 successfully.
2019-10-07 19:12:43.817459+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: USBDeviceShim::findFirstInterface
2019-10-07 19:12:43.817464+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: getValidatedInterface returns <private>
2019-10-07 19:12:43.817470+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Interface 0 (class ff, subclass 01, protocol 01) located.
2019-10-07 19:12:43.817809+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: set configuration and interface opened
2019-10-07 19:12:43.817814+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: findPipe: direction = 1, type = 3
2019-10-07 19:12:43.817819+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: endpoint found: epDirection = 1, epType = 3
2019-10-07 19:12:43.817823+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: found matching endpoint
2019-10-07 19:12:43.818132+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: findPipe: direction = 0, type = 2
2019-10-07 19:12:43.818137+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: endpoint found: epDirection = 1, epType = 3
2019-10-07 19:12:43.818142+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: endpoint found: epDirection = 1, epType = 2
2019-10-07 19:12:43.818146+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: endpoint found: epDirection = 0, epType = 2
2019-10-07 19:12:43.818150+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: found matching endpoint
2019-10-07 19:12:43.818443+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: got pipes
2019-10-07 19:12:43.818448+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Unknown" --> "Initialize".
2019-10-07 19:12:43.822149+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: READ VERBOSE CONFIG complete (status: 0x00, length: 10 bytes).
2019-10-07 19:12:43.822157+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Firmware version: v4096.
2019-10-07 19:12:43.822181+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Initialize" --> "Firmware version".
2019-10-07 19:12:43.822189+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: getFirmware
2019-10-07 19:12:43.822195+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Retrieved cached firmware for "BCM20702A1_001.002.014.1483.1651_v5747".
2019-10-07 19:12:43.822849+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: DOWNLOAD MINIDRIVER complete (status: 0x00, length: 4 bytes).
2019-10-07 19:12:43.822863+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Firmware version" --> "Mini-driver complete".
2019-10-07 19:12:44.238206+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: END OF RECORD complete (status: 0x00, length: 4 bytes).
2019-10-07 19:12:44.238224+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Instruction write" --> "Firmware written".
2019-10-07 19:12:44.289858+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: RESET complete (status: 0x00, length: 4 bytes).
2019-10-07 19:12:44.289883+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Firmware written" --> "Reset complete".
2019-10-07 19:12:44.291174+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Device reset.
2019-10-07 19:12:44.291310+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Device status 0x00000003.
2019-10-07 19:12:44.291317+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: State "Reset complete" --> "Update complete".
2019-10-07 19:12:44.291324+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: [0489:e07a]: Firmware upgrade completed successfully.
2019-10-07 19:12:44.291357+0900  localhost kernel[0]: (kernel) BrcmPatchRAM: Processing time 0.576 seconds.
 

 

 

BCM20702A0:

 

  PRODUCT ID: 0xe07a

  VENDOR ID: 0x0489  (Foxconn / Hon Hai)

  • Thanks 1
Link to comment
Share on other sites

×
×
  • Create New...