maximum extrusion

I changed nozzle to klipper in 0.2, and when it goes to make the prime blob it comes out like this:
No description
32 Replies
foreign-sapphire
foreign-sapphire2y ago
can you post the [extruder] section of the printer.cfg?
blacksmithforlife
@elcoj if I remember correctly the prime blob doesn't account for different nozzle sizes correct?
elco
elco2y ago
indeed
Manuel Sterbizzi
Yes
elco
elco2y ago
but since we are super close to the limit of 0.2, it might make sense to decrease prime speed ever so slightly so it is also under the limit for a 0.2 nozzle from the photo, it looks like the limit and the rate are equal I use a modified version that puts the blob in the middle of the bed:
[gcode_macro PRIME_BLOB]
gcode:
SAVE_GCODE_STATE NAME=prime_blob_state
M117 Prime blob...
{% set speed = printer["gcode_macro RatOS"].macro_travel_speed|float * 60 %}
# Absolute positioning
G90
# Relative extrusion
M83
# Lift 5 mm
G1 Z5 F3000
# move to blob position
G1 X{printer.toolhead.axis_minimum.x + 5} Y{printer.toolhead.axis_maximum.y/2 + 10} Z0.5 F{speed}
# Extrude a blob
G1 F60 E20
# 40% fan
M106 S102
# Move the extruder up by 5mm while extruding, breaks away from blob
G1 Z5 F100 E5
# Move to wipe position, but keep extruding so the wipe is attached to blob
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 25} E1
# Go down diagonally while extruding
# Broken down in z moves under 2mm as a workaround for a tuning tower test.
# The tuning tower command thinks a new print has been started when z moves over 2mm and aborts.
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 30} Z3.8 E0.5
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 35} Z2.6 E0.5
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 40} Z1.4 E0.5
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 45} Z0.3 E0.5
# 0% fan
M106 S0
# small wipe line
G1 F200 Y{printer.toolhead.axis_maximum.y/2 +50} Z0.3 E0.6
# Break away wipe
G1 F{speed} Y{printer.toolhead.axis_maximum.y/2 + 70} Z0.5
# prevent hitting blob
G1 F{speed} Y{printer.toolhead.axis_maximum.y/2 + 70} X{printer.toolhead.axis_minimum.x + 50} Z0.5
RESTORE_GCODE_STATE NAME=prime_blob_state
[gcode_macro PRIME_BLOB]
gcode:
SAVE_GCODE_STATE NAME=prime_blob_state
M117 Prime blob...
{% set speed = printer["gcode_macro RatOS"].macro_travel_speed|float * 60 %}
# Absolute positioning
G90
# Relative extrusion
M83
# Lift 5 mm
G1 Z5 F3000
# move to blob position
G1 X{printer.toolhead.axis_minimum.x + 5} Y{printer.toolhead.axis_maximum.y/2 + 10} Z0.5 F{speed}
# Extrude a blob
G1 F60 E20
# 40% fan
M106 S102
# Move the extruder up by 5mm while extruding, breaks away from blob
G1 Z5 F100 E5
# Move to wipe position, but keep extruding so the wipe is attached to blob
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 25} E1
# Go down diagonally while extruding
# Broken down in z moves under 2mm as a workaround for a tuning tower test.
# The tuning tower command thinks a new print has been started when z moves over 2mm and aborts.
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 30} Z3.8 E0.5
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 35} Z2.6 E0.5
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 40} Z1.4 E0.5
G1 F200 Y{printer.toolhead.axis_maximum.y/2 + 45} Z0.3 E0.5
# 0% fan
M106 S0
# small wipe line
G1 F200 Y{printer.toolhead.axis_maximum.y/2 +50} Z0.3 E0.6
# Break away wipe
G1 F{speed} Y{printer.toolhead.axis_maximum.y/2 + 70} Z0.5
# prevent hitting blob
G1 F{speed} Y{printer.toolhead.axis_maximum.y/2 + 70} X{printer.toolhead.axis_minimum.x + 50} Z0.5
RESTORE_GCODE_STATE NAME=prime_blob_state
This is the original in (my current version of) ratos:
[gcode_macro PRIME_BLOB]
description: Prints a primeblob, used internally, if configured, as part of the START_PRINT macro. Slower than PRIME_LINE but much more effective.
gcode:
SAVE_GCODE_STATE NAME=prime_blob_state
M117 Priming nozzle with prime blob..
RESPOND MSG="Priming nozzle with prime blob.."
{% set speed = printer["gcode_macro RatOS"].macro_travel_speed|float * 60 %}
# Absolute positioning
G90
# Relative extrusion
M83
# Lift 5 mm
G1 Z5 F3000
# move to blob position
G1 X{printer.toolhead.axis_minimum.x + 5} Y{printer.toolhead.axis_minimum.y + 10} Z0.5 F{speed}
# Extrude a blob
G1 F60 E20
# 40% fan
M106 S102
# Move the extruder up by 5mm while extruding, breaks away from blob
G1 Z5 F100 E5
# Move to wipe position, but keep extruding so the wipe is attached to blob
G1 F200 Y{printer.toolhead.axis_minimum.y + 25} E1
# Go down diagonally while extruding
# Broken down in z moves under 2mm as a workaround for a tuning tower test.
# The tuning tower command thinks a new print has been started when z moves over 2mm and aborts.
G1 F200 Y{printer.toolhead.axis_minimum.y + 30} Z3.8 E0.5
G1 F200 Y{printer.toolhead.axis_minimum.y + 35} Z2.6 E0.5
G1 F200 Y{printer.toolhead.axis_minimum.y + 40} Z1.4 E0.5
G1 F200 Y{printer.toolhead.axis_minimum.y + 45} Z0.2 E0.5
# 0% fan
M106 S0
# small wipe line
G1 F200 Y{printer.toolhead.axis_minimum.y +50} Z0.2 E0.6
# Break away wipe
G1 F{speed} Y{printer.toolhead.axis_minimum.y + 100}
RESTORE_GCODE_STATE NAME=prime_blob_state
[gcode_macro PRIME_BLOB]
description: Prints a primeblob, used internally, if configured, as part of the START_PRINT macro. Slower than PRIME_LINE but much more effective.
gcode:
SAVE_GCODE_STATE NAME=prime_blob_state
M117 Priming nozzle with prime blob..
RESPOND MSG="Priming nozzle with prime blob.."
{% set speed = printer["gcode_macro RatOS"].macro_travel_speed|float * 60 %}
# Absolute positioning
G90
# Relative extrusion
M83
# Lift 5 mm
G1 Z5 F3000
# move to blob position
G1 X{printer.toolhead.axis_minimum.x + 5} Y{printer.toolhead.axis_minimum.y + 10} Z0.5 F{speed}
# Extrude a blob
G1 F60 E20
# 40% fan
M106 S102
# Move the extruder up by 5mm while extruding, breaks away from blob
G1 Z5 F100 E5
# Move to wipe position, but keep extruding so the wipe is attached to blob
G1 F200 Y{printer.toolhead.axis_minimum.y + 25} E1
# Go down diagonally while extruding
# Broken down in z moves under 2mm as a workaround for a tuning tower test.
# The tuning tower command thinks a new print has been started when z moves over 2mm and aborts.
G1 F200 Y{printer.toolhead.axis_minimum.y + 30} Z3.8 E0.5
G1 F200 Y{printer.toolhead.axis_minimum.y + 35} Z2.6 E0.5
G1 F200 Y{printer.toolhead.axis_minimum.y + 40} Z1.4 E0.5
G1 F200 Y{printer.toolhead.axis_minimum.y + 45} Z0.2 E0.5
# 0% fan
M106 S0
# small wipe line
G1 F200 Y{printer.toolhead.axis_minimum.y +50} Z0.2 E0.6
# Break away wipe
G1 F{speed} Y{printer.toolhead.axis_minimum.y + 100}
RESTORE_GCODE_STATE NAME=prime_blob_state
Depending whether you want to prime in the middle or the front, copy one of them. Change G1 F60 E20 to E19. If I'm right about being just at the limit, this should avoid the error
miklschmidt
miklschmidt2y ago
Or just set the nozzle_diameter to 0.3 or 0.4 in klipper. All it does is set a threshold for throwing that error. Probably too much extrusion for a .2 in either case. We need to calculate the extrusion from an unknown nozzle_diameter to make it work for every nozzle diameter out there.
elco
elco2y ago
yeah, true, the warning is probably valid, so the extrusion needs to be lowered more than that too bad we don't have access to the nozzle diameter
miklschmidt
miklschmidt2y ago
Really sucks that it can't be set dynamically. Doesn't make any sense, but Kevin insists that it shouldn't be a thing.
elco
elco2y ago
But what about the reverse? Read access to nozzle diameter to calculate an extrusion distance? Should have used reply:)
miklschmidt
miklschmidt2y ago
We can do that, but it requires the user sets the nozzle_diameter correctly in the config. And there are lots and lots of people who just leave it at their biggest nozzle diameter.
elco
elco2y ago
Right, so it would be possible to adjust prime blob to extrude slower based on nozzle diameter set in klipper Isn't nozzle diameter used in PA calculations too?
miklschmidt
miklschmidt2y ago
yes No Literally all it's used for is the dang extrusion warning, and that's only if you haven't set the max_extrude_cross_section or whatever it's called
miklschmidt
miklschmidt2y ago
I've actually gotten a PR for this, i just haven't have the time to check what the heck is going on 😄 https://github.com/Rat-OS/RatOS-configuration/pull/62
GitHub
Factor most of the magic-numbers out of PRIME_LINE by mmirate · Pul...
This PR allows customization of the line's origin, direction and length. Compared to the status quo, this should be a big help for the macro-customizing type of person in case they like to mind...
elco
elco2y ago
Looks nice, only changes prime line though, not blob
miklschmidt
miklschmidt2y ago
yeah but the extrusion logic should be similar
Want results from more Discord servers?
Add your server