Rpi zero 2w in Prusa 3D printer; aka: data received via UART (over GPIO) disturbs the boot process

And it works…

Quicky more hacky way is below.
Basically just change activation string from any key,
to semi random string disables parsing of garbage received via UART.

  nixpkgs.overlays = [
    (self: super: {
      ubootRaspberryPi3_64bit = super.ubootRaspberryPi3_64bit.overrideAttrs (oldAttrs: {
        extraConfig = ''
          CONFIG_BOOTDELAY=-2
          CONFIG_SILENT_CONSOLE=y
          CONFIG_SYS_DEVICE_NULLDEV=y
          CONFIG_SILENT_CONSOLE_UPDATE_ON_SET=y
          CONFIG_SILENT_U_BOOT_ONLY=y
          CONFIG_AUTOBOOT_KEYED=y
          CONFIG_AUTOBOOT_PROMPT="NO UART\0"
          CONFIG_AUTOBOOT_DELAY_STR="dfg\0"
          CONFIG_AUTOBOOT_STOP_STR="1234\0"
        '';
      });
...

However, I still need to edit extlinux configuration manually and remove
MENU and TIMEOUT lines. Because I just want to go to last generation only.

TIMEOUT -10 line, which is generated by boot.loader.timeout = 0;
doesn’t seems to work and we are stuck in menu.

Maybe I need just add some hacks to:

which removes MENU and TIMEOUT from generated file.

2 Likes