Skip to main content

STM32 and APM32 Firmware Update Tutorial

Important Notes
  • This tutorial only applies to FLY series products. Devices of other brands or models are not compatible. Do not attempt to use them.
  • This tutorial applies to updating firmware by entering flashing mode.
  • This tutorial only applies to FLY products using APM32 and STM32 series chips.

Downloading Firmware

You can obtain the firmware via the following link:

Please note

The zip archive must be extracted before use.

  • Alternatively, download the complete repository via git (ensure the host machine has internet access):

  • For general systems

    cd && git clone https://cnb.cool/3dmellow/FLY-Firmware.git
  • For FLY host machine

    git clone https://cnb.cool/3dmellow/FLY-Firmware.git /data/FLY-Firmware
    ln -s /data/FLY-Firmware /root/FLY-Firmware
  • If the firmware package has already been downloaded, it is recommended to update to the latest version before proceeding:

    cd ~/FLY-Firmware && git pull

  • The previous repository is no longer maintained. To delete it, execute:
    rm -rf ~/FLY_Katapult /root/FLY_Katapult

Firmware Path Description

Folder NameDescription
ExtensionBoardFirmware for FLY modules and expansion boards
ScreenFirmware for FLY screens
MainBoardFirmware for FLY mainboards
ToolBoardFirmware for FLY tool boards
Linux Path Tips

When flashing in Linux, the firmware path in the command must be completed to the specific firmware file. You cannot just fill in the folder path. For example, if you have already cloned FLY-Firmware on a local server or Linux host, first enter the corresponding product directory to check the actual file name, then replace the path after -D with a full path similar to ~/FLY-Firmware/ExtensionBoard/ALPS/mergedBL/FLY-ALPS-V2.0-mergedBL.bin.

Entering Flashing Mode

  1. Prepare a Type-C data cable that supports data transfer.
  2. Ensure the device is completely powered off and not connected to any other devices.
  3. While the device is powered off, first plug the Type-C data cable into the device.
  4. Press and hold the BOOT button on the device, and at the same time plug the other end of the data cable into the computer. Release the BOOT button once the computer recognizes the device.

Precautions

  1. USB Interface Compatibility: Some devices may not be recognized properly on USB 3.0 interfaces. It is recommended to use a USB 2.0 interface for flashing first.

  2. Flashing Failure Troubleshooting Steps: If flashing still fails on a USB 2.0 interface, try the following:

    • Disconnect all unnecessary external devices (such as drivers, endstops, etc.);
    • Completely power off the computer (unplug the power cable), wait a few seconds, and then restart;
    • Use an external USB hub or try a different USB interface.

Flashing Firmware

Notice

To ensure successful STM32 flashing, please note the following:

  • The USB port on some computers may cause unstable flashing due to driver or signal compatibility issues. It is recommended to try a different USB port for connection.
  • If changing ports does not work, an effective solution is to connect via an external USB hub, which often improves compatibility.
  • When the flashing software reports the error shown below, please also prioritize trying a USB hub. If the issue persists, check or use the host computer for flashing.
    Loading...
  1. Flashing tool Download Link
  2. You need to download SetupSTM32CubeProgrammer and STM32 DFU Driver
  3. Download the firmware to any directory on your computer
  4. Connect the motherboard to the computer using a Type-C cable, ensuring it has entered dfu flashing mode
  5. In STM32CubeProgrammer, select USB mode, refresh, and connect
    Loading...
  6. If no error popup appears, the connection is successful.
    Loading...
  7. Click the download icon on the left and check the following options
    Loading...
  8. Click Browse as indicated by the arrow, then select the firmware you need to flash
    Loading...
  9. Set Start address to 0x08000000
    • Note: If the firmware is in HEX format, please skip this step!!
    Loading...
  10. Click Start automatic mode below to begin flashing the firmware
    Loading...
  11. The following prompt indicates that the firmware flashing is complete
    Loading...

FAQ

Q: What should I do if the computer cannot recognize the device?
A: Follow these steps to troubleshoot:

  • Make sure the data cable supports data transfer (charging cables are not usable)
  • Check if the device has entered flashing mode (hold BOOT and then plug in USB)
  • Change the USB interface on the computer. It is recommended to use a USB 2.0 interface; if issues occur with a USB 3.0 interface, try connecting to a USB 2.0 interface or via a USB hub.
  • Check if the corresponding chip's USB driver is installed on the computer (e.g., the DFU driver for STM32, the virtual serial port driver for APM32, etc.)

Q: What should I do if it reports a failure or gets stuck during flashing?
A: Try the following methods:

  • Re-enter flashing mode and try flashing again
  • Change the USB interface (USB 2.0 is recommended) or use a hub
  • Close other software that is occupying USB resources
  • Confirm that the selected firmware matches the device model (e.g., mainboard, screen, tool board, etc.)

Q: What should I do if the device does not start after flashing?
A: Possible causes and solutions:

  • After flashing is complete, completely power off the device (unplug the power), and then power it back on to ensure the firmware starts normally.
  • Firmware version mismatch: Re-download the firmware for the corresponding model and flash it again.
  • Incomplete flashing: Re-enter flashing mode and flash again.
  • Hardware issue: Check if the power connection is normal, or contact technical support.
Loading...