Skip to main content

USB Firmware Compilation

Start Compilation

Firmware Compilation Quick Guide

Notes

  • Network: Ensure the host machine (Raspberry Pi, etc.) is connected to the network.
  • Login Method: Must use SSH to log in via the network; disable serial port.
  • Input Method: Keep the keyboard in English half-width mode.

SSH Login and User Switching

Use tools like MobaXterm, PuTTY, etc., to SSH into the host machine.

Switching Users:

  • Standard Systems (Raspberry Pi official system, etc.)
    Do not use root. Switch to a regular user:
    su <username>
  • FLY Host Machine (FlyOS-FAST system)
    Only supports logging in as the root user (password: mellow).

Firmware Compilation Operation Guide

In the Klipper firmware configuration interface, only keyboard operations are supported; mouse usage is not possible.

KeyFunction
↑ / ↓Move the cursor up/down to select menu items
Enter / SpaceConfirm selection, toggle options, or enter submenus
ESCReturn to the previous menu
QExit the configuration interface
YWhen exiting, press Y if prompted to save the configuration

Below is an introduction on how to compile the firmware:

  • After connecting via SSH, enter the following command and press the Enter key:

    cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig
  • Here, rm -rf ~/klipper/.config && rm -rf ~/klipper/out deletes the previous compilation data and firmware, while make menuconfig compiles the firmware. After execution, the following interface should appear:

    Loading...
  • Select Enable extra low-level configuration options and press the Enter key.

    Loading...
  • Navigate to the Micro-controller Architecture menu, then select STMicroelectronics STM32 and press the Enter key.

    Loading...
  • Go to the Processor model menu and select STM32H723, then press Enter.

    Loading...
  • Select Bootloader offset and choose: 128KiB bootloader.

    Loading...
  • Select Clock Reference (8 MHz crystal) and choose: 25 MHz crystal.

    Loading...
  • For Communication interface, select: USB (on PA11/PA12).

    Loading...
  • Press the Q key. When Save configuration appears, press the Y key.
    Loading...
  • The configuration should now be saved, and you will return to the command line interface.
  • Enter the following command to start the compilation. This process may take some time.
make -j4
Loading...
  • If the following content is output at the end, the compilation is successful.
  • Due to Klipper version differences, the appearance of out/klipper.bin alone indicates success.
    Linking out/klipper.elf
    Creating bin file out/klipper.bin

Flash Firmware

Preparation

  • Before starting to flash the firmware, please first Connect via SSH using network
  • Off-brand memory cards may cause flashing failures. Please try to use the recommended memory cards below for firmware updates.
  • Prepare a TF card with a capacity not exceeding 32G. It is recommended that the TF card's transfer speed must be class10 or higher. SanDisk and other reputable brands are recommended.

Download Firmware

  1. Use the TF card prepared earlier.

  2. Format it using SDFormatter.

    Loading...
  3. Use the left file directory in MobaXterm_Personal to find klipper, then locate and open out.

    Caution
    • Notes for Regular Systems
      • This applies to regular host systems like Raspberry Pi, FLY Pi, etc.
      • The compiled firmware is located in the /home/<your host username>/klipper/out/ directory.
      Loading...
  4. Download klipper.bin to the TF card and rename it to firmware.bin.

    firmware.bin
    Loading...
  5. Power off the mainboard and insert the TF card.

  6. Power on the mainboard and wait for 10 seconds.

  7. Remove the TF card and insert it into the computer. If firmware.bin disappears from the SD card and FLY.CUR appears, the flashing was successful.

    Loading...
Loading...