the Chromium logo

The Chromium Projects

Firmware UI troubleshooting

Failed to emerge chromeos-bootimage

chromeos-bootimage-0.0.3-r80:  * ERROR: sys-boot/chromeos-bootimage-0.0.3-r80::chromiumos failed (compile phase):
chromeos-bootimage-0.0.3-r80:  *   Failed cbfstool invocation: cbfstool halvor/image-halvor.dev.bin add-payload -f /build/volteer/firmware/volteer/depthcharge/dev.elf -n fallback/payload -c lzma
chromeos-bootimage-0.0.3-r80:  * E: Could not add [/build/volteer/firmware/volteer/depthcharge/dev.elf, 111696 bytes (109 KB)@0x0]; too big?
chromeos-bootimage-0.0.3-r80:  * E: Failed to add '/build/volteer/firmware/volteer/depthcharge/dev.elf' into ROM image.
chromeos-bootimage-0.0.3-r80:  * E: Failed while operating on 'COREBOOT' region!

When failing to add either locale_*.bin or depthcharge/dev.elf into AP image, it usually means the COREBOOT region in RO (check your chromeos.fmd) is too small to contain all the necessary files.

Solution 1 (preferred): Enlarge RO space in FMAP layout. See example CL for zork.

Solution 2: Try to decrease the dpi setting of your board by overriding the default value in bmpblk/boards.yaml. This will lower the quality of text in firmware screens (i.e. make it blurrier). Non-text images such as screen icons and QR code will not be affected. When building bmpblk, if you see the following warning message:

Reducing effective DPI to 126, limited by screen resolution

it means the physical panel is unable to display bitmaps with a DPI value larger than 126. As such, the build process caps the DPI at 126, and increasing to any larger value will not improve bitmap quality or increase flash space usage. Consider lowering the dpi setting to this number (or below) for clarity in the boards.yaml file.

The following message of chromeos-bootimage may also help you estimate the optimal setting.

* assets (RO): 2358 KiB (2820 KiB free) asurada
* assets (RW): 729 KiB (322 KiB free) asurada

See example CL for nautilus and soraka.

Blurry text in firmware screen

Blurry (or pixelated) text is usually caused by low resolution bitmaps generated in bmpblk.

Solution: Try to specify the highest possible dpi of your board in bmpblk/boards.yaml that will fit.

Fallback screen

fallback screen

Fallback message

When failing to draw any part of the screen, fallback messages will be shown in a textbox with monospaced font (similar to the debug info screen).

In this case, please check AP log to find out the failure triggering the fallback message. Some common reasons are:

Fallback colored stripes

In any case of drawing failure, 3 colored stripes will also be shown on the top left corner of the screen to indicate the screen id and the currently selected index. Please check CL:2062723 for the meaning of the stripes.

Failed to enable developer mode

After selecting the "Enable developer mode" option in recovery UI, the device should reboot to developer UI. If you see the "Confirm returning to secure mode" screen instead, without the "Cancel" option being present, it means that booting into developer mode is not allowed due to the FWMP_DEV_DISABLE_BOOT flag being set.

For Googlers: Try to enroll the device for corp access. This might be related to the zero-touch enrollment on your device. See b/181316942 for details.