Contribute
Register

The New Beginner's Guide to USB Port Configuration

Clover Configurator has a built-in Hex-Text-Decimal converter built-in. Take a look in the left-hand column. Fourth item up from the bottom = HEX converter. So for "USE2" which is the one not pre-configured in the menu, I make that "55534532" and "EH01" = "45483031" :)
Neat! I learn something new everyday :)

Don't worry if it all seems too daunting. As I constantly say, it's not compulsory. If your ports work, let them be .Mojave was never coded for UHC controllers. We are just trying to configure the EHC.
I think my ports do work and it really is just a driver issue, because the port does work on a flash drive.
Lack of power shouldn't be the cause either because it functions on my Mountain Lion OS.
But when trying to find kexts to enable my USB soundcard, I stumbled upon this post.
Initially installed just the AppleUSBAudio.kext and that didn't work, so I proceed to install the IOUSBFamily.kext through Hackintool.
Upon installing, a huge block of red text appears pointing to USBE/USB5 and the likes. I thought that it's something normal.
How mistaken I was. I am now stuck, unable to access my Mojave system :eek:
And Clover boot options somehow disappears too.
If I let it boot, it does boot but it would take over 15 minutes to do so.
And when I'm in, nothing works. No keyboard, no mouse, no trackpad.
Booting off a Unibeast USB also gave the same outcome.
Sorry for asking this here, but is there a way to remove the problematic kext from a different OS? An OS which doesn't read APFS partition.

When you decide to Print a document does your printer model appear in the top line of the Print window? If so then drivers are installed.
My printer functions and appear in the Print window printer selection. I think it's functioning as it should now.
If only I know what exactly fixed it.
 
Last edited:
Neat! I learn something new everyday :)


I think my ports do work and it really is just a driver issue, because the port does work on a flash drive.
Lack of power shouldn't be the cause either because it functions on my Mountain Lion OS.
But when trying to find kexts to enable my USB soundcard, I stumbled upon this post.
Initially installed just the AppleUSBAudio.kext and that didn't work, so I proceed to install the IOUSBFamily.kext through Hackintool.
Upon installing, a huge block of red text appears pointing to USBE/USB5 and the likes. I thought that it's something normal.
How mistaken I was. I am now stuck, unable to access my Mojave system :eek:
And Clover boot options somehow disappears too.
If I let it boot, it does boot but it would take over 15 minutes to do so.
And when I'm in, nothing works. No keyboard, no mouse, no trackpad.
Booting off a Unibeast USB also gave the same outcome.
Sorry for asking this here, but is there a way to remove the problematic kext from a different OS? An OS which doesn't read APFS partition.


My printer functions and appear in the Print window printer selection. I think it's functioning as it should now.
If only I know what exactly fixed it.


Hi there.

Reset your BIOS then re-apply the necessary macOS settings. Once done boot the system using your UniBeast installer USB drive.

You can remove a kext using Terminal from the UniBeast installer Tools menu before the actual installation option. The Terminal commands are much the same as the Linux ones. Remember to rebuild the kext caches, or use Clover's boot menu (Spacebar) to boot without caches.

I would have to see that red block to identify it.

Apple completely overhalled the USB sub-system with El Capitan so it is perfectly possible a set-up that worked for Mountain Lion would not work under El Cap.
 
Hi there.

Reset your BIOS then re-apply the necessary macOS settings. Once done boot the system using your UniBeast installer USB drive.

You can remove a kext using Terminal from the UniBeast installer Tools menu before the actual installation option. The Terminal commands are much the same as the Linux ones. Remember to rebuild the kext caches, or use Clover's boot menu (Spacebar) to boot without caches.

I would have to see that red block to identify it.

Apple completely overhalled the USB sub-system with El Capitan so it is perfectly possible a set-up that worked for Mountain Lion would not work under El Cap.
You are a life saver!
Faced several hurdles including a cross sign during bootup, but everything is back now.
I've also tried using the DSDT from my previous OS and voila!
Screen Shot 2020-06-15 at 15.59.22.png

