The Zotac ZBOX PI320 pico is a tiny desktop computer that’s small enough to fit in the palm of one hand. The $200 computer features an Intel Atom quad-core processor, 2GB of RAM, 32GB of storage, WiFi, Bluetooth, Ethernet, HDMI, and 3 USB ports. And it runs Windows 8.1 software out of the box.

While it’s that last part that makes the ZBOX pico different from some of the other mini PCs on the market, you might not want to run Windows. So can you install a different operating system?

Yes… kind of.

pico ubuntu_02

Officially the PI320 only supports UEFI bootable media and it can only support a 32-bit UEFI BIOS. Since most Linux installations that support UEFI are currently 64-bit builds, you can’t simply load the 32-bit versions of Ubuntu, Mint, Fedora, or other popular operating systems on the ZBOX PI320 pico and expect them to work.

But there is a workaround that can get you part of the way there. You can create a bootable USB drive containing a 64-bit operating system and a 32-bit bootloader. The process is almost exactly the same as the steps I took get Ubuntu to run on an Asus Transformer Book T100 tablet last year. That’s another computer with an Intel Atom Bay Trail processor.

pico ubuntu_03

I was able to boot an Ubuntu LiveUSB using this method. I could probably have gone ahead and installed Ubuntu as well, but while Ethernet was working, WiFi was not. There may be other hardware that’s not yet supported.

If you want to run a fully functional Linux operating system on a device like the ZBOX PI320 pico, you may have to troubleshoot the hardware drivers yourself… or wait for a Linux distro to add 32-bit UEFI support. For now, Linux support is limited at best.

Want to create your own bootable USB flash drive capable of running on the ZBOX pico or another 32-bit UEFI-only device with an Intel Bay Trail processor? John Wells has posted some easy-to-follow instructions for the Transformer Book T100.

The first section tell you almost everything you need to know to prepare a bootable USB flash drive that will work with the pico.

In a nutshell do the following things on a Windows computer (the steps would be similar, but the tools different if you’re using a Linux or Mac system):

  • Download a recent AMD64 build of Ubuntu.
  • Download the Rufus USB bootable image creator.
  • Burn your Ubuntu image to a USB flash drive choosing “GPT partition scheme for UEFI computer” and “FAT32” options.
  • Close Rufus and open Windows Explorer.
  • Navigate to the EFI\Boot folder on your newly prepared flash drive.
  • Download the bootia32.efi bootloader and copy it to that folder.

At this point all you need to to is eject the flash drive, connect it to the device you want to use it to, and convince that computer to load software from the USB drive instead of from internal storage.

In the case the Zotac ZBOX PI320 pico you do this by pressing the power button to turn on the computer, hitting the Esc or Del keys before you see the splash screen, and entering the UEFI settings.

pico boot order

From there, make sure Secure Boot is disabled, and navigate to the Boot tab and make sure the USB 2.0 option is higher in the list than “Windows Bootloader.”

Hit F10 to save and exit, and your system should reboot to the GRUB bootloader. The top option should let you try Ubuntu without installing it. I highly recommend using that option before deciding whether you want to install Linux on this system, since it gives you a chance to see which hardware components are working and which ones are not.

pico ubuntu_01

Update: If you want to create a dual-boot setup, you’ll need to jump through some hoops in order to get the GRUB bootloader to display when you boot the system. Liliputing reader neverless lets us know that you can find instructions for doing that at the German LinuxForen.de forum.

Support Liliputing

Liliputing's primary sources of revenue are advertising and affiliate links (if you click the "Shop" button at the top of the page and buy something on Amazon, for example, we'll get a small commission).

But there are several ways you can support the site directly even if you're using an ad blocker* and hate online shopping.

Contribute to our Patreon campaign

or...

Contribute via PayPal

* If you are using an ad blocker like uBlock Origin and seeing a pop-up message at the bottom of the screen, we have a guide that may help you disable it.

Subscribe to Liliputing via Email

Enter your email address to subscribe to this blog and receive notifications of new posts by email.

Join 9,544 other subscribers

