Start a Conversation

Unsolved

L

1 Rookie

 • 

1 Message

288

March 27th, 2024 15:14

WD19TBS firmware update on Linux fails with SyntaxError

When trying to update WD19TBS firmware on Ubuntu 23.04 the upgrader fails with:

File "DellDockFirmwarePackage_WD19_WD22_Series_HD22_01.00.20.bin", line 179
    #
SyntaxError: source code cannot contain null bytes

Does anyone know how to fix it?

1 Rookie

 • 

2 Posts

May 1st, 2024 16:52

I've got this problem too!

Community Manager

 • 

56.9K Posts

May 7th, 2024 14:09

That firmware update was not tested/validated by Dell in Ubuntu 23.04 =

1 Rookie

 • 

8 Posts

August 1st, 2024 19:42

@DELL-Chris M​ 
its still the same for 24.04 btw..  1.00.20  says null bytes at line 179 still

1 Rookie

 • 

8 Posts

August 1st, 2024 21:10

I have ubuntu which is why i was using the website version..
it seems that I did not have to.  The firmware updater in Ubuntu got me a version newer than the one posted on the support website.. so yeah not required to execute this thing on the command line..

(edited)

1 Rookie

 • 

7 Posts

November 21st, 2024 11:02

@DELL-Chris M​, but is using the current version of Ubuntu likely to be the problem.  I dare say there have been updates to Windows, since it was validated/tested with that. 

Community Manager

 • 

56.9K Posts

November 21st, 2024 11:45

@PeterWXP​ Unknown. I can only show what the firmware update page shows as supported OS.

1 Rookie

 • 

1 Message

August 1st, 2025 13:50

The binary data in the self-extracting Python script is incompatible with Python because of a null byte character that is present. I was able to extract and run it manually on Ubuntu 24.04:

$ tail -n +179 DellDockFirmwarePackage_WD19_WD22_Series_HD22_01.00.20.bin > encoded_payload.txt
$ grep -a '^#' encoded_payload.txt | sed 's/^#\x0//' > b64_data.txt
$ base64 -d b64_data.txt > archive.zip
$ unzip archive.zip

This will give you a .cab file that contains the firmware and a snap for the firmware update utility that you can install with:


$ sudo snap install --dangerous --classic dell-dock-fwupdate.snap

This installs the utility at /snap/bin/dell-dock-fwupdate. Now you can check your current versions:

$ sudo dell-dock-fwupdate get-devices

And now you can install the update. Don't use the one that was extracted as part of the above steps though. It's outdated. Go and download the .cab file from the Windows section and use that:

$ sudo dell-dock-fwupdate install DellDockFirmwarePackage_WD19_WD22_HD22_WD25_SD25_01.01.04.cab

Verify the dock is ready to restart:

$ sudo dell-dock-fwupdate get-devices

and look for:

  │   Problems:           • Device is waiting for the update to be applied

then unplug the USB-C cables and the power adapter, wait 10s, then plug the power back in, then the USB-C cables. Finally, verify the updated versions with:

$ sudo dell-dock-fwupdate get-devices

No Events found!

Top