Soundcard and scanner works on its own too!
I'll be reading your guide again from the beginning and do it properly this time :)
But would this patch be relevant to me since my system don't have and XHCI controllers?
And should I decide to reinstall a fresh system (because I messed up things quite a bit and worried something might pop up someday), could I still use the same USB aml?
 
You are a life saver!
Faced several hurdles including a cross sign during bootup, but everything is back now.
I've also tried using the DSDT from my previous OS and voila!
View attachment 476237
Soundcard and scanner works on its own too!
I'll be reading your guide again from the beginning and do it properly this time :)
But would this patch be relevant to me since my system don't have and XHCI controllers?
And should I decide to reinstall a fresh system (because I messed up things quite a bit and worried something might pop up someday), could I still use the same USB aml?


Well done on getting everything back up :thumbup:

The port-limit removal patch opens-up all available ports - and looking at the screengrab above I think there maybe only 2x more EHCI ports to find. The chipset has 14x and often they are distributed 8-6 between EH01 and EH02.

The port-limit removal patch is different for each point upgrade of Mojave. It was a real pain getting the correct one. What's more I'm not aware of one for 10.14.6 - and wasn't able to discover it myself. (Maybe someone trial-and-errored for longer and did find it). If the kexts have the same hex-string then the patch will change them, irrespective of what the hardware is.

If you only edit config.plist to put in place the port-limit patch then try booting it, you should have no panic or system crash. With later versions of Clover you can go to the Options menu and disable a patch if it causes problems.

Yes, I don't see why you can't use your *.aml file in future on the same motherboard, because that's the key. Once you've done all the work for a given motherboard you shouldn't need to do it again. Just copy the complete EFI folder to somewhere safe for backup.

:)
 
Well done on getting everything back up :thumbup:
I have you to thank for :clap:

However, I just found out that I lost sleep after applying the DSDT (Doh!)
I might have to come back to this after I figure out the main issues at hand; acceleration and now sleep/wake function.
What I find odd is that after removing the DSDT, Hackintool still shows the long list of USB ports. Which should be a good thing I guess?
Also, I found this (edit: message gets moderated for sharing an external link? Attached a screen capture of it instead :)) when reading up on a patch for 10.14.6. Could it be as simple as just the 4 patches?
 

Attachments

  • Screen Shot 2020-06-16 at 12.48.54.png
    Screen Shot 2020-06-16 at 12.48.54.png
    85.8 KB · Views: 66
I have you to thank for :clap:

However, I just found out that I lost sleep after applying the DSDT (Doh!)
I might have to come back to this after I figure out the main issues at hand; acceleration and now sleep/wake function.
What I find odd is that after removing the DSDT, Hackintool still shows the long list of USB ports. Which should be a good thing I guess?
Also, I found this (edit: message gets moderated for sharing an external link? Attached a screen capture of it instead :)) when reading up on a patch for 10.14.6. Could it be as simple as just the 4 patches?


Yes, the DSDT for your motherboard in our downloads section, was written a long time before Mojave was even a twinkle. Technologies change, which is good but potentially troublesome.

Try the patches and see. I'll wait on the fence here. When I was checking progress for 10.14.6 I spotted this 3-part patch:


I haven't tried it myself.

When you start Hackintool after you've been removing USB ports and building a kext or aml file, you should clear its caches and reload: Broom icon then Circular Arrows icon.

:)
 
First of all, my apologies for needing help after such effort was made already to make guide for noobs. Well, I guess I am super noob.

