<< >>
justin = { main feed , music , code , askjf , social , pubkey };
[ <<< last (older) article | view in index ]

July 13, 2017
the lowest end

To follow up on my last article about Linux on the ASUS T100TA, I recently acquired (for about $150) an ASUS C201 Chromebook, with a quad-core (1.8ghz?) ARM processor, 4GB RAM, and a tiny 16GB SSD. This is the first time I've used a Chromebook, and ChromeOS feels not-so-bad. I wish we could target it directly!

...but we can't! At least, not without going through Javascript/WebAssembly/whatever. Having said that, one can put it in developer mode (which isn't difficult but also is sort of a pain in the ass, especially when it prompts you whenever it boots to switch out of developer mode, which if you do will wipe out all of your data, ugh). In developer mode, you can use Crouton to install Linux distributions in a chroot environment (ChromeOS uses a version of the Linux kernel, but then has its own special userland environment that is no fun).

I installed Ubuntu 16.04 (xenial) on my C201, and it is working fine for the most part! It's really too bad there's no easy way to install Ubuntu completely native, rather than having to run it alongside ChromeOS. ChromeOS has great support for the hardware (including sleeping), whereas when you're in the Ubuntu view, it doesn't seem you can sleep. So you have to remember to switch back to ChromeOS before closing the lid.

So I built REAPER on this thing, fun! And I still have a few GB of disk left, amazingly. Found a few bugs in EEL2/ARM when building with gcc5, fixed those (I'm now aware of __attribute__((naked)), and __clear_cache()).

Some interesting performance comparisons, compiling REAPER:

  • C201 (gcc 5.4): 9m 7s
  • T100TA (gcc 6.3): 8m 45s
  • Raspberry Pi 3 w/ slow MicroSD (gcc 4.7): 28m
REAPER v5.50rc6 (48khz, 256 spls, stock settings), "BradSucks_MakingMeNervous.rpp" from old REAPER installers -- OGG Vorbis audio at low samplerates, a few FX here and there, not a whole lot else:
  • C201: 28% CPU, 13% RT CPU, 15% FX CPU, longest block: 1.5ms
  • T100TA: 22% CPU, 9% RT CPU, 10% FX CPU, longest block 0.9ms
(The T100TA's ALSA drivers are rough, can't do samplerates other than 48khz, can't do full duplex...)

Overall both of these cheapo laptops are really quite nice, reasonably usable for things, nice screens, outstanding battery life. If only the C201 could run Linux directly without the ugly ChromeOS developer-mode kludge (and if it had a 64GB SSD instead of 16GB...). Also, I do miss the T100TA's charge-from-microUSB (the C201 has a small 12V power supply, but charging via USB is better even if it is slow).

I'll probably use the T100TA more than the C201 -- not because it's slightly faster, but because I feel like I own it, whereas on the C201 I feel like I'm a guest of Google's (as a side note, apparently you can install a fully native Debian, but I haven't gotten there yet.. The fact that you have to use the kernel blob from ChromeOS makes me hesitate more, but one of these days I might give it a shot).

Posted by Justin on Fri 14 Jul 2017 at 11:26 from 74.72.45.x
Interestingly reaper with a headless libSwell runs on a chromebook in developer mode without a chroot, so if there were some way to access the chromium OS windowing system we could make a chromiumOS libSwell... still would require developer mode though bleh

Posted by Justin on Fri 14 Jul 2017 at 11:44 from 74.72.45.x
which I guess means that we could make fbdev libSwell and run without the chroot?

Posted by Justin on Tue 01 Aug 2017 at 12:25 from 74.72.45.x
additional notes for google:

1) the eMMC hardware doesn't seem to allow writing the first few blocks, meaning the primary GPT is never valid. To workaround this, boot a generic linux kernel with "gpt" on the command line, which will force linux to check the secondary GPT.

2) I managed to get a stock debian installation to work on USB, using the latest mainline kernels, using the config provided in devsus's mainline branch. I haven't been able to get it installed to the internal eMMC, though (and I've since given up and just embraced the chroot).

3) Installed libreboot to the firmware, which makes the boot-time developer mode notification a bit better. Not perfect, and the libreboot source is tough to get into, but disabling the ability to wipe the disk (by turning off developer mode) would be handy.


Posted by Justin on Wed 09 Aug 2017 at 15:49 from 74.72.45.x
also: now I'm using the T100TA as an automatic build machine, and using the C201 (developer mode + crouton) for day to day.

Add comment:
Human?: (no or yes, patented anti crap stuff here)
search : rss : recent comments : Copyright © 2017 Justin Frankel