• Become a Premium Member for $25/year with no ads to improve your community experience.

GUIDE How to Flash Custom Firmware on Thunderbolt Card for macOS

mooseknuckleboi

New member
Joined
Nov 8, 2020
Messages
5
Motherboard
Asus X299 Deluxe II
CPU
i9-10980XE
Graphics
AMD Radeon 5700XT Founders Edition
OS X/macOS
10.14.x
Bootloader
  1. OpenCore (UEFI)
Mac
  1. iMac
  2. MacBook Pro
Mobile Phone
  1. iOS
How to Flash Custom Firmware on Thunderbolt Card for macOS


Overview


Following is a Thunderbolt firmware flashing guide exclusively for macOS. The guide is applicable for Motherboards having Built-In Thunderbolt, Laptops, and Add-In Cards.

The method is tested by us on the following Add-In Card.

  • GIGABYTE GC-Alpine Ridge, Thunderbolt 3
  • GIGABYTE GC-Titan Ridge 2.0, Thunderbolt 3
Firmware Downloads


Following are the Thunderbolt firmware for various devices including Motherboards, Laptops, and Add-In Cards. Utopia-Team Github contains reliable firmware files for most .bin files mentioned in this guide.

Utopia Thunderbolt Repository - Github

Add-In Cards

Thunderbolt HardwareFirmware File NameNotes
GIGABYTE GC-Alpine Ridge, AICGC-ALPINE RIDGE-NVM20-V1-Elias64Fr.bin
GC-ALPINE RIDGE-NVM20-V2-Elias64Fr.bin
GC-ALPINE-RIDGE-NVM21-V3-NATA.bin
GIGABYTE GC-Titan Ridge v1.0, AICGC-TITAN-RIDGE-NVM23-Elias64Fr.bin
GIGABYTE GC-Titan Ridge v2.0, AICTitanRidgeMacOSFirmware.bin
TitanRidgeNVM23-Elias64Fr-Mod.bin
TitanRidgeNVM43-Elias64Fr-Mod.bin
GC-TITAN-RIDGE-NVM50-Elias64Fr-14B.bin
GC-Titan-Ridge-V2.0-Mod-NVM50-CaseySJ.bin
ASUS ThunderboltEX-3, AIC, Alpine RidgeAlpineRidgeEX3-NVM18-NATA.bin
AlpineRidgeEX3-NVM26-NATA.bin
ASUS ThunderboltEX-3, AIC, Titan RidgeASUS-ThunderboltEX-3-TR-NVM56-MOD1-CaseySJ.bin

Motherboards

Motherboards with Built-In ThunderboltFirmware File NameNotes
ASRock Z390 and Z370 ITX/acASROCK_Z390_ITX_NVM20_MOD-Elias64Fr.bin
GIGABYTE Z390 DesignareDESIGNARE-Z390-NVM33-Elias64Fr.bin
Gigabyte Z390 AORUS Xtreme MotherboardZ390-AORUS-XTREME-NVM33-Elias64Fr.bin
GIGABYTE Z490 VISION DGigabyte-Vision-D-NVM-50-Elias64Fr-CaseySJ.bin
AsRock Z490 ITX/ACASRock-itx/tb3-NVM50-E64Fr-CSJ-dgsga.bin
GIGABYTE B550 VISION DDESIGNARE-Z390-NVM33-Elias64Fr.bin

NUC

NUC with Built-In ThunderboltFirmware File NameNotes
NUC8i7HNK and NUC8i3BEHNUC8i7HNKpatched.bin

Laptops

Laptops with Built-In ThunderboltFirmware File NameNotes
ASUS UX550GE ZenBook ProASUS_UX550GE_TB3-CASEY-MOD-1.bin
ASUS UX580GE ZenBook ProASUS_UX550GE_TB3-CASEY-MOD-1.bin
Lenovo ThinkPad X1 CarbonLenovo-X1-Carbon-NVM-43-MOD-1-CaseySJ.bin

Note:
Please select the appropriate firmware before continuing.

Flashing Firmware



⚠️ WARNING:

The following method described below is risky and it may brick your Thunderbolt hardware during this process. The chip may be damaged and you may require a programmer and original firmware to flash the Thunderbolt chip in order to bring your Thunderbolt back to life again. The steps provided here may or may not be accurate or applicable to your particular Thunderbolt hardware. By using this guide, you understand all the risks involved and EliteMacx86 shall not be liable for any of the damages that might occur and takes no responsibility for any of your action. Please proceed with caution!

Now, as you've enough information about flashing firmware and why you need to, you can proceed with it.

Requirements


Following are the requirements for using this guide.

  • SPI Flasher
  • A computer running macOS
  • Homebrew installed
STEP 1: Installing Flashrom
The very first step is to install flashrom using Homebrew which will allow to flash the firmware.

Open Terminal and type:
brew install flashrom

STEP 2: Preparing SPI Flasher
The second step is to prepare the SPI Flasher for firmware flashing.

1. Open your SPI flasher. Place the cable in the 8 slots farthest away from the lever. The red cable should be pointing towards the lever.
5B320A8F-724B-4A37-A75F-360F94A4D8E0.JPG
2. With the cable highly pressed, in, press down the lever to secure.
9F1479FF-927F-484B-B2C5-261EAD1337AF.JPG
3. Place the card on a non-conductive surface, such as wood or plastic.
46743BE6-D4A0-40A6-AA3B-CBFE920A46C3.JPG
4. Unscrew the screws on the back, and remove the cover.
F7D663A9-9AF6-4684-8DC5-3659E4AAC4EE.JPG

