Contribute
Register

Asus Z690 ProArt Creator WiFi (Thunderbolt 4) + i7-12700K + AMD RX 6800 XT

Other than USB, are there any issues with the Mac OS 14.4 update?
There is no USB issue with 14.4 as far as I am aware. My only issue is the bluetooth which is on port HS14 and happens to be a USB 2.0 port.

Oh, and I don't know of any other issues either - just that I can't get BT to work. :banghead:
 
Last edited:
Let's try changing the position of IntelBTPatcher.kext as shown, such that the last 3 kexts are:
  1. BlueToolFixup.kext
  2. IntelBTPatcher.kext
  3. IntelBluetoothFirmware.kext

View attachment 579756

@CaseySJ I know you are very busy. I was wondering if you had any thoughts on my experiments so far to get BT working or other ideas for me:

I had a fleeting thought that the order of the kexts may be important but then forgot about that. I changed the order as you suggested and moved the new kexts where you had them in your example screenshot. Unfortunately, same result.

One thing I noticed is different about this config is the new Lilu.kext is v1.6.2 and is only 177KB where the one from my last known good setup is v1.6.7 and 529KB. De we need the older Lilu.kext for some reason?

Update: I tried Lilu.kext v1.6.7 and it had the same behavior.

Update 2: If I disable AirportItlwm with the v1.6.7 Lilu, it boots up fine but I also get no bluetooth.

Update 3: If I disable AirportItlwm with the v1.6.2 Lilu, it crashes on boot with "AppleKeyStore:7690:151: unexpected session uld: -1 requested by: bluetoothd (151)" see photos.

Looks like bluetooth support for Sonoma 14.4 is experimental and quite fragile at the moment. Perhaps I should revert back to Sonoma 14.3.1 or even Ventura. Maybe updating OpenCore could help? Or maybe I will just live without bluetooth until this gets sorted out but that isn't my first choice.

I have also experimented with updating the BT kexts to the latest versions. It did't work when I updated all of them but now I am enabling them one at a time to try to find the trouble makers. The latest AirportItlwm-Sonoma14_4.kext crashes boot even if it is the only of these required BT kexts enabled. The latest Lilo.kext v1.6.7 and BlueToolFixup.kext don't cause a crash when enabled. Still digging.

Any advice appreciated.

Update: IntelBluetoothFirmware.kext v2.4.0 crashes boot when enabled individually. Not sure if this is expected behavior or not. Actually, if I enable either the latest AirportItlwm-Sonoma14_4.kext or IntelBluetoothFirmware.kext v2.4.0, I get a crash. It rolls by to fast to see what is going on but maybe I could take some video to capture screenshots of what is happening.
 

Attachments

  • current enabled kexts.png
    current enabled kexts.png
    1.8 MB · Views: 28
Last edited:
Hello, it seems lots of people use this thread for the z790 ProArt, like me.

But I noticed a least one mod to be done.
As explained in page 4 of the thread, you need to delete 1 OEMtableID to replaced it with the corrected file.
But it's not the same name for the z790 : xh_rps14
  • ACPI --> Add --> Add a new row for SSDT-11.aml
  • ACPI --> Delete--> Add an entry for deleting the original version of the table:
    • Signature: SSDT
    • OemTableId: 78685F72 70733134
    • TableLength: 0
    • Comment: Delete original xh_rps14 table
    • Enabled: Check On

I also got a few questions for @CaseySJ , maybe :

Is it ok to put the SSDT's name of the z690 ProArt, instead of the one from the z790 ?
At first I keep your SSDT, now I made one with the correction explained in page 4.

From time to time I can get random boot fail, due to very different errors. Most of the time, when I change a value in the bios, or try activate/disable something in it , like WiFi-Bluetooth. I try disable them because the error could come from this side.
Clean/reset NVRAM seems to solved it, with the right things set in the BIOS. Is It a know behavior ?

