Contribute
Register

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

@CaseySJ

Yesterday I flashed the TB3 chip on a recently purchased Designare, and the checksums of the reads of the original ROM matched when I read them, but don't match the checksum you reported above.

ad3c229502f9b2abaa70d116069597dccdc3ed5a Backup1.bin

Here's the output from Terminal when I read, then flashed the chip:

Code:
victor@raspberrypi:~ $ sudo su
[sudo] password for victor:
root@raspberrypi:/home/victor# cd /home/victor/Downloads/DESIGNARE2
root@raspberrypi:/home/victor/Downloads/DESIGNARE2# flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1024 -r Backup1.bin
flashrom  on Linux 4.19.75-v7l+ (armv7l)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
No EEPROM/flash device found.
Note: flashrom can never write if the flash chip isn't found automatically.
root@raspberrypi:/home/victor/Downloads/DESIGNARE2# flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1024 -r Backup1.bin
flashrom  on Linux 4.19.75-v7l+ (armv7l)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Found Winbond flash chip "W25Q80.V" (1024 kB, SPI) on linux_spi.
Reading flash... done.
root@raspberrypi:/home/victor/Downloads/DESIGNARE2# flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1024 -r Backup2.bin
flashrom  on Linux 4.19.75-v7l+ (armv7l)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Found Winbond flash chip "W25Q80.V" (1024 kB, SPI) on linux_spi.
Reading flash... done.
root@raspberrypi:/home/victor/Downloads/DESIGNARE2# flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1024 -r Backup3.bin
flashrom  on Linux 4.19.75-v7l+ (armv7l)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Found Winbond flash chip "W25Q80.V" (1024 kB, SPI) on linux_spi.
Reading flash... done.
root@raspberrypi:/home/victor/Downloads/DESIGNARE2# shasum Backup1.bin Backup2.bin Backup3.bin
ad3c229502f9b2abaa70d116069597dccdc3ed5a  Backup1.bin
ad3c229502f9b2abaa70d116069597dccdc3ed5a  Backup2.bin
ad3c229502f9b2abaa70d116069597dccdc3ed5a  Backup3.bin
root@raspberrypi:/home/victor/Downloads/DESIGNARE2# flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1024 -w DESIGNARE-Z390-NVM33-Elias64Fr.bin
flashrom  on Linux 4.19.75-v7l+ (armv7l)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Found Winbond flash chip "W25Q80.V" (1024 kB, SPI) on linux_spi.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... VERIFIED.
root@raspberrypi:/home/victor/Downloads/DESIGNARE2# flashrom -p linux_spi:dev=/dev/spidev0.0,spispeed=1024 -r New_Flash.bin
flashrom  on Linux 4.19.75-v7l+ (armv7l)
flashrom is free software, get the source code at https://flashrom.org

Using clock_gettime for delay loops (clk_id: 1, resolution: 1ns).
Found Winbond flash chip "W25Q80.V" (1024 kB, SPI) on linux_spi.
Reading flash... done.
root@raspberrypi:/home/victor/Downloads/DESIGNARE2# shasum New_Flash.bin DESIGNARE-Z390-NVM33-Elias64Fr.bin
edbbe3cbf8e3fa4a9d991e0681f2a5702b248224  New_Flash.bin
edbbe3cbf8e3fa4a9d991e0681f2a5702b248224  DESIGNARE-Z390-NVM33-Elias64Fr.bin
root@raspberrypi:/home/victor/Downloads/DESIGNARE2#

The first Designare TB3 chip I flashed some weeks ago had these checksums before flashing:

Code:
root@raspberrypi:/home/victor/Documents# shasum Designare-1.bin Designare-2.bin Designare-3.bin
1809647344696d2bdc8a4982d1171bafb1dfd630  Designare-1.bin
1809647344696d2bdc8a4982d1171bafb1dfd630  Designare-2.bin
1809647344696d2bdc8a4982d1171bafb1dfd630  Designare-3.bin

CaseySJ's checksums, my first flashing checksums, and my second flashing checksums don't match.

Could this because Gigabyte used different ROM code on the TB3 chip over time?
Just logged back into the Raspberry Pi and grabbed the pre-flashed (original) firmware from my main system:
Bash:
4fabde53555ea20b88d06b58cc02bdd79d9bd390  main-1.bin
4fabde53555ea20b88d06b58cc02bdd79d9bd390  main-2.bin
4fabde53555ea20b88d06b58cc02bdd79d9bd390  main-3.bin
Maybe there are minor differences in DROM or Digital Signature, etc. I can do a byte-for-byte compare if someone wants to post their original bin file.
 
Thanks @CaseySJ for helping out and thinking along.

During troubleshooting before clearing CMOS, I have saved screenshots of RP05 and a full dump from IOReg on my Desktop. However, since clearing CMOS I was no longer able to boot into macOS, so I can't access those files or create new ones.

My system is currently still disassembled to allow access for flashing. I will try reassembling and booting, but I it's possible/likely macOS still won't boot.

