Ryzen 9 3900X, ASRock X570 ITX/TB3, Sapphire RX 5500 Pulse, Catalina

Aluveitie

Active member
May 2, 2020
301
67
28
So far Navi is Navi, you have to set the same boot arg for all of them.

What could also help is setting PCIe to gen 3 for the GPU, it is known that MacOS can have problems with gen 4.
Also make sure CSM and Fast Boot are disabled.
 
Last edited:

marp

New member
Jul 28, 2020
12
2
3
So far Navi is Navi, you have to set the same boot arg for all of them.

What could also help is setting PCIe to gen 3 for the GPU, it is known that MacOS can have problems with gen 4.
Also make sure CSM and Fast Boot are disabled.
That did it! PCIe Gen4 was the problem. That seems so simple, but it's not mentioned in guides anywhere considering how PCI Gen4 is becoming more and more common.

2 issues:

I'm still having issues with TB3 - in my system report under PCI, it says drivers are installed, but I am having trouble getting my Universal Audio Thunderbolt (TB2 with TB3 adapter) device to mount. I've made sure the manufacturer's drivers are installed in Mac and it connects just fine in Windows. I've tried booting into Windows, then restarting into Mac, but still nothing. I've also tried hot plugging in all combinations to the same result.

Also when I shutdown out of macOS, my power button on my H1 is still lit up. I have to manually power it down coming out of macOS.

Any insight into these issues?
 

Aluveitie

Active member
May 2, 2020
301
67
28
There are two options in the BIOS you can try regarding the power button: enable deep sleep in S5 and disable LED in S5

Regarding Thunderbolt: I don’t have any experience. Others reported it working on our board at least when booted with it. The adapter might be an issue, maybe a TB3 dock could solve it?
 

marp

New member
Jul 28, 2020
12
2
3
My thunderbolt security level was set to "User Authorized", so setting that to none did the trick. This was probably mentioned somewhere and I missed it. I figured it was not something about the hardware as there have been success stories of people using my brand of audio interfaces with Titan Ridge chipsets, and Windows was already able to access it. Hot plugging even works which is a heckin' miracle.

As for shutdown, Deep Sleep didn't seem to make difference, when I went through macOS shutdown procedures. My HDMI display loses signal, but my machine is still purring and all lit up. Though when I do manually power down the computer, "Disable LED in S5" does turn off all the LEDs which I personally find annoying when a computer is off.

[For anyone who has stumbled upon this post: UAD (Universal Audio) Apollo Twin Thunderbolt (silver face with TB2) is tested and work in my setup with this motherboard and an Apple TB2>TB3 adapter using XinJiangCN SSDT in Aluveite's build reference, then enabling Thunberbolt and removing TB security in the BIOS.]
 
Last edited:
  • Like
Reactions: Aluveitie

Aluveitie

Active member
May 2, 2020
301
67
28
Good to know, thanks for reporting back your findings. Strange though I never really had issues with shutdown.
 
  • Like
Reactions: AMDPUSH

agent2

Member
May 3, 2020
52
15
8
Somewhere over the Rainbow
Excuse me guys is this now kinda the new go-to thread for Thunderbolt compatibility? Could someone maybe post an update in the Snazzy Labs thread with new info? Is this topic dead except for the few ASRock X570 ITX owners here? I remember @iGPU stating that hot-plug on the Rev. 1.1 Gigabyte X570 boards finally works but never replied to my request to post a guide on getting it up and running.
I find the so-called guides on tonymacx86 very confusing and I think it deserves a mention in the proper OC guide. But their documentation is what’s stopping not-so-advanced Hackintoshers from actually getting there.
So for people who have good knowledge about the topic please revive that thread as @iGPU and @CaseySJ haven’t really revisited it.
Thanks for your patience and cheers
 

Aluveitie

Active member
May 2, 2020
301
67
28
@agent2 This is just the go-to thread for the X570 ITX/TB3 :)

Regarding Thunderbolt 3 in general there was a lengthy thread in the german hackintosh forum. You can get add-in cards to work natively by flashing a custom firmware and shorting two pins of the TB header cable as far as I understood. I think there was also a link to either iGPU or CaseySJ at some point.
(I don't know about the tomatos, but mentioning their site has been banned in the german hackintosh forum...)

State is that Thunderbolt is working on the ASRock ITX without hotplug out of the box. I've got an SSDT from XinJaing that enables hot-plug: https://github.com/aluveitie/RyzenMacPro/pull/3)
 

agent2

Member
May 3, 2020
52
15
8
Somewhere over the Rainbow
@agent2 This is just the go-to thread for the X570 ITX/TB3 :)

