USB Firmware Compilation
Check the DIP Switch
- During normal operation, please slide the switch
to the up position
- When adjusting the DIP switch, please make sure to push it
all the way up
, otherwise the connection to the device might fail!!!

SSH into the Host Machine
- Before compiling the firmware, you need to connect to the host machine's SSH via
Wi-Fi
- First, please: Connect to the host machine's SSH via Wi-Fi
- USB Firmware Flashing
- Manually Compile USB Firmware
USB Firmware Flashing
- A USB firmware has already been pre-compiled in the FLYOS-FAST system. There is no need to compile it manually. Just execute the command below to flash the firmware
- Alternatively, you can choose to
compile the USB firmware manually
and build it yourself
- Connect to the host machine via SSH and enter the command below
fly-flash -d auto -h -f /usr/lib/firmware/klipper-h723-128k-usb.bin


Manually Compile USB Firmware
Klipper Firmware Compilation and Configuration Page Operation Instructions
Please ensure that the keyboard input method is in half-width mode, i.e., English mode.
- The up arrow key
↑
, down arrow key↓
are used to move the cursor up and down to select menu items. - The confirm key
Enter
or space keySpace
is used to check the menu or enter a sub-menu. - The exit key
ESC
is used to return to the previous menu. - The
Q
key is used to exit the Klipper firmware configuration page. - The
Y
key, when exiting the Klipper firmware configuration page and there is a prompt, click theY
key to save the configuration file.
If there are fewer options in the configuration page, please first check [ ] Enable extra low-level configuration options
to display some hidden options.
Below is an introduction on how to compile the firmware:
-
After connecting to SSH, enter the following command and press Enter:
cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig
-
Where
rm -rf ~/klipper/.config && rm -rf ~/klipper/out
is to delete previous compilation data and firmware,make menuconfig
is to compile the firmware, after execution, the following interface should appear -
Select Enable extra low-level configuration options and press Enter
-
Enter the menu Micro-controller Architecture then select STMicroelectronics STM32 and press Enter
-
Enter the menu Processor model, select STM32H723 and press Enter
-
Select Bootloader offset, select: 128KiB bootloader
-
Select Clock Reference (8 MHz crystal), select: 25 MHz crystal
-
Communication interface, select: USB (on PA11/PA12)
- Press the
Q
key, thenSave configuration
will appear, at this point press theY
key
-
The configuration should now be saved, and you will exit back to the command line interface
-
Enter the command below to start the compilation, which may take some time
make -j4

- If the compilation is successful, the following output will appear

Firmware Flashing
Execute the command below to flash the firmware
fly-flash -d auto -h -f /data/klipper/out/klipper.bin


Search USB ID
- Open the browser and enter the IP address of the host computer in the address bar. For example, if my host computer's IP is
192.168.101.179
, simply type it in and press Enter.

- Open the WEB interface of the host computer, and in the configuration section of the left sidebar, find:
![]() |
![]() |
-
After entering
printer.cfg
, click onDEVICES
at the top right corner. -
Click on
SERIAL
, then refresh.- Refresh for fluidd
- Refresh for mainsail
-
Copy the ID; click the arrow to copy.
- For fluidd, check if
ttyAMC
exists, and ensure that Path by ID exists; this is the USBID
- For mainsail, check if
ttyAMC
exists, and ensure that Path by ID exists; this is the USBID
- For fluidd, check if
Fill in USB ID
- Close
DEVICES
and fill in the ID
- Please change the following in the configuration file:
[mcu]
serial: /tmp/klipper_host_mcu
to
[mcu host]
serial: /tmp/klipper_host_mcu
- Add:
[mcu]
serial: <Replace this with the ID you just found>
![]() |
![]() |
- Fill in the ID into the configuration.
- After filling in the ID, click
SAVE & RESTART
at the top right corner.
![]() | ![]() |
- If Klipper shows a warning
ADC out of range
, this is normal. Connect the heated bed and thermistor to the mainboard, and configure the thermistor pins for the nozzle and heated bed, then save and restart.
Note: All IDs shown in this document are examples. Each mainboard's ID is different; please fill in the actual ID you obtained.