Contribute
Register

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

Hey Casey!
my/your setup has been running for a few months, no problems at all. i don't intend to upgrade my ios and haven't done anything out of the ordinary, but today my hackintosh started up to a black screen. every boot, just all black.
if i connect the hdmi cable to the igpu i can atleast get to bios, so i think something's up with my sapphire rx 580 for some reason... any tips?
literally touched nothing.

edit: when i check peripherals - plug in devices info in my bios it says N/A at pciex8 where the card should be...
The BIOS screenshot is very helpful. Have you tried any of the following?
  • Double check that the card is securely seated in its PCIe slot and auxiliary PCI power cables are attached?
  • Power down and flip power switch on PSU to off position for 10 seconds, then flip on? This causes BIOS to rescan for hardware changes.
  • CMOS Reset? This is more extreme, but can solve a number of problems. BIOS parameters will need to be configured once again starting with Load Optimized Defaults. And if MSR 0xE2 had been unlocked before, it will need to be re-unlocked.
 
First choice for me would be a Shure SM7b but that is way over budget :)

Check out the Rode NT1a. Professional level quality at a really affordable price especially considering it comes with and XLR cable, shock mount and pop shield!
I'd mirror this, however, I think the Rode NT1 (the black one, not the silver 'NT1-A') is a better choice. The top end isn't so harsh! Great cheap mics made in Australia, with impressively low self-noise!
Thank you for the recommendations. I've picked one from this list, but won't say which one. :)
 
View attachment 466427

Finally ... my Z390 Designare's Thunderbolt firmware successfully patched, and Apple Thunderbolt Display fully working!

It's been one heck of a journey, but it's finally working ... the Thunderbolt Bus and my Apple Thunderbolt Display!

Fixing the crippled Designare motherboard - no luck
Soldering my motherboard did not work out, unfortunately. After bridging the missing SMD components with solder, I used a multimeter to make sure the connections were good, and without short-circuits to neighboring points. Then connected the SOIC8-clip and verified if the Winbond chip was accessible for read and write. The chip was completely dead ... no matter if I had VCC or PSU power connected, flashrom could not detect the Winbond chip.

If you want to read more about my many failed attempts to flash the thunderbolt firmware, what we tried to recover, and what ultimately caused the problems, read my reports (1) here, (2) here, (3) here, (4) here, (5) here, (6) here, and finally (7) here.

Flashing the new Designare board
So I took out the new Designare board I ordered, and flashed it straight out of the box. Flashing went flawless on the first attempt. I used the Raspberry Pi wired to the SOIC8-clip according to the "Possible Improvement for In-Circuit Read/Write tot SPI Flash ROM Chips" guide (with breadboard/capacitor/resistor).
  • I carefully connected the SOIC8-clip to the Winbond chip, with the clip detached from the Raspberry Pi/GPIO, and PSU power off.
    • I lined up the pins of the clip exactly to the pins of the Winbond chip before closing the clip,
    • AND while closing the clip, made sure not to scrape off any SMD components near the chip (again).
  • Then connected the SOIC8-clip to the Raspberry Pi/GPIO with VCC Pin8 connected.
  • The LEDs on the motherboard were red and normal brightness (not really dim).
  • Then disconnected VCC (LEDs went off).
  • Then powered on the PSU (LEDs were bright white).
  • First three reads/backups were immediately succesfull and had identical checksums.
  • First write was immediately successful (VERIFIED).
  • Three reads/backups following write were succesful and had identical checksums.
This flashing experience was incredibly smooth ... instant success.

Booting the new motherboard
After switching all components from the old motherboard to the new one (CPU + cooler, RAM, M.2 SSD), reassembling the board, and reconnected all wires/connectors, I took a deep breath and booted the new motherboard. After updating BIOS to F9b, changing BIOS settings according to post #1, unlock MSR 0x2E Register for native NVRAM), I was able to boot straight into macOS and absolutely everything is working.

After replacing the EFI/CLOVER/ACPI/patched/SSDT-Z390-DESIGNARE-TB3HP-V4.aml with SSDT-TBOLT3-RP05-PORT7-DESIGNARE-Z390.aml (customized with unique UID using DROM guide) and rebooting:
  • System Information > Thunderbolt is now showing correct contents about the Thunderbolt Bus.
  • IORegistryExplorer shows a fully populated tree under RP05, including XHC3 with SSP1 and SSP2.

Connecting Apple Thunderbolt Display
On my RX590 GPU, the first DP port is connected to my BenQ 4K monitor. I connected the second DP port to the Designare's DP-IN port. My system runs macOS 10.15.4 in headless mode, using Casey's config-AMD-GPU.plist.

