Changing the Boot Image on a NUC

I use several NUCs as home theater PCs, and they all do very well. The NUC’s powerful hardware combined with Libreelec and Kodi makes for a truly “set-top-box” feel. Every once in a while, though, I catch the NUC booting up and the boot screen takes away from that experience.

Since Intel offers a utility to change the boot image, I decided to give it a try and see if I could make the HTPC NUC even closer to a “this is totally NOT a PC” look. The good news is the utility works. The bad news is, it’s fussy and frustrating, and getting exactly what you want isn’t as simple as following the instructions.

You can find Intel’s instructions and download link here. The size and format requirements for the image are:

  • Must be .JPG file type
  • Maximum file size: 60KB
  • Minimum image size: 120 x 120 pixels
  • Maximum image size: 1920 x 1080 pixels

I went out and found a boot image I thought would be a good fit for a Libreelec-based home theater system:

Subtle, but I think it’ll work

Next, the instructions have you download the Intel Integrator Toolkit and copy it to a floppy along with your chosen image. You then go into the BIOS and enable the internal UEFI shell. All that’s left is to boot into the shell and run the commands as listed in the instructions. What you’re doing is creating a custom bios image (with your jpg file in it), and flashing the NUC with it. Easy, right? Well, not so much.

I started my journey on my new i5 Islay Canyon NUC. I have it set up as an HTPC (I’ll have that review up soon) and it seemed the logical choice for this. Unfortunately, when I ran the command to create the custom boot image it gave me the message “unable to query system capabilities.”

I contacted the NUC team and asked if they’d seen this issue before they said they hadn’t, but after some experimenting were able to reproduce it. As it turns out, Islay Canyon uses an AMI BIOS, not the traditional NUC BIOS.

If your BIOS looks like this, you’re out of luck

The utility won’t work on an Islay Canyon unit yet. There is an updated version in the works, but for now the utility only works on non-AMI BIOS NUCs.

Traditional Visual BIOS…should work

So I grabbed one of my other HTPC NUCs, this one an Arches Canyon. I repeated the process, flashed it with my custom BIOS, and rebooted…to nothing. The NUC booted just fine, but instead of a boot image, it showed a big bunch of black. I thought this odd, so I double-checked and verified my image did in fact meet the requirements. I decided to try a different image. You know, just for fun. I found a completely different jpg and repeated the process. Same result; no boot image.

I went through a half dozen or so other images, ranging from tiny to large:

All were within the limits Intel specified, and all produced a blank boot image. This made me think I’d possibly screwed up the NUC, so I repeated the process, this time using one of the Intel stock boot images. The NUC was back to normal.

I found this odd and was beginning to think the utility just didn’t work. Then I had an idea: I opened up the stock NUC boot image (they’re included with the tool) using an image editor. I then opened one of the images I’d been trying to use, and copied it over the Intel image. I saved the file under a new name and went through the image customization process again.

Voila! I had my new boot image in place! Woohoo! This made me wonder if the only way to get the tool to work was to go through this odd hack. But I decided to throw a few more images at it. By this point I’d memorized the entire process, including the command to create the custom image.

I went through a dozen more images and found that some worked just fine, while others produced a blank boot screen. The images all conformed to the requirements, and they were reasonably close in size to one another. I could see no reason for one image to work and another to fail.

I did find that editing the stock boot image from Intel and copying over it worked 100 percent of the time. Finally, I stumbled upon another method: if I downloaded a png file, edited it, and saved it as a jpg file, it worked every time.

This is what I settled on

Of course Intel likely makes this tool available for resellers who want their own logo to show up on boot. But it also gives the average user one more way to make their NUC their own. What shows up on the boot screen is entirely up to you. Anything from your favorite anime character to a picture of your dog should work just fine. I chose a simple image for now, but I may change it in the future.

I also disabled the boot display for the function keys, so the Kodi logo is the only thing that shows. I’m pleased with how it came out, but not how much of a pain it was to get there. The instructions give the impression that changing the boot image is as simple as following a few quick steps. The reality is that you’re likely to go through the process multiple times, trying several images until you land on the one that works for you. Unless you know the secret, of course.

I’d very much like to see an improved version of the tool from Intel, one that works as expected, and potentially even works for Islay Canyon. Better yet, I’d love to see Intel come up with a way to change the boot image in BIOS without the need to reflash.

For now I’ll keep playing with the clunky but workable tool that’s already out there. I’ve included a video of my last run through below so you can see how the process works…when it actually works.

One thought on “Changing the Boot Image on a NUC

  1. I have found that, if you open your JPG file in Windows Paint and then save it, it alleviates a lot of the issues. I believe that Intel recommends this in some of their documentation.

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s