Welcome! Log In Create A New Profile

Advanced

Filament change and filament runout sensor?

Posted by MikeCL 
Filament change and filament runout sensor?
August 10, 2021 02:55PM
On the marlin version the filament change has to be enabled right? Does anyone know what’s it called under the configuration.h? What about the runout sensor?
Re: Filament change and filament runout sensor?
August 10, 2021 03:19PM
In configuration_adv.h under

#define ADVANCED_PAUSE_FEATURE

/**
* Advanced Pause
* Experimental feature for filament change support and for parking the nozzle when paused.
* Adds the GCode M600 for initiating filament change.
* If PARK_HEAD_ON_PAUSE enabled, adds the GCode M125 to pause printing and park the nozzle.

I have used this many time, this works great.

Edited 2 time(s). Last edit at 08/10/2021 03:20PM by Roberts_Clif.


Computer Programmer / Electronics Technician
Re: Filament change and filament runout sensor?
August 10, 2021 03:32PM
Quote
Roberts_Clif
In configuration_adv.h under

#define ADVANCED_PAUSE_FEATURE

/**
* Advanced Pause
* Experimental feature for filament change support and for parking the nozzle when paused.
* Adds the GCode M600 for initiating filament change.
* If PARK_HEAD_ON_PAUSE enabled, adds the GCode M125 to pause printing and park the nozzle.

I have used this many time, this works great.
thank you! Is the support for the filament runout sensor in the same area?
Re: Filament change and filament runout sensor?
August 10, 2021 10:38PM
Here is the entire Advanced Pause from my working Marlin

/**
 * Advanced Pause
 * Experimental feature for filament change support and for parking the nozzle when paused.
 * Adds the GCode M600 for initiating filament change.
 * If PARK_HEAD_ON_PAUSE enabled, adds the GCode M125 to pause printing and park the nozzle.
 *
 * Requires an LCD display.
 * Requires NOZZLE_PARK_FEATURE.
 * This feature is required for the default FILAMENT_RUNOUT_SCRIPT.
 */
#define ADVANCED_PAUSE_FEATURE
#if ENABLED(ADVANCED_PAUSE_FEATURE)
  #define PAUSE_PARK_RETRACT_FEEDRATE         60  // (mm/s) Initial retract feedrate.
  #define PAUSE_PARK_RETRACT_LENGTH            2  // (mm) Initial retract.
                                                  // This short retract is done immediately, before parking the nozzle.
  #define FILAMENT_CHANGE_UNLOAD_FEEDRATE     10  // (mm/s) Unload filament feedrate. This can be pretty fast.
  #define FILAMENT_CHANGE_UNLOAD_ACCEL        25  // (mm/s^2) Lower acceleration may allow a faster feedrate.
  #define FILAMENT_CHANGE_UNLOAD_LENGTH      100  // (mm) The length of filament for a complete unload.
                                                  //   For Bowden, the full length of the tube and nozzle.
                                                  //   For direct drive, the full length of the nozzle.
                                                  //   Set to 0 for manual unloading.
  #define FILAMENT_CHANGE_SLOW_LOAD_FEEDRATE   6  // (mm/s) Slow move when starting load.
  #define FILAMENT_CHANGE_SLOW_LOAD_LENGTH     0  // (mm) Slow length, to allow time to insert material.
                                                  // 0 to disable start loading and skip to fast load only
  #define FILAMENT_CHANGE_FAST_LOAD_FEEDRATE   6  // (mm/s) Load filament feedrate. This can be pretty fast.
  #define FILAMENT_CHANGE_FAST_LOAD_ACCEL     25  // (mm/s^2) Lower acceleration may allow a faster feedrate.
  #define FILAMENT_CHANGE_FAST_LOAD_LENGTH     0  // (mm) Load length of filament, from extruder gear to nozzle.
                                                  //   For Bowden, the full length of the tube and nozzle.
                                                  //   For direct drive, the full length of the nozzle.
  //#define ADVANCED_PAUSE_CONTINUOUS_PURGE       // Purge continuously up to the purge length until interrupted.
  #define ADVANCED_PAUSE_PURGE_FEEDRATE        3  // (mm/s) Extrude feedrate (after loading). Should be slower than load feedrate.
  #define ADVANCED_PAUSE_PURGE_LENGTH         50  // (mm) Length to extrude after loading.
                                                  //   Set to 0 for manual extrusion.
                                                  //   Filament can be extruded repeatedly from the Filament Change menu
                                                  //   until extrusion is consistent, and to purge old filament.

                                                  // Filament Unload does a Retract, Delay, and Purge first:
  #define FILAMENT_UNLOAD_RETRACT_LENGTH      13  // (mm) Unload initial retract length.
  #define FILAMENT_UNLOAD_DELAY             5000  // (ms) Delay for the filament to cool after retract.
  #define FILAMENT_UNLOAD_PURGE_LENGTH         8  // (mm) An unretract is done, then this length is purged.

  #define PAUSE_PARK_NOZZLE_TIMEOUT           45  // (seconds) Time limit before the nozzle is turned off for safety.
  #define FILAMENT_CHANGE_ALERT_BEEPS         10  // Number of alert beeps to play when a response is needed.
  #define PAUSE_PARK_NO_STEPPER_TIMEOUT           // Enable for XYZ steppers to stay powered on during filament change.

  #define PARK_HEAD_ON_PAUSE                    // Park the nozzle during pause and filament change.
  //#define HOME_BEFORE_FILAMENT_CHANGE           // Ensure homing has been completed prior to parking for filament change

  //#define FILAMENT_LOAD_UNLOAD_GCODES           // Add M701/M702 Load/Unload G-codes, plus Load/Unload in the LCD Prepare menu.
  //#define FILAMENT_UNLOAD_ALL_EXTRUDERS         // Allow M702 to unload all extruders above a minimum target temp (as set by M302)
