Wired Connection Klipper Configuration
- You need to flash the firmware to STM32F072 before connecting to Klipper, otherwise wired connection operation is not supported.
Start Compilation
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 选择 STM32F072(Top)Klipper Firmware Configuration4Bootloader offset 选择 No 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 Configuration8GPIO state at micro-controller startup 选择 Not set此项是 FLYOS-Klipper 功能。通常保持
Not set;如需设置全部 GPIO 的启动状态,请先阅读 GPIO 启动状态使用说明。(Top)Klipper Firmware Configuration9按 Q 键退出配置界面(Top)Klipper Firmware Configuration10出现 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/stm32f0_adc.oCompiling out/src/stm32/spi.oCompiling out/src/stm32/stm32f0_i2c.oCompiling out/src/stm32/usbfs.oCompiling out/src/stm32/chipid.oCompiling out/src/generic/usb_cdc.oCompiling out/src/stm32/hard_pwm.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 与系统版本变化。
Enter Flash Mode
- With the AirClick powered off, press and hold the STM32's BOOT button, then connect the STM32's flash port to the host computer via Type-C.
Loading...
Flash Firmware
-
Install the flashing tool
- No need to install the flashing tool for the FLY host computer
- If you need to install it, please note: The host computer must have internet access for proper installation
- If already installed, there is no need to install again
sudo apt updatesudo apt install dfu-util -y -
Run the following command to check if the connection is successful.
lsusb-
If no DFU device is found, please try re-entering flashing mode
-
Due to system version differences, it may display a different name. If you see
0483:df11, it indicates that the flashing mode has been enteredLoading...
-
-
Flash the firmware
- Run the command below to start flashing. Replace
<full path of firmware file>with the actual firmware file path
sudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000 -D <full path of firmware file> - Run the command below to start flashing. Replace
-
If the message
File downloaded successfullyappears as shown below, the flashing is successfulLoading...TipAfter flashing is complete, be sure to completely power off the motherboard once.
Search USB ID
- Connect the AirClick's flash port to the host computer's USB port. Do not press and hold the BOOT button, otherwise the ID cannot be found.
Loading...
Obtaining the Mainboard USB ID
Important Notes
When connecting or re-plugging the mainboard USB cable, please completely shut down the printer and disconnect the power supply first. Do not plug or unplug the cable while the printer is powered on.
- You must log in to the host machine via SSH to execute the search commands.
- Before proceeding, please confirm that the mainboard has been flashed with USB firmware and is connected to the host machine's USB port via a Type-C data cable.
- This tutorial is only for searching the mainboard USB ID and is not applicable for searching toolhead board IDs.
- For toolhead board devices, please refer to the USB or CAN ID acquisition tutorial in the corresponding product documentation.
Procedure
Searching for the USB Device ID
Log in to the host machine via SSH and run the following command to list all USB serial device IDs:
ls /dev/serial/by-id/*
Unusable IDs
After executing the command, please avoid using the following two types of IDs:
| ID Characteristic | Reason | Example |
|---|---|---|
usb-1a86_USB_Serial-if00-port0 | Default name for generic serial chips like CH340; cannot be used as the Klipper mainboard connection address | /dev/serial/by-id/usb-1a86_USB_Serial-if00-port0 |
Contains katapult | The device is in Katapult flashing mode; Klipper firmware needs to be flashed first | /dev/serial/by-id/usb-katapult_xxxxxxxxxxxx |
Search Results
Under normal circumstances, the terminal will display a device path similar to the image below. The ID in the image serves only as a format example.
No Available ID Found: Refer to the Firmware and Connection Troubleshooting Guide
If the command returns multiple available IDs, please identify the complete device path corresponding to your mainboard by checking the MCU model and comparing the device list before and after plugging/unplugging.
Filling the USB ID into the Configuration
Open printer.cfg in Fluidd or Mainsail:
Fluidd: Click the Loading... | Mainsail: Click "Machine" on the left, then open Loading... |
All device paths in this document are examples. The USB ID of each mainboard may differ. Please copy the exact path returned by the SSH command.
Locate the [mcu] configuration section and change the serial parameter to the complete device path you obtained:
[mcu]
serial: /dev/serial/by-id/usb-Klipper_xxxxxxxxxxxx
When using USB firmware, you should configure serial. Do not fill in canbus_uuid in the same [mcu] section simultaneously.
Refer to the image below for the configuration location:
| Fluidd Configuration Example Loading... | Mainsail Configuration Example Loading... |
After modification, click SAVE & RESTART in the top right corner to save the configuration and restart Klipper.