USB Port Mapping

macOS only uses the first 15 ports of each USB controller, and it needs to know what kind of connector each port is. A USB map tells it which ports exist and how they're connected. Hackintool builds the map as a codeless USBPorts.kext.

Before you start Mapping
  1. Open the USB section. Use Clear All and then Refresh to start from a fresh list of the ports macOS can see.
  2. Plug a USB 2 device and a USB 3 device into every port. For Type-C ports, plug in both orientations. Ports in use turn green, and the device's name and speed are shown.
  3. Click Remove Unused to remove ports that never had a device plugged in (or select ports and click Delete).
  4. Set each port's connector type:
  5. Keep each controller at 15 ports or fewer. Hackintool warns you when a controller has too many.
  6. Click Export. Hackintool writes USBPorts.kext and SSDT-USBX.aml (USB power properties) to the folder you choose.
Installing Making changes later

Use Import to load an existing USBPorts.kext (or a map made by USBMap), change it, and export it over the old one.

Q. What is USBPorts.kext?
A. It's a codeless kernel extension that tells macOS which ports exist and what type they are. It needs no other kexts.

Q. Do I need SSDT-UIAC.aml?
A. Only if you still use USBInjectAll.kext. File > Export > USB SSDT-UIAC… creates it, but USBPorts.kext is the recommended method.