1 / 3
K1 Extruder Filament Runout Sensor — zdjęcie 1
1 / 3

K1 Extruder Filament Runout Sensor

Zamów wydruk tego modelu

Obliczymy ostateczną cenę na podstawie wybranego pliku. Sprawdzisz ją i zaakceptujesz przed płatnością.

Zapisane na tym urządzeniu.

Filament runout sensor inside the stock extruder of the Creality K1 and K1 MAX.

Ocena
4,818 / 5
Polubienia
827
Pobrania
2272
Wydruki
19
Wyświetlenia
30 545
Oceny
22

Aktualizacja u źródła:

Informacje o modelu

Źródło
Printables
Licencja
Creative Commons — Attribution — Noncommercial — Share Alike

This filament sensor has many advantages :

  • It facilitate the filament change operations. When filament is detected by the sensor that triggers an auto load material function. 
  • Since we don't use the rear filament sensor, the reverse bowden path is simplified. This allows an easier insertion of the filament and reduce drag. 
  • It's easier to relocate the spool anywhere you want, it's especially true for the K1. 
  • The sensor works with TPU even if the reverse bowden is bypassed. 
  • It also reduce the length of leftover when a spool ends as the sensor is super close to the extruder. 
  • And it's useful to have a filament runout sensor inside the toolhead when you want to use a MMU (near futur proof ^^ ).

 

🎮 MOD Demo

 

💰 Bill of material. 

  • 1x JST MX 1.25 3 pins (pre-crimped with 15cm cable length.
  • 1x microswitch : Omron D2F-FL or D2F-L ; 1A or 2A 125V AC.
  • 1x 4mm steel ball (alternatively 608 bearing contains 4mm balls *).
  • 1x M2 x 8mm STS (self tapping screw).
  • 1x Heat shrink tubing ± 3mm diameter (optional).

* You can find some 4mm steel balls inside a 608 bearing. (RS types are super easy to open)

 

 🖨 Recommended Print Settings.

Material :  ASA/ABS

Layer height : 0.2
Wall count :  4
Top/bottom layers : 5
Infill : 30% 

No Support

 

🛠 Installation.

1. Microswitch modifications

You will need to slightly reduce the length of the microswitch lever. Cut ± 2mm at the end of the lever. The lever needs to be flush with the microswitch body

 

1.1 Remove the lever to trim it. Use a plier to pinch the base of the lever and release it from its hinge

1.2 Reduce the lever length by ±2 mm (I used a Dremel to do it)

 

1.3 Once it's done, reinstall the lever on the microswitch. And check the lever length, it must be flush with the body when it's in closed position.

 

1.4 Now you will need to bend the pins on the microswitch. Put the microswitch on its side with the lever facing the right and open at the bottom. Bend them upwards.

 

2. Wiring

2.1 Prepare the connector and the cables. A good cable length is around 12.5 cm. Trim or extend them if necessary. 

Note : on the cables I bought the cable order/color doesn't match the connector on the PCB. You may need to adjust them accordingly. V = Red, G = black, S  = Yellow (color may vary).

 

2.2 Insert a 25mm length of heat shrink tubing around the three cables before soldering the cable to the microswitch. Or alternatively, you can insert them inside the tube already present on the stepper motor cables.

2.3 Solder the cables to the microswitch. 

Once done it should look like that.

3. Installation

3.1 Insert the steel ball in its channel

 

3.2 Insert the microswitch and screw it down with one M2x8mm self threading screw in the bottom hole

 

3.3 You can now reassemble the extruder, mount it onto the carriage and connect the sensor and the stepper motor to the the toolhead pcb.

 

4. Klipper Config

Inside printer.cfg file, find the [filament_switch_sensor filament_sensor_2] settings and replace them with the following code :

[filament_switch_sensor filament_sensor_2]
pause_on_runout: true
switch_pin: !nozzle_mcu:PA10
event_delay: 1.5
pause_delay: 0.25
insert_gcode: 
  M118 filament inserted
  LOAD_MATERIAL 
runout_gcode:
  M118 filament runout
  {% if printer.extruder.can_extrude|lower == 'true' %}
    G91
    G1 E-30 F180
    G1 E-50 F2000
    G90
  {% endif %}

If you have an older version of the firmware where only [filament_switch_sensor filament_sensor]  is defined, you can replace it with the following code :  

[filament_switch_sensor filament_sensor]
pause_on_runout: true
switch_pin: !nozzle_mcu:PA10
event_delay: 1.5
pause_delay: 0.25
insert_gcode: 
  M118 filament inserted
  LOAD_MATERIAL
runout_gcode:
  M118 filament runout
  {% if printer.extruder.can_extrude|lower == 'true' %}
    G91
    G1 E-30 F180
    G1 E-50 F2000
    G90
  {% endif %}

 

M118 :

If you get an error M118 unknown command you need to add [respond] on a new line in your printer.cfg . More info about respond command here.
 

insert_gcode :

M118 filament inserted will display the message “filament inserted” inside the console. 
This is useful for testing that the sensor is working correctly.

LOAD_MATERIAL allows to load automatically the filament once it's detected by the sensor. The only downside is that the default temps is 240°C which is a bit high for PLA. 

 

5. Slicer settings recommendations

I recommend you to disable arc fitting. 

This settings allows arc gcode commands (G2 & G3) to be generated in addition of the linear movement commands (G0 & G1). This feature is nice for reducing the weight of the gcode files. 

But when the runout sensor is so close to the driving gears, there is not much filament left between the sensor and those gears when the runout is detected. And the print can only be paused between two gcode commands.

In the worst case, if the runout is detected when you are printing a perfect circle, its diameter can be printed with only one arc command. This command will more likely require more than the remaining filament. The filament will pass the gears before the print is paused. Therefore it will be impossible to retract it afterwards. And bigger is the circle, bigger are the chance for this to happen.

By disabling arc fitting, you will reduce drastically the chances for this to happen. But it could still happen on big linear move command, keep that in mind.

I've updated the macro and increase the reactivity of the sensor in order to avoid this issue as much as possible.

 

🪵 Change Log

16 December 2023 
Slicer recommendations added

14 December 2023 
Updated Macro : increased detection reactivity.

24 November 2023 
First release 

 

☕ Want to support me ?

Enjoy this model? Your support means the world to me! If you love what I do, remember to like and rate the model. You can also follow me to get the latest updates. 
If you wish to further help me to fuel future projects, consider buying me a coffee, I'm literally running on those! Every cup counts and is immensely valued. 

 

🗨 Support and troubleshooting 

D3vil Design Discord - invite

D3vil Design Discord - mod thread

 

❗ Disclaimer  

This mod involves soldering skills and working with electrical components. If you are unfamiliar with those, seek professional guidance. Always prioritise safety and be cautious of electrical and fire hazards.

I'm providing this guide for informational purposes only and I'm not liable for any injuries, accidents, or damages that may occur during the execution or the use of this mod. 

You alone are liable for your own safety and the safety of others. And you shouldering all risks associated with the installation and use of this mod.

Tagi