Firmware Compilation Instructions
Important Safety Notice
To ensure stable system operation, please strictly adhere to the following firmware usage principles:
- Firmware Compilation Consistency: The Klipper firmware must be compiled by the host machine you are currently using. Using firmware compiled by others or with mismatched versions may lead to unforeseen system failures.
- Hardware Platform Specification: It is strongly recommended to use standard host machine hardware. Avoid using devices modified unofficially (e.g., certain TV boxes, WiFi dongles, or specific models of Redmi devices), as these may pose compatibility and stability risks.
- Virtualization Environment Limitation: It is not recommended to run the host system in a virtual machine, as this may introduce performance and real-time interference, affecting print quality.
Firmware Type Explanation
-
Katapult/HIDMode- Function: Both modes offer the same functionality, enabling contactless flashing (updating firmware directly via the host machine without removing the SD card).
- Note:
HIDis the Bootloader used by FLY onboard host machines, which is essentially the same asKatapult. - Important Note: When using
Katapult, if the motherboard becomes unresponsive after flashing incorrect firmware, locate the reset button on the motherboard and quickly double-click it twice to re-enterKatapultmode for re-flashing.
-
BootloaderMode- Function: The traditional method of flashing via SD card.
- Advantage: This method is highly fault-tolerant. If an incorrect flash occurs, you can retry by re-flashing the SD card, without worrying about "bricking" the motherboard.
Firmware Compilation Guide
Compilation Preparation & Suggestions
- To maximize the chance of successful compilation, it is recommended to use
MobaXtermas your SSH client. User feedback suggests that some SSH tools may cause unknown compilation errors. - Important Configuration Item: In the compilation configuration interface, be sure to check the
Enable extra low-level configuration optionsoption. Otherwise, some advanced settings will not be displayed.
Startup Pin Configuration (GPIO pins to set at micro-controller startup)
Important Note
- This option is used to force specific GPIO pins to a defined logic level when the microcontroller starts up.
- You need to switch to English input mode; otherwise, firmware compilation will fail.
-
Configuration Syntax:
- Prefixing a pin with
!means pulling the pin LOW (low level) at startup. Not adding!means pulling it HIGH (high level). - STM32 Series: Pin numbers must be uppercase (e.g.,
!PF8orPF8). - RP2040 Series: Pin numbers must be lowercase (e.g.,
!gpio5orgpio5).
- Prefixing a pin with
-
Multi-pin Configuration: To configure multiple pins, separate them with English commas
,.- Example:
!gpio5,!gpio19,gpio24means pullinggpio5andgpio19LOW, andgpio24HIGH at startup.
- Example:
Safety Note
The GPIO pins to set at micro-controller startup configuration you set only takes effect before Klipper starts and connects. Once Klipper is connected and running normally, this setting does not affect any other operations of the pins and can be used safely.
Flash Failure Recovery & General Protection
- Protection Against Flashing Wrong Firmware: The
Katapult,HID, andBootloaderfirmware types themselves have protection mechanisms. As long as you do not enter the special DFU mode for flashing, even if you flash the wrong main firmware, they will not be overwritten, and the motherboard will not be "bricked". - Essential Step After Flashing: After any firmware flashing is complete, you must completely power off the microcontroller once (unplug the power cable) and then power it back on. This ensures the new firmware is correctly loaded and runs stably.
Firmware Flashing Instructions
Before Flashing
- Device Recognition: When using
Katapultfor flashing, ensure the host machine can recognize the device. If the device cannot be found, quickly double-click the reset button on the motherboard to re-enter flashing mode. - Follow Specifications: Strictly adhere to the flashing methods outlined in the official tutorials. Using other unverified methods may cause device damage.
- Compilation Check: Before flashing, always confirm that the firmware has no compilation errors. An incorrect firmware file will cause the flash to fail or the device to malfunction.
Katapult Firmware Flash Error Recovery
- Locate the physical reset button on the motherboard and double-click it quickly.
- Normally, an LED indicator on the Fly motherboard will start blinking, indicating successful entry into
Katapultmode. - You can now clear the incorrect firmware from the motherboard and re-flash the correct Klipper firmware.
Bootloader Firmware Flash Error Recovery
- Reinsert the TF card containing the correct firmware into the motherboard.
- If flashing fails, first completely power off, insert the TF card, and then power on again.
- Keep it powered for about 5 seconds to complete the automatic flash.
Installing Flashing Dependencies for Katapult
⚠️ Important
- If you are using a non-FLY official host machine, you must execute the following commands to install the firmware flashing dependency packages!
- Choose one of the repositories below.
- Git Repository
cd && git clone https://github.com/Arksine/katapult.git - Gitee Repository
cd && git clone https://gitee.com/MrCakeFuck/katapult.git
Loading...
Loading...