USB Firmware Compilation
Start Compiling
Brief Guide to Firmware Compilation
Notes
- Network: Ensure the host (Raspberry Pi, etc.) is connected to the internet.
- Login Method: Must log in via SSH over the network; serial port access is disabled.
- 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.
Switch User:
- Standard System (Official Raspberry Pi system, etc.)
Do not useroot; switch to a regular user:su <username> - FLY Host System (FlyOS-FAST system)
Only supports login asrootuser (password:mellow)
Firmware Compilation Operation Guide
In the Klipper firmware configuration interface, only keyboard operations are supported; the mouse cannot be used.
| Key | Function |
|---|---|
| ↑ / ↓ | Move cursor up/down to select menu items |
| Enter / Space | Confirm selection, check options, or enter submenus |
| ESC | Return to the previous menu |
| Q | Exit the configuration interface |
| Y | If prompted when exiting, press Y to save the configuration |
Starting Firmware Compilation
Below is an introduction on how to compile the firmware:
-
Connect via SSH, enter the following command, and press
Enter:cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfigHere,
rm -rf ~/klipper/.config && rm -rf ~/klipper/outis used to clear previous compilation configurations and firmware;make menuconfigis used to open the Klipper firmware configuration interface. -
Follow the order below to set each item one by one, completing each before moving on to the next.
1启用 Enable extra low-level configuration options(Top)Klipper Firmware Configuration2Micro-controller Architecture 选择 STMicroelectronics STM32(Top)Klipper Firmware Configuration3Processor model 选择 STM32F407(Top)Klipper Firmware Configuration4Bootloader offset 选择 32KiB bootloader(Top)Klipper Firmware Configuration5Clock Reference 选择 8 MHz crystal(Top)Klipper Firmware Configuration6Communication interface 选择 USB (on PA11/PA12)(Top)Klipper Firmware Configuration7启用 Optimize stepper code for 'step on both edges'(Top)Klipper Firmware Configuration8按 Q 键退出配置界面(Top)Klipper Firmware Configuration9出现 Save configuration 时按 Y 保存配置QuitSave configuration?(Y)es(N)o(C)ancel -
After completing the last two steps above, press
Qto exit the configuration interface, then pressYto save the configuration. -
Return to the command line and enter the following command, then press
Enterto start compiling:make -j4root@flyos-11e5f8 ~/klipper # make -j4Compiling out/src/stm32/spi.oCompiling out/src/stm32/i2c.oCompiling out/src/stm32/usbotg.oCompiling out/src/stm32/chipid.oCompiling out/src/generic/usb_cdc.oCompiling out/src/stm32/hard_pwm.oCompiling out/src/stm32/sdio.oPreprocessing out/src/generic/armcm_link.ldBuilding out/compile_time_request.oVersion: XXXXLinking out/klipper.elfCreating bin file out/klipper.bin终端末尾出现
Linking out/klipper.elf和Creating bin file out/klipper.bin,即表示编译成功。 实际编译时,部分 Compiling 行和 Version 会随 Klipper 与系统版本变化。
Burn Firmware
Preparation
- Before starting to flash the firmware, please first use the network to connect via SSH
- Off-brand memory cards may cause flashing failure. Please try to use the recommended memory cards below to update the firmware.
- You need to prepare a TF card with a capacity of no more than
32G, and it is recommended that the transfer speed of the TF card must beclass10class orclass10class or above. It is recommended to use TF cards from brands such as SanDisk.
Download Firmware
-
Use the TF card prepared earlier
-
Format it using
SDFormatterLoading... -
Use the file directory on the left side of MobaXterm_Personal to find
klipper, select it, then findoutand open it- Firmware download directory for regular systems
- Firmware download directory for FlyOS-FAST system
Caution- Notes for regular systems
- This category applies to regular host systems such as Raspberry Pi and FLY Pi
- The compiled firmware is located in the
/home/<your host username>/klipper/out/directory
Loading...
Caution- Notes for
FlyOS-FASTsystem- Firmware directory for
FAST system - The compiled firmware is located in the
/data/klipper/out/directory
Loading... - Firmware directory for
-
And download
klipper.binto the TF card, and rename it tofirmware.binfirmware.binLoading...
Windows may hide file extensions by default, making it easy to actually save the file as firmware.bin.txt or firmware.bin.bin. Before renaming the firmware, please enable extension display in File Explorer:
- Open any folder.
- Click
Viewat the top. - Check
File name extensions. - When renaming the file, confirm that the full file name is
firmware.bin.
- Power off the mainboard and insert the TF card into the mainboard
- Power on the mainboard and wait 10 seconds
- Remove the TF card and insert it into the computer. If
firmware.binon the SD card disappears andFLY.CURappears, the flashing was successfulLoading...
Search for USB ID After Burning
After firmware burning is completed and the motherboard is powered on again, continue to search for the USB ID.