XPS 9370 : unable to update Thunderbolt 3 firmware  

 

Tompouce
(@tompouce)
New Member
Joined:4 months  ago
Posts: 3
March 3, 2018 10:13 pm  

Hi there,

I just acquired a new XPS 13 (9370) with 2 thunderbolt 3 ports pcie x4 and OPI GT4. I was eager to test my External GPU (Mantiz venus + GTX 1050 Ti + SSD 250) enclosure through Thunderbolt 3. But to obtain the full speed of this enclosure connected to the thunderbolt 3 I needed to have the last version of the TB3 Firmware  installed (version 25). 

I started by updating all my drivers and bios by connecting on dell support with my service tag. After installing all this i installed the thunderbolt 3 controller driver (Intel-Thunderbolt-Controller-Driver_39G55_WIN_17.1.64.250_A04.EXE) from dell support. Then I tried to update the Thunderbolt 3 firmware from dell support (Intel_TBT3_FW_UPDATE_NVM28_3H3DP_A01_4.28.06.001.exe). Unfortunatly I obtain this error :

Error

Therefore I reinstalled the dell Thunderbolt controller driver and retried to update the firmware. But I obtained the same error. 

When I check the current driver and firmware version of the thunderbolt 3 program i obtain the following.

Driver


And if I try to connect my egpu enclosure I got an error seing that my external device may not work correctly.

Error 2



And indeed when I launch a test of the Egpu, I only obtain half of the expected bandwidth in wrinting speed.

 

Speed

Here is a post of a similar configuration (XPS 9370 + akitio node + 1070) showing what i should obtain in term of performance.

https://egpu.io/forums/pc-setup/dell-xps-13-9370-akitio-node-nvidia-1070/

 

Does anyone have a hint for my problem on the update of the TB3 firmware?

Thanks by advance for your help.

Best Regards.

  

Edited: 4 months  ago

ReplyQuote
tanantish
(@tanantish)
Active Member
Joined:4 months  ago
Posts: 9
March 8, 2018 4:24 am  

That actually looks pretty much like what I have on my machine - I have the same dell XPS and my build went smoothly using an aorus gaming box/1070, so I don't think your host is the issue.

Have you had your Mantiz for a while? If so, you might need to look at  checking your enclosure's firmware - see  https://egpu.io/forums/thunderbolt-enclosures/mantiz-venus-sep-2017-firmware-with-full-22xxmib-s-bandwidth-dynamic-i-o-port-bandwidth-archive/


ReplyQuote
FJFG84
(@fjfg84)
Active Member
Joined:3 months  ago
Posts: 11
March 8, 2018 5:36 pm  

I had exactly the same issue on a DELL Latitude 7285... Even worse, my NVM version is 16... I've tried everything with no luck, always is the same as you post:

My eGPU enclosure is MANTIZ Venus, purchased after January 2018, so it comes with the updated firmware. Glad i works and only fails when starting a game, that it works for a few seconds and the crash... but for work it works fine, even my CUDA-Z shows full speed:

Maybe one day DELL update their Thunderbolt drivers on the support web, so we have a correspondent drivers and firmware utility.


ReplyQuote
karatekid430
(@karatekid430)
Trusted Member
Joined:8 months  ago
Posts: 62
April 24, 2018 10:37 am  

If anybody is interested, I just updated my Dell 9370 NVM with the Dell 9575 NVM and nothing exploded or bricked.
It went from NVM28->NVM30 and External GPUs Supported: No->Yes
Not that the External GPUs Supported flag ever seems to matter. My eGPU worked with Dell 9365 with NVM09 and "No".

2018 04 24
2018 04 24 (1)

Flash at your own risk, use common sense and remember that if you flash an incompatible firmware, it could brick the Thunderbolt controller.

I was brave enough to try with mine because I had done the same in the past when I had the Dell 9365, and it successfully accepted firmwares from any Dell laptop with the same Thunderbolt controller model.

You will need Linux with a recent kernel. 4.13 or 4.14 is the minimum, but ideally just install 4.16.2 for now.

If no Thunderbolt devices are attached, you will need to wake the controller:
echo 1 | sudo tee /sys/bus/wmi/devices/86CCFD48-205E-4A77-9C48-2021CBEDE341/force_power

Then find out current NVM version:
cat /sys/bus/thunderbolt/devices/0-0/nvm_version

If 23, then we should back up - the 23 comes from factory, but only 28 is available for download. We will need to back up should we ever wish to revert. To back up, do:

sudo dd if=/sys/bus/thunderbolt/devices/0-0/nvm_active0/nvmem of=/path/to/backup/destination/file

Now we need to download the exe file from here:  http://www.dell.com/support/home/us/en/19/drivers/driversdetails?driverId=TRC47 - or just do:

cd ~/Downloads
mkdir harambe && cd harambe
wget  https://downloads.dell.com/FOLDER04765332M/1/Intel_TBT3_FW_UPDATE_NVM30_TRC47_4.30.02.002.exe
7z e *

Which should produce 0x080D_secure.bin within a subdirectory. You can verify it uses the same Thunderbolt controller as the Dell 9370 by:

hexdump -s19472 -n4 0x080D_secure.bin

Now to flash:

sudo dd if=0x080D_secure.bin of=/sys/bus/thunderbolt/devices/0-0/nvm_non_active0/nvmem
echo 1 | sudo tee /sys/bus/thunderbolt/devices/0-0/nvm_authenticate

If no Thunderbolt devices attached, wake it again:

echo 1 | sudo tee /sys/bus/wmi/devices/86CCFD48-205E-4A77-9C48-2021CBEDE341/force_power

Verify new NVM:

cat /sys/bus/thunderbolt/devices/0-0/nvm_version


ReplyQuote
karatekid430
(@karatekid430)
Trusted Member
Joined:8 months  ago
Posts: 62
April 25, 2018 6:47 am  

You guys didn't know that Windows NVM flashing only seems to work for 16.2 Thunderbolt driver or similar? It has been an issue for a long time.

It is more of an issue for flashing peripherals, but it could be an issue for flashing host firmware, particularly when using the Intel tool.

You can try using the Dell tool - download a firmware NVM exe, extract the exe using 7z and find packed inside the fwupdatetool.exe. Ignore the bin file that comes with the Dell archive unless it is actually the one you want.

The command is:

fwupdatetool.exe /up1 /path/to/nvm.bin

Or without the forward-slash in front of up1? Cannot remember. It's been a while.
Can add /f to downgrade or flash incompatible firmware - but only do so at your own risk and only if you are sure the file is compatible.
If you don't have a Thunderbolt device then you will need to find a way to force the Thunderbolt controller power. On Linux that is trivial regardless of vendor. On Windows, it depends on vendor. The unextracted Dell NVM exe files force the power, but only on Dell systems, afaik.

Edited: 2 months  ago

ReplyQuote
Tompouce
(@tompouce)
New Member
Joined:4 months  ago
Posts: 3
May 7, 2018 10:55 pm  

Hi karatekid430, 
Just saw your answer on my subject.
So do you think that under windows by unzipping the NVM 30 and using the cmd FwUpdateCmd.exe Up1 /f firmware_file.bin  I could patch my firmware from NVM 23 to NVM 30 if I have 16.2 or 16.3 trhunderbolt driver installed without risks?

Thank in advance


ReplyQuote
Tompouce
(@tompouce)
New Member
Joined:4 months  ago
Posts: 3
May 23, 2018 8:52 pm  
Posted by: karatekid430

You guys didn't know that Windows NVM flashing only seems to work for 16.2 Thunderbolt driver or similar? It has been an issue for a long time.

It is more of an issue for flashing peripherals, but it could be an issue for flashing host firmware, particularly when using the Intel tool.

You can try using the Dell tool - download a firmware NVM exe, extract the exe using 7z and find packed inside the fwupdatetool.exe. Ignore the bin file that comes with the Dell archive unless it is actually the one you want.

The command is:

fwupdatetool.exe /up1 /path/to/nvm.bin

Or without the forward-slash in front of up1? Cannot remember. It's been a while.
Can add /f to downgrade or flash incompatible firmware - but only do so at your own risk and only if you are sure the file is compatible.
If you don't have a Thunderbolt device then you will need to find a way to force the Thunderbolt controller power. On Linux that is trivial regardless of vendor. On Windows, it depends on vendor. The unextracted Dell NVM exe files force the power, but only on Dell systems, afaik.

By using the command you suggested on windows 10 with 16.2 thunderbolt driver, I was able to update the controler firmware to version 28 with the XPS 9370 file from dell support. And then I was able to update to version 30 by using the XPS 9575 file from dell support. Everything works fine and i now also have the egpu enabled support option enabled now on the thunderbolt properties.

However I have something weird that happened : On my thunderbolt properties windows i now have two controlers that appear! One with version 23 and the other one with version 30.
Is it normal? 


ReplyQuote