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.15.x
Bootloader
  1. OpenCore
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 firmwares 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 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
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

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 making 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, the 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


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

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/GC-Titan-Ridge-V2.0-Mod-NVM50-CaseySJ.bin
Or, enter the following in terminal: flashrom -p ch341a_spi -w and then drag your file into terminal, it will look like the following, depending on where it is stored:
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

Potential Errors:
  • 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 neccessary if you have a motherboard which 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 towards you
  2. cut and strip pin/wire 1 and 3 (shown in picture)
  3. connect together
  4. verify no other pins/wires are making connection 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

  • F7D663A9-9AF6-4684-8DC5-3659E4AAC4EE.JPG
    F7D663A9-9AF6-4684-8DC5-3659E4AAC4EE.JPG
    929.6 KB · Views: 250
  • 059CD005-37EA-447A-BB8B-807360B83D79.JPG
    059CD005-37EA-447A-BB8B-807360B83D79.JPG
    483 KB · Views: 232
  • 4CD1A71C-F49A-4865-954E-3FDC9E8AB7B9.JPG
    4CD1A71C-F49A-4865-954E-3FDC9E8AB7B9.JPG
    420.8 KB · Views: 234
  • Screen Shot 2021-04-19 at 2.51.15 PM.png
    Screen Shot 2021-04-19 at 2.51.15 PM.png
    449 KB · Views: 222
  • Screen Shot 2021-04-19 at 2.51.15 PM.png
    Screen Shot 2021-04-19 at 2.51.15 PM.png
    403.1 KB · Views: 214
  • Titan Ridge Firmware - Elias64Fr.zip
    276.5 KB · Views: 264
  • Titan Ridge Alternate - DSM2.zip
    267.3 KB · Views: 763
  • Alpine Ridge V3 Firmware.zip
    298.8 KB · Views: 644
  • GC-Titan-Ridge-V2.0-Mod-NVM50-CaseySJ.bin.zip
    276.5 KB · Views: 988
Last edited:

melodyjj

New member
Joined
Jun 3, 2021
Messages
12
Motherboard
GIGABYTE-Z390-GAMING X
CPU
I7-9700K
Graphics
AMD-R9 280X
OS X/macOS
11.0.x
Bootloader
  1. OpenCore
Mac
  1. iMac
Mobile Phone
  1. iOS
GIGABYTE GC-Titan Ridge v2.0 cannot work on win10 after flashing the firmware
 

EliteMacx86

Administrator
Staff member
Joined
Jul 22, 2018
Messages
3,314
Motherboard
Supermicro X11SPA-T
CPU
Intel Xeon W-3275 28 Core
Graphics
2xAMD RX 580 8GB
OS X/macOS
11.0.x
Bootloader
  1. OpenCore
Mac
  1. Mac mini
  2. MacBook Pro
Mobile Phone
  1. Android
  2. iOS
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.
 

melodyjj

New member
Joined
Jun 3, 2021
Messages
12
Motherboard
GIGABYTE-Z390-GAMING X
CPU
I7-9700K
Graphics
AMD-R9 280X
OS X/macOS
11.0.x
Bootloader
  1. OpenCore
Mac
  1. iMac
Mobile Phone
  1. iOS
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.
 

EliteMacx86

Administrator
Staff member
Joined
Jul 22, 2018
Messages
3,314
Motherboard
Supermicro X11SPA-T
CPU
Intel Xeon W-3275 28 Core
Graphics
2xAMD RX 580 8GB
OS X/macOS
11.0.x
Bootloader
  1. OpenCore
Mac
  1. Mac mini
  2. MacBook Pro
Mobile Phone
  1. Android
  2. iOS
After restarting and checking many times, this problem cannot be solved, win10 cannot drive Thunderbolt
Provide Thunderbolt Control Center information.
 

melodyjj

New member
Joined
Jun 3, 2021
Messages
12
Motherboard
GIGABYTE-Z390-GAMING X
CPU
I7-9700K
Graphics
AMD-R9 280X
OS X/macOS
11.0.x
Bootloader
  1. OpenCore
Mac
  1. iMac
Mobile Phone
  1. iOS

melodyjj

New member
Joined
Jun 3, 2021
Messages
12
Motherboard
GIGABYTE-Z390-GAMING X
CPU
I7-9700K
Graphics
AMD-R9 280X
OS X/macOS
11.0.x
Bootloader
  1. OpenCore
Mac
  1. iMac
Mobile Phone
  1. iOS
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
 

Forum statistics

Threads
632
Messages
6,861
Members
5,587
Latest member
alexcorpse