Contribute
Register

Asus Z690 ProArt Creator WiFi (Thunderbolt 4) + i7-12700K + AMD RX 6800 XT

@CaseySJ,

You're right, after seeing on last firmware ProArt Z690 Creator wifi 1003 version, I have found it on Guid EED54281-1C11-4358-BF5A-F64995FBF11B freeform (RAW data) :)

I have attached this file of this motherboard.

This thunderbolt firmware GUID is used by 2 Drivers and one Application :
  • a driver with guid D312F13E-9D2A-4E53-89B7-F6E9A810C92A, which include the following sting DevFwUpdatedDone
  • a driver with guid CCF23F50-F7C1-4F00-8E70-13643C37E8B0, which include the following string :
BIOS is updating Thunderbolt Nvm firmware.
Do not shut down or reset the system to prevent system bootup failure.
TbtNvmDrvSetImage: Invalid arguments

Image write started:

Got a FATAL error, exiting...
ImageSize : 0x%05x
Written so far : 0x%05x bytes
Got a error at offset 0x%08x!!!!

Image write finished.

Got an error while writing the image. As a recovery, starting again

Image write wasn't successefull due to a device error
Image was updated successefully and passed the authentication
  • an Application with guid 5EDCCC1A-F4CA-42F4-8D3E-CA4C0B396BF7, which include the following string :
Press any key to continue . . .
NVM.binCan't find NVM.bin.
Can't find %S.

****************************************
* ASUS TbtNvmDrvShellUpdate tool V1.6 *
****************************************
Support TBT module: Maple ridge
Support Platform: %s

Command: TbtNvmDrvShellUpdate.efi [Nvm.bin]

NVM file is not illegal,please check NVM file.

This file Nvm version is %x.%x

This platform don't support Tbt Nvm update so far
Please check bios version and contact Asus customer service

Please Unplug all device from Thunderbolt before update

Check file is valid and prepare for update,please wait a moment...

Can't get thunderbolt device!! please make sure it work normally.
If you make sure it work normally,but it's still fail,
that mean this platform don't support Tbt Nvm update so far.
Please check bios version and contact Asus customer service.

Current Nvm is newer!! no need update.

Update fail!!
Please check file is valid or contact Asus customer service
Update done!!,please reset now
Awesome. Will examine with Hex Fiend soon. I have a GC-Maple Ridge that uses familiar Winbond flash ROM. Our previous flashing efforts were not successful, but maybe I’ll try a few experiments… ;)
 
Last edited:
@CaseySJ,

You're right, after seeing on last firmware ProArt Z690 Creator wifi 1003 version, I have found it on Guid EED54281-1C11-4358-BF5A-F64995FBF11B freeform (RAW data) :)

I have attached this file of this motherboard.

This thunderbolt firmware GUID is used by 2 Drivers and one Application :
  • a driver with guid D312F13E-9D2A-4E53-89B7-F6E9A810C92A, which include the following sting DevFwUpdatedDone
  • a driver with guid CCF23F50-F7C1-4F00-8E70-13643C37E8B0, which include the following string :
BIOS is updating Thunderbolt Nvm firmware.
Do not shut down or reset the system to prevent system bootup failure.
TbtNvmDrvSetImage: Invalid arguments

Image write started:

Got a FATAL error, exiting...
ImageSize : 0x%05x
Written so far : 0x%05x bytes
Got a error at offset 0x%08x!!!!

Image write finished.

Got an error while writing the image. As a recovery, starting again

Image write wasn't successefull due to a device error
Image was updated successefully and passed the authentication
  • an Application with guid 5EDCCC1A-F4CA-42F4-8D3E-CA4C0B396BF7, which include the following string :
Press any key to continue . . .
NVM.binCan't find NVM.bin.
Can't find %S.

****************************************
* ASUS TbtNvmDrvShellUpdate tool V1.6 *
****************************************
Support TBT module: Maple ridge
Support Platform: %s

Command: TbtNvmDrvShellUpdate.efi [Nvm.bin]

NVM file is not illegal,please check NVM file.

This file Nvm version is %x.%x

This platform don't support Tbt Nvm update so far
Please check bios version and contact Asus customer service

Please Unplug all device from Thunderbolt before update

Check file is valid and prepare for update,please wait a moment...

Can't get thunderbolt device!! please make sure it work normally.
If you make sure it work normally,but it's still fail,
that mean this platform don't support Tbt Nvm update so far.
Please check bios version and contact Asus customer service.

Current Nvm is newer!! no need update.

Update fail!!
Please check file is valid or contact Asus customer service
Update done!!,please reset now
@CaseySJ

I have extracted TbtNvmDrvShellUpdate.efi application. We can test it under OpenCore shell to flash Thunderbolt firmware as defined on previous strings :

TbtNvmDrvShellUpdate.efi NVM.bin