28 replies on “How to run Ubuntu on the Zotac ZBOX pico mini PC (kinda)”

  1. I know this is an old thread, but I just now bought one of these things to replace a headless Raspberry Pi server.

    As far as I can tell, the only Linux you can install on this device and have it work out of the box is Debian 8.2 Jessie. And only the 32-bit version from the multi-arch installer works.

    I booted multi arch netinst (from https://cdimage.debian.org/pub/debian-cd/current/multi-arch/iso-cd/debian-8.2.0-amd64-i386-netinst.iso) and installed 64-bit Jessie on it. I then got stuck at the “Loading initial ramdisk” message and couldn’t ping the server.

    It turns out that if, before booting, I went into the Zotac bios and exited, then the system wouldn’t get stuck on “Loading initial ramdisk”.

    I re-installed with 32-bit Jessie, and it doesn’t get stuck at all.

    It’s a headless server, and all I really care about working are storage and ethernet. But as far as I can tell, everything is working perfectly now.

    I did manage to get an Ubuntu 15.04 64-bit live image to boot (after copying bootia32.efi from https://github.com/jfwells/linux-asus-t100ta/blob/master/boot/bootia32.efi into the EFI/Boot directory on the usb drive), and I used Ubuntu live to back up the mmc drive before installing Debian.

    But I wanted to use Debian on the server anyway.

  2. The SDIO WiFi adapter (it is a Ampak AP6383 [corresponding to a BroadCom BCM4430] chip which also includes the Bluetooth 4.0 and FM receiver function) is supported by Ubuntu Linux. However the ACPI of the ZBOX PI320 nano is currently broken and thus WiFi is switched off. The work around is given on https://askubuntu.com/questions/566130/ubuntu-does-not-detect-wifi-bt-combo-card-bcm4330-ap6383 which brings WiFi to life and also shows hot to enable the power button in Ubuntu (which is also an issue of the ZBOX’s current ACPI).

  3. is there on the PI-320 any hidden protection, so that it is not possible to boot on any USB external bootable device, even if set in the BIOS ?

  4. “your system should reboot to the GRUB bootloader”…
    it should, but it doesn’t. i tryed everything i could, But even after setting UEFI : USB disk, fot boot, the system still continue with “Windows Boot Manager”. i tryed to desactivate completely “windows boot manager”… then the sigle ZOTAC keeps displaying on the screen.
    i never seen that before on never PC computer. I use to boot for drive imaging my OS, or installing others, and everytime i set the BIOS to boot on some external devices, it does boot on it.
    The PI Zotac doesn’t.
    Please help.
    i would like to install Windows 7 instead of this crappy Windows 8 because i would like to run “Orbiter”, and some other editing sofwares which runs no more on Windows 8.

    And to be able to use the original Zotac DVD restoration.

    1. Did you ever solved this problem and got Win7 on the Zbox?
      Im trying to downgrade to win7 pro, but It wont reconize my bootable USB..

  5. Thanks for this! I got Ubuntu 14.10 installed and running on a little ECS “Liva” box; no luck getting WiFi to work yet (lspci doesn’t even show the AzureMedia card?) but I hadn’t planned on using wireless so that’s not a problem for me.

  6. Have managed to boot Ubuntu 14.10 from Stick. Resized Windows partition and installed Ubuntu from stick, but it boots to Windows everytime (press “F8” for selecting the boot partition). The main problem is the 32Bit-UEFI which can´t load the grubx64.efi. Just renaming a bootia32.efi to grubx64.efi doesn´t work… any ideas?

  7. I hope coreboot and linux will support intel z3735 in the future. There are many low cost (<$150) z3735 windows tablets in China market. I can buy one and install chromium os or kde on it.

  8. Also if you plug in a Linux compatible USB Wi-Fi dongle I believe ubuntu should pick it up. Same with the transformers. Have you tried any?

  9. How is the performance?
    Is unity a little slow in these?
    I think it would be great with cinammon / mint.

    I hope Ubuntu becomes an alternative soon to win8 on all these small and mobile devices. Maybe some will even pre installed

  10. Sounds quite expensive compared to ARM equivalents offered by HardKernel. Just a question, why on earth would you even want to install 32 bit Linux in this day and age, I’ve been using 64 bit Linux for at least 5 years now, every single machine and VM I have is 64 bit.

  11. Thanks for posting articles like this Brad. All these cheap mini PCs are so tempting, but the biggest detail left out by manufacturers is the Bios/UEFI situation.

    I still think the best device for people wanting a cheap mini PC to run Linux is the Celeron-powered Intel NUC DN2820FYKH. For $159 ($260ish when you add 4gb ram, and a 120gb SSD) you can’t go wrong. It boots anything.

    1. this box comes with the Z3735f SoC, which includes a wifi part.

      If all intel atom bay trail Z37xx share the same wifi component, then it should be an Atheros 6k one according to a kernel bug report : bugzilla.kernel.org/show_bug.cgi?id=67921

      1. Where did you get the info about WiFi being built-in? That bug report talks about a WiFi chip connected to the SoC’s SDIO interface.

        1. Thank you for making me realize i was wrong about the atom bay trail soc wifi characteristics (i think i confused those with snapdragon 8xx platforms ones).
          Now i think i understand why the wifi didn’t work in Brad’s ubuntu 14.10 test.
          Do you know if for a specific atom BT soc, the Z3735F for example, every device manufacturer can chose any wifi chip compatible with the sdio interface ?
          If so, the linux support of all those devices might be a nightmare.

  12. I read that with a 3.15+ Linux kernel, it’s more straight forward to boot 64-bit kernel on a system with a 32-bit only UEFI. I wonder if the betas for Ubuntu 14.10 can boot.

    1. Not without the 32 bit bootloader. I tried booting from an Ubuntu 14.10 beta first and the PC just didn’t recognize the boot media. Then I tried the method outlined in this article with a more recent nightly AMD64 build and it booted just fine.

      1. does that mean you booted from a nightly ubuntu 14.10 beta usb key and the wifi didn’t work?
        i had hopes that wifi and bluetooth would work when using the 3.16 kernel.

Comments are closed.