Regarding Thunderbolt 3 in general there was a lengthy thread in the german hackintosh forum. You can get add-in cards to work natively by flashing a custom firmware and shorting two pins of the TB header cable as far as I understood. I think there was also a link to either iGPU or CaseySJ at some point.
(I don't know about the tomatos, but mentioning their site has been banned in the german hackintosh forum...)

State is that Thunderbolt is working on the ASRock ITX without hotplug out of the box. I've got an SSDT from XinJaing that enables hot-plug: https://github.com/aluveitie/RyzenMacPro/pull/3)
Thanks man yeah I really wanted a TB-enabled Hackintosh by going the GB 1.1 route but the AORUS XTREME I received was still R1.0 so I didn’t use it and bought an ROG CROSSHAIR VII Formula (I’m a USB port freak so yeah I didn’t buy a Master) instead and the COVID-19 situation had all stock of Titan Ridge AICs sold out. But when I build another Hackintosh it will be with TB and you can count on my support then! ;)
 
Last edited:
  • Like
Reactions: Aluveitie

marp

New member
Jul 28, 2020
12
2
3
I am unable to get bluetooth working at the moment. Toggling bluetooth on and off causes the OS to freeze. Currently, bluetooth works fine in Windows.

I don't really care about sleep as I don't ever put my computer to sleep and my audio apps don't like sleep. So all my power preferences are set to "Never" and to just go into screen saver.

@Aluveitie Using your AMD USB Map Kext, if I change the Bluetooth port to internal (255), do you think that will work? I know in your reference guide, you mentioned that you were using SSDTs to manage power and name controllers/ports, but I wasn't sure if you were mapping with them as well. (I still have trouble fully grasping SSDTs)
 

khevinski014

New member
Jun 29, 2020
15
1
3
Philippines
@Aluveitie are you able to find a way to get the XHC0 working? That's the only issue I'm having for a perfect hackintosh. I have'nt deactivated it yet through SSDT as it works fine, the issue will only arise if there's a USB 2.0 device connected to it when system is going to sleep. Having USB 3.0 on that port works fine though.
 

Aluveitie

Active member
May 2, 2020
301
67
28
No, don’t now of any method to fix that. Since I only have my display permanently connected to the USB-C port it’s also not an issue for me.
 
  • Like
Reactions: khevinski014

khevinski014

New member
Jun 29, 2020
15
1
3
Philippines
No, don’t now of any method to fix that. Since I only have my display permanently connected to the USB-C port it’s also not an issue for me.
I’m looking at the ioexplorer and i can see that my sata controller has the same name with my 3 usb ports in XHC0 (the PRT1-3 ports) maybe that’s the reason?
I’m trying to find a way to rename them but haven’t found any. Will try to find hard when I have a time.
 

Aluveitie

Active member
May 2, 2020
301
67
28
I don't think the SATA port names matter in that regard. I've renamed them all and I've also issues when USB 2 devices are plugged in.
 

marp

New member
Jul 28, 2020
12
2
3
After some frustration trying to understand USB Mapping, I just copied the SSDTs and Kexts from Aluveitie's github (Thanks for your excellent work!) I've also come across this article discussing mapping which has been illuminating. Useful for anyone on AMD systems that found the OpenCore Vanilla guide as confusing as I did. The author uses our same motherboard as his example which is helpful. https://aplus.rs/2020/usb-mapping-why/

I'm still having the following issues:

- Bluetooth isn't functioning properly. Toggling it seizes my OS, even with the Firmware and Injector kexts. In Hackintool, System>Peripherals>Bluetooth>FW Loaded is unchecked for me. From what I understand, since macOS doesn't officially support this particular bluetooth hardware, the kexts loads a layer on top to sort of emulate a compatible module. Am I understanding that correctly or am I way off? BT works as it should in Windows.

- Plugging a USB3 Hub into one of the USB 3.2 Gen2 (SS1/2) ports only yielded USB2 speeds. Plugging into the front panel USB3 IO SS5/6 gave me USB3 speeds. Though plugging a USB3 hard drive directly into the SS1/2 ports yielded USB3 speeds. ??????

- I have 3 (Universal Audio) thunderbolt devices with 3 different results.
Apollo Twin Silver TB2 - works perfectly on its own, either booted before the OS or hotplugged
Apollo Quad Silver TB1 - surprisingly works plugged right into the Titan Ridge controller, but it cannot daisy chain and can't boot before the computer or else I freeze on the BIOS splash.
UAD Satellite Accelerator TB2 - once my UAD software recognizes the device, it crashes my whole OS and forces a reboot. If it does not crash my system, trying to use it in my DAW results in an error message that means that my software cannot communicate with the device (error code -38 if anyone cares)
These devices so far work as expected in Windows, so I suspect this is a hackintosh issue and getting an Alpine Ridge dock may not solve this.

