ROM Download

This page contains a command to download and run a script, which will flash custom firmware with a SeaBIOS payload on approaching 40 models of Intel based Chromebook – allowing you to run an alternative OS such as Linux. The script will work with ChromeOS or pretty much any Linux distro (at least no one has told me otherwise).

There are 3 types of firmware mod – RW_LEGACY, BOOT_STUB, and Full ROM – not all Chromebooks work with each one:

  • RW_LEGACY modifies a 2MB section of the ROM leaving the stock functionality intact, including the scary developer screen, and will not brick your device. Some Chromebooks already come with a working RW_LEGACY slot, although many of them do not (non-functional keyboard on Panther, non-functional display on Auron_Yuna, or just plain missing, etc.). As well as fixing aforementioned bugs, updating the RW_LEGACY slot can enable further functionality such as booting from SD card/eMMC. So, even in the case of a functioning stock RW_LEGACY, it may be fortuitous to update.

  • BOOT_STUB modifies the last 1MB of the ROM, removing the scary developer screen, but also removes the ability to run ChromeOS natively, carrying a chance of bricking your device. This also leaves the “REFRESH + POWER” functionality of the stock ROM intact, meaning, when you press these keys, the device will immediately reboot and attempt to run ChromeOS Recovery (which isn’t there any more), and give you a blank screen. The only way to then stop it from attempting to run ChromeOS Recovery on every boot, is to take the device apart and disconnect the battery.

  • Full ROM, as the name suggests, is a complete ROM containing a coreboot build with a slice of SeaBIOS on top, and is the most risky. Again, this will remove the ability to run ChromeOS natively. Flashing one of these will wipe out your product data. In the case of Sandy/Ivybridge Chromebooks a full ROM enables hardware virtualisation extensions and suspend. Other models full ROM’s also probably contain idiosyncrasies that the stock firmware does not.

You need to be in dev mode and to have disabled write-protect by enabling a jumper/removing a screw (usually the latter, located somewhere on the main board). Disabling write-protect is not necessary when flashing RW_LEGACY unless you want to make the legacy slot default. See each respective supported Chromebook’s developer information¬†page (if available) for info on opening your Chromebook up and disabling write-protect.

Supported Models Matrix

Samsung Series 5 550 Chromebook - Lumpy     YES
HP Pavilion Chromebook - Butterfly     YES
Samsung Series 3 Chromebox - Stumpy     YES *
Acer C710 Chromebook - Parrot     YES
Lenovo X131e Chromebook - Stout     YES
Google Pixel Chromebook - Link YES   YES
Acer C720 Chromebook - Peppy YES   YES
HP Chromebook 14 - Falco YES   YES
ASUS Chromebox - Panther YES   YES
HP Chromebox - Zako YES   YES
Dell Chromebook 11 - Wolf YES   YES
Toshiba Chromebook - Leon YES   YES
LG ChromeBase 22CV241-W - Monroe YES   YES
Acer Chromebox - Mccloud YES    
Dell Chromebox - Tricky YES    
ASUS Chromebooks C200 - Squawks YES    
ASUS Chromebooks C300 - Quawks YES    
Lenovo Chromebook N20 - Clapper YES    
Toshiba Chromebook 2 - Swanky YES    
HP Chromebook 11 G3 - Kip YES YES  
Dell Chromebook 11 (2015) - Candy YES YES  
Acer CB3-111 - Gnawty YES YES  
Lenovo N21/CTL NL6 Education Chromebook/Senkatel Education Chromebook - Enguarde YES YES  
Lenovo Thinkpad 11e Chromebook - Glimmer YES YES  
Samsung Chromebook 2 (Baytrail) - Winky YES YES  
Acer Chromebook 15 (CB3-531) - Banjo YES YES  
Lenovo 100S - Orco YES YES  
Acer C740/Chromebook 11 - Auron_Paine YES    
Acer C910/Chromebook 15 - Auron_Yuna YES    
Chromebook Pixel (2015) - Samus YES    
Asus Chromebox CN62 - Guado YES    
Acer Chromebox CXI2 - Rikku YES    
Dell Chromebook 13 7310 - Lulu YES    
Toshiba Chromebook 2 2015 - Gandof YES    
Lenovo ThinkCentre Chromebox - Tidus YES    
Acer Chromebook R11 - Cyan YES    
Samsung Chromebook 3 - Celes YES    
Acer Chromebook 14 - Edgar YES    
Lenovo N22 Chromebook - Reks YES    

* This has bricked at least 3 Stumpy’s but many more have been okay.

Jenkins is now being used along with some scripts, to automate building, and to reduce chances of a brick from human error. Run the script like so, making sure you are only in Crosh shell *not* the *root* Crosh shell if running from ChromeOS:

cd;bash <(curl

If for some reason you need to run an older build, you will have to flash it manually. See the ROM Archive.

1,046 thoughts on “ROM Download”

  1. After entering cd;bash <(curl
    the process runs and in the end I get:
    Block protection could not be disabled!
    erasing and writing flash chip…SUCCESS

    The laptop reboots (coldboot) to the "OS verification is OFF" screen. I let it give it's two beep and it loads a sign-in.

    At this point, how do I install Ubuntu 14.04 from usb to completely replace the Chrome OS? I am not sure I replaced the Chrome OS with seaBIOS.

    Your assistant is humbly appreciated.

    Thank you and Happy New Year
    Tom G

    1. What do you mean by “loads a sign-in”?

      You just need to make a bootable USB stick as you would for a “normal” laptop. Preferably using dd or Rufus depending on the writing operating system, and preferably not using uNetbootin or similar.

      Depending on the model of Chromebook, it might not be wise to load an old version of Ubuntu like 14.04. Additionally, some models will experience the best hardware support if you instead load GalliumOS.

      Same to you,


      1. Hi jhon,
        I have already executed the script that you left several times

        cd; bash <(curl

        but when executing it I get the following:

        flashrom v0.9.9: 831c609: Nov 30 2017 02:04:47 UTC on Linux 3.18.0-16503-ge33b03ba1f58-dirty (x86_64)
        flashrom v0.9.9: 831c609: Nov 30 2017 02:04:47 UTC on Linux 3.18.0-16503-ge33b03ba1f58-dirty (x86_64)
        Calibrating delay loop … OK.
        Error accessing low megabyte, 0x100000 bytes at 0x0
        / dev / mem mmap failed: Resource temporarily unavailable
        Failed getting access to coreboot low tables.
        Mapping BYT IBASE at 0xfed08000, unaligned size 0x200.
        Mapping BYT SBASE at 0xfed01000, unaligned size 0x200.
        Erasing and writing flash chip … SUCCESS.

        and when restarting the computer and pressing crtl + D on the recovery screen, I get the image of chrome, as if nothing had happened.

        How can i fix this? or is there something that is wrong?

        1. Okay – 3 things I notice.

          1. You haven’t told me what model you’re using.

          2. You seem to be running a custom kernel (one of the kernel opts could be stopping you getting access to the necessary memory).

          3. Have you tried hitting “ctrl + L”?

    1. BOOT_STUB isn’t supported any more, so if you use it, do so even more at your own risk and I won’t fix any problems with it.

      It goes by the codename of the board – if the codename is in the script (the one you see at the dev boot screen), then it’s supported. If not, let me know and I will add it.

    2. hi again jhon
      the model of my chromebook is the Samsung chromebook 3 ‘(celes)

      I researched online and I saw that you have to execute the following script:

      crossystem dev_boot_usb = 1 dev_boot_legacy = 1

      Once you run it and restart the chromebook, press Crtl + L and if it appeared the seabios.

      Anyway, thanks !

Leave a Reply