Fixing Thunderbolt in Windows on a MacBook Pro Running Bootcamp - Eric Cheng

Fixing Thunderbolt in Windows on a MacBook Pro Running Bootcamp

Articles

I cannot believe how much of a pain it has been to get Thunderbolt devices to work properly in Windows on a MacBook Pro. After weeks of troubleshooting, I finally found a solution that seems to be working. I had been trying to get a TB 10Gbe network adapter working and had been focusing on troubleshooting the adapter itself. When I looked into Thunderbolt in general, this fix surfaced quickly.

tldr: follow these instructions from Leandro Glossman to get a trusted self-signed Thunderbolt driver that supports the MacBook Pro. This seems to fix the issue with 10Gbe Thunderbolt network adapters that use Aquantia chipsets (could be all of them).

Windows, Bootcamp, and Thunderbolt 10Gbe adapters

All of the 10G Thunderbolt network adapters out there advertise that they work in both OS X and Windows, so I thought it would be easy to get them working in Bootcamp on a MacBook Pro. Wrong.

I tried the following 10Gbe TB3 adapters:

  • OWC Thunderbolt 3 10G Ethernet Adapter
  • Cable Matters Thunderbolt 3 10G Ethernet Adapter
  • CalDigit Connect 10G

All of them worked perfectly at 10Gbe the first time they were plugged in. However, all of them stopped working after the first reboot, showing errors in Device Manager. I tried downgrading and upgrading to every driver I could find, including the newer Marvel drivers (Marvel acquired Aquantia some time ago), but nothing worked. Every once in awhile, I would get the adapter to work for a brief period of time, but a reboot always disabled the device.

Today, I found an article by Leandro Glossman called “Custom updated Tb3 drivers”. He wrote:

 I just created a self signed version of the latest Intel drivers (v1.41.987.0) specifically modified to work on the Macbook Pro and possibly others as well.

I made them because the official Apple drivers had numerous problems, such as Windows failing to boot while the egpu is plugged in and the BT stopping when the egpu gets connected.

Please be aware that this is a self signed driver and as such I believe you will have to install the certificate as “Trusted Certificate Root Authority” before being able to use them. The certificate is placed inside the driver folder, just right click on it and select “Install -> Local Machine -> Place in the following store -> Trusted Root Certification Authorities”.

The link to download the modified drivers are available in the original thread. I downloaded them, installed the certificate (following the instructions he outlined), rebooted, and… it worked!

The driver I’m using is Marvel v2.2.2.0 dated 4/30/2020. This is the same driver that was automatically installed when I plugged in all of the 3 models of TB 10Gbe adapter listed above.

More Aquantia Network Driver Issues

Even though this post is about getting Thunderbolt to work in Bootcamp, I also had major Aquantia driver issues on my main Windows workstation. The PCIe 10Gb network card I use on all of my machines is the ASUS XG-C100C 10G, which uses the common AQtion AQC107 chipset. This card used to just work, but a recent Windows update rendered the device unusable: after a random Windows reboot one day, Device Manager reported that the card was no longer working properly.

Marvel (acquired Aquantia) has firmware updates and drivers for AQtion AQG107 cards, but the firmware updater complains that it can’t find any compatible hardware when it’s run on the ASUS. Luckily, some folks out there figured out how to add the ASUS XG-C100C to Marvel’s firmware updater. Using a modified updatedata.xml file, the firmware updater ran successfully on the ASUS card, and the card started working again.

<bdp id="1">
    <hwids>
      <pciid vid="1d6a" did="d107" sdid="d107" svid="1849" />
      <pciid vid="1d6a" did="d107" sdid="8741" svid="1043" />
      <pciid vid="1d6a" did="07b1" sdid="d107" svid="1849" />
      <pciid vid="1d6a" did="d108" sdid="d108" svid="1849" />
      <pciid vid="1d6a" did="08b1" sdid="d108" svid="1849" />
    </hwids>
    <mac>02010000c0000000060000000000000001000000c00000000e00000021000000ffff0000c00000000b000000000000000800000000000000</mac>
    <phy>030184011cc471adffff1dc471adffff1ec40100ffff0000</phy>
    <image>AQC107.clx</image>
  </bdp>

It’s fun to get things working again, but it’s sad that these things stop working in the first place.