For now, I disabled IMMOMU preboot behavior in BIOS, and disabled NVMeFix.kext (slide=0 as no effect),will see....
But since cleaning NVRAM solve the issue, maybe something is going wrong with the NVRAM ?

I also noticed some ACPI errors in the log, before the PCIRoot is found, do you also got that with the z690 ?

Edit : @BigPines I got wifi /bluetooth working with the same motherboard, in Sonoma 14.4, some add PatchRAM3, but don't think we need it. Try to disable NVMeFix, I really don't know why but seems to help.

And The SSDT from the z790 with the mod, and its original name.
 

Attachments

  • SSDT-11.aml
    7.2 KB · Views: 16
Last edited:
Hello, it seems lots of people use this thread for the z790 ProArt, like me.

But I noticed a least one mod to be done.
As explained in page 4 of the thread, you need to delete 1 OEMtableID to replaced it with the corrected file.
But it's not the same name for the z790 : xh_rps14
  • ACPI --> Add --> Add a new row for SSDT-11.aml
  • ACPI --> Delete--> Add an entry for deleting the original version of the table:
    • Signature: SSDT
    • OemTableId: 78685F72 70733134
    • TableLength: 0
    • Comment: Delete original xh_rps14 table
    • Enabled: Check On

I also got a few questions for @CaseySJ , maybe :

Is it ok to put the SSDT's name of the z690 ProArt, instead of the one from the z790 ?
At first I keep your SSDT, now I made one with the correction explained in page 4.

From time to time I can get random boot fail, due to very different errors. Most of the time, when I change a value in the bios, or try activate/disable something in it , like WiFi-Bluetooth. I try disable them because the error could come from this side.
Clean/reset NVRAM seems to solved it, with the right things set in the BIOS. Is It a know behavior ?

For now, I disabled IMMOMU preboot behavior in BIOS, and disabled NVMeFix.kext (slide=0 as no effect),will see....
But since cleaning NVRAM solve the issue, maybe something is going wrong with the NVRAM ?

I also noticed some ACPI errors in the log, before the PCIRoot is found, do you also got that with the z690 ?

Edit : @BigPines I got wifi /bluetooth working with the same motherboard, in Sonoma 14.4, some add PatchRAM3, but don't think we need it. Try to disable NVMeFix, I really don't know why but seems to help.

And The SSDT from the z790 with the mod, and its original name.

I posted a few posts ago with the fix to the boot issue, be nice if the Moderators can add it to the first page! You need to add slide=0 to boot args
 
I posted a few posts ago with the fix to the boot issue, be nice if the Moderators can add it to the first page! You need to add slide=0 to boot args
As I said, slide=0 was not a fix for me.
It's been really stable now, in both Windows & Sonoma