The Apple TB Display did not work on the upper TB3/USB-C port. Once connected to the lower TB3/USB-C port the display lit up and showed my second screen. Then tested for full functionality of the display:
  • Display:
    • Brightness controls: I have Native Brightness installed, along with the "Enable Dim keys by Wern" kext patches in Clover. That interferes with the native Apple brightness controls when using F1 and F2 keys. However, brightness can still be controlled via Settings > Displays using the brightness slider.
  • Speakers:
    • Sound output works (change audio output to Display Audio).
    • Volume control using F10 (mute) / F11 (softer) / F12 (louder) works too.
  • FaceTime camera:
    • System Information > Camera reports the built-in webcam in the Apple Display.
    • Using the FaceTime application, I was able to see myself on video.
  • USB-hub:
    • all three USB 2.0 ports on the back of the display work. Tested with USB drive.
  • Firewire:
    • System Information > Firewire is populated.
    • In Settings > Network, a "Display FireWire" network adapter is added.
    • I don't have any FireWire devices to test the interface.
  • Ethernet:
    • System Information > Ethernet Cards list the "Apple 57761-80" ethernet controller.
    • In Settings > Network, a "Display Ethernet" network adapter is added.
  • Thunderbolt 1 pass-through:
    • I have no other Thunderbolt hardware to test with.
    • In Hackintool > PCI, I do notice two PCI Bridges that have "???" as Device Name, where vendor name is "Pericom Semiconductor". My guess is that these PCI bridges are used for the TB1-passthough port on the back of the Apple Thunderbolt Display ... and I suspect the "???" indicate they are not recognized and therefore won't work.
  • Display wake after sleep works too (!)
About This Mac > Displays
View attachment 466453

System Information > Thunderbolt (showing Thunderbolt Display)
View attachment 466434

System Information > Graphics/Displays (showing Thunderbolt Display)
View attachment 466435

System Information > USB (showing Apple Thunderbolt Display features/peripherals)

View attachment 466436

System Information > FireWire (showing Apple Thunderbolt Display Firewire)
View attachment 466437

System Information > Ethernet Cards (showing Apple Thunderbolt Display ethernet interface)
View attachment 466438

System Information > Camera (showing Apple Thunderbolt Display FaceTime HD Camera)
View attachment 466439

System Information > Audio (showing Apple Thunderbolt Display audio)
View attachment 466440

System Information > Network Interfaces (Display FireWire, Display Ethernet, Thunderbolt Bridge)
View attachment 466441

System Information > PCI

View attachment 466442

Hackintool > USB (showing Apple Thunderbolt Display USB Controller and USB Ports/Devices)
View attachment 466443
IORegistryExplorer (Showing fully loaded RP05 with ThunderboltLocalNode and Apple Thunderbolt Display)
View attachment 466444
View attachment 466445
View attachment 466446

Hackintool > PCI (Showing unrecognized Apple Thunderbolt Display PCI Bridges)
View attachment 466447

I'm really happy! But there's no way I could have figured this out myself.

Thank you massively @CaseySJ , @Elias64Fr, @NCMacGuy, @SuDoDmz and @genzai ... you've all played a huge part in figuring out how to get Thunderbolt Bus fully working on the Designare, providing guides and guidance for all of us here to flash our Designare's with patched Thunderbolt firmware, discovering that the Apple Thunderbolt Display actually works with our firmware patched, and helping me get there too with your help in troubleshooting and detective work!
nice work! too bad the repair on the designare didn't work.

did you test the mic in the apple display? I'm about ready to give up on my alpine ridge AIC with my Aorus pro and buy a designare, but with zoom meetings to participate in I need a mic and using the display mic would be nicer than using an external mic.

In system pref--sound--input does the display microphone show up and does the level meter move when you speak?

thanks!
 
Do you think this could work for my NUC8i7BEH ?? Do I need a RPi2B to do this trick??

I want to have a properly working thunderbolt 3 and I am so lost.

Thanks
As CaseySJ has already replied, the patched ROM should work fine.

One bit of advice: the clip I used (the "acceptable quality clip") has a bit of slop in the hinge. so take care (use your reading glasses if you've got 'em!) to make sure the contacts on the clip are perfectly aligned with the contacts on the chip on both sides of the clip. Just because they are aligned on one side doesn't necessarily mean they are aligned perfectly on the other side of the clip.

And follow the directions for flashing to the letter. Take your time. The first step is to read the chip 3 times. After the flashing process is complete, copy one of the .bin files you read to a USB drive and store the .bin file in a safe place in case you ever need to restore the original firmware to your NUC.
 
