Contribute
Register

USB ports stop randomly

Status
Not open for further replies.
Joined
Jul 4, 2010
Messages
92
Motherboard
Gigabyte Z390 Designare-OC
CPU
i9-9900K
Graphics
RX Vega 64
Hackintosh is running pretty well except every once in awhile my USB ports stop working randomly. The computer doesn't freeze but it's hard to diagnose without my (USB) keyboard + mouse.

The issue is very hard to reproduce — it will go away for weeks at a time, then happen every day for several days.

Notes:
  • I have quite a few small USB devices in my powered USB hub. I tried swapping the hub with another brand which didn't fix the issue.
  • None of my USB devices are doing anything with a lot of data, except maybe the audio interface. It's mostly music production-related MIDI devices and dongles.

Report files attached. Thanks in advance!
 

Attachments

  • debug_26125.zip
    3.7 MB · Views: 85
Last edited:
First, OsxAptioFix2Drv-free200.efi is known to cause issues when used in a hack's Clover setup. You need to switch to one of the other Aptio drivers. Even the developer of this driver has stated that people should not use it.

All your USB ports in the USBPorts.kext are set with the USB3 Connector type. This is usually wrong for a Z390 Designaire motherboard. Here are the standard USB ports setups for a Z390 Designaire board: All motherboard USB ports_resize.png Motherboard USB ports.

Designer Rear IO Layer v3_resize.png Rear I/O ports

I would use these images and the data they contain to amend and configure your USBports.kext.
 
Your config.plist requires the following edits:
  • Remove the 3 x unused ACPI rename patches.
    • Screenshot 2021-09-14 at 01.05.32.png
  • You can add the following rename patches:
    • Screenshot 2021-09-14 at 01.01.50.png
  • Add PluginType=True
  • Set the ACPI Fixes FixShutdown=true, FixHPET=true, FixIPIC=true, FixRTC=true, FixTMR=true and DeleteUnused=true
  • Remove FixMCFG=true & Halt Enabler=true.
  • The following two screenshots shot these settings within Clover Configurator:
    • Screenshot 2021-09-14 at 01.03.03.png
    • Screenshot 2021-09-14 at 01.04.20.png
 
Thank you so much Edhawk! I am competant enough to make the config.plist edits, but I have no idea how to edit USBports.kext — I copied another expert's hardware and used their EFI, which included the USB mapping. Can you make a recommendation?

All your USB ports in the USBPorts.kext are set with the USB3 Connector type

I see... I'm not sure if it's relevant, but they told me since the Z390 has so many ports, they separated USB2 and USB3, so that the USB3 isn't backward-compatible with USB2 devices. Maybe I messed something up?

Regardless, I will continue with the config.plist fixes in the meantime.
 
Last edited:
Your kextcache_log shows the following:
Screenshot 2021-09-14 at 01.09.56.png

Which I would take to mean the kernel cache is not loading correctly on your hack

You may need to remove these two kexts for the system to work correctly.

/Library/Extensions/BrcmFirmwareRepo.kext should be easy to find.

I have no idea where you have installed kxld[com.apogeedigital.SDOverride]

This is the corresponding entry for the apogeedigital entry in the system.log, with the apogee entries highlighted.

Screenshot 2021-09-14 at 01.17.18.png
 
USB3 ports have a physical aspect, which connects with the USB3 side. They also have a virtual aspect, which connects with the USB2 side of a port. So USB3 ports should be seen as backwards compatible with USB2 devices. That doesn't excuse the basic mistakes that have been made in the USBPorts.kext that you are using.

Taking someone else's setup is always dangerous. You have no way of knowing if they were correct when creating their setup, not without a lot of people confirming the setup works as intended. Including your own testing of the configuration.

The main caveat I would add to the above, is unless they are like @CaseySJ, who created a thorough and in-depth guide for Hacking your Gigabyte Z390 Designaire motherboard.

The USB port setup shown on the two images in post #2 are from his guide. His guide is classed as a 'Golden Build', due to the depth and accuracy of the information provided. It is well worth a read - https://www.tonymacx86.com/threads/...390-thunderbolt-3-i7-9700k-amd-rx-580.267551/

When I say a lot of people have commented and read his guide, I mean a lot, 4M reads, 3334 pages and 33K comments.
 
Thank you! I will also use his attached USBPorts.kext and see if it works.

I have no idea where you have installed kxld[com.apogeedigital.SDOverride]

This was part of the installer for my audio interface.
 
You may need to reinstall the software for your audio interface, before you can fix the kernel cache issue.

There is a Bluetooth kext that can be used from the /CLOVER/kexts/Other folder. Relocating any third-party kexts to the Other folder would probably remove/solve the kernel cache error.
 
Okay I did all the fixes. But I couldn't boot with the new clover config (see attached)

So I reverted that and was able to boot (just USBPorts and removing those kexts). But I immediately saw errors with Apple ID. Worried about losing iMessages, I immediately reverted USBPorts and rebooted, then tried logging into to iCloud, but iMessages still isn't working.

I've tried removing all devices related to hackintosh at appleid.apple.com, and deleting prefs, but to no avail. I also noticed that somehow, my computer was on there twice with two different serials.

Anyway, kinda desperate to keep iMessages working since I use it for work.

I opened up the "fixed" clover config and it seems Clover only decided to keep SOME of the changes I made, and left out a ton of it. Weirdest thing I've ever seen. Is Clover buggy?

One more question: Do I need to use the SSDT from the guide in order to use USBPorts? It isn't clear.

Thanks in advance :)
 

Attachments

  • 2021-09-13 18.44.37 copy.jpg
    2021-09-13 18.44.37 copy.jpg
    29 KB · Views: 62
Last edited:
The Error message is related to the iMac1,1 SMBIOS containing some mixed-up data. You may need to generate a new SMBIOS to fix this.

No you do not need to use the SSDT-UIAC.aml with the USBPorts.kext. Using the SSDT-USBX.aml and an SSDT-EC.aml is OK, if you don't already have an SSDT that deals with the macOS USB power settings and EC issues.

Yes, Clover can be buggy. Which application were you using to edit the config.plist? As this can be another source of bugginess.
 
Status
Not open for further replies.
Back
Top