Contribute
Register

The New Beginner's Guide to USB Port Configuration

I have those kext :
View attachment 472587
I guess there is nothing USB related Kext there, right?



Yes, there is...
View attachment 472588
so what should I do next?


View attachment 472589
is there anything wrong above?
previously I use GenericUSBXHCI.Kext, but then I delete it because I can use the USB 3.0 without it....


Okay...

Because you have installed Catalina you should remove: Lilu.kext, Whatevergreen.kext and AppleALC.kext from Library/Extensions and rebuild your kextcaches. Use a Terminal command to rebuild: sudo kextcache -i /

Put AppleALC.kext in the EFI...Other folder with those kexts already present (you have lilu and whatevergreen in there already).

You can probably do without XHCI-unsupported.kext also. I will double-check later when I am back at my desk.

Next, have you created a port map for those USB sockets?

According to Asus your laptop has 1x external USB3 port and 2x USB2 ports. You can use Hackintool to identify them. Use USB flash-drives to do this. You should then know which sockets relate to the Hackintool screen.

I can already see you have a USB drive attached somewhere, and a "Feeling-tech" whatever that is..

:)
 
Last edited:
Use a Terminal command to rebuild: sudo kextcache -i /

Ok...so this is what I've done, delete Whatevergreen,Lilu, and AppleALC using the following :
Code:
sudo rm -rf /Library/Extensions/*name of kexts
and rebuild:
Code:
sudo kextcache -i /

Then I put my AppleALC in the EFI Folder... I also deleted XHCI-Unsupported.Kext, and then I reboot my PC
yes, what you've said it just works without XHCI-Unsupported.Kext:thumbup:

Next, have you created a port map for those USB sockets?
But how can create a port map for those USB Sockets?
Screen Shot 2020-05-31 at 02.23.12.png

Because my 2nd USB ports is not showing at Hackintool at all, even when something(whatever it is)plugged in...
also without the USBInjectAll.Kext V.2017-0112 my Webcam and Bluetooth is also not being recognised (either in Hackintool or System Report):think:
Screen Shot 2020-05-31 at 02.17.51.png
 
Ok...so this is what I've done, delete Whatevergreen,Lilu, and AppleALC using the following :
Code:
sudo rm -rf /Library/Extensions/*name of kexts
and rebuild:
Code:
sudo kextcache -i /

Then I put my AppleALC in the EFI Folder... I also deleted XHCI-Unsupported.Kext, and then I reboot my PC
yes, what you've said it just works without XHCI-Unsupported.Kext:thumbup:


But how can create a port map for those USB Sockets?
View attachment 472699
Because my 2nd USB ports is not showing at Hackintool at all, even when something(whatever it is)plugged in...
also without the USBInjectAll.Kext V.2017-0112 my Webcam and Bluetooth is also not being recognised (either in Hackintool or System Report):think:
View attachment 472702


Okay, to go deeper you will need to use IORegistryExplorer v2.1

I get the feeling you know what to do :thumbup:

If you need help then upload an *.ioreg export file (from v2.1 only) and I'll take a look.
 
I get the feeling you know what to do :thumbup:
Well, I know nothing about editing IOregistry...
:| :D

If you need help then upload an *.ioreg export file (from v2.1 only) and I'll take a look.
Ok, here there are...I also attached 2 IOReg files, 1 is with the USBInjectAll.Kext (V.2017-0112) (Webcam and Bluetooth are showing) and the other without the USBInjectAll.Kext...

@UtterDisbelief Thank you so much for helping,btw....:thumbup:
 

Attachments

  • IORegistry(With USBInjectAll).ioreg
    4.8 MB · Views: 76
  • IORegistry(Without USBInjectAll).ioreg
    4.6 MB · Views: 71
Well, I know nothing about editing IOregistry...
:| :D


Ok, here there are...I also attached 2 IOReg files, 1 is with the USBInjectAll.Kext (V.2017-0112) (Webcam and Bluetooth are showing) and the other without the USBInjectAll.Kext...

@UtterDisbelief Thank you so much for helping,btw....:thumbup:


That's great :thumbup:

Background: USBInjectAll opens-up all available Intel chipset USB ports. Very often - especially in the case of a laptop - the computer manufacturer only uses a few of the ones available. Normally what we do is use USBInjectAll to make all the possible ports visible, then we configure the ones we can see or get to, and create an SSDT with that setup. This ensures the ones we have work under macOS as we want them to.

The port-limit removal patches temporarily remove Apple's 15-port macOS USB limit. This is useful, alongside USBInjectAll, because some of the bigger PC motherboards have many more ports that 15 - remember each USB3 port can operate as either USB3 or USB2, so is actually two ports in one. We need to choose carefully which to keep.

Your configuration: My suggestion to remove USBInjectAll was to see what the system saw of your hardware without our intervention. Clearly macOS cannot 'read' your hardware without help. Sometimes it does, sometimes it doesn't.

So we need USBInjectAll, but that then shows us more ports than we know what to do with - something like 20. Clearly you have access to 3x outside ports and the web-cam and bluetooth need 2x internal ones. Your keyboard and trackpad are probably PS/2 but they could easily have been USB too. Even so that only leaves us a maximum of 1x USB3 ports =2, 2x USB2 ports =2, 1x USB2 ports for Bluetooth, 1x USB2 ports for the webcam. So maybe just 6x ports in total.

We then "map" these to find out where they appear on the IOReg tree. The ones we know about:

1) Bluetooth = HP21 on EH02

2) Webcam = HP23 on EH02

3) USB Disk = PRT1 on XHC1

4) Feeling-tech-USB = PRT2 on XHC1

What's wrong here? Well I checked Asus but they said 1x USB3 port, so what are the two devices you have plugged in there at 3 & 4 ?

Hackintool: So hopfully Hackintool, with USBInjectAll in place is showing you HP21 and HP23. It should also be showing PRT1 and PRT2 on XHC1. Does your laptop have just three external ports? If so, this is awry.

Anyway, any other ports we can leave out of our configuration - once we have finalised the port "map" of the ones we want.

Sorry that's long-winded. Hopefully it makes your particular setup more understandable, and explains why we use the tools we do. Can you now see the reason for a port "map"? And USBInjectAll with an SSDT-UIAC.aml configuration file for it?

The next step: is to remove the other unused ports that you are not using, from the Hackintool lower panel in the USB tab. Ensure the ones left have the correct connector type attached to them - the menu offers USB3, USB2, Internal, Type-C etc. We then export the necessary SSDT-UIAC.aml file and put it in EFI/CLOVER/ACPI/patched. When we reboot we should then have just the 6x ports we need, configured correctly, and only those.

:)
 
What's wrong here? Well I checked Asus but they said 1x USB3 port, so what are the two devices you have plugged in there at 3 & 4 ?

  • The USB DISK = is a 64 GB V-GeN flash drive (Plugged in to the USB 3.0 port)
  • The Feeling-Tech-USB = is a wireless USB Mouse (plugged in to the USB 2.0 port)
I don't know why is the Wireless USB mouse shows u in Hackintool as USB 3, but I'm currently connecting it to the USB 2.0 Port on my laptop

Does your laptop have just three external ports? If so, this is awry.
Yes, my laptop currently has 3 USB devices (1x USB 3.0) & (2xUSB 2.0) :|


The next step: is to remove the other unused ports that you are not using, from the Hackintool lower panel in the USB tab. Ensure the ones left have the correct connector type attached to them - the menu offers USB3, USB2, Internal, Type-C etc. We then export the necessary SSDT-UIAC.aml file and put it in EFI/CLOVER/ACPI/patched. When we reboot we should then have just the 6x ports we need, configured correctly, and only those.
OK, I will follow what you've said....
Screen Shot 2020-05-31 at 05.40.10.png


so, this is what left in Hackintool, then I export...
I don't know why is the last one marked as green in Hackintool..so I just let it be untouched...also with the USBInjectAll.Kext Bluetooth and Webcam shows up as "ExpressCard"

I pasted the USBInjectAll.Kext to /EFI Folder and SSDT-UAIC.aml to /ACPI/Patched Folder, then reboot my pc, but this is what I got....
Screen Shot 2020-05-31 at 05.48.15.png

by the time I took that screenshot, I connected my Feeling-tech-USB to my second USB 2.0 ports, as we all can see, it's still not showing? I have got no idea what's wrong...

also @UtterDisbelief have you seen my ioreg? is there anything wrong there?
 
  • The USB DISK = is a 64 GB V-GeN flash drive (Plugged in to the USB 3.0 port)
  • The Feeling-Tech-USB = is a wireless USB Mouse (plugged in to the USB 2.0 port)
I don't know why is the Wireless USB mouse shows u in Hackintool as USB 3, but I'm currently connecting it to the USB 2.0 Port on my laptop


Yes, my laptop currently has 3 USB devices (1x USB 3.0) & (2xUSB 2.0) :|



OK, I will follow what you've said....
View attachment 472746

so, this is what left in Hackintool, then I export...
I don't know why is the last one marked as green in Hackintool..so I just let it be untouched...also with the USBInjectAll.Kext Bluetooth and Webcam shows up as "ExpressCard"

I pasted the USBInjectAll.Kext to /EFI Folder and SSDT-UAIC.aml to /ACPI/Patched Folder, then reboot my pc, but this is what I got....
View attachment 472747
by the time I took that screenshot, I connected my Feeling-tech-USB to my second USB 2.0 ports, as we all can see, it's still not showing? I have got no idea what's wrong...

also @UtterDisbelief have you seen my ioreg? is there anything wrong there?


Hi there...

1) For the Express Card entry, just use the pull-down menu to change the connector tyoe to the one you want.

2) For the USB2 port pretending to be USB3, again change the connector type.

3) For the unknown port, just delete it from Hackintool's list.

4) Remember to use the "broom" icon to clear the old settings in Hackintool, and then the reload - circular arrows - icon to refresh.

Yes, I checked through your IOReg files. That was why I wrote such a long post explaining how everything was looking.

Sorry to read nothing I'm suggesting is working. Then there must be something going on I don't know about - a kext, a driver - and of course that DSDT.aml in the patched folder. I've never had a reason to use a complete ACPI patch replacement like that, but you will know why it's there, so I respect your judgement. Inside it could be a lot of changes made to the underlying system.
 
Last edited:
1) For the Express Card entry, just use the pull-down menu to change the connector tyoe to the one you want.

2) For the USB2 port pretending to be USB3, again change the connector type.

3) For the unknown port, just delete it from Hackintool's list.
OK, so this is what I've done....
Screen Shot 2020-05-31 at 15.38.33.png

  1. Delete the "unknown" list from Hackintool
  2. Changed the USB Camera & Bluetooth USB Host Controller to "Internal" Port
But, whenever I delete using the "Broom" icon, the deleted port from Hackintool keeps coming back, so I delete them from the "-" icon then export them using the export button( I also didn't refresh because they keep coming back)

From there, it gives me:
  • SSDT-UAIC.dsl
  • SSDT-UAIC.aml
  • USBPorts.Kext
then, I pasted the SSDT-UAIC.aml to the ACPI/Patched folder
Then there must be something going on I don't know about - a kext, a driver - and of course that DSDT.aml in the patched folder.
I also managed to delete(temporary) the DSDT.aml just to see if it makes any difference, and reboot my system....

once I rebooted my system, every ports that I've delete keeps showing back again.. :think:, and none of them shows the my 2nd USB ports..

P.S. These are the only DSDT patches that I use:
  • Fix _WAK Arg0 v2
  • HPET Fix
  • SMBUS Fix"
  • IRQ Fix
  • RTC Fix
  • OS Check Fix(Windows 8)
  • Fix Mutex with non-zero SyncLevel
  • ASUS K56 Battery Patch
  • Audio Layout 21 Patch
So, my question is..
  1. Can I get my 2nd USB ports recognised and working on MacOS?
  2. If so, do you got any idea how to make it possible?
  3. Why is my USB ports that I've deleted keeps showing back?
Sorry to read nothing I'm suggesting is working
It's okay.. Really appreciate your help btw..
 
Last edited:
OK, so this is what I've done....
View attachment 472801
  1. Delete the "unknown" list from Hackintool
  2. Changed the USB Camera & Bluetooth USB Host Controller to "Internal" Port
But, whenever I delete using the "Broom" icon, the deleted port from Hackintool keeps coming back, so I delete them from the "-" icon then export them using the export button( I also didn't refresh because they keep coming back)

From there, it gives me:
  • SSDT-UAIC.dsl
  • SSDT-UAIC.aml
  • USBPorts.Kext
then, I pasted the SSDT-UAIC.aml to the ACPI/Patched folder

I also managed to delete(temporary) the DSDT.aml just to see if it makes any difference, and reboot my system....

once I rebooted my system, every ports that I've delete keeps showing back again.. :think:, and none of them shows the my 2nd USB ports..

P.S. These are the only DSDT patches that I use:
  • Fix _WAK Arg0 v2
  • HPET Fix
  • SMBUS Fix"
  • IRQ Fix
  • RTC Fix
  • OS Check Fix(Windows 8)
  • Fix Mutex with non-zero SyncLevel
  • ASUS K56 Battery Patch
  • Audio Layout 21 Patch
So, my question is..
  1. Can I get my 2nd USB ports recognised and working on MacOS?
  2. If so, do you got any idea how to make it possible?
  3. Why is my USB ports that I've deleted keeps showing back?

It's okay.. Really appreciate your help btw..


Okay, the trick with Hackintool is to export the files after you have deleted the ports you do not want, but before you clear the cache and reload. That way your changes stick. :thumbup:

The DSDT.aml is fine - if you know what was changed, or you did it yourself etc. Sometimes people use DSDTs created by other people and so don't 100% know what is in there.

Upload your SSDT-UAIC.dsl and/or USBPorts.kext so I can take a look.

:)
 
but before you clear the cache and reload. That way your changes stick
Sorry, but how do I clear the cache and reload? using the broom icon? because whenever I reload the using the circle icon everything keeps coming back..:(

Upload your SSDT-UAIC.dsl and/or USBPorts.kext so I can take a look
Ok here there are...thank you so much for your help...:headbang:
Screen Shot 2020-05-31 at 18.49.43.png

So, firstly..this is how I map my USB device then I press the "Export" button
 

Attachments

  • Archive.zip
    2.7 KB · Views: 58
Back
Top