KangarooPC and Linux.

Kangaroo PC, an Intel SOC quad core 1.44ghz (turbo to 2.24) with 2gb of RAM, 802.11ac, 1 USB 3 and 1 USB 2. No ethernet.

Been doing the Raspberry Pi thing for a long time, actually from the beginning. Been working on many different projects with them. I have a history and a set of expectations from other devices to stand up to the RPI. I was hoping this one could.

After about a week of use where I’m trying to do similar things that I do on a Pi I have come to some conclusions. Some good, some bad.

This is a PC. It can have any number of OSes installed on it. It is after all an amd64 based chip. One should expect that people will install a number of OSes even though it comes with Windows 10.

The Windows 10 side works nicely and it is quite snappy. Apps install and run properly. My only concern is the spyware and other built in undesirable features (some of which you can turn off, others you can’t).

I’m a Linux fan. I’ve been one for a decade. I bought one of these to see how it stacks up against the systems that I already have that run off similar tiny platform computing (pico computers). I have been running the Pi2 and Pi3 as the basis for my projects for some time and have been able to accomplish most of what I need with them. So, when I heard of this computer I thought that it seemed to have the features and power to do those same things and a bit more. However, in trying to make things work I have encountered an issue or two one of which I consider to be a show stopper. That being the poor support by Intel for this SOC under Linux.

Intel has, as I have read, abandoned work on support for the bay trail and cherry trail SOCs for Linux. What this means is that the graphics and sound suffer greatly under Linux. It means that, essentially, though graphics work, there are artifacts that can’t be readily resolved. The other is that sound is non-existent. You can’t output sound with this on Linux.

For me, this is a show stopper; and it means that I won’t be buying another one unless something changes.

People reported that there was no way to boot off the USB.  Initially they claimed the USB 3 port and later some said any USB.  That is not true, you can boot off those ports.  Some said you could boot off the sd-card slot.  That in my experience is also not true, as I have found no way to boot off the sd-card slot.

As far as booting from a USB 3 or 2 port it is possible. The only issue is in getting Linux installed onto one of these using the USB ports that are available. You would need a keyboard, a mouse, a source for the Linux install and an external USB target. That comes to 4 ports where you only have 2. Initially I thought it would be nice to boot off the sd-card and install onto a external USB drive but alas you can’t. I did manage to get Linux installed. The reason is due to a solid set of USB ports on the dock — they supply enough power to the ports.

Bear in mind the installation of Linux onto the KangarooPC from devices connected to the KanagrooPC is just an exercise.  Under Windows you cannot install onto another device and then swap the drive to a new computer and be on your way.  Under Linux you can.  There’s no activation and you won’t BSOD due to missing or the wrong drivers for components.

To get this done I first I went and found a semi decent USB hub that I had laying around (used on various RPI projects). I couldn’t find the power source so I had to use it unpowered. I sought out a USB keyboard and mouse and plugged those into the USB hub. That worked. Everything was detected. Next I grabbed an older Kubuntu 15.10 64bit flash thumb stick that I knew was bootable and plugged that into the USB hub. Then I grabbed a 240gb PNY SSD using a USB 3.0 bridge adapter (that I also had laying around) I plugged that directly into the kangaroo PC USB 3 port.

I went into BIOS (hit F2 at boot up) and I turned off secure boot. I set the USB flash thumb drive as the primary boot device. After saving and rebooting I crossed my fingers that it would boot. Since it saw the flash thumb drive as a boot option in the BIOS I figured it would work.

I successfully booted from it. I was then able to start the Kubuntu installer and choose the 240gb SSD as the target. The install completed with little to no finagling.

After the install was done I shut down, pulled the flash thumb stick, and went back into BIOS to tell it to boot from the 240gb SSD. That device was seen and I was able to boot from the SSD off the USB 3.0 port. However, there’s one caveat. That’s close to being the second show stopper. It is that when I do a warm boot grub won’t load properly. If I do a cold boot everything loads properly. For a device that is going to be left on most of the time it’s not a big deal, but for a device that must be updated periodically and needs to be rebooted I have to get in the habit of using “sudo shutdown now -h” instead of “sudo reboot”. Then I need to get up and physically turn the unit on. I haven’t looked at Wake on LAN, but I doubt it will work since the BIOS in these devices is incredibly basic.

My first boot was a bit slow. With Kubuntu finally loaded I connected to my WiFi and did a distribution update (I didn’t go with 16.04 due to what I planned to do with the device). After that I did the Kubuntu backports update. When all was done I let the system load to the desktop and that’s where I noticed the artifacts. I could eliminate some of them by just turning off kwin effects. However, the sound became an issue for me. I found there was no sound and all that I was only able to see a “dummy output”. I began searching with google to find others that might have had the issue. As it turns out it is near impossible to get the sound to work in Linux on this device.

The next morning I took the KangarooPC to work with me to see if I could install Asterisk on it. I first booted and then connected to the work WiFi. No issues there. Then I began to install asterisk using an online guide where I first install the dependencies, then install asterisk by downloading the latest and compiling it from source and adding other dependencies that too needed to be complied from source, and then downloading and installing the FreePBX WebUI interface.

The whole asterisk setup went remarkably well. I had no difficulties. I was able then to add things like Google Voice Motif and do the other module updates. I ran into the typical issues here, but since I’d been through them many times before they were easily overcome.

All in all the KangarooPC seems to work well for that purpose, but without the sound it limits the use considerably. Unless you have a set purpose like Asterisk I would recommend against it for anyone looking to use it as a Linux desktop box. That’s terrible to say. This is not a Linux issue. It is an Intel issue. Their neglect of these chipsets put a damper on using this for anything serious, if you want sound to be part of that. The graphics artifacts just show the immaturity of the software drivers, again an Intel issue.