Upgrading the firmware on a Dell XPS 13, TB16 and D3100 docking stations


The Dell XPS 13 (talking about the 9360, Kaby Lake version) is a nice laptop, it can be ordered from Dell with Linux on it. Linux (I use Kubuntu 17.04) works out of the box, with every bit and piece supported. I only replaced the wifi module with the Intel 7265, it shows a better stability with the corporate wifi services I have to work with.

The laptop came with Windows 10 Pro pre-installed. I erased the SSD, installed Kubuntu, and was happy with it. I recovered the Windows 10 Pro license to use under Virtualbox. I used this command to recover the license:

sudo cat /sys/firmware/acpi/tables/MSDM

Then I bought 2 docking stations: the Dell D3100 and the Dell TB16. Those docking weren’t working stable enough for my taste, I had some annoying issues, e.g. with hot-plugging the laptop. So I thought “let’s upgrade all these firmwares”. Turns out, modern hardware has a lot of firmware running, they are all over place. Upgrading them from Linux is not an option for now.

So I needed a Windows 10 running. This is how I proceeded:

  • ensure my Windows 10 VM isn’t running
  • convert its disk to an image:
VBoxManage internalcommands converttoraw Windows-10.vdi ~/tmp/win10.img
  • copy the image to an USB disk (you should know how to select /dev/sdX below):
dd if=~/tmp/win10.img of=/dev/sdX bs=4M

The resulting disk booted my XPS 13 easily (had to go to the boot menu with <F12> and select legacy USB boot). I let it boot, it took some time to adjust to the new hardware (it as running on a Virtualbox PC before). Then, I followed this procedure:

  • remove / de-install the Virtualbox VM guest additions.
  • install the Dell Update tool (get it from dell.com/support).
  • and then wait a long while until it found out the whole bunch of stuff to upgrade : BIOS, chips, drivers, power-manager, kitchen-sink, etc. It took about one hour, with a few reboot in between.
  • I then plugged-in every docking station, one after the other, watching Dell Update installing the drivers. I rebooted once with each docking, as it looks like the docking firmware is upgraded at driver start. I’m not sure about it, I think I read it on a forum, Dell doesn’t provide any release notes.

I’m now keeping this disk handy, for future upgrades. Smarter than dual-boot and eating 30-50 Gb of my precious SSD space. And finally, does it work better ? I think so. After 2 days, I have less issues. It looks like the Realtek ethernet chips in the docking stations are still causing problems, but it’s probably related to the Realtek driver, not the docking themselves.