Contribute
Register

[SUCCESS] Gigabyte Designare Z390 (Thunderbolt 3) + i7-9700K + AMD RX 580

Some comments:
  • If no child node appears under RP05 or RP21 (or wherever the card is supposed to appear), then Thunderbolt is dead.

I have a odd contradiction.

Both of my flashed GB-TitanR-PCIe cards work just fine on the X299 mobo, but don't appear at all on another mobo. Meanwhile, a flashed GB-AlpineR-PCIe card appears and works on either mobo. So the GB-TitanR-PCIe cards are not dead, yet don't appear. I'm puzzled.

As an aside, one thing I noticed with the GB-TitanR-PCIe cards in the X299, was more consistent presence of DSB4 when the USB2 connection was made with the card.
 
@CaseySJ Dude, your thread has now reached a level of comprehensiveness, where you really should start to worry about clarity and a (probable) summary :clap: (maybe another thread with all guides? After all, this is the build guide)
Every textbook has a Table of Contents! :) But it may be a good idea to consolidate all of the mini-guides into their own Table of Contents.

Screen Shot 2020-03-23 at 5.46.06 AM.pngScreen Shot 2020-03-23 at 5.46.22 AM.png
 
Would someone please determine the correct CRC32_C value for the ThunderboltDROM entry in the spoiler below? (My system never generates a DROM error code.) Thanks!

Code:
ThunderboltDROM",
Buffer (0x76)
{
   /* 0000 */  0x88, 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00,
   /* 0008 */  0x00, 0xDC, 0x30, 0x48, 0x53, 0x01, 0x65, 0x00,
   /* 0010 */  0x86, 0x80, 0x34, 0x12, 0x01, 0x01, 0x08, 0x81,
   /* 0018 */  0x80, 0x02, 0x80, 0x00, 0x00, 0x00, 0x08, 0x82,
   /* 0020 */  0x90, 0x01, 0x80, 0x00, 0x00, 0x00, 0x08, 0x83,
   /* 0028 */  0x80, 0x04, 0x80, 0x01, 0x00, 0x00, 0x08, 0x84,
   /* 0030 */  0x90, 0x03, 0x80, 0x01, 0x00, 0x00, 0x05, 0x85,
   /* 0038 */  0x50, 0x00, 0x00, 0x05, 0x86, 0x50, 0x00, 0x00,
   /* 0040 */  0x02, 0x87, 0x0B, 0x88, 0x20, 0x01, 0x00, 0x64,
   /* 0048 */  0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x89, 0x80,
   /* 0050 */  0x05, 0x8A, 0x50, 0x00, 0x00, 0x05, 0x8B, 0x50,
   /* 0058 */  0x00, 0x00, 0x09, 0x01, 0x41, 0x53, 0x52, 0x4F,
   /* 0060 */  0x43, 0x4B, 0x00, 0x0F, 0x02, 0x58, 0x35, 0x37,
   /* 0068 */  0x30, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x6F,
   /* 0070 */  0x72, 0x00, 0x00, 0x00, 0x00, 0x00           
},
Should have it for you in about 10 minutes. Will update this very same post.

UPDATE: Your CRC32_C is 0x9d, 0x77, 0x42, 0x54
 
Last edited:
Every textbook has a Table of Contents! :) But it may be a good idea to consolidate all of the mini-guides into their own Table of Contents.

Exactly my idea, but nevertheless :clap:

No offence, but I was quite sure @kgp would be the one to solve this. After a lot of tinkering and failure I have to say: I take my hat off to you!
 
*** Thunderbolt DROM Micro-Guide for Asus ThunderboltEX 3 ***
Thanks to @NorthAmTransAm for doing the actual work.
Please do not quote this micro-guide in its entirety. Post a link instead.


Target Audience for this Procedure:
  • Asus ThunderboltEX 3 owners with activated Thunderbolt Bus.
  • If System Information --> Thunderbolt says No drivers are loaded, then this does not apply to you.
Benefits / Purpose:
  • Just as your Mac's serial number is unique and your Ethernet card's MAC address is unique, we need to assign a unique ID to the Thunderbolt controller.
  • Thunderbolt Ethernet Bridge and Target Disk Mode require this procedure.
  • Most eGPUs require this procedure.
  • QNAP Thunderbolt-based NAS units require this procedure.
    • Other Thunderbolt-based storage and NAS systems may require this procedure as well.
  • This procedure may improve overall compatibility with a wider set of Thunderbolt devices.
Procedure:
There are two options for configuring Thunderbolt DROM. Choose one of the two methods.

