Contribute
Register

Z790 USB-C ports not working

Post a copy of your IOReg.

I would look to check that the bluetooth module isn't attached to another port and set with the wrong connector type.
but if the bluetooth is not USB why does that matter? the BT is inbuilt on the mobo is it not?
 
so i should be using different kexts??? i tried the BrcmPatchRam series of kexts and they did not work either

The System Report is showing that the BT wireless is turned-off.

Usually, for Broadcom running on Monterey you will need -

BlueToolFixup.kext

You will be able to tell if the kext is working because the model type will change to:

THIRD_PARTY_DONGLE

IIRC.

but if the bluetooth is not USB why does that matter? the BT is inbuilt on the mobo is it not?

Nope, despite appearances your Broadcom card still uses a USB port. True, it's built-in, but it is just classed as "Internal" (type 255 or FF) and needs configuring. It will have an HS** port number and needs to be active.
 
The System Report is showing that the BT wireless is turned-off.

Usually, for Broadcom running on Monterey you will need -

BlueToolFixup.kext

You will be able to tell if the kext is working because the model type will change to:

THIRD_PARTY_DONGLE

IIRC.



Nope, despite appearances your Broadcom card still uses a USB port. True, it's built-in, but it is just classed as "Internal" (type 255 or FF) and needs configuring. It will have an HS** port number and needs to be active.
OK I have put those kexts in place and rebooted and still the result is the same as in the attached pic. I've put a pic of my kexts in there too. Should I be resetting NVRAM after every time I play around with kexts and config files or just if something goes wrong??
 

Attachments

  • Screen Shot 2023-03-23 at 9.34.42 AM.png
    Screen Shot 2023-03-23 at 9.34.42 AM.png
    252.8 KB · Views: 23
  • Screen Shot 2023-03-23 at 9.37.27 AM.png
    Screen Shot 2023-03-23 at 9.37.27 AM.png
    87.8 KB · Views: 23
OK I have put those kexts in place and rebooted and still the result is the same as in the attached pic. I've put a pic of my kexts in there too. Should I be resetting NVRAM after every time I play around with kexts and config files or just if something goes wrong??

No. Not for this problem.

Run Hackintool and open the USB tab. That will show your USB configuration. Hopefully we will be able to see your BT adapter in there.

Incidentally, what CPU are you spoofing in Cpuid1Data ?
 
No. Not for this problem.

Run Hackintool and open the USB tab. That will show your USB configuration. Hopefully we will be able to see your BT adapter in there.

Incidentally, what CPU are you spoofing in Cpuid1Data ?
OK i have attached some screengrabs from Hackintool. How do I check what CPU I am spoofing?
 

Attachments

  • Screen Shot 2023-03-24 at 8.55.07 AM.png
    Screen Shot 2023-03-24 at 8.55.07 AM.png
    204.5 KB · Views: 32
  • Screen Shot 2023-03-24 at 8.55.46 AM.png
    Screen Shot 2023-03-24 at 8.55.46 AM.png
    507.4 KB · Views: 30
  • Screen Shot 2023-03-24 at 8.56.15 AM.png
    Screen Shot 2023-03-24 at 8.56.15 AM.png
    178.6 KB · Views: 33
OK i have attached some screengrabs from Hackintool. How do I check what CPU I am spoofing?

Okay ... the USBPorts-Z790Plus.kext you are now using is not correct at all.

I know the new kext came from another Z790 build but that doesn't necessarily mean the original creator (not @Edhawk who was cleaning it up for you) got it right. I don't think they did at all.

The very first screengrab you included in post #3 showed us where the BT connection is - HS14. Clear as day.

That port needs to be enabled and set as Internal. It isn't even activated in the new kext.

Personally I would go back to where you were, USB-wise, with USBInjectAll. That was opening up all 15x ports, albeit only at USB2 speeds. Map those ports - i.e test each one and make note of where each is. We know HS14 is BT, so HS13 is very likely the onboard LED Aura controller.

It will then be possible to estimate where the SS** ports start. Some people use USBToolBox USB configuration method from inside Windows as it makes a good guess at where those ports will be. It's not always right though. (USBToolBox is another dev's method for configuring ports; a Google search will find it).

Note: Unhappily it is very difficult to configure USB ports from macOS Monterey. Usually we recommend Catalina first, using Hackintool, then you can upgrade the OS once the USBPorts has been created. USBInjectAll and the XhciPortLimit Quirk still worked at that point, opening up all 26x available ports to configure them.

