Contribute
Register

[SUCCESS] Z170X-UD5 TH, i7-6700K, AMD Radeon Pro WX 7100, 64GB DDR4

Status
Not open for further replies.
You need to properly adjust(you can only have 15 ports) and map the usb ports on your hack. See Rehabman's excellent guide on this site for more info.
You can't just copy someone else's settings unless you have exactly the same setup(mobo, case, wifi/bluetooth etc).
Otherwise you will have some/lots of weirdness.

Thanks, I'll check that out. I thought the 15 port XHCI patch in MultiBeast and USBInjectAll.kext fixed all USB issues.
 
You need to properly adjust(you can only have 15 ports) and map the usb ports on your hack. See Rehabman's excellent guide on this site for more info.
You can't just copy someone else's settings unless you have exactly the same setup(mobo, case, wifi/bluetooth etc).
Otherwise you will have some/lots of weirdness.
*UPDATE*
Using this guide, I went down the rabbit hole of creating a custom SSDT for USBInjectAll.kext.
Here are some tips and things I learned for others who want to do the same:
- It only makes sense to use someone else's SSDT-USB.aml if you're using exactly the same internal headers (case ports) on your motherboard. These are the ones I'm using and my SSDT-USB.aml.
ports_im_using.png
- Keep in mind USB 3.0 ports count as two ports because they are also USB 2.0 ports.
- Using a USB 3.0 hub saves you time because it registers as a USB 2.0 and 3.0 device. This way you don't have to plug in separate 2.0 and 3.0 devices into each port on your case.
- You can use IOJones instead of IORegistryExplorer.
- The internal USB hub header only counts as one port, even though it can provide up to three 2.0 ports on your case (confusing), because technically it's just a 2.0 hub that's built into the motherboard.
motherboard_usb_specs.png
- If you end up only injecting/mapping 15 or less ports, you can remove the 15 port limit patch from your config.plist.
15_limit_patch.png

- I think (not sure) using the uia_exclude= boot flag is redundant because with a proper SSDT-USB.aml, you're telling USBInjectAll.kext which ports to inject and how to map them. I see no difference in IOJones when booting with and without:
Code:
uia_exclude=HS05;HS06;HS09;SS05;SS06;SS09;SS10;USR1;USR2
...as all these are not included in my SSDT-USB.aml.
- All this has nothing to do with the USB 3.1 Type-C ports.
- I think (not sure) 2.0 and 3.0 backwards compatibility on the two Type-C ports only works in Windows 7 32-bit/64-bit using the Intel USB 3.1 [15.2.30.250] driver. I only currently have Win10 and H.S. 10.13.3 installed, and 2.0/3.0 devices do not work on those ports in both OS's. I also don't have any USB 3.1 or TB devices+adapter to test those ports with.
- It looks like sleep now works for me regardless of what USB devices I have attached. :clap:
- Between this USB drama, the wonky Nvidia drivers, SIP needing to be enabled to install Nvidia drivers, and AFPS... I wish I stayed on El Cap. :crazy:
 

Attachments

  • SSDT-USB.aml
    772 bytes · Views: 452
Last edited:
- config.plist > Boot > Custom Flags: uia_exclude=HS07;HS08;HS09;HS10;USR1;USR2;SS04;SS05;SS07;SS08;SS09;SS10
- /ACPI/patched/ssdt-usb.aml (custom USB2/3 port mapping made by hand)
FYI - Your SSDT-USB.aml is injecting everything I highlighted in red and doesn't include SS09 and SS10, so I don't think you have to exclude those two in your boot flags.
 
- I think (not sure) 2.0 and 3.0 backwards compatibility on the two Type-C ports only works in Windows 7 32-bit/64-bit using the Intel USB 3.1 [15.2.30.250] driver. I only currently have Win10 and H.S. 10.13.3 installed, and 2.0/3.0 devices do not work on those ports in both OS's. I also don't have any USB 3.1 or TB devices+adapter to test those ports with.
If anyone is interested in getting USB 3.1/3.0/2.0 working on the two twp Type-C ports in Windows 8 or 10, there are modded drivers here. I can confirm they work under Win10.