Although Designare Z390 and even the new Z490 Vision D do not provide 4K 60Hz over HDMI, your monitor should still work at 4K 30Hz. If you'd still like to enable this, please post your config.plist (remove serial numbers from SMBIOS before posting).

@CaseySJ ("Lord Designare") :)
Maybe you haven't recognized but your posting was # 20.000 in this awesome thread!
As a very early adopter of your build I would like to thank you very much for all the passion you've put into this thread and all your patience by answering thousands of questions. Chapeau!

ripe_md
 
@iRamon,

At last -- well-deserved congratulations!!

That's a lovely setup and an even better writeup, earning it the top spot in the User Experiences section of the revised Quick Reference spoiler in Post #1. Now I can see why Apple Thunderbolt Display remains such a popular choice.

It seems that flashing is easier if nothing is installed on the motherboard. Well done.

View attachment 466504
Thank you so much for all your help in the process @CaseySJ!

Looking backwards, it makes sense that flashing a naked motherboard is easier, as no current from the programmer is leaked to other components installed in the board.

I've added photos showing LEDs color and brightness on the Designare with the clip attached to my post, hoping this will help others visualize how the LEDs will appear. Feel free to add them to your guides as well.

Screenshot 2020-05-02 at 15.29.24.png


And congratulations on passing both 2000 pages and 20.000 posts in your incredibly successfull build and thread!!! :clap:
 
Last edited:
nice work! too bad the repair on the designare didn't work.

did you test the mic in the apple display? I'm about ready to give up on my alpine ridge AIC with my Aorus pro and buy a designare, but with zoom meetings to participate in I need a mic and using the display mic would be nicer than using an external mic.

In system pref--sound--input does the display microphone show up and does the level meter move when you speak?

thanks!
Hello @faithie999,

I didn't think of testing the Display microphone yet, thanks for asking.
Just tested the microphone and it works perfectly!
AppleThunderboltDisplay-Mic.png
Sorry to hear your Alpine Ridge AIC is giving you so many headaches. I've been so occupied with my own Thunderbolt struggles that I can't remember what issue(s) you are trying to sort out.

From what I've read, the Designare's patched Thunderbolt does not have some of the issues the AIC cards have ... so if your issue is related to that, I can only highly recommend getting the Designare.
 
Finally ... my Z390 Designare's Thunderbolt firmware successfully patched, and Apple Thunderbolt Display fully working!
My hundred million dollar question is, does any of it still work if you boot in to Windows? Meaning, does the Thunderbolt 3 bus work properly, and can you load the appropriate drivers from BootCamp to get the monitor up and working? Getting the Thunderbolt Display working in windows was always a challenge even on a real Mac, but I did have it successfully working for two years.

Main thing I guess is really the Thunderbolt Controller with the modifications loaded on the Winbond, is that recognized properly and is it functional under Windows?

Thanks, and congratulations you deserve this to be done for now...
 
I've been carrying on tinkering with the SSDT-only approach to getting a full thunderbolt tree and have got as far as the very simple attached version which works great on built-in Alpine Ridge. It's based on the great work originally done by @Elias64Fr and @CaseySJ (all credit to them) and provides a full tree with working TBT and USB-C hot plug on cold and warm boot, TBT networking and target disk mode in the client computer. I was wondering if maybe we've been over-complicating things, might this work with built-in Titan Ridge as well? If you want to test it then you'll need to do a few things:
  • Adjust the Root Port number and change the GPCB method changed using the (PCI address * 8)+x formula. My thunderbolt RP05 is at 1C,4 so its (1C * 8)+4 = E4. There are no power methods as hot plug seems to be 100% consistent without them.
  • In the bios I have Force Power and ACPI RMV method enabled in the thunderbolt section. These might be hidden and so will need to be enabled using the grub approach. Note that I've removed DSB4 and only have one XHC2 SSP port as the AsRock Z370 itx/ac motherboard only has one thunderbolt port.
  • The GPE._E2C method will also need to be renamed according to the value in your system. Just dump your system DSDT using MacIASL and search for "Method (TINI, 2, Serialized)". Immediately above it you'll find the hot plug event method which will be named "_Exx".
  • The RP05._INI method in your DSDT will need to be renamed RP05.XINI using your OpenCore config.plist
  • The _GPE._Exx method in your DSDT will need to be renamed _GPE.XExx using your config.plist
As far as I can tell functionality is just the same as when I tried patched firmware but with the added bonus of TBT working normally with other operating systems.
I'm very curious to hear other folks thoughts on the applicability of this method to the Designare's in-built Titan Ridge.
 
Back
Top