USB Bridge CAN Firmware Flashing
SSH Connect to the Host
- Before compiling the firmware, you need to
connect to the host via WiFi SSH.
- First, please: Connect to the Host via WiFi SSH
- USB Bridge CAN Firmware Flashing
- Manual Compilation of USB Bridge CAN Firmware
USB Bridge CAN Firmware Flashing
- The FLYOS-FAST system has a pre-compiled USB Bridge CAN firmware, so manual compilation is not required. Execute the command below to flash.
- You can also choose
Manual Compilation of USB Bridge CAN Firmwareto compile the firmware yourself.
-
The FAST system defaults to 1M baud rate. If 500K is needed, modify the
canbus_bitratein the system configuration. -
This command flashes the
1MUSB Bridge CAN Firmware.
fly-flash -d auto -h -f /usr/lib/firmware/klipper/stm32h723-128k-usbcan-1m.bin
- This command flashes the
500kUSB Bridge CAN Firmware.
fly-flash -d auto -h -f /usr/lib/firmware/klipper/stm32h723-128k-usbcan-500k.bin
Firmware Compilation Notes and Operation Guide
Notes
- Network Connection: Ensure the host machine (Raspberry Pi, etc.) is connected to the network.
- Access Method: You must log in to the host machine via SSH over the network. Using serial port tools is prohibited.
- User Permissions: Use the correct user account for operations based on the host machine's system type.
- Input Method: Ensure the keyboard input method is set to Half-width mode (English mode).
SSH Login and User Switching
SSH Login to Host Machine
Use an SSH tool (such as MobaXterm, PuTTY, etc.) to log in to the host machine over the network: View Detailed SSH Connection Tutorial
Switching Users Based on System Type
- Standard Host Machine (Armbian)
- FAST System (FlyOS-FAST)
Applicable Systems:
- Official Raspberry Pi OS
- FLY Pi Armbian System
- Other systems with Klipper installed
User Permission Requirements:
- Do not use the
rootuser for any operations. - You must switch to a standard user for operations.
Switch Command:
-
Other systems (replace
<username>with your username)su <username>
Standard users typically have the necessary compilation permissions. Using the root user may cause permission issues.
Applicable Systems:
- FlyOS-FAST System
Login Information:
- Username:
root - Password:
mellow
The FAST system only has the root user.
Firmware Compilation Instructions
1. Keyboard Operation Guide
- On the Klipper firmware configuration page, you can only use the following shortcut keys:
- You cannot use the mouse directly!
| Key | Function Description |
|---|---|
| ↑ ↓ Arrow Keys | Move the cursor up/down to select menu items. |
| Enter or Space | Confirm selection/check menu item or enter submenu. |
| ESC | Return to the previous menu level. |
| Q | Exit the Klipper firmware configuration page. |
| Y | When prompted upon exit, press Y to save the configuration. |
Show Hidden Options
If there are few options on the configuration page, first check:
[ ] Enable extra low-level configuration options
This option is used to display some hidden configuration options.
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 -
Here,
rm -rf ~/klipper/.config && rm -rf ~/klipper/outdeletes previous compilation data and firmware. -
make menuconfigis for compiling the firmware. After execution, the following interface should appear. -
Here,
rm -rf ~/klipper/.config && rm -rf ~/klipper/outdeletes 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 optionsand press theEnterkey.Loading... -
Navigate to the menu
Micro-controller Architectureand then selectSTMicroelectronics STM32. Press theEnterkey.Loading... -
Navigate to the menu
Processor model, selectSTM32H723, and press theEnterkey.Loading... -
Select
Bootloader offsetand choose:128KiB bootloader.Loading... -
Select
Clock Reference (8 MHz crystal)and choose:25 MHz crystal.Loading... -
Select
Communication interfaceand choose:USB to CAN bus bridge (USB on PA11/PA12).Loading...
- Press the
Qkey. Save configuration will appear. Then press theYkey.Loading... - The configuration should now be saved, and you should have exited to the command line interface.
- Enter the following command to start compilation. It will take some time.
make -j4
- If the following content is output at the end, the compilation is successful.
- Due to Klipper version differences, as long as
out/klipper.binappears, it indicates success.Linking out/klipper.elf
Creating 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 for CAN ID
- Open a browser and enter the IP address of the host computer in the address bar. For example, if the IP address of my host computer is
192.168.101.179, simply enter it and press Enter.
- Open the WEB interface of the host computer, and in the configuration options of the left sidebar, find:
Loading... |
Loading... |
-
After clicking into
printer.cfg, click onDEVICESin the upper right corner.Loading...Loading... -
Click
CAN, then refresh.- Refresh in fluidd
Loading...- Refresh in mainsail
Loading... -
Copy the ID; click the arrow to copy it.
- In fluidd, confirm whether the item pointed to by the first arrow is
Klipper; if so, click the arrow on the right to copy it.
Loading...- In mainsail, confirm whether the item pointed to by the first arrow is
Klipper; if so, click the arrow on the right to copy it.
Loading... - In fluidd, confirm whether the item pointed to by the first arrow is
Fill in 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 this with the ID you just looked up>
Loading... |
Loading... |
- Fill the ID into the configuration
- After filling in the ID, click
SAVE & RESTARTin the upper right corner.
Loading... | Loading... |
- If Klipper shows a message
ADC out of range, this is normal. Connect the heated bed and thermistor to the mainboard, and configure the thermistor pins for the extruder and heated bed, then save and restart.
Note: All IDs shown in the documentation are examples. Each mainboard has a different ID, so please fill in the actual ID you obtained.