[sf-lug] Setup/run notes on the Intel Compute Stick brought to the SFLUG meeting

Ken Shaffer kenshaffer80 at gmail.com
Sun Feb 4 14:10:08 PST 2018

Below are the setup/run notes on the Intel Compute Stick with Ubuntu 14.04

The Intel Compute Stick, STCK1A8LFC was originally $110 when released
in 2015, but now is $39 from Amazon including free shipping. The UEFI
stick has an Intel quad core Atom (Z3735F @ 1.33GHz),  and comes with
1G memory, 8G storage, wireless 802.11bgn, Bluetooth 4.0, micro SD slot,
USB 2.0, and HDMI output.  Not listed in the specs at all is the fact
that it also comes with  64 bit Ubuntu 14.04.   The enclosed
instruction sheet gives a firmware download site,
downloadcenter.intel.com, so download the stick's latest UEFI firmware
patch, FC0035.bio, in preparation to flash the stick.

Add a little USB 2.0 hub in the stick's USB port for a keyboard, mouse,
and space for a USB stick (used for the firmware patch), and a 32G
micro SD card. An unpowered hub works fine for the low power
peripherials used. Plug the stick into a TV HDMI port, and you have a
fully functional computer, with somewhat limited memory (1G) for the
full Unity desktop supplied.  The 8G storage is also partitioned into
an EFI partition, an install partition, a 1G compressed swap partition,
and a 5G root partition.  Adding a microSD card or even a USB storage
device for additional space is highly recommended.

The firmware version and date on the shipped stick,
FCBT10H.86A.0024.2015.0522.1757, was 11 versions out of date. This
information may be found by typing F2 at power-on and going into the
UEFI settings. Put the firmware patch, FC0035.bio,  on a USB stick with
a FAT filesystem, and with that in the hub, at boot, type F7 to flash
the firmware. Select the USB containing the flash file, then the
FC0035.bio file. Flashing takes about 5 minutes, and eliminates most of
the problems reported in the reviews.

Initially, Ubuntu boots into its install script, but the keyboard/mouse
didn't work (turned out to be a hub cable with an intermittant
problem). Both the keyboard and mouse without the hub worked when
directly plugged into the compute stick, so I did the install setup by
switching them back and forth. Everything else was flawless. Given the
limited space on the stick, I thought I'd skip any wireless updates and
set things up a bit to use the micro SD card for downloading the deb
updates. The first boot worked, and I immediately set up a bluetooth
keyboard, keeping the mouse in the USB port. The TV picture size needed
to be adjusted to a setting which did not cut off the top and left side
of the 1920x1080 screen. The full Ubuntu Unity interface was used for
the desktop, a surprise with such constrained resources. The only odd
thing was a red battery-low indicator, which turned out to be for the
bluetooth keyboard.

 I rebooted, reseating the USB hub connector, and the hub
worked and the battery warning disappeared (because the bluetooth
keyboard was no longer connected).  Later, trying to move the stick to
another monitor, I experienced more hub problems, as well as desktop
issues, which were some configuration issue in my hidden "dot"
files,since the guest login had no problems.  The hub problems were
solved by another USB to micro USB cable to connect the hub to the
stick.  These intermittent problems are worse than if I had just
grabbed a power-only cable, which would never have worked. The  desktop
problems were a result of root ownership of some of the user's  dot
files -- probably caused by my trying to fix hub problems.

dmidecode now shows the  current firmware version, 0035.

The FAT filesystem micro sd card auto mounts under /media. Reformat the
card to an ext4 filessytem add a line in /etc/fstab to mount it at
another location, e.g. /usr/local/msd. I eliminated journaling on the
ext4 filesystem (mkfs -text4 -O ^has_journal ). Add locations on the
card which may be used by replacing the root location with a link. e.g.
a directory named debs (for the downloaded update deb files). Copy the
lock and partial directory from /var/cache/apt/archives, then rename
the archives to archives-orig and make a link to the micro sd card:
 sudo ln -s /usr/local/msd/debs /var/cache/apt/archives

Wireless uses the 2.4GHz band, with B, G, or N.  Attached to a  G
access point, and experienced no dropouts or other issues.

