Conditional Gcode: Load Filament Macro
-
@dc42 Wondering if you can look at this before the next RC? A1 option of M591 does not appear to be checking all extruder movement. Does A1 still require a print to be in progress?
Trying to find a way the filament monitor can be used to detect the filament movement for nonprint moves, I.E. has filament been loaded.
-
@dc42 I know you’re incredibly busy but can you take a look at this? I believe I have the filament monitor set properly to monitor all extruder movement but it still requires a print to be running in order to collect calibration data.
-
@dc42 This post is a week old and would appreciate a reply.
Ran into another issue. When integrating this script into a print by adding the command below in the slicer. The print fails and is locked in a weird state with no errors in the log. It appears you cannot call a print from another print.
Would like to run M591 D0 S0 A1 and have the filament monitor collect data for all extruder moves, not just prints.
M98 P"0:/macros/Filament - Load 240c" ; verify filament is loaded
-
Thank you for your patience. The doctor will be with you shortly.
-
Shouldn't you have a P4 in the M591 to tell it the sensor type?
-
@OwenD said in Conditional Gcode: Load Filament Macro:
Shouldn't you have a P4 in the M591 to tell it the sensor type?
This is already in config.g
M591 D0 P3 C"io8.in" S1 R50:150 L25.8 E6.0
-
@mwolter, what do you want to achieve by monitoring filament movement while loading? It may be that enabling filament monitoring for extruder-only moves won't help anyway.
If you want to load filament until it reaches the hot end, you can do that using extruder stall detection. See https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing#Section_Using_extruder_stall_detection_during_filament_loading.
-
@dc42 My attempt is to make a filament load macro that ensures a certain amount of filament has been extruded and it seems like the magnetic filament monitor would be perfect for this. Not sure stall detection would be very reliable. There could be cases where the filament is blocked in the hotend and a stall is detected but filament hasn't actually been extruded. By using the filament monitor, you can be sure the filament has been extruded.
It seems like adding this capability (monitor filament movement without printing) would be useful in many situations and would sell quite a few filament monitors.
A couple of weeks ago there was a discussion regarding adding the stall info (most recent load, max load and min load) to the object model in this post. This would be helpful also.
-
Thanks for the clarification. There is more than one way to do this. One option might be to define another value of the M591 S parameter, which causes filament to be monitored during extrusion-only moves and a new calibration cycle to be started. Does that sound sufficient to you?
-
@dc42 Yes, an additional S parameter which monitors filament movement during all extruder moves (not just when printing from the SD card) would be perfect.
Thanks for your time.
-
@dc42 Wanted to check on this also. Since you're looking into the filament sensor code, would it be possible to add an additional S parameter to M591 to monitor filament movement during all filament moves?