#endif


Computer Programmer / Electronics Technician
Re: Filament change and filament runout sensor?
August 10, 2021 11:19PM
I got it! I had an old version of Marlin
Re: Filament change and filament runout sensor?
August 11, 2021 04:21PM
If you need any help converting or setting up a newer version of marlin post your questions.


Computer Programmer / Electronics Technician
Re: Filament change and filament runout sensor?
August 11, 2021 05:42PM
I'm on 2.0.5.3 right now I'm ok with this for right now not sure what the other versions add or take away.
VDX
Re: Filament change and filament runout sensor?
August 11, 2021 06:13PM
... someone using Marlin4Due? -- I've modified it slightly and added some M-commands for "special pin treatment" (for one of te applications in my previous day-job), but would be interested in updates too ...

*** EDIT *** have three machines out there at customers (big ultrasound-cleaning machines) with Marlin2.0 too, but here only one M-code added, so no problem to change to actual versions ...

Edited 1 time(s). Last edit at 08/11/2021 06:16PM by VDX.


Viktor
--------
Aufruf zum Projekt "Müll-freie Meere" - [reprap.org] -- Deutsche Facebook-Gruppe - [www.facebook.com]

Call for the project "garbage-free seas" - [reprap.org]
Re: Filament change and filament runout sensor?
August 11, 2021 09:15PM
I am not too sure myself, as I am more familiar with only my controller specs.
Though I currently have Marlin 2.0.6.1 and am playing with the ideal of upgrading to the newest Marlin version 2.0.9.1

Though found that most versions updated to have made my 3D Printer life a little better. With the exception of Marlin-1.1.9 which I quickly changed to Marlin-1.1.9BF Version.
I was happy again.

I have downgraded to a previous version once an waited for a better version which make the 3D Printer work much better.
Now I do not believe with my older Ramps compatible controller it does not make much difference as most changes are for newer 32Bit controllers...

Edited 1 time(s). Last edit at 08/11/2021 09:24PM by Roberts_Clif.


