FLSUN QQS-Pro: Troubleshooting Marlin 2.x Freezes During SD Card Initialization
The FLSUN QQS-Pro is a popular delta printer known for its speed, but many users who upgrade to Marlin 2.x (custom or community builds) encounter a frustrating bug: the printer completely freezes the moment a print is selected from the SD card. The screen locks up, the heaters may or may not engage, and a hard reset is the only way out. This guide explores the technical causes and the fixes to get your delta back in motion.
1. The "Long File Name" and Folder Depth Bug
Marlin 2.x is significantly more memory-intensive than the original 1.x firmware the QQS-Pro shipped with. The MKS Robin Mini board inside the QQS-Pro has limited RAM.
- The Problem: If your G-code file names are too long (exceeding 20+ characters) or are buried inside multiple folders, the firmware can run out of stack memory while trying to parse the file list, leading to a total system hang.
- The Fix: Keep file names short (e.g.,
cube.gcode) and store them in the root directory of the SD card.
2. SD Card SPI Speed Misalignment
In custom Marlin 2.x builds, the SPI (Serial Peripheral Interface) speed for the SD card slot is often set to "Full Speed." Some older or lower-quality SD cards cannot handle this communication rate, causing the "Watchdog Timer" to trigger a freeze.
- The Fix: If you are compiling your own firmware, look in
Configuration_adv.hand set#define SPI_SPEED SPI_HALF_SPEED. - Hardware Fix: Use a high-quality, name-brand Class 10 SD card (max 32GB) formatted to FAT32 with 4096-byte sectors.
3. Power Loss Recovery (PLR) Conflict
Marlin's "Power Loss Recovery" feature writes to the SD card constantly during the first layer and every subsequent layer. On the QQS-Pro, this write operation can sometimes collide with the read operation of the G-code, causing the processor to lock up at the start of the print.
- The Fix: Disable Power Loss Recovery by adding
M413 S0to your Start G-code in your slicer (Cura/PrusaSlicer), or disable it in the printer's menu under "Settings."
4. The "MKS Robin" TFT Communication Hang
The QQS-Pro uses a separate processor for the touch screen. Sometimes the mainboard is ready to print, but the screen is waiting for a "handshake" that never arrives due to a baud rate mismatch in Marlin 2.x.
- The Fix: Ensure your
BAUDRATEis set to250000inConfiguration.h. This is the most stable speed for the MKS Robin Mini and its associated TFT screen.
Maintenance and Replacement Costs
If the freezing persists despite firmware tweaks, it may be a hardware degradation issue. Here are the estimated costs for QQS-Pro electronic components.
| Component | Estimated Price (USD) | When to Replace |
|---|---|---|
| High-Speed 16GB MicroSD Card | $7.00 - $12.00 | If files disappear or cause freezes. |
| MKS Robin Mini V2.0 Mainboard | $35.00 - $50.00 | If the SD slot pins are damaged. |
| External Mosfet Upgrade | $10.00 - $15.00 | To reduce power load on the mainboard. |
| BTT SKR Pico/Mini (Alternative) | $30.00 - $45.00 | Popular upgrade if the stock board fails. |
5. Start G-code Cleanup
Sometimes the freeze is caused by a specific command in the Start G-code that Marlin 2.x handles differently than the stock 1.0 firmware.
- Check for M420: If you have
M420 S1(load leveling) beforeG28(home), the printer will freeze. Always home (G28) first. - Check for M117: Some custom screens cannot handle the M117 "Status Message" command, leading to a buffer overflow and freeze. Try removing M117 commands from your slicer.
Conclusion
A freezing FLSUN QQS-Pro is almost always a data-bottleneck issue. By simplifying your SD card contents, reducing the SPI speed in firmware, and ensuring your Start G-code follows the proper homing sequence, you can stabilize Marlin 2.x on this delta platform. If the problem only occurs with SD cards, consider moving to OctoPrint or Klipper via a Raspberry Pi to bypass the onboard SD slot entirely.