For first time, we can see result with no NVM file and on a second time, with original firmware (previously extracted) by renamed it to NVM.bin
 

Attachments

  • TbtNvmDrvShellUpdate.efi
    9.7 KB · Views: 70
@CaseySJ

I have extracted TbtNvmDrvShellUpdate.efi application. We can test it under OpenCore shell to flash Thunderbolt firmware as defined on previous strings :

TbtNvmDrvShellUpdate.efi NVM.bin

For first time, we can see result with no NVM file and on a second time, with original firmware (previously extracted) by renamed it to NVM.bin
I can try this. It will, however, check the digital security signature! So we cannot flash a modified file.
 
We have NVM 31 on this board:
Screen Shot 2022-02-08 at 3.59.47 AM.png
 
I wonder why Asus is adding the ability to update the NVM? Bugs found? New NVM is coming soon? Seems like the ability to update the NVM should have been there from the original BIOS version like on z590?

Should the hot plug SSDT contain the DROM as found in the BIOS image?
 
I wonder why Asus is adding the ability to update the NVM? Bugs found? New NVM is coming soon? Seems like the ability to update the NVM should have been there from the original BIOS version like on z590?
Historically, we've been able to update Thunderbolt firmware from Windows. It's nice to be able to do so from BIOS or UEFI shell.

Should the hot plug SSDT contain the DROM as found in the BIOS image?
This is something we can definitely try. Not sure it will make a difference when Thunderbolt Bus is not activated.
 
I wonder why Asus is adding the ability to update the NVM? Bugs found? New NVM is coming soon? Seems like the ability to update the NVM should have been there from the original BIOS version like on z590?

Should the hot plug SSDT contain the DROM as found in the BIOS image?

Historically we've been able to update Thunderbolt firmware from Windows. It's nice to be able to do so from BIOS or UEFI shell.


This is something we can definitely try. Not sure it will make a difference when Thunderbolt Bus is not activated.
Here's the Thunderbolt DROM ready to be implanted into an existing SSDT.

Code:
% source ./ThunderboltUtil.sh
% loadfwfile Downloads/Thunderbolt/Asus_ProArt_Z690_Creator_Wifi_MAPLE_RIDGE_Thunderbolt_firmware.bin
% usedromnum 1

% dumpdrom

0x01) UID: 0x80871F7645FDBC00
0x0d) Device ROM Revision: 1
0x10) Vendor ID: 0x31
0x12) Device ID: 0x5021
0x14) Device Revision: 0x1
0x15) EEPROM Revision: 31
0x16)   1: 800200000000
0x1e)   2: 900100000000
0x26)   3: 800400000000
0x2e)   4: 900300000000
0x36)   5: 000000
0x3b)   6: 500000
0x40) - 7:
0x42)   8: 200100640000000000
0x4d)   9: 80
0x50)   A: 500000
0x55)   B: 500000
0x5a)   1: "ASUS"
0x61)   2: "PROART Z690 CREATOR WIFI"
0x7c)   9: 10044310f68731310000000001
0x8b)   B: 03818c04828d
0x93) End

% setport 0x07 ""
% dumpdrom   
 
0x01) UID: 0x80871F7645FDBC00
0x0d) Device ROM Revision: 1
0x10) Vendor ID: 0x31
0x12) Device ID: 0x5021
0x14) Device Revision: 0x1
0x15) EEPROM Revision: 31
0x16)   1: 800200000000
0x1e)   2: 900100000000
0x26)   3: 800400000000
0x2e)   4: 900300000000
0x36)   5: 000000
0x3b)   6: 500000
0x40)   7:
0x42)   8: 200100640000000000
0x4d)   9: 80
0x50)   A: 500000
0x55)   B: 500000
0x5a)   1: "ASUS"
0x61)   2: "PROART Z690 CREATOR WIFI"
0x7c)   9: 10044310f68731310000000001
0x8b)   B: 03818c04828d
0x93) End