In my flashing attempts I created many ROM backups, with many different checksums. Due to the sheer amount of reads/backups (in total I'm guessing 100+), I deleted backups and reused backup filenames (overwriting existing backups).
I did save some ROM backups in seperate folders though. Based on timestamps and checksums, the earliest consistent backups (from day 1, around the first attempts) have a checksum of 35aa1ad94d61b67556f926184249130f97d1fec8. The last 25 lines of strings Backup1.bin output for that backup are in the spoiler below:

Assuming TB ROM firmwares are identical across Z390 Designare boards, shouldn't their backup checksums also be identical?

If so, if you have a checksum for the original dumped ROM, it's way easier to spot which backup is the correct one. This original ROM checksum would also help in the programming process to know exactly when a read operation extracted the ROM correctly.

@iRamon

Sorry to hear about your difficulties. I have flashed the TB3 chip on two Designaires. I used the Pomona 5250 clip and RPI4 method. The first time the mobo was left in the case with the power cord unplugged. It took me four attempts to finally read and write the chip successfully.

The second time I just purchased a new board and tried to flash it as received, without installing. I attempted to flash about 10 times without success. Perhaps because I had left the pin 8 line not plugged into the RPI4. I gave up and installed the board into the case.

Once the system was running I decided to flash the TB3 ONE LAST TIME, before giving up. Again the power line was unplugged, and pin #8 was not connected -- probably wrong!

It took about five more attempts to finally read and flash the chip. The Pomona clip is very difficult to properly seat!!!

I looked into purchasing CaseySJ's suggested clip, but delivery was 4-6 weeks. I now have one on-order for delivery next month, just in case I ever need/want to re-flash these or other chips.

I supplied the checksums from the original TB3 ROMs in another post. My checksums for the original ROMs do not match between the two boards.
 
Just logged back into the Raspberry Pi and grabbed the pre-flashed (original) firmware from my main system:
Bash:
4fabde53555ea20b88d06b58cc02bdd79d9bd390  main-1.bin
4fabde53555ea20b88d06b58cc02bdd79d9bd390  main-2.bin
4fabde53555ea20b88d06b58cc02bdd79d9bd390  main-3.bin
Maybe there are minor differences in DROM or Digital Signature, etc. I can do a byte-for-byte compare if someone wants to post their original bin file.

Here's the TB3 ROM file read from my first Designare board.
 

Attachments

  • Designare-1.bin.zip
    268 KB · Views: 137
Just logged back into the Raspberry Pi and grabbed the pre-flashed (original) firmware from my main system:
Bash:
4fabde53555ea20b88d06b58cc02bdd79d9bd390  main-1.bin
4fabde53555ea20b88d06b58cc02bdd79d9bd390  main-2.bin
4fabde53555ea20b88d06b58cc02bdd79d9bd390  main-3.bin
Maybe there are minor differences in DROM or Digital Signature, etc. I can do a byte-for-byte compare if someone wants to post their original bin file.

Here's the TB3 ROM file read from the second Designare board.
 

Attachments

  • Backup1.bin.zip
    267.9 KB · Views: 104
I looked at the SSDT again yesterday and it's perfectly OKAY.

For issue #1, was it due to missing en0 in System Information --> Ethernet?
I actually never checked that. I went back to SMBIOS 19,1 and logout out of icloud and messages and rebooted a few times. Then I checked my phone setting for text Message forwarding and saw that the Hackintosh wasn’t checked. That seemd to fix it.
 
Here's the TB3 ROM file read from my first Designare board.
Here's the TB3 ROM file read from the second Designare board.
This helps to explain the checksum differences. There are differences in the scratch areas and in Active Region 2. But the actual Thunderbolt firmware from offset ox004000 to 0x080000 is identical.
 
...
Because Z390 boards will likely cease production in a couple of months, new users wishing to duplicate this build will probably look to the Z490 successor. So this build guide will adapt accordingly, but support for Z390 Designare will continue. So no worries there.
...
If @CaseySJ gets a Z490 system, he will create a new build description. :thumbup:
 
Why? Because I was lazy. I followed a search that said these cured the problem for another user and I didn't want dive in and do the work and figure this out.... but that was another day! That was yesterday... Today, I'm a much better person and am actually digging into to try and find the root cause... and I already ordered new hardware...

With the above kexts removed, Bluetooth works identically but I have no WiFi.
View attachment 463566View attachment 463568
Correct. I actually started from scratch and used your clean Catalina install mini guide thinking maybe the issue was with my original Mojave to Catalina build.

View attachment 463452View attachment 463453

I have the GC TitanRidge up and going on my Gigabyte Z390 Aorus Pro Wifi thanks to this guide, now the only 2 items left on my wish list are Unlock with Apple Watch and SideCar. Looking at CaseySJ's screenshot has left wondering if I have the wrong Broadcom hardware or if my config is still wrong. Any advice would be greatly appreciated.

View attachment 463401
New Broadcom card from Page 1 of this thread and BOOM! Unlock with AppleWatch works!

Much newer firmware and "Auto Unlock: Supported" is present


Screen Shot 2020-04-24 at 3.03.47 PM.png


The old/bad/wrong card turned out to be a BCM943223PCIRBT2... even though that isn't what I originally ordered. Check your part numbers kids! Here's the wrong one:
IMG_3341.png

Vs the correct card:
IMG_2366.png
 
Last edited:
I'll be d*@#$&! The Designare NVM33 is working on my GC-Titan Ridge. @scottkendall had mentioned he was using this on his card, so I tried it. Upon initial boot- 4K monitor plugged into dock DP port was detected after boot but remained a black screen. HD monitor plugged into HDMI of GPU showed posting and boot process. 4K monitor in black showed it was at 60hz. A reboot from there brought the 4K monitor to life. The 4K monitor was detected at post and boot process continued on that display and stayed active the whole way to the desktop- @60hz.

NVM33.jpg

NVM33-2.jpg
 
** Micro-Guide for Installing Intel WiFi Driver (Beta) **
Please do not quote this micro-guide in its entirety. Post a link instead.​
...
Is this the same driver as in the thread below? The 9560 is referenced in later posts as working but you have rub your stomach and tap your the top of your head at the same time.

 
Back
Top