The MinnowBoard Chronicles Episode 24: New MinnowBoard, New PC, and a nod to Netgate

In Episode 23, I mentioned taking a short sabbatical, because my MinnowBoard USB ports stopped working, and my 7-year-old home PC build machine crashed. The good news is both of these issues are both fixed! Let the fun begin again.

In Episode 23, I experienced the “perfect storm” of failures: after an extended period of intermittent behavior, my MinnowBoard Turbot finally stopped recognizing the keyboard, mouse, and USB flash sticks entirely. This made installing a Linux image impossible. And, my seven-year-old, Intel Core 2 Duo machine I was using to build a Yocto Linux image for the MinnowBoard crashed for good in the middle of one of the interminable 48-hour builds.

For the MinnowBoard USB problem, I tried dozens of different things (different keyboard, different mouse, different USB port, etc.) to try to fix or work around this problem, to no avail; it was toast. I finally threw in the towel and decided to contact the supplier for an RMA. Having purchased the Minnow six months ago (it was still under warranty), I had to go back and find my purchase materials – as it turns out, I purchased it through Amazon, but the supplier was Netgate, and the board was built by ADI Engineering.

I have to say, that the experience with Netgate was a delight. I always approach these kinds of situations with a bit of trepidation – you never know what kind of customer service you’re going to receive. In this instance, I simply created a userid on their Support Portal, and got a Live Chat going with one of their staff (note that this was on a holiday weekend!). After exchanging some information, I received an RMA number, and shipped the Minnow back to them. As it turns out, they performed a post-mortem on the unit I sent to them, and were able to verify the symptoms. I received my new MinnowBoard that same week. That’s great turnaround and customer service!

The proof of the pudding, of course, was whether the new Minnow was able to install Ubuntu Linux. There’s a great tutorial on the MinnowBoard site on Installing Ubuntu 16.04.1 LTS that walks you through it. And the installation started, with full keyboard and mouse control. I was ecstatic:

Ubuntu install MNW pic 1

But, when trying to do:

sudo apt-get –y update

sudo apt-get –y dist-upgrade

to bring Ubuntu up-to-date with patches, I got an error message:

Problem executing scripts APT::Update::Post-Invoke-Success 

Googling this led me to the workaround to remove libappstream3 with the CLI command:

sudo apt-get remove libappstream3

That did the trick. The install completed successfully, and I got a working version of Ubuntu on my Minnow:

Ubuntu install MNW pic 2

So, while all this was going on, I finished building my new home PC to replace the aging seven-year-old Yocto build machine. I equipped it with the AMD Ryzen 7 1700X CPU, 16GB RAM, 500GB SSD, NVIDIA GEForce GTX 1060 video card, and Windows 10 Home. I was one of the lucky people that build the machine and have it boot up the first time (well, there were a couple of scary moments, but I’ll gloss over those for now).

With the machine assembled and Windows booting off of the SSD (what a joy to boot Windows in seconds versus about four minutes on my old machine), I installed a 2TB 7200RPM SATA III hard drive and installed Debian 9 Linux on it. This is where I plan to do most of the Yocto builds:

Debian 9 install pic

Following the tutorial in the Yocto Project Quick Start Guide, I quickly fired up an image build for emulation (QEMU). Running the command:

bitbake core-image-sato

took 1 hour, 5 minutes; compared to 48 hours on the old machine!!! So, about 50X faster. My productivity should leap forward now:

Yocto fast build MNW pic

QEMU pic

If you compare the top above screen with that in Episode 21, you can see that the new computer is running the compilation multi-threaded (as opposed to only two running tasks/threads on the old machine). That speeds things up tremendously. And the Yocto tutorial says that subsequent builds past the first one are much faster, because the OpenEmbedded build system re-uses files from previous builds as much as possible. Sweet!

Next time, I’ll do a Yocto build for the MinnowBoard Turbot, and install it. Those who follow the MinnowBoard Chronicles know that I’ve tried this before, and failed. But, with a faster machine and a new Minnow, we’ll see!

And now, a word from our sponsor: my employer is kind enough to allow me to use my weekends exploring technology and writing about my experiences. If you are enjoying this series, and are also interested in learning more about this fascinating technology, please feel free to register for one of our eBooks at ASSET’s eResources on Software Debug.