ROM Download

Please note: I no longer maintain, provide, or support custom Chromebook firmware; this page is left here for archive purposes only.

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.

[TABLE=3]

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 https://johnlewis.ie/flash_cb_fw.sh)

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

Please note: I no longer maintain, provide, or support custom Chromebook firmware; this page is left here for archive purposes only.

Join the conversation

1295 Comments

  1. John,

    I tried the ESC then 2 on various stages of the computer coming on but the screen just stays on the Decompressing Linux… Parsing ELF… Performing relocations… done.
    I left the screen running at the above for a long time and still nothing. If there is a USB stick in the port or NOT the same error message comes up and the screen does not advance. I don’t think this model can boot off of the SD Card port which would help or maybe a regular hard drive and not a flash drive?

    1. There may or may not be issues booting from SD. I would recommend booting from a Fedora 20 USB 2.0 stick, as that’s known to me to work without issue. The bit where the menu should come up (i.e. after it says “loading SeaBIOS”), and it goes blank, is the time you should press ESC then “2”. If it comes up with the “KASLR using RDTSC…” message it means it’s trying to boot of the HD, and there’s something wrong with the stick (including filesystem image/boot sector/partition problems).

    1. I can build one for you to try, but you will be a guinea pig, and will have to buy a Bus Pirate to debrick yourself if it doesn’t work. Do you fancy it?

  2. Maybe we should just try what’s in the guide currently, I don’t mind some risk but obviously i don’t want to go crazy with it. Just having access to the vm extensions would be nice, i’d love to be able to run a stock ubuntu without having to use extra scripts but how practical do you think that would be?

    1. You won’t be able to boot straight Ubuntu without one of my ROM’s/compiling your own. The enable VMX documentation is at least partially broken, as I tried it on my 550 before I started compiling my own ROM’s, and it either didn’t work or bricked.

  3. John, SUCCESS!!!

    John, I took out out the SSD drive that came inside my 710 Chromebook and put in its place an ordinary SATA Laptop hard drive inside with Ubuntu 14.04 already installed on it using another desktop computer I have and like magic the SeaBIOS and Grub bootloader finally work correctly. I was able to see the normal boot process and go into the dekstop with wireless and the keyboard working. The only thing that isn’t working is the touch pad but with a mouse it is fine at the moment. Can you point me in the right direction to get the trackpad working? Thanks so much for taking the time for your help.

  4. That’s fine, if your rom allows me to boot directly into ubuntu that would be great, chrubuntu works but the space restrictions are bad

  5. John, I tried different linux distributions to see if the trackpad would work and for some strange reason installing on another computer and then transferring the hard drive to the Chromebook would just not work. Once again the SeaBIOS would get stuck at the error message or I would just get black screens and no login or desktop. Only Ubuntu 14.04 out of the ones I tried would allow me to do this. Arch, Fedora, Linux Mint, Ubuntu 12.04 would all not work. It must be something during the hard drive/partitioning/ boot drive setup that 14.04 uses. So I partitioned my hard drive using Ubuntu 14.04 and then installed Arch Linux using Evo/Lution (which is awesome… it makes the Arch setup so incredibly easy) on the pre partitioned hard drive made by Ubuntu 14.04. Now everything is working on the Chromebook perfectly and I’m now a fan of Arch. Once again thanks for all your help and suggestions.

  6. John, thank you for your custom roms.
    I have already wiped Chromeos from my Acer C720. Now I want to get rid of pressing ALT-L. Is there any possibility to flash your custom from from the installed Debian linux?

  7. Hi, John,

    I contacted you a few days ago about an issue I was having on my Acer C710 with a Celeron 1007 CPU and wanted to send an update.

    After reading your response (which I can’t find at the moment), I went back and re-installed Fedora 20 MATE. Fedora does appear to work best out of the box on the Acer C710. I also loaded VirtualBox 4.2.24 as opposed to 4.3.4.

    No more Vt-X error (or is it VM-X).
    VirtualBox 4.2.24 works fine on the C710 Celeron 1007u with your Seabios.

    With regard to the SSD I have, Fedora doesn’t report the error that Ubuntu did with regards to an unclean disk.

    I’m not sure how many changes to the coreboot seabios build you created, but in the event I needed to make a change, is there a way to change BIOS settings?

    Thanks for your hard work.

    Rich

  8. please i wanna ask… i just got simply follow instructions to a person on youtube.. and I used one of your roms in my acer c710 chromebook. at first it was ok but after done everything. as i try to open it wont show any display. even though the power was on.. there are no any progess.. please i need a solution for this.

    i can’t go further because there are no display. I do not know if it is working although there are no display..

    i’m going to gift it to someone.. i was so excited to change it to win7.. but instead i’m down and cannot even give it to her in her birthday..

    thank you for reading it out.. GOD Bless you sir… :(

    1. Sorry for the late replay, my internet has been broken since last Thursday.

      In all probability you’ve flashed a ROM meant for a C710 with a different CPU. You need to create a Fedora USB stick with persistent storage (using the Fedora Live USB creator), install SSH on it, and then boot it by pressing “ESC” and then “2”, 2 or 3 seconds after switching on.

      I don’t need anyone to bless me, thanks very much, certainly not a fictional deity …

    1. I’m not that confident. But then, I did make a build for Stout which worked OOTB the other week. Can you confirm the PCI id’s of the graphics card using lspci? It’s probably 8086:0106 or something like that.

  9. 00:00.0 0600: 8086:0104 (rev 09)
    Subsystem: 8086:0104
    Flags: bus master, fast devsel, latency 0
    Capabilities: [e0] Vendor Specific Information: Len=0c
    Kernel driver in use: agpgart-intel

    00:02.0 0300: 8086:0126 (rev 09) (prog-if 00 [VGA controller])
    Subsystem: 8086:0126
    Flags: bus master, fast devsel, latency 0, IRQ 43
    Memory at e0000000 (64-bit, non-prefetchable) [size=4M]
    Memory at d0000000 (64-bit, prefetchable) [size=256M]
    I/O ports at 2000 [size=64]
    Expansion ROM at [disabled]
    Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
    Capabilities: [d0] Power Management version 2
    Capabilities: [a4] PCI Advanced Features
    Kernel driver in use: i915

    00:1a.0 0c03: 8086:1c2d (rev 05) (prog-if 20 [EHCI])
    Subsystem: 8086:1c2d
    Flags: bus master, medium devsel, latency 0, IRQ 20
    Memory at e0605800 (32-bit, non-prefetchable) [size=1K]
    Capabilities: [50] Power Management version 2
    Capabilities: [58] Debug port: BAR=1 offset=00a0
    Capabilities: [98] PCI Advanced Features
    Kernel driver in use: ehci_hcd

    00:1b.0 0403: 8086:1c20 (rev 05)
    Subsystem: 8086:1c20
    Flags: bus master, fast devsel, latency 0, IRQ 46
    Memory at e0600000 (64-bit, non-prefetchable) [size=16K]
    Capabilities: [50] Power Management version 2
    Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
    Capabilities: [100] Virtual Channel
    Capabilities: [130] Root Complex Link
    Kernel driver in use: snd_hda_intel

    00:1c.0 0604: 8086:1c10 (rev b5) (prog-if 00 [Normal decode])
    Flags: bus master, fast devsel, latency 0
    Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
    Memory behind bridge: e0400000-e04fffff
    Capabilities: [40] Express Root Port (Slot-), MSI 00
    Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
    Capabilities: [90] Subsystem: 8086:1c10
    Capabilities: [a0] Power Management version 2
    Kernel driver in use: pcieport

    00:1c.2 0604: 8086:1c14 (rev b5) (prog-if 00 [Normal decode])
    Flags: bus master, fast devsel, latency 0
    Bus: primary=00, secondary=02, subordinate=02, sec-latency=0
    Capabilities: [40] Express Root Port (Slot-), MSI 00
    Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
    Capabilities: [90] Subsystem: 8086:1c14
    Capabilities: [a0] Power Management version 2
    Kernel driver in use: pcieport

    00:1c.3 0604: 8086:1c16 (rev b5) (prog-if 00 [Normal decode])
    Flags: bus master, fast devsel, latency 0
    Bus: primary=00, secondary=03, subordinate=03, sec-latency=0
    I/O behind bridge: 00001000-00001fff
    Prefetchable memory behind bridge: 00000000e0500000-00000000e05fffff
    Capabilities: [40] Express Root Port (Slot-), MSI 00
    Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
    Capabilities: [90] Subsystem: 8086:1c16
    Capabilities: [a0] Power Management version 2
    Kernel driver in use: pcieport

    00:1d.0 0c03: 8086:1c26 (rev 05) (prog-if 20 [EHCI])
    Subsystem: 8086:1c26
    Flags: bus master, medium devsel, latency 0, IRQ 19
    Memory at e0605c00 (32-bit, non-prefetchable) [size=1K]
    Capabilities: [50] Power Management version 2
    Capabilities: [58] Debug port: BAR=1 offset=00a0
    Capabilities: [98] PCI Advanced Features
    Kernel driver in use: ehci_hcd

    00:1f.0 0601: 8086:1c49 (rev 05)
    Subsystem: 8086:1c49
    Flags: bus master, medium devsel, latency 0
    Capabilities: [e0] Vendor Specific Information: Len=0c
    Kernel driver in use: nm10_gpio

    00:1f.2 0106: 8086:1c03 (rev 05) (prog-if 01 [AHCI 1.0])
    Subsystem: 8086:1c03
    Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 44
    I/O ports at 2060 [size=8]
    I/O ports at 2070 [size=4]
    I/O ports at 2068 [size=8]
    I/O ports at 2074 [size=4]
    I/O ports at 2040 [size=32]
    Memory at e0605000 (32-bit, non-prefetchable) [size=2K]
    Capabilities: [80] MSI: Enable+ Count=1/1 Maskable- 64bit-
    Capabilities: [70] Power Management version 3
    Capabilities: [a8] SATA HBA v1.0
    Capabilities: [b0] PCI Advanced Features
    Kernel driver in use: ahci

    00:1f.3 0c05: 8086:1c22 (rev 05)
    Subsystem: 8086:1c22
    Flags: medium devsel, IRQ 22
    Memory at e0606000 (64-bit, non-prefetchable) [size=256]
    I/O ports at 0400 [size=32]
    Kernel driver in use: i801_smbus

    00:1f.6 1180: 8086:1c24 (rev 05)
    Flags: fast devsel, IRQ 139
    Memory at e0604000 (64-bit, non-prefetchable) [size=4K]
    Capabilities: [50] Power Management version 3

    01:00.0 0280: 168c:0030 (rev 01)
    Subsystem: 144d:4107
    Flags: bus master, fast devsel, latency 0, IRQ 16
    Memory at e0400000 (64-bit, non-prefetchable) [size=128K]
    Expansion ROM at e0420000 [disabled] [size=64K]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable- Count=1/4 Maskable+ 64bit+
    Capabilities: [70] Express Endpoint, MSI 00
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Virtual Channel
    Capabilities: [300] Device Serial Number 00-00-00-00-00-00-00-00
    Kernel driver in use: ath9k

    03:00.0 0200: 10ec:8168 (rev 06)
    Subsystem: 10ec:8168
    Flags: bus master, fast devsel, latency 0, IRQ 45
    I/O ports at 1000 [size=256]
    Memory at e0504000 (64-bit, prefetchable) [size=4K]
    Memory at e0500000 (64-bit, prefetchable) [size=16K]
    Capabilities: [40] Power Management version 3
    Capabilities: [50] MSI: Enable+ Count=1/1 Maskable- 64bit+
    Capabilities: [70] Express Endpoint, MSI 01
    Capabilities: [b0] MSI-X: Enable- Count=4 Masked-
    Capabilities: [d0] Vital Product Data
    Capabilities: [100] Advanced Error Reporting
    Capabilities: [140] Virtual Channel
    Capabilities: [160] Device Serial Number 00-00-00-00-00-00-00-00
    Kernel driver in use: r8169

  10. Hmm I used a piece of foil but when i turn it on it says chromeos cannot be found and i must run a recovery disk, technically i can do that and run console through the recovery stick but are you turning write protect off while the system is powered on?

  11. I found the right jumper and got the rom flashed, luckily the system boots however it shows Booting form harddrive… and then does nothing else, I tried creating a bootable usb flash drive and if i press esc quickly enough i can get to the boot menu but when i select 2 for my usb drive i simply get the booting from harddrive… message all over again, any ideas? I tried two bootable keys and distros and back and front usb ports and disabling/enabling developer mode.

  12. What is very strange is initially when i had the chrome OS recovery image usb plugged in it attempted to boot but failed due to an irq error i believe, but when using a recovery image made with unetbooten and ubuntu or damn small linux neither will even attempt to boot, i get no prompt at all on the screen.

    1. Well, nothing related to ChromeOS will boot after installing that ROM, so that’s not surprising. Also many people have problems with Unetbootin (I for one). I would recommend making a Fedora USB, and seeing what happens with that. You can either directly dd the image to the USB key or use the live USB creator (which also has a Windows version). If that doesn’t boot then there’s something else going on.

  13. No dice man, tried all 4 ways of making a fedora 20 live usb drive, removed wifi card, removed display port card, switched to only one stick of ram, switched between dev and not dev mode makes no change.

  14. I tried formatting the drive with another system, I encountered an error during the boot setup but was able to boot it with my laptop to a minimal gnu shell, stumpy however just sits at booting from harddrive… and doesn’t attempt to go further

  15. Also attempted to format the usb key with the chrome os recovery maker to see if i could get it to attempt to boot that again but that appears to have been a fluke since i still had the write protect jumper installed, I’ll try again later to format the system drive with another system and see if i can get it to boot but right now its looking bricked, i can’t get to a shell to flash anything.

    1. Yeah, that would’ve been my next suggestion. Take the hard drive out of the Stumpy and install Fedora on it elsewhere. Confirm it boots on the other system, then put it back in to the Stumpy. It would seem really odd if that doesn’t work, but I suppose that would help narrow the problem down.

  16. I’ll try once more this evening to do that but if it doesn’t work it’s looking bricked, at least in the sense that i can’t boot anything to flash the stock firmware back and I can’t boot from usb no matter what distro I choose, what is really worrying is that stumpy is listed as officially supported by coreboot so it seems odd that it would have problems to this degree.

  17. Well after trying a few more times i got a stumpy to boot a drive with windows 7 already installed on it and ubuntu already installed on it. Looks like we are going to need to come up with a fix for why it can’t boot from usb but i can boot to linux just fine assuming its already installed.

    1. I take it you did try more than one USB key?

      I’ll try doing another pull on SeaBIOS Master, and if that doesn’t work then maybe I’ll try the default 1.7.4.

  18. I’m going to hold off on flashing anything else, I don’t want to flash anything blindly, ideally I’d like to try to track down the usb booting issue maybe it’s similar to the problem with the asus chromebox?

    It was listed here http://www.coreboot.org/Supported_Motherboards#2014W04 as supported last known to work well with 2014W04 which was made in january?

    https://www.dropbox.com/s/46v5oygiivr72wh/Screenshot%202014-07-03%2013.13.54.png

    Anyway, I’m going to be setting up windows 7 on the machine this evening and I’ll see what can be done from my end to try to track down any possible hardware issues once i have it installed and running.

    1. I’m not even sure what you mean by that. If there definitely is a USB issue, the only way we’re going to fix it is by “tweaking” things. I’m in a position to try a few different build options at the moment, I may not be subsequently. No, the ASUS issues were due to SeaBIOS not supporting USB 3.0 properly at the time the product was released. If you want so much control over the way things are done, maybe you should make your own build. If you’re not prepared to do that, I would suggest you work with me to try and sort this out ASAP.

  19. Your website appears to filter out any comment that has coreboot./org in the name, I’m trying to link you to the page that has the model listed

    https://www.dropbox.com/s/46v5oygiivr72wh/Screenshot%202014-07-03%2013.13.54.png

    Anyway i’ll be installing windows 7 on the machine later this evening and I’ll see what I can do to get my only other usb key to work with it but i highly doubt the usb key is the issue considering this is the same key i’ve used before for chromeos restores, it works fine in my laptop and works fine as far as I can tell. I’m going to hold off on flashing that until I can get you more info for possible debugging, maybe same issue that occured with asus chromebox?

  20. I just wanted to thank you for these ROM images and instructions. I bought an Acer C710 Chromebook at Sam’s Club for my wife. Though she liked the size, she was not happy with the need to be on the Internet to make anything work. I tried going the “ChrUbuntu” route, but the 710 doesn’t behave quite the way it needs to for the script to work. I spent several days trying to get the kernel to install correctly, but I just couldn’t make it happen. Eventually, I decided to get rid of ChromeOS completely, and followed the instructions you have detailed here.

    Everything went as smooth as could be. I am installing Ubuntu 14.04 on it as I type this. It is acting like a “normal” laptop, and I’m sure the boss will be very pleased. Thanks again for your ROMs, advice, and info.

  21. Thank you for your awesome work, John. I’ve got an Acer C710 with Celeron 847 and I wonder about the latest versions you offer. I want suspend to work and don’t need any Windows, so I’d choose coreboot-parrot-seabios-suspend-27102013.rom. Do the later versions include fixes or are they simply different configurations? Considering coreboot-parrot-grub2-suspend-27102013.rom, I don’t need SeaBIOS to be optional. Considering coreboot-parrot-seabios-windows-27102013.rom, will Linux suspend work even if Windows suspend does not? Which one should I chose? Sorry If there’s something I’m missing.

  22. Hi John. This looks really sweet for my Acer c710 running Chrubuntu. I, too, am looking for a solution that allows my laptop to suspend, and would like to install a kernel build that supports mounting Windows shares, something the ChromeOS-reliant 12.04 LTS chrubuntu can not do on the c710.

    I’m thinking the http://johnlewis.ie/coreboot-parrot-grub2-suspend-27102013.rom build will do what I am looking for? Have you gotten any feedback on battery usage for the c710?

    Thanks a bunch, and keep up the good work!
    –Peter

    1. Hi Peter,

      Unless you want a Grub2 payload, I would use the SeaBIOS version. That’s the version most people want.

      YMMV with battery usage. I don’t think it’s going to be as low as with ChromeOS.

      John.

  23. Nice work. Got rid of ChromeOS. Flashed my Acer C710-2847 with your coreboot-parrot-grub2-good-23102013.rom. Everything looks working fine except the built-in mouse touch pad. Using external USB mouse. I see a Bluetooth icon on the taskbar. I am sure this machine does not have a Bluetooth receiver. I guess the mousepad is being wrongly recognized. Also a BIOS message gets popped up before the booting saying something like an I2C adaptor is missing.
    Wondering if the source of your coreboot can be available. Thanks

    1. Unless you can write Windows drivers you aren’t going to have much luck in your endeavour.

      There is no “my coreboot”. It’s upstream coreboot which you can download using git. I suggest you look at the coreboot website.

  24. Just finished reflashing my C7 using one of your ROMs and I really appreciate the hard work involved here — you’ve helped give me a reason to dust off the Chromebook again.

  25. I’m not sure where you got the idea that I was telling you to do anything, my system is currently in a state of unfixability. I managed to get Ubuntu pre-installed to the 16GB drive to boot once and only once, switching over to my 256gb msata from my laptop and throwing windows 7 on it gets me to a usable operating system about 50% of the time, are you aware of a flash program I can use from within windows? Trying to switch to Ubuntu again failed, trying another USB failed as well.

    Additionally I’d have no issue building my own build unfortunately the current build has left me unable to even begin to try to do that, this isn’t an issue of being uncooperative this is an issue of my system being almost unusable. I appreciate the build, seeing windows boot at all is a miracle but there are odd issues taking place that I think you might be interested in hearing about.

    Windows 7 will boot, however upon reboot you must wait until you get to the starting windows screen and the boot logo won’t appear, then you have to turn off the machine, turn it back on and go though the start up repair process once that completes it will then boot again, repeat for every reboot.

    Ubuntu booted once from the 16GB drive the system came with but refuses to boot now from the 256GB drive i swapped into the system even after reinstalling Ubuntu to the new drive, I’ll try again with the 16GB when i get a chance.

    1. Well, despite your refusal to test, I’ve managed to find someone else who is willing, and I fixed the boot menu problem by changing to SeaBIOS 1.7.4 as I suggested. So, do you understand how you’ve been unhelpful? Not too mention messing me around by pretending you’re a willing tester, and then not testing when asked.

  26. Thank you for your contribution. Having a C720-2420, there are 2 questions for me:

    1) Which advantage would your custom ROM provide, as the C720 already allows to set SeaBIOS as default?
    2) Can I still change ROMs after having installed Linux Mint as single OS?

    Cheers

    1. 1) Boot up is quicker
      2) No annoying dev screen
      3) TPM module is effectively disabled, so no need for tpm_tis.force=1 work-arounds in Linux
      4) Other advantages I can’t remember

      Yes, you can download a statically linked version of Flashrom from the community Links, which will allow you to go back and/or flash another. Backing up is problematic though (at least it has been for me), so make a note of your HWID and serial in case you need to construct one.

  27. Delighted to note that you provided a script :-D
    My result — after removing said screw — looks like this:

    chronos@localhost / $ curl -k -L -O https://johnlewis.ie/getnflash_johnlewis_rom.sh; sudo bash getnflash_johnlewis_rom.sh
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    0 0 0 0 0 0 0 0 --:--:-- 0:00:03 --:--:-- 0Warning: Failed to create the file getnflash_johnlewis_rom.sh: Read-only file
    Warning: system
    100 5091 100 5091 0 0 1100 0 0:00:04 0:00:04 --:--:-- 1971
    curl: (23) Failed writing body (0 != 5091)
    bash: getnflash_johnlewis_rom.sh: No such file or directory

    Please advise a terminal-amateur, thanks!

    Also wondering why there are 2 builds for the C720?
    1. coreboot-peppy
    2. coreboot-peppy-seabios
    SeaBIOS only might be option 2.?

    Cheers

    1. You need to be in a write-able directory, preferably a USB drive in ChromeOS. I should check that in the script.

      If you look at the changes for the second ROM, it’ll tell you what it has, over and above the first.

  28. What are you high or something? I haven’t been able to test anything because I haven’t been able to get my system back into working order until now I don’t think you understand what I said to you multiple times before.

    If i wasn’t able to boot any operating system then how could I have possibly been a willing tester? I already flashed the first build which broke the system then you want to blame me for my broken system?

    I appreciate the build but lose the attitude man no one was doing you a disservice it was physically impossible to get the system into a working operating system until now I managed to get Ubuntu 12.04 booted and I can finally try another build.

  29. I have a C710-2856 and I have inserted the piece of foil and successfully disabled write-protection, but when I use the flashrom commands I get failure messages that the file system is read-only. Is this an issue with the jumper not making good contact? Is there anything wrong with soldering the jumper pins together?
    I have noticed that even after I remove the piece of foil and execute the wp-disable command it is still successful.

    1. It might not boot after writing the ROM with the jumper shorted.

      Use crossystem to determine the status of the jumper – to be able to write the ROM it needs to be zero on boot and zero currently (wpsw_boot + wpsw_cur). You can give me a pic if you like.

  30. Hi John,

    I own a Samsung Stumpy Chromebox with i5 CPU. At the moment there is only a build for the Celeron model available.

    Can I help you to make an i5 build?

    I’m not a programmer but I will do as best as I can.

    Kind regards,
    Christian

  31. Unfortunately I still fail to get your script working, as it demands an USB stick — which is inserted though:
    Thank you for your time, please press [Enter] to continue:

    *** You *MUST* run this script whilst a valid USB stick is inserted. Please insert one and try again ***

    chronos@localhost /media/removable/UUI $

    But besides the stick “UUI”, I need to connect — an unlisted — USB-modem stick for my Internet access. Could this be an issue?

    Could you please explain how to backup the original ROM to a file?

    Thank you.

    1. Can you tell me what directories you have inside /media/removable when both USB sticks are connected? I expect I will need to modify the script for some reason which is yet to make itself clear.

      The point of it complaining about the USB stick is because it tries to backup the existing ROM before writing the new ROM, and there’s no point putting it inside ChromeOS’s stateful partition when you’re almost certainly going to wipe it. I did consider uploading the backed up ROM to my server over sftp or something like that, but it seems like overkill.

  32. Thanks for your concern, John!
    While I am connected via USB-stick-modem (Huawei), only the SD-card “AMI2” is listed:
    chronos@localhost /media/removable $ ls
    AMI2

    Cheers.

    1. The thing that bothers me about that is it sounds like ChromeOS is naming that directory by using the Volume name of the SD card’s filesystem, which is going to be difficult to cater for. I will have to think, and maybe look at the recovery script to see how it determines what is what.

  33. Addendum: The issue is not SD-card specific, but also occurs with my USB-stick “UUI” — as listed above.
    chronos@localhost /media/removable/UUI $

    As I understand, the programme “flashrom” is used to write “yourreplacementcoreboot.rom” to the ROM. But which programme reads/backups the ROM?

    1. I’ve updated the script so that it does the really dubious thing of simply checking for the existence of *any* directory inside /media/removable and cd’ing into the first one it finds.

      I’ve also updated the builds to contain SeaBIOS 1.7.5, which may fix suspend issues, and will allow use of external keyboard.

  34. Thanks for all your efforts John, the longer I wait and research, the better things become! I’ve got enough background now to go ahead and turn this C720P from a glorified web browser into an amazing little machine!
    Thanks again for your easy to use script and concise guides…. Can you be cloned?
    All the best

  35. That’s my result after I went to an office and connected via WLAN; the only issue which came unexpected was ‘spi_block_erase_20 failed during command execution at address 0x0’.


    bout to flash new ROM, please type 'If fate hands me a brick, on my head be it!' observing exact case and punctuation: If fate hands me a brick, on my head be it!
    flashrom v0.9.4 : 51c8a16 : May 07 2014 03:37:05 UTC on Linux 3.8.11 (x86_64), built with libpci 3.1.10, GCC 4.8.x-google 20140307 (prerelease), little endian
    Erasing and writing flash chip... spi_block_erase_20 failed during command execution at address 0x0
    Verifying flash... VERIFY FAILED at 0x00000062! Expected=0xff, Read=0x0b, failed byte count from 0x00000000-0x007fffff: 0x4
    Your flash chip is in an unknown state.
    Get help on IRC at irc.freenode.net (channel #flashrom) or
    mail flashrom@flashrom.org with FAILED: your board name in the subject line!
    -------------------------------------------------------------------------------
    DO NOT REBOOT OR POWEROFF!
    FAILED

    *** Assuming you didn't get any errors beyond the ubiquitous 'VERIFY FAILED at 0x00000062! Expected=0xff, Read=0x0b, failed byte count from 0x00000000-0x007fffff' you may reboot. Otherwise, do not reboot under ANY circumstances, and seek help! ***

    Shall reboot now ;-)

  36. Linux Mint up & running! :-)

    There might be an issue with the coreboot-peppy-seabios-310714:
    Several USB-media are not listed in this boot-menu anymore, which would boot without a hitch with the original coreboot.

    I cross-checked: the same media show-up in Linux Mint later. The only logical conclusion is, that coreboot-peppy-seabios-310714 still needs improvement.

    Nevertheless thank you so far!

    1. Well, we need to understand what particular characteristics these drives have that mean they don’t show up as bootable in SeaBIOS.

      First of all, you won’t be able to boot ChromeOS/ChromiumOS sticks. Second of all, things like unetbootin have a history of being hit and miss. To confirm that it is something to do with SeaBIOS’s hardware recognition and not with the boot record/format of the USB sticks, I need you to dd a Fedora 20/CentOS 7 ISO to each of the non-working sticks and attempt to boot. If you can do that, and tell me what happens, I can try to get something done.

      You’re welcome. I’m glad that no one has managed to find any major issues with the script since Kyle Johnson helped me test it.

  37. With the USB drives, SeaBIOS definitely seems to be picky. I’ve tried changing from MBR to GPT and various other things in hopes of getting one of my USB drives to boot (which is probably moot because my other drive boots with no issues regardless of what I ‘dd’ on it).

    So: dd’ing a known working image (Arch linux) and Ubuntu to a working and non-working USB drive results in one booting and the other one hanging on the ‘booting from hard drive’ message for both images.

    Maybe it’s a ‘standards’ thing? I don’t really have a clue. Hehe.

  38. Hi, I’ve got a Acer C710 parrot… on which i installed ChrUbuntu…

    I am trying to enter Developer mode, but the following comes up when booting using Esc-F3-Power buttons…

    Chrome OS is missing or damaged. please insert a recovery USB stick…

    I cannot Ctrl-D to go to Dev mode.

    Any ideas please?

  39. Ohhh… maybe I was not clear… I DID install ChrUbuntu… which I updated to 14.04 lts…

    I now tried to follow the instructions to flash the bios and reinstall 14.04 from scratch, wiping away the ChromeOS…

    But am running into this problem…

    Help appreciated… Do I need to go into developer mode? Can i run this script from within Ubuntu 14.04?

    Thanks!

  40. this is what happened i ran the scipt in xubuntu 14.04
    on my chromebook 14
    About to flash new ROM, please type ‘If fate hands me a brick, on my head be it!’ observing exact case and punctuation: If fate hands me a brick, on my head be it!
    flashrom v0.9.4 : 14ce0cf : Oct 09 2013 22:16:28 UTC on Linux 3.13.0-32-generic (i686), built with libpci 3.1.10, GCC 4.7.x-google 20130114 (prerelease), little endian
    Erasing and writing flash chip… spi_block_erase_20 failed during command execution at address 0x0
    Verifying flash… VERIFY FAILED at 0x00000062! Expected=0xff, Read=0x0b, failed byte count from 0x00000000-0x007fffff: 0x4
    Your flash chip is in an unknown state.
    Get help on IRC at irc.freenode.net (channel #flashrom) or
    mail flashrom@flashrom.org with FAILED: your board name in the subject line!
    ——————————————————————————-
    DO NOT REBOOT OR POWEROFF!
    FAILED

    *** Assuming you didn’t get any errors beyond the ubiquitous ‘VERIFY FAILED at 0x00000062! Expected=0xff, Read=0x0b, failed byte count from 0x00000000-0x007fffff’ you may reboot. Otherwise, do not reboot under ANY circumstances, and seek help! ***

  41. Hi John.
    Thanks for the reply. I checked the wpsw_boot and wpsw_cur with crossystem and they are both zero but I still get this error when running your script:

    Warning: Failed to create the file getnflash_johnlewis_rom.sh: Read-only file
    Warning: system
    curl: (23) Failed writing body (0 != 4777)
    bash: getnflash_johnlewis_rom.sh: No such file or directory

    I did install a 120GB SSD a while back, but that shouldn’t affect this, right?

Leave a comment