Computer Programmer / Electronics Technician
Re: Filament change and filament runout sensor?
August 11, 2021 09:23PM
This filament sensor is kicking my butt lol I don't see where I can pick the pins (my board MKS gen l V1.0) I have the white sensor with the small LED inside I switched the pin around since red should be 5+ and black GND and white the signal I just don't know which pins it's looking for if that's the case.
Re: Filament change and filament runout sensor?
August 12, 2021 05:32PM
Page 9 here shows the pinouts


[www.botnroll.com]

since my board is flipped 180 my plug is in the D11 so what pin is that? I assume servo 2 pin 4?

Because in the pins.h I assume the #define FIL_RUNOUT1_PIN FIL_RUNOUT_PIN the number goes after?
Re: Filament change and filament runout sensor?
August 12, 2021 09:59PM
When I started working with filament run-out could Never get the Stock filament run-out pin D11 to work correctly.

What I did was to use Z-Max end-stop pin 19 and change the code in my configuration.h below.

#define FILAMENT_RUNOUT_SENSOR
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
  #define NUM_RUNOUT_SENSORS   1     // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
  #define FIL_RUNOUT_STATE     HIGH  // Pin state indicating that filament is NOT present.
  #define FIL_RUNOUT_PULLUP          // Use internal pullup for filament runout pins.
  #define FIL_RUNOUT_PIN       19	 // Hictop, instead of pins_RAMPS.h
  //#define FIL_RUNOUT_PULLDOWN      // Use internal pulldown for filament runout pins.

My filament run-out is a simple lighted end-stop switch.






In the newest Marlin firmware the Filament switch can be enabled or disabled using The LCD Menu options.
Don't use the Filament run-out switch as much as I though when it was originally configured my Marlin firmware.

Selecting "#define MOTHERBOARD BOARD_MKS_BASE_14" on my marlin firmware

Edited 1 time(s). Last edit at 08/12/2021 10:21PM by Roberts_Clif.


Computer Programmer / Electronics Technician
Re: Filament change and filament runout sensor?
August 12, 2021 10:09PM
Quote
Roberts_Clif
When I started working with filament run-out could Never get the Stock filament run-out pin to work correctly.

What I did was to use Z-Max end-stop pin 19 and change the my code in configuration.h below.

#define FILAMENT_RUNOUT_SENSOR
#if ENABLED(FILAMENT_RUNOUT_SENSOR)
  #define NUM_RUNOUT_SENSORS   1     // Number of sensors, up to one per extruder. Define a FIL_RUNOUT#_PIN for each.
  #define FIL_RUNOUT_STATE     HIGH  // Pin state indicating that filament is NOT present.
  #define FIL_RUNOUT_PULLUP          // Use internal pullup for filament runout pins.
  #define FIL_RUNOUT_PIN       19	 // Hictop, instead of pins_RAMPS.h
  //#define FIL_RUNOUT_PULLDOWN      // Use internal pulldown for filament runout pins.

My filament run-out is a simple lighted end-stop switch.


[attachment 118630 FilamentRunOut.jpg]

[attachment 118631 Image2.jpg]

In the newest Marlin firmware the Filament switch can be enabled or disabled using The LCD Menu options.
Don't use the Filament run-out switch as much as I though when it was originally configured my Marlin firmware.

Selecting "#define MOTHERBOARD BOARD_MKS_BASE_14" on my marlin firmware
I have the MKS gen l v1.0 not sure if that matters but it looks like I only have the X min and Y min free as my delta is using the Z max and min

As of right now the filament is always showing triggered even if the sensor is not connected to the board I'm not sure what pin it's set to since I had it set to pin 0 which I saw had no effect... Y- and X- I don't even see show up on the M119 listing.

Edited 1 time(s). Last edit at 08/12/2021 10:40PM by MikeCL.
Re: Filament change and filament runout sensor?
August 12, 2021 11:08PM
Wow finally got it after 4 hours lol I got it with the servo pins I wanted
Re: Filament change and filament runout sensor?
August 13, 2021 06:15AM
Great Post your config changes maybe I can use this to get my controllers to work with the original pins.


Computer Programmer / Electronics Technician
Sorry, only registered users may post in this forum.

Click here to login