1. Here is my ioreg -p IOUSB
Code:
+-o Root  <class IORegistryEntry, id 0x100000100, retain 77>
  +-o XHCI Root Hub SS Simulation@0  <class IOUSBRootHubDevice, id 0x100000282,$
  +-o XHCI Root Hub SS Simulation@0  <class IOUSBRootHubDevice, id 0x100000283,$
  | +-o COM35EU3B6G@1f100000  <class IOUSBDevice, id 0x100000324, registered, m$
  +-o XHCI Root Hub USB 2.0 Simulation@0  <class IOUSBRootHubDevice, id 0x10000$
  +-o XHCI Root Hub USB 2.0 Simulation@0  <class IOUSBRootHubDevice, id 0x10000$
  | +-o Fireface UC Mac (23244188)@1e200000  <class IOUSBDevice, id 0x100000292$
  +-o AppleUSBEHCI Root Hub Simulation@1d000000  <class AppleUSBRootHubDevice, $
  | +-o IOUSBHostDevice@1d100000  <class AppleUSBDevice, id 0x1000002f7, regist$
  |   +-o Console 1@1d170000  <class AppleUSBDevice, id 0x10000033e, registered$
  |   +-o EDIROL UA-1D@1d180000  <class AppleUSBDevice, id 0x100000363, registe$
  +-o AppleUSBEHCI Root Hub Simulation@1a000000  <class AppleUSBRootHubDevice, $
    +-o IOUSBHostDevice@1a100000  <class AppleUSBDevice, id 0x1000002fe, regist$
      +-o EDIROL UM-880@1a160000  <class AppleUSBDevice, id 0x100000344, regist$
      +-o USB2.0 Hub@1a140000  <class AppleUSBDevice, id 0x100000356, registere$
      | +-o iPad@1a142000  <class AppleUSBDevice, id 0x1000003a6, registered, m$
      | +-o SFC-1@1a144000  <class AppleUSBDevice, id 0x1000003b1, registered, $
      | +-o Griffin PowerMate@1a143000  <class AppleUSBDevice, id 0x1000003bf, $
      +-o ASM107x@1a130000  <class AppleUSBDevice, id 0x100000379, registered, $
        +-o DELL USB Laser Mouse@1a131000  <class AppleUSBDevice, id 0x10000039$
        +-o TUSB3410 Boot Device@1a132000  <class AppleUSBDevice, id 0x10000039$
        +-o Logitech BT Mini-Receiver@1a134000  <class AppleUSBDevice, id 0x100$
        | +-o Logitech BT Mini-Receiver@1a134200  <class AppleUSBDevice, id 0x1$
        | +-o Logitech BT Mini-Receiver@1a134300  <class AppleUSBDevice, id 0x1$
        +-o US-2400@1a133000  <class AppleUSBDevice, id 0x1000003d8, registered$

Well, in Hackintool I am missing quite a few devices. I even tried looking for entries using not the name, but the location, but no avail. For example i cannot find @1a133000, however it is the last entry in ioreg.

Also, I have three usb devices, one of which (AppleUSBEHCIPCI) has the same Device ID as EH01. Is this entry required, is it causing problems? If its not required can I delete it?

OS: 10.13.6
MB: Asus P8-Z77v-pro
Screen Shot 2020-06-18 at 15.36.29.png


thanks in advance,
RDP
 

Attachments

  • config.plist
    4.1 KB · Views: 101
First of all, my apologies for needing help after such effort was made already to make guide for noobs. Well, I guess I am super noob.

