the Chromium logo

The Chromium Projects

Acer AC700 Chromebook

Introduction

This page contains information about the Acer AC700 Chromebook that is interesting and/or useful to software developers. For general information about getting started with developing on Chromium OS (the open-source version of the software on Chrome OS devices), see the Chromium OS Developer Guide.

Entering Developer Mode

You might want to enter developer mode if you're following the instructions in the Chromium OS Developer Guide, or if you just want to get access to a shell on your device to poke around.

Caution: Modifications you make to the system are not supported by Google, may cause hardware, software or security issues and may void warranty.

Developer mode on the Acer AC700 has two levels of access, "dev-switch on" and "dev-mode BIOS". With the first level you enable a command line shell, which lets you look around inside the GNU/Linux operating system, but does not let you run your own versions. The second level of access installs a special BIOS component that provides the ability to boot your own operating systems from either removable (USB/SD) or fixed (SSD) drives. Both levels of access are completely reversible, so don't be afraid to experiment.

Developer switch

The developer switch enables the command line shell. The switch is underneath the chromebook battery. To enable the developer switch you remove the battery, use something pointy to move the switch towards the side with the red dot above it, and reboot. Note: be gentle! Some people have reported that the developer switch breaks easily. The first time you reboot after turning the developer switch on, your chromebook will:

The erase and wait steps only happen when you first enable the developer switch, to help prevent someone from quickly reimaging your device while you're away from the keyboard. Successive boots will:

At this point, verified boot is still active but because a command line shell is enabled, your system is NOT secure. Refer to Poking around your Chrome OS Notebook to see how to access the command line shell. The message displayed at the shell itself should tell you how to set your own password to protect shell access and make your system secure again. Here's a photo showing the location of the developer switch:

image

Developer-mode BIOS

If you want to make modifications to the Chrome OS filesystem or boot your own version of Chromium OS, you'll need to activate the second level of developer access. You do this by running a special command from the command line shell. You first log in with the username 'chronos' (if you've set a shell password, you'll be prompted for it). Then you switch to the 'root' account, and run the command to install the developer-mode BIOS. For example:

localhost login: chronos chronos@localhost $ sudo bash localhost chronos # chromeos-firmwareupdate --mode=todev

What's going on here?

Verified boot is the process by which Chrome OS ensures that you are running only the software that shipped with your chromebook. The process starts with the read-only BIOS, which is built into the device at the factory and can't be modified without disassembly (please don't try that; you'll void your warranty). The read-only BIOS verifies one of two read-write BIOSes (there are two so we can provide updates if we have to with less risk of failure) and continues execution there. The read-write BIOS then verifies one of two (same reason) kernels and executes that, and the kernel verifies its root filesystem as each block is read off the SSD. The normal read-write BIOSes will only boot Google-signed kernels, and only from the SSD. When you run the chromeos-firmwareupdate command above, you are replacing the primary read-write BIOS with a different one that will allow any self-signed kernel (refer to the Chromium OS Developer Guide) to boot from either a removable device (by pressing Ctrl-U at the scary boot screen) or from the SSD (press Ctrl-D or wait 30 seconds).

How to boot your own image from USB

How to install your own Chromium OS image on your SSD

If you follow the full instructions from the Chromium OS Developer Guide, you will eventually end up with a bootable USB drive containing your image. You can boot that image directly from the USB drive as described above. Since it's your personal image, it should have shell access enabled. Log in as user "chronos" and run

/usr/sbin/chromeos-install

That will wipe the SSD and install your image on it instead. When you reboot, it should attempt to boot your version. You'll still continue to see the scary boot screen at every boot, of course, as long as you are in developer mode and have the developer-mode BIOS installed, so you'll need to press Ctrl-D or wait 30 seconds to boot.

Leaving Developer Mode

To leave developer mode, simply flip the developer-mode switch back to the OFF position and reboot. One of two things will happen. If your chromebook still has a valid read-write normal-mode BIOS, Google-signed kernel, and an unmodified Chrome OS root filesystem, then that's what will boot and you'll be back running the official Chrome OS image. Or, if you've modified any part of the verified boot chain so that a full verified boot process isn't possible, you'll be dropped into recovery mode. That will require you to create a bootable USB key to restore your chromebook to its fresh-from-the-factory state. That's annoying, but not dangerous. As long as you haven't taken the device apart, you shouldn't be able to permanently break anything. In either case, all personal information will be wiped from the device during the transition.

One other thing to try first

When the developer switch is on, the BIOS is not updated by any automatic Chrome OS updates. If you don't think you changed anything but you still end up in recovery mode, it may be that you've haven't applied a pending firmware update. Turn the developer switch back on, reboot, and from a root shell run

chromeos-firmwareupdate --mode tonormal

That will restore the primary read-write BIOS to normal mode, which may restore the verified boot process. Turn the developer switch off again and reboot. If you still end up in recovery mode, you'll just have to use the recovery process to fix it.

How to use the Recovery Mode button

Recovery mode is a special boot operation in which the BIOS will:

You will encounter recovery mode when the BIOS is unable to find a valid kernel to boot, either because the SSD has become corrupted or (more likely) because you modified all the kernel partitions while in developer mode and have switched back to normal mode. While in developer mode, you will be presented with the scary boot screen at every boot. Pressing SPACE or RETURN will take you to recovery mode.

You can also force your chromebook into recovery mode (even in normal mode) by using the recovery mode button. On the bottom of the Acer AC700 on the side nearest the Enter key, there is a tiny pinhole:

image

If you stick a paperclip into this hole, you'll feel it press a button. To force recovery mode, turn the device off, press this button, and while keeping it pressed, turn the device on again. This sometimes requires three hands or a bit of contortion, but you'll know it worked when you see the recovery screen instead of booting normally.

Firmware

See the H2C firmware page for more details.

What's inside?

WARNING: Opening the case and fiddling with the stuff inside could easily brick your system and make it unrecoverable. DO NOT ATTEMPT if you are not familiar with this process.

Disassembly

Taking apart your laptop is not encouraged. If you have hardware troubles, please seek assistance first from an authorized center. Be advised that disassembly might void warranties or other obligations, so please consult any and all paperwork your received first. If you just want to see what the inside looks like, gaze upon this (click for high res versions):

image image image

However, we acknowledge that some people like to tinker. So here's a quick guide to taking it apart.

Access to upgradable/cleanable components

This is very easy to do and gets you access to all the pieces you most likely care about:

And here's the details:

Check out the high res picture above for overview.

Access to the rest of the machine

While it is possible to remove the motherboard entirely, there isn't much of a point. You can see a high res image of what it looks like above if you just want that.

If you really want to remove it, then here's how: