Contribute
Register

ASUS 100 Series and Later Custom SSDT for XHCI USB Port Control

UD, if you find a way, please let us know! My Hackintool + USBPorts.kext procedure does work, but for some reason my keyboard/trackball USB combo doesn't respond immediately, and in many cases I have to disconnect the cable, wait, and then re-plug it to activate those items. Yet IORegistryExplorer shows all the correct ports and loads.

Okay, the process is understood now and as long as you are not running a 500-series motherboard, should be usable.

1) Extract your SSDT from the DSDT dump as the guide instructs.

2) Take the OEMTableID from the code in MaciASL and convert it to hex using either Hackintool or OpenCore Configurator's calculators.

3) For ease of demonstration I'm going to use OpenCore Configurator, but you can hand-code too. In your OpenCore config.plist go to the ACPI section and the Delete tab. Start a new line. Select SSDT from the drop-down in the first column. Enter your converted OEMTableID in the relevant column. Leave Length as "0" and Enable it. Save.

4) Put your SSDT*.aml patch in the ACPI folder and declare it as usual in config.plist. Save.

5) Done.

:)

(P.S I recommend doing all tests on an OC bootable USB stick because if you get something wrong, or the system crashes, you will not have damaged a working system. Usually non-functioning USB needs a power-cycle to recover.)
 
Last edited:
@UD,
Problem... I have a copy of my working EFI folder on a USB flash drive which used to contain an earlier version, but is now updated. If I select the flash drive as the boot source, I instantly get a black screen and nothing further. Booting my system from the internal SSD works fine. Why can't I boot from the OpenCore EFI folder on the flash drive? The flash drive shows up as an external drive on the OC 0.6.8 screen, I can select it, but then nothing.

[Edit: Tried to follow this guide: "To start we'll want to grab ourselves a copy of macOS. You can skip this and head to formatting the USB if you're just making a bootable OpenCore stick and not an installer." But just formatting the USB and adding the EFI folder doesn't work. Help?]
 
Last edited:
@UD,
Problem... I have a copy of my working EFI folder on a USB flash drive which used to contain an earlier version, but is now updated. If I select the flash drive as the boot source, I instantly get a black screen and nothing further. Booting my system from the internal SSD works fine. Why can't I boot from the OpenCore EFI folder on the flash drive? The flash drive shows up as an external drive on the OC 0.6.8 screen, I can select it, but then nothing.

When you updated OpenCore did you update the "Boot" folder as well as the OC ? A missmatch might cause that problem.

Otherwise, usually that's caused when the USB stick isn't inherently bootable. So check it with DiskUtil. If it's GUID partitioned and your working EFI is placed in the EFI partition I don't see why it wouldn't boot.
 
My "update" of OC on the flash drive is a complete copy of my working SSD's EFI folder, including all files. Disk Utility says the flash drive is a GUID, and the EFI is in its EFI partition. One strangeness reported by Disk Utility is that it is a "USB Internal Physical Disk," which of course it isn't. Its icon is that of an external drive, both on my desktop and on the OC 0.6.8 Open Canopy GUI screen. So I have no idea why Disk Utility thinks it is an internal disk. I will try re-formatting the flash drive and re-copying my SSD's EFI folder.
 
Re-formatted flash drive, re-copied EFI folder, Disk Utility still thinks it is an internal disk, System Preferences/Startup Disk doesn't see the drive, my AMI UEFI "BIOS" shows it properly, I can choose it as Boot #1 preference, but selecting it as the boot drive just gives a permanent black screen (well, at least for several minutes). SSDs still boot fine... I don't want to try your scheme directly on the SSD, but I might have to!

[Edit: Attached is a screenshot of the comments section of my relevant SSDT from my DSDT. How the heck do I convert "A M I" to hex?]
OEM Table ID from DSDT.jpg
 
Re-formatted flash drive, re-copied EFI folder, Disk Utility still thinks it is an internal disk, System Preferences/Startup Disk doesn't see the drive, my AMI UEFI "BIOS" shows it properly, I can choose it as Boot #1 preference, but selecting it as the boot drive just gives a permanent black screen (well, at least for several minutes). SSDs still boot fine... I don't want to try your scheme directly on the SSD, but I might have to!

[Edit: Attached is a screenshot of the comments section of my relevant SSDT from my DSDT. How the heck do I convert "A M I" to hex?]
View attachment 517527

If you can avoid it please don't test this on your main SSD.

Give me a few minutes to get back to my desktop and then I'll explain the conversion ....

Okay, here you go:

Conv.jpg

Hope that helps.

:)
 
Last edited:
Hey, that's a cool HEX converter app... can you link me to it? And thanks for doing that... thought it was impossible.
Don't know what to do about my USB drive, though... any ideas what's going on with that? I ran Disk First Aid on both the drive and the volume inside... it looks OK. But no bootee.
 
Hey, that's a cool HEX converter app... can you link me to it? And thanks for doing that... thought it was impossible.
Don't know what to do about my USB drive, though... any ideas what's going on with that? I ran Disk First Aid on both the drive and the volume inside... it looks OK. But no bootee.

Only thing I can think of is that the USB port deactivates and is unable to read the drive. Try a CMD+V key-press pair at the OC picker/OpenCanopy to put the system in Verbose boot mode. Maybe you'll get a clue.

The calculator is actually a part of OpenCore Configurator. Once the app is loaded go to the menu-bar and select Tools, then Hex Converter. Or press Option+H any time the app is running. Nice thing is you can minimise the app window itself to keep it out of the way.

:)
 
Given that the flash drive is blank except for its EFI partition, what should be expected to appear on a monitor if "booting" from that external drive is successful?
 
Back
Top