(Note: For those unaware, these audio interfaces have built-in sharc processors to offload DSP for proprietary plugins)

With these issues in mind:
Q1: Is it worth trying again to manually remap my ports? Or should the SSDT/kexts in cited in this thread work out of the box? From my cursory, albeit crudely educated, inspection of the kexts and SSDTs, everything seems in order. The cited article mentions building off the "IOPersonalities_x86_64" kext that is specific to Catalina and has a different structure compared to Mojave's "IOPersonalities" kext, which this kext seems to be built from.
Q2: Does thunderbolt have anything to do with mapping? In debugging other stuff, sometimes fixing one thing fixed another seemingly unrelated thing. (i.e. fixing an en0 issue with Messages fixed my Logic Pro X startup)
Q3: Does the picture below look correct? Should there be check marks in those boxes?

Screen Shot 2020-08-05 at 2.12.21 AM.pngScreen Shot 2020-08-05 at 2.15.20 AM.png
 
Last edited:

Aluveitie

Active member
May 2, 2020
301
67
28
@marp I've created the USBPorts.kext from Hackintool, maybe I should revisit the USB mapping post again and look deeper into it.
Remapping the ports should lead you to the same result as mine since you've the same board (at least with the same BIOS version).

Regarding Bluetooth, the kext just uploads the same firmware that windows or linux would. It is just compatible enough for the default bluetooth driver to be working mostly (Bluetooth mic does not work due some incompatibility issues). Once the firmware is loaded it should just work out of the box (maybe check if bluetooth is enabled in BIOS if you still have issues).

Since I have my TB2->TB3 dongle at the office where I wasn't since early March I did not really look into Thunderbolt at all. But I did not hear from anyone using it on our board that they had to do something.

What is weird in your screenshot that the USB controller shows up as ethernet en1: Screenshot 2020-08-05 at 09.30.54.png
 

marp

New member
Jul 28, 2020
12
2
3
I suspect my issues are in the DeviceProperties section of my config. Admittedly, I don't know much about this section so I copied yours. I wouldn't think your deviceproperties would differ from anything I would make seeing as most of those items refer to the mobo, aside from your 5500xt. But we've established that so far Navi is Navi, and I don't have any graphics problems in macOS. I did have to add a line to force my Ethernet en0 connection to be built-in.

This seems like a pretty integral part of the setup, but the Opencore guide insists on leaving it empty and just breezes over it. Would you happen to know of a good resource to educate myself on this section?
 

Aluveitie

Active member
May 2, 2020
301
67
28
Weird, never had to mark the Ethernet as built-in.

I don't now of a specific resource in that regard, all I know I've gathered from reading through forums and other people EFIs.
 

Aluveitie

Active member
May 2, 2020
301
67
28
@marp I've adapted the USB map kext to the guide you've linked and it dramatically increased performance for my USB sticks. Before it took quite a while just to load the directory content or unmount them... now it behaves as it should.
 

marp

New member
Jul 28, 2020
12
2
3
@Aluveitie Glad that worked! Did that solve the SS3 and SS4 issues? I noticed that's no longer a footnote in your Github repo.

I cleaned up my EFI considerably:
  • Used the OpenCore 6.0 efi, I guess since it was still not officially available when I was building my config, I was using 5.9. This step may have cleaned up things I copied from your config.
  • Redownloaded the IntelFirmware and Injector kexts, and overwrote the existing ones in my kexts folder
  • extracted my own DeviceProperties plist using Hackintool and dropped that into my config
  • replaced the old USB Map with the new Catalina optimized one you created (Thank you for your work!)
  • ran the scripts to rebuild my network preferences

Results:
  • Bluetooth driver FW Loaded now has a checkmark in Hackintool! I think I may have just needed to overwrite the firmware and injector kexts for some reason, but it worked - actual practical bluetooth capability has yet to be fully tested as I left the box with the antenna in my storage space accidentally, so I need to make a trip to retrieve that
  • Ethernet now shows in my network preferences - a problem I didn't even know I had - I still need the "built-in" string in the USB Map kext though for BSD to register as built in
  • Realized that the reason my Matisse USB Controller was showing up as ethernet was because I have a USB3 hub that has an RJ45 gigabit port on it - if I turned it off, it would disappear from my peripherals - something stupid simple I completely overlooked
  • still the same thunderbolt issues, but seeing some clues in places that may lead somewhere - the peripherals section can identify the thunderbolt device models, so researching those may point towards something
UPDATE:
- Bluetooth is functioning as expected now. Seems either the overwriting of the BT firmware and injector kexts, or some combination of other updates to my EFI, finally got it working and stable for both a keyboard (Keychron K4) and headphones (Bose).
 
Last edited: