Skip to main content

RS232 Firmware Compilation

Start Compilation

  • You need an upper computer with the klipper service installed Connect via SSH over the network
  • And make sure the device is connected to the upper computer
  • Note: Please use a regular upper computer, such as a Raspberry Pi FLY board, etc. If you are using a modified upper computer, we cannot provide much assistance due to too many issues.
Note
  • Do not use the ROOT user
tip
  • 请确保上位机可以正常联网
  • 固件编译前需要使用SSH通过网络登录上位机
  • 请不要使用串口工具登录上位机

Klipper固件编译配置页面操作说明

tip

请确保键盘输入法为半角模式,即英文模式

  1. 键盘上键,下键,用于上下移动光标来选中菜单项
  2. 确认键Enter 或 空格键Space,用于勾选菜单或进入子菜单
  3. 退出键ESC,用于返回上一级菜单
  4. Q键,用于退出Klipper固件配置页面
  5. Y键,在退出Klipper固件配置页面时,如果有提示,则点击Y键保存配置文件
warning

如果配置页面选项比较少,请先勾选[ ] Enable extra low-level configuration options,用于显示部分隐藏选项

Below is an introduction on how to compile the firmware:

  • After connecting to SSH, enter the command below 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, and 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 and then select Raspberry Pi RP2040 and press Enter

  • Select Bootloader offset, choose: NO bootloader

  • Select Communication interface, choose: UART0 on GPIO0/GPIO1

  • Select GPIO pins to set at micro-controller startup, input: !gpio5 Please note that ! is uppercase.

  • Press the Q key, a Save configuration prompt will appear, then press the Y key

  • Now the configuration should be saved and you should be back to the command line interface

  • Input make -j4 to start compilation, it may take some time

  • If the following content is output, the compilation is successful

    Linking out/klipper.elf
    Creating uf2 file out/klipper.uf2

Enter Burn Mode

tip

The arrow points to the BOOT button

  • With the motherboard completely powered off, hold the BOOT button and connect the data transfer cable to the motherboard and your device

Confirm Burn Mode Entry

  • Please ensure the host machine can connect to the internet normally.
  • Please ensure the data cable connecting the lower-level machine to the host machine has data transfer capabilities.
  • After SSH connecting to the host machine, input lsusb and press enter. One of the following three situations may occur:
    • It displays USB devices that have been recognized.
    • It prompts that there is no ls command, you can execute this command to install it:
      sudo apt-get install usbutils
    • There are no errors, but no other information (this indicates a system problem and needs a system replacement).
  • If there is no reaction after entering lsusb, this indicates a system problem and we cannot help here; you need to replace with a confirmed normal system.
  • If the information circled in the following image appears, you can proceed to the next step.
  • 2e8a:0003 belongs to the device you will use this time. Ignore the subsequent prompts as system issues might cause them to display incompletely or not at all.
  • If not, please check if the data cable is properly connected or if the motherboard is in Katapult mode (formerly CANBOOT).
Note

Proceed to the next step only when you have 2e8a:0003.

Burn Firmware

  • Short-circuit or long press BOOT, and after connecting to the host machine via Type-C and entering lsusb, you will see 2e8a:0003

  • Please note that the current RP2040 is in firmware burning mode and can only burn uf2 suffix firmware. Once the firmware is burned, it will disappear.

  • After ejecting RPI-RP2, there is no need to short-circuit BOOT or keep pressing the BOOT button.

  • Use the following command to burn the firmware to RP2040

    cd && cd ~/klipper/
    make flash FLASH_DEVICE=2e8a:0003

Confirm Firmware Startup

  • If the firmware starts up normally, the LED will light up