Archive:Chromebox: Difference between revisions
Line 47: | Line 47: | ||
=== Create | === Create a Backup Copy of ChromeOS (on USB/SD)=== | ||
If you plan on wiping ChromeOS to install OpenELEC (vs dual booting), it's a good idea to have a backup copy of ChromeOS on USB that you can boot to if necessary. These instructions assume you have already put the ChromeBox into developer mode as per above. | If you plan on wiping ChromeOS to install OpenELEC (vs dual booting), it's a good idea to have a backup copy of ChromeOS on USB that you can boot to if necessary. These instructions assume you have already put the ChromeBox into developer mode as per above. |
Revision as of 00:05, 19 April 2014
Devices | Chromebox |
The ASUS Chromebox is a small lightweight intel PC that runs Chrome OS and can be made to boot into other linux versions. It features HDMI, Displayport, USB 3 ports, gig ethernet, SD card slot, and internal wireless-n networking. This page is a collection of links, information, tips, and guides related to running XBMC on the ASUS Chromebox line of computers.
Device Preparation
Put in Developer Mode
Putting the ChromeBox in developer mode will allow you to access the underlying Linux operating system features necessary for installing XBMC.
WARNING: This will erase all user data on the device.
With the device powered off, insert a paperclip into the hole left of the SD card slot and press the recovery button. Power on the device, and remove the paper clip after 2-3 seconds. When greeted with the recovery screen, press CTRL-D to enter developer mode, and press the recovery button again to confirm. The device will reboot and wipe any existing user data.
Disable Firmware Write Protect
With the device powered off and unplugged:
- Remove (4) rubber feet from bottom of unit
- Remove (4) screws under rubber feet
- Separate two halves of unit
- Remove write-protect screw circled below:
- Reassemble in reverse order
Factory Reset
- Create recovery media using step 2 of Google's instructions here: https://support.google.com/chromebook/answer/1080595?hl=en
- With the device powered off, use a paperclip to press the Recovery button and power on the device
- Insert the recovery media (USB or SD) when prompted
Create a Backup Copy of ChromeOS (on USB/SD)
If you plan on wiping ChromeOS to install OpenELEC (vs dual booting), it's a good idea to have a backup copy of ChromeOS on USB that you can boot to if necessary. These instructions assume you have already put the ChromeBox into developer mode as per above.
To create a bootable USB copy, perform the following steps:
- Power off your ChromeBox, then power on but do not login. Press CTRL-ALT-F2 to open a shell.
- Login as user chronos, no password is needed.
- Run the command:
- sudo crossystem dev_boot_usb=1
- This enables booting from USB/SD via CTRL-U
- Insert a USB stick or SD card (8GB minimum) and run the command:
- sudo fdisk -l | grep 'Disk /dev/sd'
- This will list all the drives your ChromeBox sees. The main internal HDD is /dev/sda, any connected USB/SD devices will be /dev/sdb, /dev/sdc, etc. Identify the device corresponding to the USB/SD card you inserted (compare sizes).
- Run the following command to copy/install ChromeOS to your USB/SD card:
- sudo chromeos-install --skip_src_removable --skip_dst_removable --skip_vblock --dst /dev/sdb (or whatever your device is from above step)
- When the process completes, your Chromebook will reboot. Now with the USB/SD card still inserted, Press CTRL-U to boot the USB/SD copy of ChromeOS. On first boot, it will want to repair itself and then reboot to the standard login screen.
- Lets confirm we're booted off of the external device.
- Press CTRL-ALT-F2 to open a shell.
- Login as user chronos, no password is needed.
- Run the command:
- rootdev -s -d
We should see the same device as identified in above, instead of /dev/sda for the internal HDD. Now we have a backup ChromeOS install that we can boot into at will with CTRL-U
Installing XBMC
As ChromeOS is based on Linux, all methods of running XBMC involve another Linux distribution in some shape or form.
Along Side ChromeOS
The following approaches install Ubuntu+XBMC or OpenELEC along side ChromeOS, either inside ChromeOS, or on a separate partition of the internal HDD.
Using Crouton
Crouton stands for Chromium OS Universal Chroot Environment. It allows for the installation of Ubuntu inside of ChromeOS. Full instructions are available at: https://github.com/dnschneid/crouton
Once Crouton/Ubuntu are installed, follow the standard instructions for installing XBMC under Linux.
Using ChrUbuntu
ChrUbuntu is a shell script developed by Jay Lee to automate the re-partitioning of the internal HDD and installation of Ubuntu.
Generic instructions for installing ChrUbuntu on any ChromeOS device are available at: http://goo.gl/Zekkcl
After ChrUbuntu is installed, follow the standard instructions for installing XBMC under Linux.
Using ChrOpenELEC
ChrOpenELEC is a modification of the ChrUbuntu installation script which installs OpenELEC instead of Ubuntu.
In order to install ChrOpenELEC, your ChromeBox must be in Developer Mode and Factory Reset (see above for instructions)
- Power on and boot to ChromeOS
- Hit CTRL-ALT-F2 to get to command prompt
- Login with user chronos (no password required)
- Download and run the ChrOpenELEC script with the command:
- sudo curl -L -O http://goo.gl/WIytxU; sudo bash WIytxU
- (with an uppercase 'i' not a lowercase 'l' in WIytxU)
- Enter the size of the partition to be used as a whole number, from 1 to the max recommended size (9GB for a stock 16GB SSD)
- NOTE: the numeric keypad is off by default, using it will enter garbage characters that will screw up the installation script and result in a failed install.
- Press Enter to reboot when prompted. ChromeOS will "repair" itself and reboot.
- Hit CTRL-ALT-F2 to get to command prompt
- Login with user chronos (no password required)
- Download and run the ChrOpenELEC script with the command:
- sudo curl -L -O http://goo.gl/WIytxU; sudo bash WIytxU
- Press Enter to install when prompted. The script will download and install OpenELEC, as well as update the bootloader and legacy BIOS (SeaBIOS) if needed.
- Press Enter to reboot when installation complete
- At the developer boot screen, press CTRL-L to boot the legacy BIOS and into OpenELEC
Using Entire Disk (Internal HDD or External USB/SD)
Coming soon: ChromeBox-compatible custom OpenELEC installer
Set Boot Options
With the firmware write-protect disabled, we can shorten the default boot wait time and set the device to default to booting the legacy BIOS (and into Ubuntu or ChrOpenELEC) instead of ChromeOS.
- Power on and boot to ChromeOS
- Hit CTRL-ALT-F2 to get to command prompt
- Login with user chronos (no password required)
To shorten the boot wait time only, run the command:
- sudo set_gbb_flags.sh 0x1
To shorten the boot wait time and set the default boot to the legacy BIOS:
- sudo set_gbb_flags.sh 0x489
To reset these options to default, use:
- sudo set_gbb_flags.sh 0x0
Known issues
- Some MCE remote IR receivers do not currently work with USB 3.0 ports under Linux due to a bug in the mceusb kernel driver (fix pending)
Random notes
Feel free to place various notes, tips, and links here. As this section of the wiki gets more organized, those notes will be properly sorted. Consider this like a dumping ground for when you're not sure where to put something.