If some need it, BIOS 1303, but it should work with later BIOS. Opencore 0.9.9
IOMMU is disable in BIOS, some hacking protection from Thunderbolt devices @ boot is pretty useless for me (If I understood correctly that's what it does).
You will need to add serials number.

For the graphic card part, SSDT is only for 6950. I try nootrx.kext, but performances are better with whatevergreen.
 

Attachments

  • EFI.zip
    28.4 MB · Views: 20
Last edited:
As I said, slide=0 was not a fix for me.
It's been really stable now, in both Windows & Sonoma

If some need it, BIOS 1303, but it should work with later BIOS. Opencore 0.9.9
IOMMU is disable in BIOS, some hacking protection from Thunderbolt devices @ boot is pretty useless for me (If I understood correctly that's what it does).
You will need to add serials number.

For the graphic card part, SSDT is only for 6950. I try nootrx.kext, but performances are better with whatevergreen.
I checked your EFI. Why do you have AppleXcpmCfgLock kernel quirk on?
 
Hi @CaseySJ ,
What's gone wrong three years ago with thunderbolt 4 firmware patching ?

I have bought an Asrock Thunderbolt 4 AIC (Rev 1) at discount price (around 40euros), then patched its firmware as usual (3 bytes)... et voila:

Capture d’écran 2024-03-26 à 20.22.29.png


This AIC board have a TBTForcePower jumper, no external wire jumper required.
Without a TBTHeader cable and plugged into an Asus B460M that doesn't include Thunderbolt setting (No TBT header and no TBT BIOS capabilities), it works fine (Hot-plug, Sleep/Wake, Alternate mode DisplayPort and 10Gbps USB-C).

Before firmware patching, Hot-plug wasn't working. It seems that macOS can drive Hot-plug capability very well... without AppleHPMIECS driver.


Capture d’écran 2024-03-26 à 20.44.57.png


I also made 2 kernel patches to improve detection of "Complex" thunderbolt devices (that take more virtual memory like eGPU). "Simple" devices like Apple thunderbolt Ethernet (connected on previous screenshot) work without theses kernel patches.
Theses 2 patches consist on changing default IOThunderboltSwitchOS to IOThunderboltSwitchType6 :)

For information, on disassembled code of IOThunderboltFamily, I also seen IOThunderboltSwitchJHL8440 .. I tried it, but I didn't have such as a good result as the SwitchType6

This last screen shot is with an AMD RX5500 XT graphic card embedded on eGPU :
Capture d’écran 2024-03-26 à 21.04.45.png

EDIT:

Port@C and Port@D are USB4 adapters for AppleThunderboltUSBDownAdapter , I have enabled them on DROM (0x28C & 0x28D).. alas this driver plug-in is not available for Intel x86 platform (Apple Silicon only).. We should try an USB4 device that use PCIe bus to see what happen.

I have customised DROM part (at 0x4210 firmware address) before firmware flashing.

Two lessons learned during reverse code investigations:
  • IOThunderboltSwitchOS & IOThunderboltSwitchType6 doesn't read ThunderboltDROM property.
  • TBTFlags property is required with minimum value of 0x8 (4 bytes) to load previous ThunderboltSwitches.
Capture d’écran 2024-03-26 à 21.32.08.png

I hope that Thunderbolt 5 (Barlow Ridge), expected in 2024, would be quite similar to Thunderbolt 3 & 4 :rolleyes:
 
Last edited:
I have bought an Asrock Thunderbolt 4 AIC (Rev 1) at discount price (around 40euros), then patched its firmware as usual (3 bytes)
  • Intel JHL8540 Thunderbolt 4 Controller
  • Delivers breathtaking 40 Gb/s data transfer speeds
  • Single-cable connection for connecting a 5K@60Hz or two 4K@60Hz displays
  • Supports USB PD 2.0 charging up to 9V@3A (27W)
The Asus TH EX4 card has the same JHL8540 controller. Do you think that would work too ? Asrock not available here.

 
  • Intel JHL8540 Thunderbolt 4 Controller
  • Delivers breathtaking 40 Gb/s data transfer speeds
  • Single-cable connection for connecting a 5K@60Hz or two 4K@60Hz displays
  • Supports USB PD 2.0 charging up to 9V@3A (27W)
The Asus TH EX4 card has the same JHL8540 controller. Do you think that would work too ? Asrock not available here.

Yes, this is the same controller JHL8540 (Maple Ridge) on all usual motherboard manufacturer (ASUS, MSI, Gigabyte and ASROCK).
If we can read and write on EEPROM or Flash component that include Firmware, this should work. But we can be sure with a real test... I didn't find a mean to access to PD firmware, previous component only include Thunderbolt firmware.

For my first test, I saw that Asrock PD firmware deal fine with macOS driver... maybe other too
Thunderbolt 4 AIC(L2).png
 
I checked your EFI. Why do you have AppleXcpmCfgLock kernel quirk on?
On my way to find stability over time, I go back to this, from changing it with a command line using setup_var.efi . Work quite the same it seems, and is more practical.
 
Back
Top