Chromebook 300e 4th Gen Stuck in Boot Loop

Hello,
We have 6 Chromebooks Lenovo 300e 4th Gen stuck on boot-loop, they are ARM architecture, aarch64, and the model is STEELIX.

These Chromebooks had the motherboard replaced under warranty. The new motherboards came on Developer mode active, with the WP enabled and, GBB flags enabled, which prevented them from returning to secure mode.

When adding the SN to the motherboards, my techs forgot to remove the GGB flags before enrolling them. Enrolling them disables the Dev mode. However, since the GGB Flags were set to not allow returning to secure mode, it created the boot loop.

We tried reinstalling the OS, which installs ok, but as soon as it restarded, the boot loop continued.
Under the Lenovo support website, they offer a Shim that allows you to boot from it. If you can load the shim, it will allow you to remove the flags. The shim works two different ways, one, you to boot to a QR code that once it is scanned on the Chrome browser, will take you to a server that generates a code that will allow you to load the shim on the machine. That option does not work because Lenovo does not let you access to their server. I have requested it and no response. The second option is to disconnect the battery which removes the hardware WP, and after booting to the USB, it will load the shim and be able to remove the flags. The problem is that it does not load the shim, it crashes when in the boot loop.

After reading the Mrchromebox forum, I discovered that with the SuzyQ cable, one can connect a Linux machine to a Chromebook using the shell screen. This method is used to unbrick a Chromebook by flashing a new Rom. My problem is that the ARM Chromebooks are not supported for re-flashing.

My question is if I can connect to the Chromebook using a SusyQ cable and communicate to the Chromebook, can I send the command to disable the flags that way? If so, does anyone know the command I can use to do this? In theory, if I can remove the flags, this should stop the boot loop and boot the CB on secure mode.

The command I use to disable the flags once I’m on the CB shell is: sudo futility gbb --set --flash --flags=0x0

I have converted one of our Chromebooks with an x86_64 board to Liinux (Debian) and was able to connect the Chromebook in question using Mrchromebox instructions as follows:

  1. Boot your Linux environment (Ubuntu live USB or later recommended)
  2. Connect to the internet
  3. Open a (non-root) terminal/shell window, change to home directory
    • cd;
  4. Install flashrom via apt:
    • sudo apt update
  • sudo apt install flashrom
  1. Connect the USB-C end of the Suzy-Q cable to the CCD port on your ChromeOS device (usually left USB-C port) and the USB-A end to your Linux device
  2. Verify the cable is properly connected:
    • ls /dev/ttyUSB*
    • This command should return 3 items: ttyUSB0 , ttyUSB1 , and ttyUSB2 .
    • If not, then your cable is connected to the wrong port or is upside down; adjust and repeat command until output is as expected
  1. Set the CCD state to open:
    • echo "ccd open" | sudo tee -a /dev/ttyUSB0 > /dev/null

From this point, the instructions continue about flashing the new ROM, which in my case is not available or supported. However, I figured that there must be a command that I can send to the Chromebook that can disable the GGB flags through this method.

PS, I manage the Google Admin console and have de-provisioned those Chromebooks that are in the boot loop, but they cannot come out of the loop until they communicate with the console.

Sorry for the very long comment, but the more info available the easier it is to understand and hopefully get the right answer.

Thank you in advance.

I don’t believe you can do anything with the suzyq cable as long as the devices are enrolled.

You can, however, use a ch341a programmer and flashrom to change the GBB flags.

This explains how to read and write with the programmer:

But instead of flashing a different rom, you would just modify the original ROM with GBB utility

Ok, let me read through the instructions and advise if it works once I try. Thank you!

You could maybe use a leaked corsola shim, unless these boards have the RO recovery keys updated.

I don’t mind trying. Do you have a link to that shim?

Tayne, Thank you for the info. However, that process is more involved that what our time is worth and it would be just easier and faster to have the board replaced under warranty. I was hoping for a quick command line that could help me remove those flags.

1 Like