FLY-SHT36 V2 Bootloader (Katapult) Recovery
The FLY-SHT36 V2 is pre-flashed with Katapult from the factory. Do not re-flash the firmware on this page during normal use or Klipper firmware updates; this page is only for brick recovery after a corrupted bootloader or for explicitly needing to update Katapult.
Firmware Description
Katapult was formerly known as CanBoot, and both names may appear simultaneously in older tutorials or firmware names.
Katapult is a bootloader used to boot and update Klipper:
- Katapult itself cannot be used as a Klipper MCU; after flashing, you still need to write Klipper firmware that matches the hardware and communication method.
- Supported tool boards can enter Katapult by quickly double-pressing the
RESETbutton; after entering, there is usually a status light blinking. - CAN, RS232, and USB use independent Katapult firmware; you cannot simply modify file names or mix them directly.
- For CAN firmware, you must also select the correct bus speed, with common speeds being
500Kand1M.
- FLY-SHT36 V2 uses only CAN communication.
- This page provides Katapult firmware for both
500Kand1MCAN bus speeds. - FLY-SHT36 V2 comes in STM32F072, APM32F072, and STM32F103 MCU versions. Flashing methods cannot be mixed.
- STM32F072: Can be flashed via DFU on Windows, Linux, or FLYOS.
- APM32F072: Can only be flashed using DFUProgrammer on Windows.
- STM32F103: This page only supports online updates if the original Katapult can still communicate via CAN.
Both the firmware model and CAN bus speed must match the actual hardware, the host, and other CAN devices on the same bus.
Entering Bootloader Mode
This step applies only to the STM32F072 and APM32F072. STM32F103 online updates do not require entering USB DFU mode.
Before starting, completely shut down the printer and disconnect the power supply. Do not plug/unplug wiring, rearrange connector pinouts, or touch terminals while powered on.
The BOOT pad is indicated in the figure:
- Keep the toolboard completely powered off.
- Short the
BOOTpad with a jumper cap. - Connect the toolboard to a computer or host using a Type-C cable that supports data transfer.
- Remove the
BOOTjumper cap once the device is recognized.
Flashing the Firmware
- Windows
- Linux / FLYOS
- STM32F072
- APM32F072
Download the STM32F072 Katapult firmware:
.txt 或其他扩展名。- STM32CubeProgrammer
- DFU-AUTO
Before connecting or re-plugging the USB cable, completely shut down the printer and disconnect other power sources. Do not allow the tool board to be powered simultaneously via the printer's power supply and the USB interface.
Some computer USB ports may cause unstable flashing due to driver or signal compatibility issues. If connection fails, try switching to a different USB port on the computer or use a reliable USB hub. If the error shown below appears, check the USB connection and drivers first.
- Download and install
SetupSTM32CubeProgrammerand the STM32 DFU driver from the Auxiliary Software Download Page. - Save the firmware downloaded from this page to a location on your computer that is easy to find.
Windows may hide file extensions. Please check "File name extensions" in File Explorer to confirm the firmware is still in .bin or .hex format. Do not modify the file extension.
- Confirm the device has entered DFU flashing mode according to the product tutorial, then connect it to the computer using a USB cable that supports data transfer.
- Open STM32CubeProgrammer, select USB mode, refresh the device list, and connect.
- If no error popup appears, the connection is successful.
- Click the download icon on the left side, and check the flashing options as shown in the image below.
- Click
Browseand select the firmware to be flashed.
- When flashing
.binfirmware, setStart addressto0x08000000. When using.hexfirmware, keep the address embedded in the file.
- Click
Start automatic modeto begin flashing.
- When the success message appears, the firmware flashing is complete.
Before connecting or reconnecting the USB cable, completely power off the printer and disconnect other power sources. Do not let the toolboard be powered simultaneously by both the printer power supply and the USB interface.
- Download and run FLY DFU-AUTO.
- If the "Driver Status" shows unavailable, click "Install Driver" to complete the WinUSB driver installation.
- Click "Browse" to select the
.binfirmware file to be flashed.
Windows may hide file extensions. In File Explorer, check "File name extensions" to confirm the firmware remains as .bin. Do not modify the file extension.
- Click "Start Flashing", monitor progress through the run log, and wait for the flashing process to complete.
Detailed Tutorial: FLY DFU-AUTO Download and Usage
Download the Katapult firmware for APM32F072:
.txt 或其他扩展名。Before connecting or reconnecting the USB cable, fully shut down the printer and disconnect other power supplies. Do not allow the tool board to be powered simultaneously by the printer power supply and the USB interface.
- Download and extract
DFUProgrammerfrom the Auxiliary Software Download Page. - Manually install the APM32 DFU driver contained in the toolkit.
- Save the firmware downloaded from this page to an easily accessible location on your computer.
Windows may hide file extensions. Please check "File name extensions" in File Explorer, confirm the firmware is still .bin, and do not modify the file extension.
- After confirming the device has entered DFU flashing mode as per the product tutorial, connect it to the computer using a USB cable that supports data transfer.
- Open DFUProgrammer, and select the device and firmware as shown in the figure below.
- Click "Start Firmware Update" and wait for the progress to complete. Only after the success prompt appears, power off and restore the wiring according to the "Complete Flashing" requirements on this page.
- STM32F072 (DFU)
- STM32F103 (CAN update)
- Linux
- FLYOS
- Install flashing tool.sudo apt updatesudo apt install dfu-util -y
- Confirm the device has entered DFU flashing mode.lsusb
If you can see 0483:df11, it means DFU flashing mode has been entered successfully.
Loading... - Pull/update firmware repository.git clone https://cnb.cool/3dmellow/FLY-Firmware ~/FLY-Firmwarecd ~/FLY-Firmware && git pull --ff-only
- Flash firmware.
FLY_SHT36V2_072_CANBOOT_500K.binsudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000 -D ~/FLY-Firmware/ToolBoard/SHT36/FLY_SHT36V2_072_CANBOOT_500K.binFLY_SHT36V2_072_CANBOOT_1M.binsudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000 -D ~/FLY-Firmware/ToolBoard/SHT36/FLY_SHT36V2_072_CANBOOT_1M.bin - If File downloaded successfully appears, flashing is successful.Loading...
- FLY host computer usually has dfu-util built-in, no need to install flashing tool again.
- Confirm the device has entered DFU flashing mode.lsusb
If you can see 0483:df11, it means DFU flashing mode has been entered successfully.
Loading... - Pull/update firmware repository.git clone https://cnb.cool/3dmellow/FLY-Firmware /data/FLY-Firmwareln -s /data/FLY-Firmware /root/FLY-Firmwarecd /data/FLY-Firmware && git pull --ff-only
- Flash firmware.
FLY_SHT36V2_072_CANBOOT_500K.binsudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000 -D /data/FLY-Firmware/ToolBoard/SHT36/FLY_SHT36V2_072_CANBOOT_500K.binFLY_SHT36V2_072_CANBOOT_1M.binsudo dfu-util -a 0 -d 0483:df11 --dfuse-address 0x08000000 -D /data/FLY-Firmware/ToolBoard/SHT36/FLY_SHT36V2_072_CANBOOT_1M.bin - If File downloaded successfully appears, flashing is successful.Loading...
This method updates the existing Katapult via CAN. Use it only if the toolboard can still enter Katapult and its CAN UUID can be queried; do not proceed if the bootloader is corrupted or CAN communication is unavailable.
- Pull or update the firmware repository.
- Linux
- FLYOS
cd ~
git clone https://cnb.cool/3dmellow/FLY-Firmware.git
If already downloaded, run:
git -C ~/FLY-Firmware pull --ff-only
git clone https://cnb.cool/3dmellow/FLY-Firmware.git /data/FLY-Firmware
ln -s /data/FLY-Firmware /root/FLY-Firmware
If already downloaded, run:
git -C /data/FLY-Firmware pull --ff-only
- Query the CAN UUID of the toolboard in Katapult mode:
~/klippy-env/bin/python ~/klipper/lib/katapult/flashtool.py -q
- Replace
<CAN_UUID>in the commands with your actual query result, then execute only ONE command based on your CAN bus speed:
CAN 500K:
~/klippy-env/bin/python ~/klipper/lib/katapult/flashtool.py -f ~/FLY-Firmware/ToolBoard/SHT36/FLY_SHT36V2_103_CANBOOT_500K.BIN -u <CAN_UUID>
CAN 1M:
~/klippy-env/bin/python ~/klipper/lib/katapult/flashtool.py -f ~/FLY-Firmware/ToolBoard/SHT36/FLY_SHT36V2_103_CANBOOT_1M.BIN -u <CAN_UUID>
If lib/katapult/flashtool.py is not available on older systems, use these compatible commands:
CAN 500K:
~/klippy-env/bin/python ~/klipper/lib/canboot/flash_can.py -f ~/FLY-Firmware/ToolBoard/SHT36/FLY_SHT36V2_103_CANBOOT_500K.BIN -u <CAN_UUID>
CAN 1M:
~/klippy-env/bin/python ~/klipper/lib/canboot/flash_can.py -f ~/FLY-Firmware/ToolBoard/SHT36/FLY_SHT36V2_103_CANBOOT_1M.BIN -u <CAN_UUID>
Finishing the Flash
After flashing is complete, disconnect the toolboard's USB and external power before removing the BOOT jumper cap and restoring normal wiring. Do not plug or unplug the toolboard wiring while powered on.
After powering back on, the status LED will blink when Katapult starts normally: