April 13, 2023
Description
Run out sensor :
This mount is made for this filament sensor : Aliexpress sensor
Mounting :
Material needed :
Wiring :
I am using a BTT SKR mini E3 v3.0, the filament sensor is connected the the E0-Stop connector on the board. Be sure to check where to connect the sensor on your board. If no connector is available for a run out sensor, choose a free port and change the pin used for the sensor in your firmware.
Installation :
Klipper : In your printer.cfg file, add the following code :
[filament_switch_sensor filament_runout_sensor]
pause_on_runout: True
runout_gcode:
G91; Use relative coordinates
G1 Z20 F900; Move nozzle away
G90; Use absolute coordinates
G1 X210 Z3 F5000; Move nozzle to park
G91; Use relative coordinates
G1 E-450 F600; Retract old filament
G90; Use absolute coordinates
insert_gcode:
G4 P10000; Pause for 10 seconds
G1 E150 F400; Prime nozzle
switch_pin: !PC15 # Remove ! if sensor is invertedThis code will pause your print on run out, then move the nozzle to park position (please be sure to modify this accordingly to your 3D printer). Once the filament changed, it will prime the nozzle before continuing the print (be sure to remove the excess of filament after nozzle prime).
Restart your firmware and you should be good to go.
Marlin : In your Configuration.h file, you will need to modify those lines of code :
#define FILAMENT_RUNOUT_SENSOR // Uncomment this line
...
#define FIL_RUNOUT_STATE HIGH // Modify to LOW if output is inverted
...
#define FILAMENT_RUNOUT_DISTANCE_MM 50 // Distance before print is stopped, make sure to stop the print before reaching the extruderIf you have selected the right board in your Configuration.h file :
// Choose the name from boards.h that matches your setup
#ifndef MOTHERBOARD
#define MOTHERBOARD BOARD_BTT_SKR_MINI_E3_V3_0 // Example for the board I am using
#endifThe pin for the sensor should be correct. If you want, you can enable #define NOZZLE_PARK_FEATURE and configure it for your printer to park the nozzle during filament change.
Once done, compile the file and load the firmware.bin file on your printer via a SD card.
Feel free to comment if you have any suggestion or if I've made an error.
License:
Creative Commons — Attribution
7