Option 1: Web GUI Method (credit: @Inqnuam)
This method is the easiest to use.
  • Click here
  • Follow on-screen instructions carefully
  • Thunderbolt DROM will be customized for you using a randomly generated Unique ID (UID) and all checksums will be auto-computed.
  • A complete Thunderbolt SSDT (with the new DROM) will be presented on screen and it will also be copied to the clipboard for you.
  • Download and run MaciASL, create new file (File --> New) and paste the clipboard.
  • Then save the file in ACPI Machine Language (AML) format: File --> Save As... and choose ACPI Machine Language from the pop-up menu.
  • Give the file an appropriate name such as: SSDT-TB3-DROM-HOTPLUG.aml.
    • Any name is okay as long as it begins with SSDT-
  • However, download SSDT-DTPG.aml from the bottom of this guide.
  • Both SSDT files must be copied to the CLOVER/ACPI/patched folder (for CLOVER users) or OC/ACPI folder (for OpenCore users).
Option 2: Superuser Method (credit: @joevt)
Please see this guide for advanced users.

Option 3: Manual Method
  • Specify a new Unique ID (UID) in the 5 green bytes below (0x11).
  • Replace the 5 green numbers below with 5 randomly selected hex numbers.
  • Now click here to visit an online CRC calculator and configure it as shown:
    Screen Shot 2020-03-18 at 9.35.24 AM.png
  • Copy the boldfaced bytes below (bytes 2-9 after replacing the green bytes with your own values) to clipboard and paste them into the Bytes field as shown and click CRC button:
    Screen Shot 2020-03-18 at 9.37.02 AM.png
  • Enter the CRC-8 checksum into the 1st byte of Thunderbolt DROM as shown in red below.
  • Save this into your Thunderbolt SSDT, in the NHI0._DSM method.
    • The attached SSDTs (try SSDT-TBOLT3-RP21-ASUS-TB-EX3-V2.aml first) may be used, but they are configured for PCI0.RP21. Adapt the SSDT for the actual PCIe path for your system. If you have questions about this, just ask.
    • Both SSDTs should be copied to CLOVER/ACPI/patched or for OpenCore users, OC/ACPI
  • Optional but Highly Recommended for Add-in-Cards: Byte #2 below (between 0x88 and 0x11) represents the Thunderbolt Bus ID. If you have multiple Thunderbolt controllers, assign a different bus to each one. If you change this byte, please re-compute the CRC-8 checksum.
    • The first byte of ThunderboltConfig should then be changed to the same Bus ID.
"ThunderboltDROM",
Buffer (0x72)
{
0x88, 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00,
0x00, 0xBA, 0x65, 0x6A, 0xDB, 0x01, 0x58, 0x00,​
0x01, 0x00, 0x0D, 0x00, 0x01, 0x00, 0x08, 0x81,​
0x80, 0x02, 0x80, 0x00, 0x00, 0x00, 0x08, 0x82,​
0x90, 0x01, 0x80, 0x00, 0x00, 0x00, 0x08, 0x83,​
0x80, 0x04, 0x80, 0x01, 0x00, 0x00, 0x08, 0x84,​
0x90, 0x03, 0x80, 0x01, 0x00, 0x00, 0x02, 0x85,​
0x0B, 0x86, 0x20, 0x01, 0x00, 0x64, 0x00, 0x00,​
0x00, 0x00, 0x00, 0x03, 0x87, 0x80, 0x05, 0x88,​
0x50, 0x40, 0x00, 0x05, 0x89, 0x50, 0x00, 0x00,​
0x05, 0x8A, 0x50, 0x00, 0x00, 0x05, 0x8B, 0x50,​
0x40, 0x00, 0x07, 0x01, 0x41, 0x53, 0x55, 0x53,​
0x00, 0x11, 0x02, 0x54, 0x48, 0x55, 0x4E, 0x44,​
0x45, 0x52, 0x42, 0x4F, 0x4C, 0x54, 0x45, 0x58,​
0x33, 0x00​
},
  • CRITICAL WARNING:
    • Do not copy and paste the text above into MaciASL. Instead, copy-and-paste from the spoiler below. Failure to do so will be catastrophic.