They are located under:
E. Intel USB 3.0/3.1 Drivers
B. Latest modded Intel USB 3.0/3.1 drivers:
1. only for Intel Chipsets from 8-Series up:​
 
1) OsxAptioFix3Drv-64.efi without EmuVariableUefi-64.efi = Nvidia web drivers load
2) OsxAptioFix2Drv-64.efi + EmuVariableUefi-64.efi = Nvidia web drivers load
3) OsxAptioFix2Drv-64.efi without EmuVariableUefi-64.efi = Nvidia web drivers do not load
According to Monewbo on r/hackintosh
Disable iGPU in the BIOS
Do you have more than 1 display connected to your nVidia card? If you do, enable CSM.
Make sure your Aptiofixes are good.

The old way with emulated NVRAM.
EmuVariableUefi-64.efi
OsxAptioFix2Drv-64.efi

Better option with working NVRAM
OsxAptioFix3Drv-64.efi

The best and latest hotness. XD
AptioInputFix.efi
AptioMemoryFix.efi

The very latest Clover Configurator has options for adding and removing the latest OsxAptiofix(es). It's under Install Drivers.

If you get it working with the newer Aptiofixes (and without EmuVariable), and were using rc scripts prior, delete nvram.plist from everywhere you see it. Usually found on the root of EFI or main volume of drives. And delete /etc/rc.shutdown.d/80.save_nvram_plist.local
 
Last edited:
I swear my video playback in chrome/safari got better after enabling "Above 4G Decoding" in the BIOS. I'm running patched 106 drivers.
 
Great information, thanks @apple pic. Did creating the custom SSDT fix your sleep issue? I have almost the same build, darkwake=0 seems to work the best with this mobo, although sometimes the system won't wake up and gets stuck at BIOS code 55 which is usually a memory initialization failure. I'm getting real close to giving up on sleep.

EDIT: I'm using iMac 17,1.
 
Great information, thanks @apple pic. Did creating the custom SSDT fix your sleep issue? I have almost the same build, darkwake=0 seems to work the best with this mobo, although sometimes the system won't wake up and gets stuck at BIOS code 55 which is usually a memory initialization failure. I'm getting real close to giving up on sleep.

EDIT: I'm using iMac 17,1.
Yes, sleep started to work after correctly mapping the USB ports. Using iMac 17,1 system definition too.
 
I'm curios, from where you got this file?
I initially created my own USB SSDT from scratch by measuring out all the ports with USB2 and USB3 sticks. I quite happily used this SSDT for a while until I assumed that potentially something could be wrong with the USB3 motherboard header mapping in my SSDT.
I remember that (because at that point I was too lazy to go over the whole process of mapping/verifying all the ports again by hand) I tried some other SSDTs for my board like for instance the one attached to the first post of this thread (https://www.tonymacx86.com/threads/10-11-0-10-11-3-skylake-starter-guide.179221/) as well.
But as far as I remember I went back to my own SSDT as the others I tried did cause new/additional issues for my build. Also, I never really confirmed my suspicions in regards to my own SSDT and the USB3 motherboard headers.
But to be completely transparent, at this point I can't really say for sure if the linked SSDT (which is the one that I am using right now) is really completely the file I created myself. This is also because I realised during the testing of other SSDTs that I obviously must have made some errors (mostly typos in the description of the ports) in my own SSDT and so I started to copy over certain parts from other SSDTs. I remember that I was pretty tired back then, rebooting like a 100 times and trying this and that, verifying things with USB2 and USB3 sticks and so on and so forth.
So, in all honesty, I think it is still (at least mostly) my own SSDT, but I am not 100% sure that this is really the case.
Does that help as an answer?
 
Status
Not open for further replies.
Back
Top