How to install Linux on Chromebox for cheaper HTPC with Kodi
Read in other languages:
If your smart TV is no longer receiving updates and you are annoyed by the limitations of Amazon Fire TV Stick and Google Chromecast, an HTPC may be the right choice for you. We show you how to turn an old Chromebox into a cheap HTPC with Kodi so streaming is really fun again.
Smart TVs have conquered living rooms. It is practically impossible to buy a television without "smart" functionality these days. Unfortunately, after a few years, many manufacturers no longer supply software updates and all the smart functions no longer work. HDMI dongles such as the Fire TV Stick or Chromecast are of limited help. But a real upgrade would be a small cinema computer, also known as a Home Theatre PC, or HTPC. It becomes especially cheap if you create one based on an old Chromebox. How this works and what you can do with it, I will show you.
Step 1: buy a cheap Chromebox
In our office, we use Chromeboxes in meeting rooms. This was convenient because colleagues could quickly log in with their Google Account and access their browser bookmarks, history, and documents. Our old ASUS Chromebox of the first generation from 2014, however, does not receive official updates anymore. Newer models can use the Play Store and download apps like Kodi. Our old model couldn't do that, and that makes it almost useless.
But I don't admit defeat just because a manufacturer discontinues software support. Then, I will take action myself and look for alternatives. In the case of the ASUS Chromebox, there are numerous scripts to either replace Chrome OS or configure it as a dual-boot system. I liked this possibility so much that I searched for used Chromeboxes on eBay. Auctions end between €40 and €60 there. Often you pay a little more than for a Raspberry Pi MicroSD card!
An HTPC for 50 bucks!
For my self-experiment, I actually chose the oldest available model ASUS Chromebox CN60. Newer devices have more power, but for Kodi the oldest one with 2GB of RAM and a 16GB SSD is sufficient (click here for the technical specs of the Chromebox). Optionally you can upgrade both the RAM and SSD. I worked with 4GB of RAM and an external USB 3.0 hard disk.
With the components shown above, you could also easily install Windows on the Chromebox and then have a powerful but energy-saving and ultra-compact office computer for under 300 bucks or so. For our tutorial here the weakest Chromebox is sufficient, because Linux/Kodi uses resources much more frugally than the cumbersome Microsoft product. Speaking of "product," the software we use to turn the Chromebox into a cheap HTPC won't cost you a cent. It is free, open-source software.
Not all chrome boxes are the same, but all are equally good
There are several different Chromebox models. The variants Acer CXI and CXI2, as well as Dell 3010, are known for problems when removing the write protection screw (more about this later). However, all Chromeboxes are equally suitable for the Kodi installation and the conversion to a cheap HTPC. Another indicator for the mod-friendliness of a Chromebox is the entry in the GalliumOS database; a Linux distribution for upcycled, de-googled Chrome OS devices.
Step 2: prepare the Chromebox
To prepare your Chromebox for Linux/Kodi installation, have a thin Phillips-head screwdriver and a needle ready (such as the tool for removing the SIM card tray of your smartphone). Backup any locally saved data, because your Chromebox will be reset in a moment.
Cancel write-protect
For the first step you have to open the Chromebox. The opening itself then looks something like this:
Instead of changing the RAM, remove the write protection screw. This is located in different positions depending on the model. You can find corresponding pictures in the Kodi-Wiki. You will not use this screw afterwards.
Activate developer mode
Now the SIM card needle is used. Connect a keyboard, power, and a monitor. Gently push the needle until it clicks into the hole next to the memory card slot and hold this hidden button down when you turn on the power. Acknowledge the white screen with the key combination "Ctrl + D" and then press the hidden button again with the needle.
After a five-minute reset to factory defaults, your Chromebox is a "developer Chromebox". This is noticeable with an annoying 30-second timeout on every system startup. You can configure that away later. But now this timeout is still helpful.
Step 3: install Kodi on the Chromebox
You have two basic options for how to install Kodi on your Chromebox. Either you use the Linux distribution LibreELEC, which provides "just enough operating system for Kodi". Or you use a full GalliumOS and install Kodi over it. I decided to try the former. The latter would offer a much wider range of functions, but requires more system resources and child's play, let alone completely operated by remote control.
In the Kodi-Wiki, the installation with the E-Z Setup-Script is recommended, which also worked excellently for me.
- Switch on the Chromebox.
- (Optional) Skip the timeout with Ctrl + D.
- Dial into the Wi-Fi or plug in a LAN cable.
- Press Ctrl + Alt + F2.
- Login with user "chronos", without password
- Run: curl -L -O https://mrchromebox.tech/setup-kodi.sh && sudo bash setup-kodi.sh
You will then be guided through the installation wizard. It takes care of the download, partitioning and gives you options for the boot order. You have a choice:
- Dual-boot off...
- Chrome OS + GalliumUS/Ubuntu
- Chrome OS + LibreELEC (this manual)
- LibreELEC on external USB stick
- Further options ...
- Replace UEFI with unofficial firmware
I converted our Chromebox into a dual-boot system using Chrome OS + LibreELEC. When partitioning, I specified that 5GB should be reserved for Kodi/LibreELEC. It turned out even after installing several Kodi plug-ins that even 3GB would have been enough.
You can always repeat the above steps to the E-Z Setup script to make changes to the boot order or duration of the timeout. In the timeout screen, press Ctrl + D for Chrome OS and Ctrl + L for LibreELEC (never use the space bar!). I decided to wait 30 seconds and choose LibreELEC as the default option. You could also reduce the timeout to one second and be much faster in Kodi's start screen.
Start the Chromebox as an HTPC
At your first startup with LibreELEC you should adjust some Chromebox-specific settings. These are detailed in the Kodi-Wiki. Connect your Chromebox to the TV, dial into the Wi-Fi with the keyboard.
Control HTPC with your smartphone as a remote control
In the settings (the cogwheel in the upper left corner) go to the item Control in the Services menu. Enabled Allow control over HTTP. Now download the Kore app and network it with your Kodi Chromebox.
You could also buy an infrared adapter and use a normal remote control with your HTPC chrome box. These and other recommended peripherals can also be found in the Kodi-Wiki.
Optimize video and audio
If the fonts are cut off, you can calibrate in the display settings and compress the image accordingly. In the audio settings, you should define and configure the audio device. At the factory, the HDMI output is used, but signals are converted before transmission. If you are using a receiver, you should enable Passthrough for all formats it supports. Alternatively, you can use Bluetooth speakers, which you pair in the "LibreELEC" settings.
With the Samsung television (model UE40..) in the editorial office, we came across an HDMI bug. This could be remedied by a hard reset of the TV.
Now you can use LibreELEC/Kodi to scan your local film collection and prepare it for the database. You can also connect streaming services like Netflix or Amazon.
In both cases, you have access to all audio and subtitle tracks. However, the streaming can sometimes buffer for a long time or it takes time until the stream runs in full quality. Bandersnatch is not playable with Chromebox encodings.
Kodi can also be set up as a Spotify Connect device. You can find the necessary plug-in intuitively by searching for "Spotify". The plug-in is called "Librespot". As a Chromecast receiver, however, the Chromebox can unfortunately no longer be defined with Linux/LibreELEC. But that's why we left Chrome OS as a dual-boot option. 😉
Chromebox as HTPC: it floats!
Apart from an input lag through the Core Wi-Fi remote control, the performance is excellent. Also, the playback of all content is done without any significant delays. Even 4K videos play wonderfully from the SD card. Thanks to hardware acceleration, this shouldn't be a problem either; you can get the full specifications from the Kodi-Wiki easily. And the best thing is that the Chromebox works almost silently. All this makes it the perfect basis for a cheap HTPC.
Where do we go from here?
Now you have several possibilities from LibreELEC. Automatic updates keep your system and the installed plug-ins up to date. If you don't like the Chromebox as an HTPC anymore, you can export the LibreELEC database and move it to another computer.
In upcoming tests I will try the Chromebox with the Linux distribution GalliumOS. This is because VPN connections can also be configured via it, so that you can use streaming services as if you were abroad. LibreELEC does not provide for this function.
Furthermore, I would like to try the controller support and see which game classics can be played in emulators with the Chromebox as HTPC with LibreELEC/Kodi.
What is your way to a super cheap HTPC? Let us know.
Source: Kodi-Wiki