% makedromdsl

    "ThunderboltDROM",
    Buffer (0x93)
    {
        /* 0x00     */  0x93,                                           // CRC8 checksum: 0x93
        /* 0x01     */  0x00, 0xbc, 0xfd, 0x45, 0x76, 0x1f, 0x87, 0x80, // Thunderbolt Bus 0, UID: 0x80871F7645FDBC00
        /* 0x09     */  0x07, 0xa5, 0x9d, 0x35,                         // CRC32c checksum: 0x359DA507
        /* 0x0D     */  0x01,                                           // Device ROM Revision: 1
        /* 0x0E     */  0x86, 0x00,                                     // Length: 134 (starting from previous byte)
        /* 0x10     */  0x31, 0x00,                                     // Vendor ID: 0x31
        /* 0x12     */  0x21, 0x50,                                     // Device ID: 0x5021
        /* 0x14     */  0x01,                                           // Device Revision: 0x1
        /* 0x15     */  0x1f,                                           // EEPROM Revision: 31
        /* 0x16   1 */  0x08, 0x81, 0x80, 0x02, 0x00, 0x00, 0x00, 0x00,
        /* 0x1E   2 */  0x08, 0x82, 0x90, 0x01, 0x00, 0x00, 0x00, 0x00,
        /* 0x26   3 */  0x08, 0x83, 0x80, 0x04, 0x00, 0x00, 0x00, 0x00,
        /* 0x2E   4 */  0x08, 0x84, 0x90, 0x03, 0x00, 0x00, 0x00, 0x00,
        /* 0x36   5 */  0x05, 0x85, 0x00, 0x00, 0x00,
        /* 0x3B   6 */  0x05, 0x86, 0x50, 0x00, 0x00,
        /* 0x40   7 */  0x02, 0x87,
        /* 0x42   8 */  0x0b, 0x88, 0x20, 0x01, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00,
        /* 0x4D   9 */  0x03, 0x89, 0x80, // PCIe xx:04.0
        /* 0x50   A */  0x05, 0x8a, 0x50, 0x00, 0x00,
        /* 0x55   B */  0x05, 0x8b, 0x50, 0x00, 0x00,
        /* 0x5A   1 */  0x07, 0x01, 0x41, 0x53, 0x55, 0x53, 0x00, // Vendor Name: "ASUS"
        /* 0x61   2 */  0x1b, 0x02, 0x50, 0x52, 0x4f, 0x41, 0x52, 0x54, 0x20, 0x5a, 0x36, 0x39, 0x30, 0x20, 0x43, 0x52, 0x45, 0x41, 0x54, 0x4f, 0x52, 0x20, 0x57, 0x49, 0x46, 0x49, 0x00, // Device Name: "PROART Z690 CREATOR WIFI"
        /* 0x7C   9 */  0x0f, 0x09, 0x10, 0x04, 0x43, 0x10, 0xf6, 0x87, 0x31, 0x31, 0x00, 0x00, 0x00, 0x00, 0x01, // "10044310f68731310000000001"
        /* 0x8B   B */  0x08, 0x0b, 0x03, 0x81, 0x8c, 0x04, 0x82, 0x8d, // "03818c04828d"
    },
 
1
The Asus Z690 Maximus Formula also has 1 AURA RGB header and 3 Addressable RGB headers.
  • If you can identify the color modes that work, I can modify the driver accordingly.
  • When you say other channels go dark, does that mean:
    • Some dynamic commands (rainbow, spectrum_cycle_wave) work on all channels
    • Other dynamic commands (breathing) work on one channel because other channels turn off
    • Static mode works okay on all channels and can set colors independently?
Regarding other channels turning off, please try this:
  • Uncomment these 3 lines by removing the leading # mark
  • Then see if breathing works without turning off other channels
View attachment 541445
Didn't work.
 
Hello and thanks to CaseySJ for all his work and effort!

Interesting. It seems that when a PCIe 4.0 NVMe SSD is installed along with a PCIe 3.0 NVMe SSD, then the faster PCIe 4.0 device should be placed ahead of the PCIe 3.0 device. Hence:

Config 1: Correct
  • M.2 Slot 1: PCIe 4.0
  • M.2 Slot 2: PCIe 3.0
  • M.2 Slot 3: PCIe 3.0
Config 2: Not correct
  • M.2 Slot 1: PCIe 3.0
  • M.2 Slot 2: PCIe 4.0 <-- 4 cannot come before 3
Config 3: Correct
  • M.2 Slot 1: PCIe 4.0 <-- my system has WD SN850 PCIe 4
  • M.2 Slot 2: PCIe 4.0 <-- my system has Sabrent Rocket PCIe 4
  • M.2 Slot 3: PCIe 3.0 <-- my system does not have any other M.2 drives
I'm returning to this question because I'm experiencing something similar myself... i.e. the computer occasionally reboots after this kernel panic:

panic(cpu 3 caller 0xffffff801453b836): nvme: "3rd party NVMe controller. PCI link down. Write. fBuiltIn=1 MODEL=SPCC M.2 PCIe SSD FW=ECFM32.1 CSTS=0xffffff US[1]=0x0 US[0]=0x41 VID=0xffff DID=0xffff CRITICAL_WARNING=0x0.\n"

On my mb I have 3 NVMe installed, all PCIe 3.0:

M.2 Slot 1: Silicon Power A80 PCIe 3
M.2 Slot 2: WD SN750 PCIe 3
M.2 Slot 3: Silicon Power A80 PCIe 3
M.2 Slot 4: Empty

I was able to verify that by moving the NVMe from slot 3 to slot 4, the issue seems to disappear.
That is, I seem to have the problem if I keep slot 3 filled.
 
Back
Top