G-code for only "Filament Extrusion" without moving nozzle
-
@fcwilt Thank you
-
@fcwilt Hi, is there any modification of code to make the extrusion to the slowest speed?
G21 ; set units to millimeters
M104 S200 ; set temperature
M106M109 S200 ; wait for temperature to be reached
G90 ; use absolute coordinates
G92 E0
M83G1 E12.00000 F2.000
G92 E0
M107
M104 S0
M107
G91
G90 -
@asif-istiak said in G-code for only "Filament Extrusion" without moving nozzle:
@fcwilt Hi, is there any modification of code to make the extrusion to the slowest speed?
The slowest speed? I guess that would be determined by the type of variable used to hold the F value. It's a floating point number but I have no idea what the precision is.
@dc42 would be the one to answer that question.
Frederick
-
You can use
M203 I
to specify a lower minimum speed. The default minimum speed is 30mm/min which is already quite slow.https://docs.duet3d.com/User_manual/Reference/Gcodes#m203-set-maximum-feedrate
How slow do you need it to go?
@asif-istiak said in G-code for only "Filament Extrusion" without moving nozzle:
G1 E12.00000 F2.000
12mm at 2mm/min will take 24 minutes to complete. Is that what you're expencting?
-
@phaedrux thanks for the answer. But, I am expecting the ''lowest'' extrusion rate from the nozzle which will run for 30min without moving. May I have your suggestion on that?
-
@asif-istiak said in G-code for only "Filament Extrusion" without moving nozzle:
will run for 30min without moving.
I'm not sure what you mean by this.
If you want to run slower than 30mm/min you will need to set the minimum speed manually by changing your M203 command in config.g to include an
I
value. For example,M203 I1
would give you 1mm/min. -
@phaedrux I just need to extrude the filament; in that time the nozzle will not move to any axis.
And, the rate of the extrusion will be the least
-
ok... I'm still confused by what you're actually trying to accomplish.
-
@asif-istiak said in G-code for only "Filament Extrusion" without moving nozzle:
@phaedrux I just need to extrude the filament; in that time the nozzle will not move to any axis.
And, the rate of the extrusion will be the least
Well the smallest value you can specify is I1 in the M203.
Frederick
-
@phaedrux I want to make fiber from that not any 3D printed object
-
@fcwilt So, is that like this?
G21 ; set units to millimeters
M104 S200 ; set temperature
M106M109 S200 ; wait for temperature to be reached
G90 ; use absolute coordinates
G92 E0
M83G1 M203 I1 E15.00000 F2.000
G92 E0
M107
M104 S0
M107
G91
G90 -
@asif-istiak said in G-code for only "Filament Extrusion" without moving nozzle:
@fcwilt So, is that like this?
G21 ; set units to millimeters
M104 S200 ; set temperature
M106M109 S200 ; wait for temperature to be reached
G90 ; use absolute coordinates
G92 E0
M83G1 M203 I1 E15.00000 F2.000
G92 E0
M107
M104 S0
M107
G91
G90No. M203 is typically in your config.g file.
if the M203 already has the I parameter change the existing value to 1.
If the M203 doesn't already have the I parameter just add it with the value of 1.
Then re-boot the printer or reset the Duet to cause the new config values to take effect.
Frederick
-
@fcwilt I see. thanks a lot for your explanation
-
@asif-istiak said in G-code for only "Filament Extrusion" without moving nozzle:
If all you want to do is extrude some filament, then this can be much simpler.
G21 ; set units to millimeters
This G21 is usually set in config.g so will be loaded when the printer is turned on. Unless for some unknown reason you are working in inches and have G20 instead of G21 in your config.g file.
M104 S200 ; set temperature
M104 is deprecated so you ought to use G10 instead.
M106
Do you really need to turn on the part cooling fan? If not, this command can be omitted.
M109 S200 ; wait for temperature to be reached
This command is also deprecated so you ought to use M116 instead.
G90 ; use absolute coordinates
As you are not moving X,Y or Z, this G90 is irrelevant and can be omitted.
G92 E0
This will zero the extruder when it is set to absolute extrusion using M82, but in the following command, you use M83 to set the extruder to relative mode. Therefore you don't need this G92
M83
G1 E12.00000 F2.000
Those commands will do want you want except that you don't need to add all those zeros.
G92 E0
Again, this will zero the extruder when it is in absolute mode but you ae using relative so it is irrelevant and can be omitted.M107
This will turn off the part cooling fan but as above, why do you need to turn it on if you are not printing a part?
M104 S0
This will set the extruder temperature to zero but again, because it is deprectaed, you ought to use G10 instead.
M107
This turns the fan off yet again - you don't need do it twice.
G91
This sets relative positioning for XY and Z bt you are not moving them so it isn't needed.
G90
Finally, this sets XY and Z back to absolute so can also be omitted.
So you code could be as follows:-
T0; set tool zero - it it's likely that you only have one tool and you already have a T0 command in your config.g but it's best to be safe
M83; use relative extrusion (if this is already set in config.g, it can be omitted
G10 P0 S200 ; set tool to 200 degC
M116; wait for temperature to stabilise
G1 E12 F2; extrude 12mm of filament at 2mm/sec
G10 P0 S0; set tool temperature to zero. -
@deckingman Thanks a ton, sir