USB Bridge CAN Firmware Flashing
SSH Connect to the Upper Computer
- Before compiling the firmware, you need to
connect to the upper computer SSH via WiFi
- First, please: Connect to the upper computer SSH via WiFi
- USB Bridge CAN Firmware Flashing
- Manually Compile USB Bridge CAN Firmware
USB Bridge CAN Firmware Flashing
- In the FLYOS-FAST system, a USB bridge CAN firmware has been pre-compiled. No need to manually compile the firmware. Execute the command below to flash it.
- You can also choose to
manually compile the USB bridge CAN firmwareand compile it yourself.
-
The FAST system defaults to a 1M rate. If 500K is needed, modify the
canbus_bitraterate in the system configuration. -
This command flashes the
1MUSB Bridge CAN Firmware
fly-flash -d auto -h -f /usr/lib/firmware/klipper/stm32f407-32k-usbcan-1m.bin
- This command flashes the
500kUSB Bridge CAN Firmware
fly-flash -d auto -h -f /usr/lib/firmware/klipper/stm32f407-32k-usbcan-500k.bin
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 following command and press Enter:
cd ~/klipper && rm -rf ~/klipper/.config && rm -rf ~/klipper/out && make menuconfig -
rm -rf ~/klipper/.config && rm -rf ~/klipper/outremoves previous compilation data and firmware -
make menuconfigcompiles the firmware, after execution the following interface should appearLoading... -
Select Enable extra low-level configuration options and press Enter
Loading... -
Enter the Micro-controller Architecture menu, then select STMicroelectronics STM32 and press Enter
Loading... -
Enter the Processor model menu, select STM32F407 and press Enter
Loading... -
Select Bootloader offset, choose: 32KiB bootloader
Loading... -
Select Communication interface, choose: USB to CAN bus bridge (USB on PA11/PA12)
Loading...
- Press the
Qkey, when Save configuration appears, press theYkeyLoading... - The configuration should now be saved and you should return to the command line interface
- Enter the following command to start compilation, it will take some time
make -j4
- The following output at the end indicates successful compilation
- Due to Klipper version issues, as long as
out/klipper.binappears, it indicates successLinking out/klipper.elfCreating bin file out/klipper.bin
Firmware Flashing
Execute the command below to flash the firmware.
fly-flash -d auto -h -f /data/klipper/out/klipper.bin
Search CAN ID
- Open the browser, enter the host computer's IP address in the address bar. For example, if my host computer's IP is
192.168.101.179, directly input it and press Enter.
- Open the WEB interface of the host computer, and in the sidebar's configuration options, find:
Loading... |
Loading... |
- Click
printer.cfgto enter, then clickDEVICESat the top right.
Loading... | Loading... |
- Click
CAN, then refresh.
Loading... |
Loading... |
- Copy the ID by clicking where the arrow points.
Loading... |
Loading... |
Fill in the CAN ID
- Close
DEVICESand 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]
canbus_uuid: <Replace here with the ID you just queried>
Loading... |
Loading... |
- Fill the ID into the configuration.
- After filling in the ID, click
SAVE & RESTARTat the top right.
Loading... | Loading... |
- If Klipper prompts
ADC out of range, this is normal. Connect the heated bed and thermistor to the motherboard, configure the thermistor pins for the nozzle and heated bed, then save and restart.
Note: All IDs appearing in the document are examples. The actual ID of each motherboard is different. Please fill in the ID you actually obtained.