Contribute
Register

The New Beginner's Guide to USB Port Configuration

Hi @UtterDisbelief , a new day, a new attempt at setting up the Hackintosh!
I successfully reinstalled macOS and have no notices of remote management or anything like that; I think I'm in the clear.
I'm keeping my logi mouse receiver out of the equation for now to simplify things.
I went through your guide from the start to remove some USB ports.
Exported the USBPorts.kext, dropped it in my EFI and updated my config.plist file, and restarted.
Now I'm experiencing what I was seeing yesterday = after the OpenCore boot menu, I get a white apple logo and it just stays there, no progress bar, and after about 5 minutes the machine will reboot and start over again.
I worked with @pastrychef on this all day yesterday and we weren't able to make sense of it.
However, now that I've got a fresh install of macOS and things were working reliably before adjusting the USBPorts.kext, I feel like it's safe to say I've done something in this USB process that's preventing my machine from starting up. Does that sound like a reasonable guess?

I plugged in my USB macOS Installer with an EFI that would allow me to get into macOS again, so I can attempt at removing USB ports again, and hopefully the right way this time :)

Here is a screenshot of all my ports before I remove anything:
View attachment 455195
(notice I used to show USR1 and USR2 with past installations, but now I do not show those)

Here's is a screenshot of ports that I removed (selected in blue):
View attachment 455196

After doing that, I replaced the USBPorts.kext in the EFI folder with the one exported from Hackintool.
Also deleted the extra USBInjectAll.kext in there (see screenshot of original kext folder before doing this):
View attachment 455197

Then I opened the config.plist using PlistEdit Pro and changed XhciPortLimit to "NO".
Also under Kernel > Add > 8, I renamed USBInjectAll.kext to USBPorts.kext, and changed Contents/MacOS/UBSInjectAll to Contents/MacOS/USBPorts.
Saved the config.plist and closed, then restart.

So those are the steps I took to create my problem. Do you see anywhere I might've gone wrong?
Thanks for the help!

Hi there.

As far as I can see there are a couple of 'faults', the first of which might be in the OpenCore config.plist, going on what you've said.

Unlike USBInjectAll.kext, USBPorts.kext does not have an executable piece of code inside it. So when you swap the two you delete the path reference to Contents/MacOS/USBorts and only leave the Contents/info.plist reference.

The other 'fault' is that you have set all ports to "Internal" which is UsbConnector type 255, whereas you will have back-panel USB3 ports, type 3, and though there are Thunderbolt 3 ports on the back-panel too, which ports are they? If they don't show in Hackintool, that's fair enough. However there's an Internal USB-C header which should be configured as type 9 or 10 (switchable or non-switchable) if it is connected to a case port.

As to whether all this is affecting boot, I have my doubts, but you never know!

:)
 
Hi @UtterDisbelief , a new day, a new attempt at setting up the Hackintosh!
I successfully reinstalled macOS and have no notices of remote management or anything like that; I think I'm in the clear.
I'm keeping my logi mouse receiver out of the equation for now to simplify things.
I went through your guide from the start to remove some USB ports.
Exported the USBPorts.kext, dropped it in my EFI and updated my config.plist file, and restarted.
Now I'm experiencing what I was seeing yesterday = after the OpenCore boot menu, I get a white apple logo and it just stays there, no progress bar, and after about 5 minutes the machine will reboot and start over again.
I worked with @pastrychef on this all day yesterday and we weren't able to make sense of it.
However, now that I've got a fresh install of macOS and things were working reliably before adjusting the USBPorts.kext, I feel like it's safe to say I've done something in this USB process that's preventing my machine from starting up. Does that sound like a reasonable guess?

I plugged in my USB macOS Installer with an EFI that would allow me to get into macOS again, so I can attempt at removing USB ports again, and hopefully the right way this time :)

Here is a screenshot of all my ports before I remove anything:
View attachment 455195
(notice I used to show USR1 and USR2 with past installations, but now I do not show those)

Here's is a screenshot of ports that I removed (selected in blue):
View attachment 455196

After doing that, I replaced the USBPorts.kext in the EFI folder with the one exported from Hackintool.
Also deleted the extra USBInjectAll.kext in there (see screenshot of original kext folder before doing this):
View attachment 455197

Then I opened the config.plist using PlistEdit Pro and changed XhciPortLimit to "NO".
Also under Kernel > Add > 8, I renamed USBInjectAll.kext to USBPorts.kext, and changed Contents/MacOS/UBSInjectAll to Contents/MacOS/USBPorts.
Saved the config.plist and closed, then restart.

So those are the steps I took to create my problem. Do you see anywhere I might've gone wrong?
Thanks for the help!
why have you set all your usb ports to internal? some would be set to USB3.0
 
why have you set all your usb ports to internal? some would be set to USB3.0
I didn't... ? But I see that they are all set to Internal.. it's just not something I did myself.
I wouldn't know what to change them to. Why would these all be set to Internal from the start?

