A Better Raspberry Pi? Dell Wyse 3040 Project #1

I recently got my hands on a few Dell Wyse 3040 machines, and if you don’t know, these little boxes are pretty good for the price. I found them online for $29.99 new without accessories (mouse/keyboard). They’re basically ThinClients, but with a catch. They natively run ThinOS, Dell’s virtualization deployment OS. Unfortunately there isn’t much you can do with the stock OS without the Wyse management suite and a server running VMs. However, they do run the standard Dell UEFI BIOS! This means you can boot from a USB and install almost any OS you want that can run on an x86 system with UEFI. I say almost because the ones I have only come with 8GB eMMC storage onboard, which means getting Windows 10 on it is a hassle.

What could you possibly want with a system running an Intel Atom x5, 2GB RAM, and only 8GB eMMC? Well for $30 that’s not bad at all, but it gets better. You get a nice handful of I/O: 2x Display Port, 4x USB-A with some 2/3.o, a 3.5mm jack, Ethernet, and a power adapter plug; all good things. My units also came with built in WiFi! A similarly spec’d RPi 4 I bought a few months ago total’d out at $60, mostly because I bought a nicer 32GB XC SD card and case/kit thing. As much as I like the RPi for Linux projects, it’s hard not to pass up the Dell on $/performance. But, there is a catch.

First time install – I tried the usual suspects; Debian, Ubuntu, Xubuntu, Zorin, Manjaro. None of them seemed to work properly, half of the USB installers wouldn’t read properly on the Wyse. Weird, right? Well, I dusted off my Arch Linux installer and got to work. Everything went smoothly until I had to install grub in the EFI partition. It just simply wouldn’t boot into the Arch install, only the USB. So I did plenty of digging and stumbled across this blog post: https://blog.roberthallam.org/2020/05/psa-dell-wyse-3040-uses-fallback-efi-location/

A-ha! A default boot location. I quickly redid my partition scheme and set grub to boot from /EFI/BOOT/BOOTX64.EFI, problem solved. Arch is running fine now. So from now on, all you would need to do to get your favorite distro running is to edit the EFI and grub install location. This seems to work on my second unit which is now running Debian. So what can we use this for? With XFCE and light-gtk-greeter running on Arch, the system is a little too slow for a full desktop experience. I would recommend running Arch as CLI only. I haven’t tried Plasma, and GNOME will definitely run just as terribly I suspect, so there is definitely some testing needed. But what about a Kubernetes cluster? A DNS machine? There are plenty of Linux projects available on this little $30 machine! I’ll explore some options in the next installment in this series.

6 thoughts on “A Better Raspberry Pi? Dell Wyse 3040 Project #1

  1. Glad you got this working! 🙂 The EFI location is an irksome stumbling block.

    Another possible advantage is that it’s non-ARM, which can be handy if the thing you want isn’t built for ARM 🙂

    I’m using one Wyse as a HTPC, and another (a 7020) as a thin client of sorts. Though for the latter there’s an RPi3/4 build aimed right at that called xtc (https://vmfree.org/xtc/xtcen.html)


  2. Great project any chance of some info on how to edit the partition scheme I’m very new to Linux I’ve got Linux live usb running so can see the install on the MMC/SD drive and contents many thanks if you could help

    1. You should check out something like fdisk! I use it more often than any other partitioning tool. It can be found in the util-linux package. As to what partitions you need to create, that’s up to you. You’ll need an /efi and / (root) partition at a minimum.

  3. Hi there,
    very interesting thank you. I have one layign around and I would love to install debian on it, I am afraid I cannot redo the partition properly and set boot to grub from the position you have mentioned, do you have any guide to check my step by step please?

    1. For Debian specifically, I’m not 100% sure. I /think/ there is an advanced option during install to set the GRUB parameters, which will allow you to create and install to the /EFI/BOOT/BOOTX64.EFI file path. Arch is surprisingly much more straight forward as you set all of these parameters and file-paths during setup to whatever you want. It takes a lot more tinkering to get it working, but the end result is better.

Leave a Reply to crimesjohnson Cancel reply

Your email address will not be published.