5. Spread the clip as far apart as you can, and press down over the top of the green dot chip. The single red wire for the SPI flasher will be facing you, but on the right side of the clip.
C2D10A48-4B1F-4910-B68A-0369D007C4FA.JPG

6. It may take one or two tries to get it aligned. You may need to press down fairly hard and make sure that the clip is perpendicular to the card before releasing pressure. The "teeth" of the card should be nearly aligned with the bottom of the chip, and the side of the clip with sit flush with the side of the chip.
059CD005-37EA-447A-BB8B-807360B83D79.JPG

4CD1A71C-F49A-4865-954E-3FDC9E8AB7B9.JPG

STEP 3: Extracting Original Firmware
The next step is to extract the original firmware. This process is necessary incase the custom firmware fails to work or doesn't works as expected and the chip needs to be returned to a factory state.

Backup Green Chip

flashrom -p ch341a_spi -r OriginalFirmware-GreenChip.bin
  • If you get the error "Programmer initialization failed." Reconnect your programmer to your USB port.
  • If you get the error No EEPROM/flash device found. Double check to make sure your clip is oriented correctly
If you are successful, you will get the below message. It will save the firmware to your user folder.
Screen Shot 2021-04-19 at 2.19.58 PM.png

Backup Blue Chip
8. Repeat the clipping process for the Blue Chip. Once clamped, backup using the command:
flashrom -p ch341a_spi -r OriginalFirmware-BlueChip.bin

Refer to the previous step if you encounter any errors. You will see the below if you are successful:
Screen Shot 2021-04-19 at 2.27.17 PM.png
STEP 4: Flashing Custom Firmware
The next step is to flash the custom firmware.

9. Now, with your clip still firmly attached to your blue chip, it's time to flash the Thunderbolt card.
Use the following terminal command if the firmware (obtained from top of post) is in your downloads folder, use the command:
flashrom -p ch341a_spi -w ~/Downloads/DESIGNARE-Z390-NVM33-Elias64Fr.bin
If you use the DSM2 firmware instead, it might look like the following:
flashrom -p ch341a_spi -w ~/Downloads/TitanRidgeMacOSFirmware.bin
Replace "johnny" with your username in any examples. "~" is just a command shortcut that means "your user" and will work with terminal commands.

10. Flashrom make take one minute to process, here is what it looks like incomplete:
Screen Shot 2021-04-19 at 2.51.15 PM.png

1. And here is what it looks like successful: Screen Shot 2021-04-19 at 2.51.25 PM.png

NOTES:
  • If you get the error "Programmer initialization failed." Reconnect your programmer to your USB port.
  • If you get the error No EEPROM/flash device found. Double check to make sure your clip is oriented correctly
  • If nothing is working, inspect the pins on your clip to make sure they are aligned. You may need to use tweezers to align the contacts on the clip or make sure the wires at the top of the clip are not broken under the rubber.


Shorting Thunderbolt Card Header:

We've found that for the most complete hotplug functionality, shorting the card is usually required. This information especially applies if the user desires the ability for the card to initialize on boot without any Thunderbolt device connected. We dive into Thunderbolt hotplug configuration In Our Guide. Shorting the cable is also necessary if you have a motherboard that does not support Thunderbolt cards, although you may have more limited functionality as the card may automatically initialize with security type SL1, possibly interfering with the ability to mount devices.

If no hotplug capability is desired, shorting is optional although may produce better results on some motherboards. Attempt to connect via the header, and if your card is not detected by macOS consider a short. If you choose not to short the Thunderbolt Header Cable on the card side, you will need to plug your Thunderbolt cable from your card into the supported header on your motherboard. Directions for shorting are below:
  1. place the connector facing toward you
  2. cut and strip pin/wire 1 and 3 (shown in picture)
  3. connect together
  4. verify no other pins/wires are making connections or shorted
  5. mask with electrical tape
  6. reconnect to Thunderbolt Add-In Card
IMG_4940.JPG



Congrats! Your Thunderbolt Add-In Card is now ready to use in your System. Disconnect the clip and re-screw on the exterior panel.

Credits:
DSM2

Elias64Fr
CaseySJ
 

Attachments

Last edited:
GIGABYTE GC-Titan Ridge v2.0 cannot work on win10 after flashing the firmware
 
GIGABYTE GC-Titan Ridge v2.0 cannot work on win10 after flashing the firmware
That might be an issue. Try to restart the system and then check.
 
After restarting and checking many times, this problem cannot be solved, win10 cannot drive Thunderbolt
That might be an issue. Try to restart the system and then check.
 
After restarting and checking many times, this problem cannot be solved, win10 cannot drive Thunderbolt
Provide Thunderbolt Control Center information.
 
The Driver is not installed correctly. Flash the stock firmware and it should work on Windows.
The driver is from Gigabyte's official website.
It can run normally in win without flashing the firmware. After flashing the firmware, it can't
 

Latest posts

Forum statistics

Threads
1,841
Messages
17,161
Members
26,441
Latest member
theace9