Contribute
Register

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

Glad to hear it! QNAP Thunderbolt NAS drives only work when Thunderbolt Bus is enabled -- so the option to flash was a necessary one!

uh... ok something went wrong afterwards. So everything worked until i restarted my computer and now it's not connecting anymore... any suggestions on how to troubleshoot this?
 
*** Thunderbolt DROM Micro-Guide for Lenovo ThinkPad X1 Carbon 6th Gen ***
Thanks to @contemporarygary for testing.
Please do not quote this micro-guide in its entirety. Post a link instead.​

Target Audience for this Procedure:
  • Lenovo ThinkPad X1 Carbon 6th Gen laptop 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.
Notes:
  • In BIOS, disable "BIOS Assist" mode.
  • May need to use Thunderbolt 3 Unblocker to allow certain devices such as Dell Thunderbolt Dock to connect.

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:
    CRC-8.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:
    CRC-32.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-TB3-Lenovo-X1-Carbon.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 (0x6E)
{
0x88, 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00,
0x00, 0x64, 0xE3, 0xE1, 0x56, 0x01, 0x61, 0x00,​
0x09, 0x01, 0x06, 0x17, 0x01, 0x2B, 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, 0x02, 0x87, 0x05, 0x88, 0x50,​
0x40, 0x00, 0x05, 0x89, 0x50, 0x00, 0x00, 0x05,​
0x8A, 0x50, 0x00, 0x00, 0x05, 0x8B, 0x50, 0x40,​
0x00, 0x09, 0x01, 0x4C, 0x65, 0x6E, 0x6F, 0x76,​
0x6F, 0x00, 0x0C, 0x02, 0x58, 0x31, 0x20, 0x43,​
0x61, 0x72, 0x62, 0x6F, 0x6E, 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 (0x6E)
{
0x88, 0x00, 0x11, 0x11, 0x11, 0x11, 0x11, 0x00,
0x00, 0x64, 0xE3, 0xE1, 0x56, 0x01, 0x61, 0x00,
0x09, 0x01, 0x06, 0x17, 0x01, 0x2B, 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, 0x02, 0x87, 0x05, 0x88, 0x50,
0x40, 0x00, 0x05, 0x89, 0x50, 0x00, 0x00, 0x05,
0x8A, 0x50, 0x00, 0x00, 0x05, 0x8B, 0x50, 0x40,
0x00, 0x09, 0x01, 0x4C, 0x65, 0x6E, 0x6F, 0x76,
0x6F, 0x00, 0x0C, 0x02, 0x58, 0x31, 0x20, 0x43,
0x61, 0x72, 0x62, 0x6F, 0x6E, 0x00          
},

Reboot.
  • Check if Thunderbolt Port 5 is activated.
    Port 5.png
 

Attachments

  • SSDT-TB3-Lenovo-X1-Carbon.aml
    5.9 KB · Views: 122
  • SSDT-DTPG.aml
    100 bytes · Views: 117
Last edited:
uh... ok something went wrong afterwards. So everything worked until i restarted my computer and now it's not connecting anymore... any suggestions on how to troubleshoot this?
What components are you using?
  • Motherboard?
  • Thunderbolt card?
Try a cold boot, which means:
  • Shutdown the system
  • Flip power switch on PSU to OFF for 10 seconds, then reboot
  • Do devices connect?
 
Thanks @Inqnuam, attached is the SSDT.
This is for Lenovo ThinkPad X1 Carbon (6e gén.) On-board TB?

EDIT: Just seen the new guide for TB DROM, ill take the .aml there
thank you

EDIT2: HELL this is the largest TB SSDT file im working on, never seen that before
 
Last edited:
What components are you using?
  • Motherboard?
  • Thunderbolt card?
Try a cold boot, which means:
  • Shutdown the system
  • Flip power switch on PSU to OFF for 10 seconds, then reboot
  • Do devices connect?

z390 Designare with F9 Bios and freshly flashed TB3 chip
 
On another note... I have the Fenvi HB1200 and bluetooth works fine, but for whatever reason, I cannot get wifi to work. I'm using ethernet on the board and i'm able to get internet. But because i don't have wifi, i cannot get airdrop to work.
 
  1. You might see two replies.
    • Reply 1 will be from a Setup variable that is over 5000 bytes.
    • Reply 2 will be from a Setup variable that is only 9 bytes long. This reply will be followed by a message indicating that this particular variable will be ignored. This is what we want. We don't want to change this 9-byte variable. Instead, we want to change the bigger 5000+ byte variable.

Hi all! Trying to unlock MSR 0xE2 and, for me, Reply 2 is from a Setup variable that is 7 bytes long, not 9. Is this a big deal? BIOS v F9b.
 
HackinDROM  Lenovo ThinkPad X1 Carbon 6 Gen.png
 

Attachments

  • SSDT-TB3-LENTPX1C-HackinDROM.aml
    6 KB · Views: 81
This method is the easiest to use, but does not currently allow us to change Thunderbolt Bus ID (this is only necessary when two or more Thunderbolt controllers are present in the system).

:think::silent:
 
Back
Top