Rather than try three years of Ubuntu updates all at once, and possibly
running out of space, since the "8G stick" really only had a 5G root,
use the micro SD card for the deb package downloads (described
earlier), and perform the update in stages.  Update the kernel first,
boot the new kernel, and purge the old one. Next do the security
updates, then the other recommended updates. As
delivered,  root is 64% used. After all updates, the 5G root is 75%
used, (excluding the downloaded deb files on the micro sd card).
Additional space was made by deleting Libreoffice and shotwell
packages, leaving root 67% used (1.5G free).

New packages added: openssl-server, qbitorrent, and lm-sensors.

The stick successfully booted without the TV being on, and rebooted
successfully after a power cycle. After openssl-server installation the
sshd server is running at boot, and with no additional configuration,
the default password login works. A more secure mechanism may easily be
set up later with the keys that get generated at installation time.
First ping the stick from a laptop on the local net, and then just run
 ssh username at ip
to the stick, which connected.  The only thing to note
was that while both machines were on the same local network, they were
on different wireless bands, G and N.

Next try running X over ssh:
 ssh -X. username at ip

Successfully displayed the clock on the laptop display. qbittorrent also
works, but slowly -- 10 seconds on a menu drop-down indicates swap
usage (on a slow device). This setup will allow the stick to run the
torrents with minimal power (no TV or USB hub).  The sensors command
indicates the stick temperature is 37 deg. C when idle.

The overnight idle temperatures on the 4 cores were 36C 36C 37C 37C.
ssh into the stick and starting qbittorrent on the Ubuntu 17.10 desktop
ISO, the temps were 57C 57C 59C 59C. The torrent download took 1h
32min., and the core temps. got up to a max of 61C.

When booted, the stick did pop up a window/error asking to upgrade the
kernel. After rejecting the offer several times, examined the error
message about insufficient priv to run /usr/bin/env. Using ps, I
tracked down the process running the  /usr/bin/oem-lts-stack-install
script.  Oddly the script seems to have a logic error on the test for
the existence of the file
/var/lib/update-notifier/disable-hwe-eol-messages.  The file existed,
but the error messages still came out, so I changed the || to && and
stopped the messages.

The stick does what I wanted, running qbittorent and allowing me to ssh
into the the running system. Running four download and one upload torrent
simultaneously took 5hrs for two 1.5G ISOs and 8 hrs. for two 3.5G ISOs.
The stick's temp was 47 degrees C.  I could still ssh into the stick
(slowly) while qbittorrent was running.

Moving the stick to a second TV was harder than I expected. Most of the
problems were caused by the bad hub cable, but the desktop was just
background, as if the edges were cut off.  Turned out to be unexpected
root ownership of some of my dot files.
Even with just a background, you can right mouse click and get to
"change background",
and from there, get to all the settings.  The screen size was correct, and
the guest session was fine, so something in my user dot configuration
file was messing things up.  Again a right click, create a folder, and
from there you can pop up the file manager.  Control Alt t did not pop
up a terminal, but browsing to /usr/bin/gnome-terminal worked.  At some
point, I got root ownership of some of these dot files which messed
things up further.  Eventually, deleting them and letting them recreate
fixed most  things, with now just the launcher not accepting any new
buttons.  That problem was caused by more root ownership of some files
within the dot files.  I can believe I caused some root ownership
problems trying to fix the original blank desktop, but don't know what
might have caused that  problem in the first place.

Further things to test or reduce footprint:
 Remove Unity,replace with lxde
 Remove the source ppa, and delete the 60M source index in /var/cache/apt.
 Try the kernel hwe upgrade that was offered.  Better check on memory
footprints first. The 3.16 kernels are supported until April 2019.
 Copy the OS to USB, boot from that, and try the HWE upgrade.
 Clone the OS to a micro SD card, increase the boot partition size, and
boot from that.
 Browser (Careful not to fill up the limited root space with cache,
probably should put the user   home on the microsd.)
 Moving other parts of root to the micro SSD.
 Hardening the ssh connection (Installation did generate keys) change
the ssh config files to use them.)
 Determine how many torrents are practical.
 Determine best way to have torrents running full time, but be able to
check on them (file size is not a good check, since the file is preallocated).
 Backup the recovery partition and add the recovery partition's space to root.
 Move the swap file on the micro SSD and add its space to root.

More information about the sf-lug mailing list