@UtterDisbelief I know it's strange, but setting my EFI back to the original before making USB changes allows me to boot up macOS successfully, whereas after these changes, I get stuck on the white apple logo. So I'm a little hesitant to configure my USB ports, but I understand I have to get under the 15-port limit (but what if I don't?).
 
I didn't... ? But I see that they are all set to Internal.. it's just not something I did myself.
I wouldn't know what to change them to. Why would these all be set to Internal from the start?

@UtterDisbelief I know it's strange, but setting my EFI back to the original before making USB changes allows me to boot up macOS successfully, whereas after these changes, I get stuck on the white apple logo. So I'm a little hesitant to configure my USB ports, but I understand I have to get under the 15-port limit (but what if I don't?).
use the drop down next to internal and choose the usb3.0 option

you will know which ones to set when you plug in a usb3.0 device etc
 
use the drop down next to internal and choose the usb3.0 option

you will know which ones to set when you plug in a usb3.0 device etc
so is it expected that when you first open Hackintool, all will be set to Internal and it's the users job to go through and change them to USB3?
I've gone through the process of plugging in a device to figure out what port is what.
If I can't located one, (such as HS/SS09 and HS/SS10), should I assume those are internal?
 
so is it expected that when you first open Hackintool, all will be set to Internal and it's the users job to go through and change them to USB3?
I've gone through the process of plugging in a device to figure out what port is what.
If I can't located one, (such as HS/SS09 and HS/SS10), should I assume those are internal?
if it doesn't detect, then delete it

if it comes up green when you insert a USB3.0 device, then change it to USB3.0
 
Unlike USBInjectAll.kext, USBPorts.kext does not have an executable piece of code inside it. So when you swap the two you delete the path reference to Contents/MacOS/USBorts and only leave the Contents/info.plist reference.

The other 'fault' is that you have set all ports to "Internal" which is UsbConnector type 255, whereas you will have back-panel USB3 ports, type 3, and though there are Thunderbolt 3 ports on the back-panel too, which ports are they? If they don't show in Hackintool, that's fair enough. However there's an Internal USB-C header which should be configured as type 9 or 10 (switchable or non-switchable) if it is connected to a case port.

As to whether all this is affecting boot, I have my doubts, but you never know!

:)
So that I understand the appropriate steps to take regarding the first fault -
1. In kext folder, delete USBInjectAll.kext and replace USBPorts.kext
2. In config.plist, rename USBInject.kext to USBPorts.kext
3. In config.plist, remove Contents/MacOS/USBInjectAll
4. In config.plist, leave Contents/Info.plist alone
5. In config.plist, change Enabled from NO to YES
Correct?

Second fault,
1. Change all outside physical ports that I can identify to USB3 (even if some are USB2, like HS11?)
2. Regarding your last comment, " there's an Internal USB-C header which should be configured as type 9 or 10 (switchable or non-switchable) if it is connected to a case port." How do I determine if it's connected to a case port?
How would I configure it as type 9 or 10?

Thanks!
 
So that I understand the appropriate steps to take regarding the first fault -
1. In kext folder, delete USBInjectAll.kext and replace USBPorts.kext
2. In config.plist, rename USBInject.kext to USBPorts.kext
3. In config.plist, remove Contents/MacOS/USBInjectAll
4. In config.plist, leave Contents/Info.plist alone
5. In config.plist, change Enabled from NO to YES
Correct?

Second fault,
1. Change all outside physical ports that I can identify to USB3 (even if some are USB2, like HS11?)
2. Regarding your last comment, " there's an Internal USB-C header which should be configured as type 9 or 10 (switchable or non-switchable) if it is connected to a case port." How do I determine if it's connected to a case port?
How would I configure it as type 9 or 10?

Thanks!
you plug a usb-c device in usb-c ports, both ways to determine

it is all explained in post 1
 
you plug a usb-c device in usb-c ports, both ways to determine

it is all explained in post 1
To be fair, I don't think this is explained in post #1; I've re-read that post over a dozen times.
Nonetheless, I changed the connector type to USB3 for most, and Internal for a couple (had to guess on HS12 because I had no way of identifying it, but it was green).
Exported the USBPorts.kext and updated my config.plist
Machine restarted and booted into macOS successfully, for the first time after going through this process, so that's positive!

Bluetooth still not working. Well kind of. I was able to connect my bluetooth mouse, but it didn't really work, and then disconnected shortly after. Yes, I've placed the mouse right next to the bluetooth antennas in the back, I don't think it's a distance thing.

Here's a screenshot of my USB section in Hackintool:
03. USB port KEEP 031720.png


And here's what things look like in IOReg now:
4. USB ports.png


(USB-C/Thunderbolt ports not working right now.. but that's okay.. one thing at a time)
 
Back
Top