Updating the firmware on a StarLite Mk V

21.07.2024

Preface

I’ve recently received my StarLabs StarLite Mk V. It’s a pretty new device that was released only a few weeks ago. And given that it’s one of the only full-fledged Linux tablet computers out there, I would consider it an experimental device. Which means that it requires some tinkering here and there. I will write a longer review of the device at some point but for now some technical posts will follow in the hope that they will help other owners of a StarLite Mk V.

Updating the firmware

The device came with the most up-to-date firmware (24.05) when I received it but there was a newer release since then that has fixed some crucial issues. This post explains how to update the firmware and what I specifically had to do because I use openSUSE Tumbleweed, a distro that’s not provided out of the box by StarLabs.

The information provided by StarLabs is a bit scattered all over their websites, e.g. here and here. That’s why this post tries to consolidate the process of updating the firmware on a StarLite Mk V.

  1. Plug in the power supply of your device. (Just do it. You don’t want bad things to happen.)
  2. Open a terminal and run cat /sys/class/dmi/id/ec_firmware_release to see the current version of your device’s firmware.
  3. Check if there’s a newer one available on the LVFS website or the StarLabs github page. The former will show what’s already available over official release channels and the latter will show what’s currently being worked on (possibly already installable via other methods not covered in this post but often described in the github issues themselves). At the time of writing, firmware version 24.06 is the latest release.
  4. Run fwupdmgr get-devices to see the internal devices that can be updated. (If you don’t see anything here, take a short detour to the next section now.)
  5. Run fwupdmgr refresh to update the list of available firmware updates.
  6. Run fwupdmgr update to update the firmware itself.
  7. Shut down your device, unplug the power cable and leave it sitting for ~10 seconds or until its LED flashes a few times.

You may turn on your device again and enjoy your updated firmware. :)

Note that the GUI package managers of the bigger desktop environments (KDE’s Discover for example) can automagically take care of most of this process for you. All you need is the LVFS plugin for it and you’re set. If it still doesn’t work though (like it was the case for me), you should read on below.

When step 4 fails

If step 4 fails for you (for example not showing any updatable devices), this can be possibly be fixed very easily. The issue might be that your distribution may not have enabled the flashrom plugin in fwupd. You can check if that’s the case with the following command and search for flashrom in the long output list from this command:

fwupdmgr get-plugins

If the flashrom plugin is shown as disabled, run the following:

echo -e "[3d9415bb-3027-541b-99b7-cf21e5383bdb]\nPlugin = flashrom" | sudo tee /var/lib/fwupd/quirks.d/flashrom.quirk

Afterwards you need to restart fwupd for the change to take effect:

sudo systemctl restart fwupd

My source for this information has been a post by Sean from StarLabs. This issue seems to occur not only on openSUSE Tumbleweed like it was the case for me but it also seems to affect other distros like Arch, so it’s definitely worth a shot if you can’t update your firmware

Have fun updating!

Comments

Respond to this post with an account on the Fediverse (like Mastodon).