USB Firmware Compilation and Flashing
Check DIP Switches
Before starting, completely turn off the printer and disconnect the power supply. Do not plug or unplug wiring harnesses, arrange interface wiring sequences, or touch terminals while the power is on.
- Turn on DIP switches
3and4, and keep all other DIP switches off. - In this mode, the STM32 host MCU connects to the onboard host computer via the onboard USB.
SSH Connection to the Host Computer
- Before compiling the firmware, you need to connect to the Gemini V2 host computer via SSH.
- It is recommended to connect via WiFi or Ethernet cable before compiling the firmware.
- First, please: Connect to Gemini V2 Host Computer via SSH
Compile USB Firmware
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 |
Start Firmware Compilation
The following describes how to compile the firmware:
-
After connecting via SSH, enter the command below and press Enter:
cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig -
Among them,
rm -rf ~/klipper/.config && rm -rf ~/klipper/outis to delete the previous compilation data and firmware. -
make menuconfigis for compiling the firmware. After execution, the following interface should appear.Loading... -
Select Enable extra low-level configuration options and press Enter
Loading... -
Enter the menu Micro-controller Architecture then select STMicroelectronics STM32 and press Enter
Loading... -
Enter the menu Processor model, select STM32F405 and press Enter
Loading... -
Select Bootloader offset, select: 32KiB bootloader
Loading... -
Communication interface, select: USB (on PA11/PA12)
Loading...
- Press the
Qkey, when Save configuration appears, then press theYkey.Loading... - The configuration should now be saved and you have exited to the command line interface.
- Enter the following command to start compiling. It will take a while.
make -j4
- Finally, if the following output appears, the compilation is successful.
- Due to the Klipper version, as long as
out/klipper.binappears, it means success.Linking out/klipper.elfCreating bin file out/klipper.bin
TF Card Firmware Flashing
Before starting, completely turn off the printer and disconnect the power supply. Do not plug or unplug wiring harnesses, arrange interface wiring sequences, or touch terminals while the power is on.
- The Gemini V2 host MCU firmware is flashed using a TF card.
- After compilation is complete, download
klipper.binto the TF card and rename it tofirmware.bin. - After powering on and completing the flashing process, the
firmware.binfile on the TF card will disappear andFLY.CURwill appear, indicating that the flashing was successful.
Preparation
- Before starting to flash the firmware, please connect via SSH over the network
- Off-brand memory cards may cause flashing to fail. Please use the recommended memory cards below to update the firmware
- You need to prepare a TF card with a capacity not exceeding
32G. It is recommended that the transfer speed of the TF card beClass 10or above. It is recommended to use TF cards from brands such as SanDisk
Download Firmware
-
Use the previously prepared TF card
-
Format using
SDFormatterLoading... -
Use MobaXterm_Personal, find the
klipperfolder in the left file directory, select it, then findoutand open it- Ordinary System Firmware Download Directory
- FlyOS-FAST System Firmware Download Directory
Caution- Notes for Ordinary Systems
- This applies to ordinary host computer systems such as Raspberry Pi, FLY Pi, etc.
- The compiled firmware is located in the
/home/<your host computer username>/klipper/out/directory
Loading...
CautionFlyOS-FASTSystem Notes- Firmware directory for
FAST System - The compiled firmware is located in the
/data/klipper/out/directory
Loading...- Firmware directory for
-
Download
klipper.binto the TF card, and rename it tofirmware.binfirmware.binLoading...
Windows may hide file extensions by default, which can easily result in the file being saved as firmware.bin.txt or firmware.bin.bin. Before renaming the firmware, enable extension display in File Explorer:
- Open any folder.
- Click on
Viewat the top. - Check the
File name extensionsbox. - When renaming the file, make sure the complete file name is
firmware.bin.
- Power off the motherboard, insert the TF card into the motherboard
- Power on the motherboard, wait for 10 seconds
- Remove the TF card, insert it into the computer. If
firmware.binin the SD card has disappeared andFLY.CURappears, the flashing is successfulLoading...
Search for USB ID After Flashing
After the firmware flashing is complete and the Gemini V2 is powered back on, please continue to search for the USB ID and fill it into printer.cfg.