Code:
"ThunderboltDROM",
Buffer (0x72)
{
0x88, 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00,
0x00, 0xBA, 0x65, 0x6A, 0xDB, 0x01, 0x58, 0x00,
0x01, 0x00, 0x0D, 0x00, 0x01, 0x00, 0x08, 0x81,
0x80, 0x02, 0x80, 0x00, 0x00, 0x00, 0x08, 0x82,
0x90, 0x01, 0x80, 0x00, 0x00, 0x00, 0x08, 0x83,
0x80, 0x04, 0x80, 0x01, 0x00, 0x00, 0x08, 0x84,
0x90, 0x03, 0x80, 0x01, 0x00, 0x00, 0x02, 0x85,
0x0B, 0x86, 0x20, 0x01, 0x00, 0x64, 0x00, 0x00,
0x00, 0x00, 0x00, 0x03, 0x87, 0x80, 0x05, 0x88,
0x50, 0x40, 0x00, 0x05, 0x89, 0x50, 0x00, 0x00,
0x05, 0x8A, 0x50, 0x00, 0x00, 0x05, 0x8B, 0x50,
0x40, 0x00, 0x07, 0x01, 0x41, 0x53, 0x55, 0x53,
0x00, 0x11, 0x02, 0x54, 0x48, 0x55, 0x4E, 0x44,
0x45, 0x52, 0x42, 0x4F, 0x4C, 0x54, 0x45, 0x58,
0x33, 0x00
},

Reboot.
  • Check if Thunderbolt Port 5 is activated.
    Screen Shot 2020-03-23 at 8.30.25 AM.png
 

Attachments

  • SSDT-TBOLT3-RP21-ASUS-TB-EX3.aml
    2 KB · Views: 261
  • SSDT-DTPG.aml
    100 bytes · Views: 256
  • SSDT-TBOLT3-RP21-ASUS-TB-EX3-V2.aml
    2 KB · Views: 238
Last edited:
Exactly my idea, but nevertheless :clap:

No offence, but I was quite sure @kgp would be the one to solve this. After a lot of tinkering and failure I have to say: I take my hat off to you!
Perhaps if he hadn't retired from this... :)
 
Okay, please follow this procedure carefully:
  • Find a spare 4GB or larger USB flash disk.
  • Insert into the Hackintosh.
  • Run Disk Utility
    • Select View --> Show all Devices
    • Select the parent-level name of this USB flash disk on the left side of Disk Utility
    • Click Erase
    • You should see 3 options:
      • Name: <enter a name such as "Boot Test">
      • Format: select MacOS Extended Journaled
      • Scheme: select GUID Partition Map
    • Click Erase again
  • Now the USB flash disk will contain two partitions:
    • Standard MacOS HFS+ partition
    • Hidden EFI partition
  • Mount the EFI partition of the USB flash disk
    • Unzip and copy the attached EFI folder to that partition.
    • Edit config.plist in CLOVER folder and copy your serial numbers back into SMBIOS.
    • Save the file.
Now reboot the Hackintosh:
  • Press F12 during BIOS Splash Screen to bring up the BIOS Boot Menu
  • Select this new USB flash disk
  • At the Clover Boot Menu, just boot normally into MacOS (Boot macOS from Mojave).
Does it work?

Sorry for the slow reply. Unfortunately this didn't work?

Is there anything else to try or shall I start again?
 
Sorry for the slow reply. Unfortunately this didn't work?

Is there anything else to try or shall I start again?
Yes at this point it's best to start again.
 
Some comments:
  • Whenever we install or remove a PCIe card or any other component on the motherboard, we must shutdown the system and flip power switch to OFF (or unplug power cable).
  • After the modified card is installed, flip PSU switch back on and boot the system (i.e. Cold Start).
  • When you say "nothing populates in IOReg or SysInfo, we should be more specific:
    • If no child node appears under RP05 or RP21 (or wherever the card is supposed to appear), then Thunderbolt is dead.
    • But if we see a small set of child nodes under RP05 or RP21, etc. then Thunderbolt may be fine, but it's operating in ICM Mode (Internal Connection Management Mode).
    • But if we see the entire set of child nodes -- including ThunderboltSwitch and ThunderboltPort -- then we know that Thunderbolt is operating in full Mac-compatible mode.

****UPDATED CHART***


GC-Titan Ridge Installed
(RP12)
TB3 Device Pre-Connected
to Internal TB3
TB3 Device Pre-Connected
to GC-Titan Ridge
Result:
Internal TB3
(RP05)
Result:
GC-Titan Ridge
(RP12)
SSDT TB3 Header Cable
No Yes No Works, but no TB Bus n/a No No
Yes Yes No Disappears from RP05 GC-Titan Ridge ok, with TB Bus Yes for RP12 No
Yes No Yes Disappears from RP05 GC-Titan Ridge ok, with TB Bus Yes for RP12 No
Yes No Yes GC-Titan Ridge appears, with TB Bus No No Yes


- Using all of the modified Z170X Designare firmwares from cold boot, Motherboard Onboard Alpine Ridge never showed anything populated under RP05 when a thunderbolt device was plugged in. That most likely means the mobo TB3 was dead. This is with NO TR card installed.
 
Last edited:
Back
Top