How do I check what CPU I am spoofing?

It's a field in your config.plist. As it has already been filled with code I had to assume you had added it:

CPU.jpg


It isn't a CPU I've ever seen - it may even actually be an i9-13900Kf, I don't know - so likely not one macOS understands. For example Comet Lake (the last Intel CPU series Apple used) is "E00609", so the Cpuid1Data field should start with E0060900.

... unless anyone else has a better idea?

:)
 
Last edited:
Okay ... the USBPorts-Z790Plus.kext you are now using is not correct at all.

I know the new kext came from another Z790 build but that doesn't necessarily mean the original creator (not @Edhawk who was cleaning it up for you) got it right. I don't think they did at all.

The very first screengrab you included in post #3 showed us where the BT connection is - HS14. Clear as day.

That port needs to be enabled and set as Internal. It isn't even activated in the new kext.

Personally I would go back to where you were, USB-wise, with USBInjectAll. That was opening up all 15x ports, albeit only at USB2 speeds. Map those ports - i.e test each one and make note of where each is. We know HS14 is BT, so HS13 is very likely the onboard LED Aura controller.

It will then be possible to estimate where the SS** ports start. Some people use USBToolBox USB configuration method from inside Windows as it makes a good guess at where those ports will be. It's not always right though. (USBToolBox is another dev's method for configuring ports; a Google search will find it).

Note: Unhappily it is very difficult to configure USB ports from macOS Monterey. Usually we recommend Catalina first, using Hackintool, then you can upgrade the OS once the USBPorts has been created. USBInjectAll and the XhciPortLimit Quirk still worked at that point, opening up all 26x available ports to configure them.



It's a field in your config.plist. As it has already been filled with code I had to assume you had added it:

View attachment 564892

It isn't a CPU I've ever seen - it may even actually be an i9-13900Kf, I don't know - so likely not one macOS understands. For example Comet Lake (the last Intel CPU series Apple used) is "E00609", so the Cpuid1Data field should start with E0060900.

... unless anyone else has a better idea?

:)
so is there a way i can just "cherry pick" the bits from the two EFI folders I posted in which one has the working BT and the other has the correct USB-C speeds and put those into a new EFI folder and have it all work?
 
so is there a way i can just "cherry pick" the bits from the two EFI folders I posted in which one has the working BT and the other has the correct USB-C speeds and put those into a new EFI folder and have it all work?

Yes.

Basically you would need to manually edit the Info.plist inside the USB port configuration kext.

1) Make sure the port addresses are in a correct sequence and with correct values using Base64.

2) Make sure the "port-count' matches the new code.
 
Yes.

Basically you would need to manually edit the Info.plist inside the USB port configuration kext.

1) Make sure the port addresses are in a correct sequence and with correct values using Base64.

2) Make sure the "port-count' matches the new code.
OK so in that info.plist file I can see a whole bunch of entries like this one;
<key>HS09</key>
<dict>
<key>Comment</key>
<string>Front USB-C 2.0</string>
<key>UsbConnector</key>
<integer>9</integer>
<key>port</key>
<data>CQAAAA==</data>
</dict>

So how do I add one of those for HS14 which is where the BT sits?? I am assuming I need to find out what the "<data> section info is but no idea how to do that.

If I load up the old EFI I had where the BT was working but the USB-C speed was slow is there a way I can find the data info or address for that HS14 and then just put that info in this file??
 
OK so in that info.plist file I can see a whole bunch of entries like this one;
<key>HS09</key>
<dict>
<key>Comment</key>
<string>Front USB-C 2.0</string>
<key>UsbConnector</key>
<integer>9</integer>
<key>port</key>
<data>CQAAAA==</data>
</dict>

So how do I add one of those for HS14 which is where the BT sits?? I am assuming I need to find out what the "<data> section info is but no idea how to do that.

If I load up the old EFI I had where the BT was working but the USB-C speed was slow is there a way I can find the data info or address for that HS14 and then just put that info in this file??

Normally you would expect HS14 to be at address 0x0e000000 which in decimal is "14" and in Base64 is DgAAAA==

The UsbConnector type would be "255" for Internal.

It's a good idea when doing the work to have a hexdecimal to Base64 converter app to hand. There's one built in to both Clover Configurator and OpenCore Configurator apps.

Remember though, if you do add the extra port section to the Info.plist you also need to alter the "port-count" variable/key to the Base64 address of the new highest port, if it changes.
 
Back
Top