1. Here is my ioreg -p IOUSB
Code:
+-o Root  <class IORegistryEntry, id 0x100000100, retain 77>
  +-o XHCI Root Hub SS Simulation@0  <class IOUSBRootHubDevice, id 0x100000282,$
  +-o XHCI Root Hub SS Simulation@0  <class IOUSBRootHubDevice, id 0x100000283,$
  | +-o COM35EU3B6G@1f100000  <class IOUSBDevice, id 0x100000324, registered, m$
  +-o XHCI Root Hub USB 2.0 Simulation@0  <class IOUSBRootHubDevice, id 0x10000$
  +-o XHCI Root Hub USB 2.0 Simulation@0  <class IOUSBRootHubDevice, id 0x10000$
  | +-o Fireface UC Mac (23244188)@1e200000  <class IOUSBDevice, id 0x100000292$
  +-o AppleUSBEHCI Root Hub Simulation@1d000000  <class AppleUSBRootHubDevice, $
  | +-o IOUSBHostDevice@1d100000  <class AppleUSBDevice, id 0x1000002f7, regist$
  |   +-o Console 1@1d170000  <class AppleUSBDevice, id 0x10000033e, registered$
  |   +-o EDIROL UA-1D@1d180000  <class AppleUSBDevice, id 0x100000363, registe$
  +-o AppleUSBEHCI Root Hub Simulation@1a000000  <class AppleUSBRootHubDevice, $
    +-o IOUSBHostDevice@1a100000  <class AppleUSBDevice, id 0x1000002fe, regist$
      +-o EDIROL UM-880@1a160000  <class AppleUSBDevice, id 0x100000344, regist$
      +-o USB2.0 Hub@1a140000  <class AppleUSBDevice, id 0x100000356, registere$
      | +-o iPad@1a142000  <class AppleUSBDevice, id 0x1000003a6, registered, m$
      | +-o SFC-1@1a144000  <class AppleUSBDevice, id 0x1000003b1, registered, $
      | +-o Griffin PowerMate@1a143000  <class AppleUSBDevice, id 0x1000003bf, $
      +-o ASM107x@1a130000  <class AppleUSBDevice, id 0x100000379, registered, $
        +-o DELL USB Laser Mouse@1a131000  <class AppleUSBDevice, id 0x10000039$
        +-o TUSB3410 Boot Device@1a132000  <class AppleUSBDevice, id 0x10000039$
        +-o Logitech BT Mini-Receiver@1a134000  <class AppleUSBDevice, id 0x100$
        | +-o Logitech BT Mini-Receiver@1a134200  <class AppleUSBDevice, id 0x1$
        | +-o Logitech BT Mini-Receiver@1a134300  <class AppleUSBDevice, id 0x1$
        +-o US-2400@1a133000  <class AppleUSBDevice, id 0x1000003d8, registered$

Well, in Hackintool I am missing quite a few devices. I even tried looking for entries using not the name, but the location, but no avail. For example i cannot find @1a133000, however it is the last entry in ioreg.

Also, I have three usb devices, one of which (AppleUSBEHCIPCI) has the same Device ID as EH01. Is this entry required, is it causing problems? If its not required can I delete it?

OS: 10.13.6
MB: Asus P8-Z77v-pro
View attachment 476868

thanks in advance,
RDP


Hi there.

Looks like you've been around here for over 5-years, so I suspect you know more than you admit to :thumbup:

Okay, no that Apple entry should not appear in the controller pane. I don't know at this point if that is a software bug or a configuration problem.

Normally a Z77 chipset does include 4x USB3.0 ports, so I would expect those to appear on an XHCI controller. There isn't one in the list.

Next, your motherboard also uses a piggy-back chipset by ASMedia to provide 4x USB3.1 Gen 1 ports. This one doesn't appear in the list either.

The IOUSBHostDevice entries you can see against EH01 and EH02 are the root hubs for each one of the controller pair. From these several ports will 'hang'.

First thoughts are - check BIOS settings.

After that, it is usually what kexts are installed in EFI/CLOVER/kexts/Other or L/E.

config.plist looks pretty good. You might want to open-up SIP a little (Rt Variables etc).

To look deeper you might upload an actual *.IOReg export from IORegistryExplorer.

:)
 
Thanks very much for your reply. I should clarify, I am a USB noob as I am finally getting around to trying to clean up my configuration, I have been just suffering with the default for a few years, but I have so much equipment now, I figured I should do things right.

1. Check BIOS settings: I dual boot into Win7, and things work well there, so am unsure over where I should focus my efforts on in the BIOS. I'll do some googling and see what they tell me to look at. Thanks for the tip.

2. IOReg export attached.

3. Just in case, a similar programs output on Win7 is also attached, in two formats, txt and xml (zipped).

4. "Open-up SIP a little". I assume you are not/not referring to unlocking System Integrity Protection, but instead asking me to mod some of my Rt Variables? I took a look at the Rt Variables pane in Clover Configurator, but seems to be product name and serials, and other items. I'll google this as well.

