Sunday, January 1, 2017

Acer C7 Chromebook on Linux for good

Having played with the device again for a while, I realized that not that much changed concerning the use of Chromebooks. With C7 with its HDD is surely less snappy as the Samsung Chromebook, although graphics performance is a lot better.
I figure, a real chromebook needs to be used in the cloud and not as a standalone device. All in all, 300GB of storage don't seem to make a lot of sense.

New BIOS

The decision to flash the Acer C7's BIOS fell yesterday.
The following 2 pages contain all the information needed to do so:
https://www.coreboot.org/Chromebooks
https://johnlewis.ie/custom-chromebook-firmware/rom-download/

Should you need visualization, Johnny Phung made a comprehensive video. Johnny also got a video for getting Linux on the device.

Thanks to John's work, the process of backing up the original ROM is a lot easier. John hosts a script which takes care of everything, you have to be online to run it though.
Installing coreboot with a SeaBIOS payload was the easiest thing in the world!

Linux

My choice of distribution fell on Linux Mint 18.1 64bit (MATE) https://linuxmint.com/ , since I already made a USB dongle for this distro. Further reasons (actually reasons why I created the dongle in the first place) Linux Mint MATE is relatively lightweight, still very comfortable.

The installation was pretty straight forward. Although here is a slight change a made: using 4GB for swap rather than 2GB as suggested by the installer. A personal choice, nothing spectacular.


After the install there were 2 things not working, not at all: the touchpad and the special function keys.

Most important piece, the touchpad.
Searching here and there, this page popped up: http://marstella.net/?p=278
Some searching in my little minted C7 revealed, the cyapa module seems now part of the chromeos-laptop module.
KI4GDT, the author, indicates the importance of the order in which modules are loaded. It seems, with the chromeos-latop module loaded first, everything goes belly up. To blacklist the module appears a good idea (/etc/modprobe.de/blacklist.conf).
For reasons unknown to me, loading the modules with /etc/modules did not work; yes, I know, it should.
I am a pragmatic guy, so I placed the following lines in /etc/rc.local
modprobe i2c-i801
modprobe i2c-dev
modprobe chromeos-laptop

Now, the touchpad works just fine.

The function keys for audio volume control.
This was certainly a lot easier to fix. Linux Mint offers a configuration tool for keyboard shortcuts.
Menu => Preferences => Keyboard Shortcuts
My choice: MUTE [ctrl]-F8; Volume down [ctrl]-F9; Volume up [ctrl]-F10
In this way, the F-keys are still available for other purposes.

The function keys for screen brightness control.
There might be a more elegant solution using mate-power-control.
My approach: xbacklight.
Here is what needs to be done (in a terminal) to install it:
sudo apt-get install xbacklight
In the keyboard shortcuts application you need to create "Custom Shortcuts" by pressing the add button. I created the following:
Name: Backlight darker - Command: xbacklight -dec 5 - assigned to [ctrl]-F6
Name: Backlight brighter - Command: xbacklight -inc 5 - assigned to [ctrl]-F6
With every hit of the respective shortcut, the brightness of the display varies by 5%.

Conclusion

The performance of the Acer C7 could certainly be improved by the use of an SSD. For my purposes, this won't be required.
My C7 came with 2GB of RAM in a single module. Since RAM is so cheap nowadays, I might just get another 2GB module.