Skip to main content

Filament Blockage Detection Optimization

Feature Description

FAST version 1.3.8 optimizes the filament blockage detection feature, providing more precise blockage detection capabilities and flexible configuration options. This feature can monitor the extruder's material output in real-time and automatically pause printing and notify the user when blockage or filament runout is detected.

Important Notice

System Version Requirement: This feature requires FlyOS-Fast system version greater than or equal to v1.3.8 to function properly.


Configuration Method

  • Add the following configuration to the printer.cfg file:
  • Please note this is a reference configuration, and specific parameters may need to be adjusted based on actual conditions
[filament_blockage_detection my_sensor]
switch_pin: ^PA10
extruder: extruder
distance_per_edge: 0.232
detection_length: 3
pause_on_runout: True
runout_gcode: M118 Filament blockage during printing
insert_gcode: M118 Filament restored during idle

Parameter Description:

ParameterDescription
switch_pinPin for the blockage detection sensor, ^ enables the pull-up resistor
extruderThe associated extruder name
distance_per_edgeThe filament travel distance (in millimeters) corresponding to each sensor trigger. This parameter is automatically calculated and updated after executing the calibration command; no need to set an initial value manually
detection_lengthDetection length threshold (in millimeters), if the sensor is not triggered within this distance, blockage is detected
pause_on_runoutWhether to automatically pause printing when blockage is detected
runout_gcodeG-code command executed when blockage is detected
insert_gcodeG-code command executed when filament reinsertion is detected
Automatic Calibration Notice

The distance_per_edge parameter is automatically optimized after executing the CALIBRATE_FILAMENT_BLOCKAGE calibration command and is permanently saved to the configuration file via the SAVE_CONFIG command. During initial configuration, any value can be entered; it will be automatically overwritten after calibration.


Calibration Procedure

To ensure detection accuracy, it is recommended to calibrate the sensor before use.

Step 1: Heat the Nozzle

Heat the nozzle to the normal working temperature (recommended 220°C):

M104 S220
M109 S220

Step 2: Execute the Calibration Command

Once the nozzle reaches the target temperature, execute the following calibration command:

CALIBRATE_FILAMENT_BLOCKAGE SENSOR=my_sensor TEMPERATURE=220

Command Description:

  • SENSOR: Sensor name, corresponding to [filament_blockage_detection my_sensor] in the configuration
  • TEMPERATURE: Nozzle temperature during calibration

Step 3: Save Calibration Results

After calibration is completed, the system automatically calculates the optimal distance_per_edge parameter. To save manually, execute:

SAVE_CONFIG

Important Reminders

Firmware Update Requirement

After upgrading to FAST 1.3.8, the lower-level machine firmware must be updated, otherwise the filament blockage detection feature may not work properly.

Please refer to the Screen Firmware Update documentation to complete the firmware upgrade.


Troubleshooting

Issue 1: Filament Blockage Detection Not Triggering

Possible Causes:

  • The sensor is not properly connected
  • Incorrect switch_pin configuration
  • Lower-level machine firmware not updated

Solutions:

  1. Check the sensor hardware connection
  2. Verify the pin configuration matches the actual hardware
  3. Update the lower-level machine firmware to the latest version

Issue 2: False Blockage Alarms

Possible Causes:

  • Inaccurate distance_per_edge parameter
  • The detection_length threshold is set too small

Solutions:

  1. Re-execute the calibration command
  2. Appropriately increase the detection_length value (recommended 3-5mm)

Issue 3: Calibration Failure

Possible Causes:

  • Nozzle temperature does not meet the requirement
  • Sensor hardware malfunction

Solutions:

  1. Confirm the nozzle has been heated to the specified temperature
  2. Check whether the sensor is functioning properly
  3. Try restarting the Klipper service

Usage Recommendations

  • It is recommended to recalibrate the sensor whenever changing filament brand or diameter
  • Regularly check the sensor status to ensure detection accuracy
  • If the filament blockage detection feature has not been used for an extended period, it is recommended to recalibrate before use

Loading...