5. My Kext Other dir contains: (BTW, I'm lost at your suggestion to also check the L/E location. Is that a folder location?)

AppleALC.kext
FakeSMC_ACPISensors.kext
FakeSMC_CPUSensors.kext
FakeSMC_GPUSensors.kext
FakeSMC_LPCSensors.kext
FakeSMC_SMMSensors.kext
FakeSMC.kext
Lilu.kext
USBInjectAll.kext



thank you very much!
RDP
 

Attachments

  • Cloverbox.ioreg
    4.6 MB · Views: 70
  • USBViewAll.txt
    110.5 KB · Views: 116
  • USBViewAll.xml.zip
    10.1 KB · Views: 64
Thanks very much for your reply. I should clarify, I am a USB noob as I am finally getting around to trying to clean up my configuration, I have been just suffering with the default for a few years, but I have so much equipment now, I figured I should do things right.

1. Check BIOS settings: I dual boot into Win7, and things work well there, so am unsure over where I should focus my efforts on in the BIOS. I'll do some googling and see what they tell me to look at. Thanks for the tip.

2. IOReg export attached.

3. Just in case, a similar programs output on Win7 is also attached, in two formats, txt and xml (zipped).

4. "Open-up SIP a little". I assume you are not/not referring to unlocking System Integrity Protection, but instead asking me to mod some of my Rt Variables? I took a look at the Rt Variables pane in Clover Configurator, but seems to be product name and serials, and other items. I'll google this as well.

5. My Kext Other dir contains: (BTW, I'm lost at your suggestion to also check the L/E location. Is that a folder location?)

AppleALC.kext
FakeSMC_ACPISensors.kext
FakeSMC_CPUSensors.kext
FakeSMC_GPUSensors.kext
FakeSMC_LPCSensors.kext
FakeSMC_SMMSensors.kext
FakeSMC.kext
Lilu.kext
USBInjectAll.kext



thank you very much!
RDP


Hi there.

Okay, thanks for the extra info. Now I can explain my comments in greater depth ...

I'll use your numbering to answer:

1) The reason I mentioned checking your BIOS was to check if you have "XHCI Hand-off" Enabled. Take a look at page 3.22 of the User Manual, Section 3.5.5, and you will see the option there :thumbup:

2) The IOReg shows there is no XHCI controller active (see my note above).

4) With your system running High Sierra, you have two places where key hackintosh kexts can go - EFI/CLOVER/kexts/Other - or - Drive: Library/Extensions. Only kexts put in Library/Extensions are affected by your system's SIP settings. Those in EFI are not.

Sometimes third-party kexts placed in Library/Extensions are ignored, and we need to "relax" security to allow them to run. This involves changing the setting for "CsrActiveConfig" to 0x67 (as an example of completely disabling). However if we keep the kexts all in EFI then we can leave security settings alone and maintain full SIP.

As we move forward through Catalina and beyond only the EFI location is going to be useful due to even stricter security, so it makes sense to keep them there and not worry about SIP.

5) Yes, but you also have GenericUSBXHCI.kext installed somewhere and my guess is in Library/Extensions. (IOReg tells me that). This is why configurations can be seriously affected by kexts that people forget about. (It may even be in System/Library/Extensions).

GenericUSBXHCI.kext was designed to enable proper use of the ASMedia chipset your motherboard uses. Sadly it is now 5-years old and does not work properly with the latest High Sierra Security Update versions, or Mojave/Catalina.

Remove it and also ensure you also do not have FakePCIID_XHCIMux.kext hidden anywhere. If you do remove, rebuild your kext caches with the Terminal command: sudo kextcache -i /

Going back to USB. You know there are 2x Intel USB3.0 ports on the back-panel (plus 2x internal) - AND - there are 2x ASMedia USB3.0 ports on the back-panel too (plus 2x internal), as well as the USB2.0 ports. The fact that the Intel USB3.0 ports are not showing properly in IOReg tells me there is a configuration error either in BIOS or kext.

:)
 
Back
Top