Ubuntu on HP Pro C640 Chromebook — 16 May, 2022

Some time ago I got a cheap used HP Pro C640 Chromebook, although it is capable of running Crostini I wasn't a huge fan of being locked to a Google account, so I decided to hack the shit out of it and install a Linux Distro, and after some trial and error I was successful!

C640 Running Ubuntu

Disclamer

This guide will convert your Chromebook to a "generic" machine, this means that you will no longer be able to run ChromeOS after you flash the MrChromebox firmware.

All of your data will be erased, make sure to backup all of your data before following this guide.

The steps listed in this guide are the ones I followed in order to install Ubuntu on my HP Pro C640 Chromebook, the fact that it worked for me is no guarantee that it will work on your machine as well!

Requirements

Step 1: Enable development mode

Before flashing the new firmware you need to gain root access to the ChromeOS system, you can do that by enabling Developer Mode. Enabling this will wipe all your data, so make sure you have a backup.

Step 2: Disable the firmware write protection

Usually Chromebooks do not allow you to write in the firmware flash memory without messing with hardware, the C640 is no exception, you will need to disconnect the battery in order to remove the firmware write protection.

This official guide gives an explanation on how to do it (removing the back cover was not an easy task on my machine!)

HP C640 Teardown

Step 3: Flash MrChromebox firmware

In order to be able to boot Linux operating systems we need to install a custom firmware, I used MrChromebox for that.

You can check this page for more info.

You should see something similar to the image bellow, this image is not of my computer (sorry, forgot to take a picture):

MrChromebox


If the "[WP]" is red instead of green it means that the firmware flashing is locked. See Step 2.


Step 4: Install Ubuntu

You can install any system you want, but I cannot assure you that it will work or that the further steps also work or are enough to have a stable environment.

Step 5: Fix sound

By default, the sound should only be coming from the headphone jack, to fix that we need to specify the default device.

Step 6: Fix suspension

I noticed that the computer would not suspend properly, it would just immediately wake up from sleep, the following steps fixed it.

Final notes

With all those steps everything should work as intended.

Feel free to contact me if you have any suggestion to further improve this article.

If you have any doubt I suggest looking at /r/chrultrabook/ subreddit.

Sources