Extreme over extrusion when upgrading from 3.2.2 to 3.3
-
Randomly having an issue where all of the extruders are wayyyyy over extruding. I'm talking 20x filament. The only thing that changed is I upgraded from FW 3.2.2 to 3.3, but then I reverted back to 3.2.2. That didn't fix it. I'm at a loss here. I tried running a print that I printed successfully several days ago, same exact gcode, and I have this issue. That tells me the problem isn't in the slicer. Any ideas?
Here is the config:
G21 ; Work in millimetres G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves M564 H0 ; Allow movement without homing M669 K1 ; CoreXY mode ; Axis and motor configuration M584 X0 Y1 Z5:6:7 C2 E3:4:8:9 ; Map Z to drivers 5, 6, 7. Define unused drivers 3,4,8 and 9 as extruders M569 P0 S0 ; Drive 0 goes forwards X stepper (Rear) M569 P1 S1 ; Drive 1 goes forwards Y stepper (Front) M569 P2 S1 ; Drive 2 goes backwards Coupler M569 P3 S0 ; Drive 3 goes forwards Extruder M569 P4 S0 ; Drive 4 goes backwards Extruder 2 M569 P5 S0 ; Drive 5 goes forwards Front Left Z M569 P6 S0 ; Drive 6 goes forwards Rear Left Z M569 P7 S0 ; Drive 7 goes forwards Right Z ;Stall Detection - Used for homing M915 C S5 F0 H200 ; Coupler M915 X Y S5 F0 H400 ; X / Y Axes ;Leadscrew locations M671 X-50.0:-51.44:301.23 Y31.4:284.9:156.9 S7.5 ;Front left, Rear Left, Right S7.5 is the max correction - measure your own offsets, to the bolt for the yoke of each leadscrew M350 C8 I0 M350 X16 Y16 Z16 E16:16 I1 ; set 16x microstepping for axes& extruder, with interpolation M574 X1 Y1 S3 ; Set X / Y endstop stall detection M906 X1400 Y1400 Z1000 C400 E1000:600 I60 ; Set motor currents (mA) M201 X3000 Y3000 Z100 C400 E1500:1500 ; Accelerations (mm/s^2) M203 X24000 Y24000 Z900 C5000 E3600:3600 ; Maximum speeds (mm/min) M566 X1000 Y1000 Z100 C2 E1500:1500 ; Maximum jerk speeds mm/minute M208 X-42:340 Y-20:320 Z-0.5:700 C0:260 ; set axis maxima and high homing switch positions (adjust to suit your machine) M92 X200 Y200 Z1600 C100 E402:414 ; steps/mm (E409 is Hemera standard), (E400 is standard for LGX) ; Fans M950 F0 C"fan0" ;_RRF3_ define fan0 M950 F1 C"fan1" ;_RRF3_ define fan1 M950 F2 C"fan2" ;_RRF3_ define fan2 M106 P0 H-1 ; disable thermostatic mode for fan 0 M106 P1 H-1 ; disable thermostatic mode for fan 1 M106 P2 H-1 M106 P0 S0 ; turn off fans M106 P1 S0 M106 P2 S0 ; Tool definitions M563 P0 S"Hotend1" D0 H1 ; Define tool 0 G10 P0 X44 Y-21.4 Z-6.03 ; Tool offsets for tool 0 ; Previous values: G10 P0 X44 Y-21.4 Z-5.63, moved up 0.4mm for PLA first layer G10 P0 S0 R0 ; Set tool 0 operating and standby temperatures M563 P1 S"Hotend2" D1 H2 ; Define tool 1 G10 P1 X37 Y-16.2 Z-21.64 ; Tool offsets for tool 1 G10 P1 S0 R0 ; Set tool 1 operating and standby temperatures ; Thermistors M308 S0 P"bedtemp" Y"thermistor" A"bed_heat" T100000 B3950 R4700 H0 L0 ;_RRF3_ Bed thermistor, connected to bedtemp on Duet2 M950 H0 C"bedheat" T0 ;_RRF3_ define Bed heater is on bedheat M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C ;If you have a Slice Engineering thermistor, comment out the next line M308 S1 P"e0temp" Y"thermistor" T100000 B4725 R4700 C7.06e-8 H0 L0 ;_RRF3_ duet3 e3d M950 H1 C"e0heat" T1 ;_RRF3_ define Hotend heater is on e0heat M143 H1 S300 ; set temperature limit for heater 1 to 300C M308 S2 P"e1temp" Y"thermistor" T100000 B4725 R4700 C7.06e-8 H0 L0 ;_RRF3_ duet3 e3d M950 H2 C"e1heat" T2 ;_RRF3_ define Hotend heater is on e1heat M143 H2 S300 ; set temperature limit for heater 1 to 300C M307 H0 R0.231 C1029.2 D42.03 S1.00 V24.1 ; Bed Heaters M307 H1 R2.909 C173.8 D5.37 S1.00 V24.1 ; Heater 1 model M307 H2 R2.909 C173.8 D5.37 S1.00 V24.1 ; Heater 2 model M570 S360 ; Hot end may be a little slow to heat up so allow it 180 seconds M143 S285 ; Z probe and compensation definition M558 P8 C"^zprobe.in" H10 F100 T3000 ; Z probe is an IR probe and is not used for homing any axes G31 X0 Y0 Z0 P500 ; Set the zprobe height and threshold M501 ; run config-override.g T-1 ; select no hot end
-
-
@makestuffmakestuff I don't see anything in your config.g that would cause the machine to extrude more than 20X the required amount of filament. About the only thing I can think of which might cause that behaviour is perhaps an M82 has crept in somewhere which is overriding the M83 you have in your config.g. So instead of expecting the gcode from the slicer to have relative moves, it is expecting them to be absolute. Possible laces to look would be config-overide.g if you use it, or the slicer start gcode, or any macros you run prior to printing. Either that, or maybe the gcode file itself is corrupted. What happens if you manually extrude using DWC?
-
Check out the M82 M83 issue
I recently had the same issue and i was pulling out my hair
Ensure that your slicer is not inserting M82 or M83 someplace it shouldnt
I found my issuer on my Z homing file that i had written years ago -
@makestuffmakestuff said in Extreme over extrusion when upgrading from 3.2.2 to 3.3:
E3:4:8:9
Not sure if it will matter but you've got 4 extruder drives mapped, but only have values for 2 extruders in your other settings.
M350 X16 Y16 Z16 E16:16
Either unbind the additional extruders, or define their settings as well.
What do you have in your slicer start gcode? The fact that it stuck around between 3.3 and going back to 3.2 seems to indicate the firmware change is a red herring. Did something else change in the slicer?
-
Sorry for the delayed response everyone. I broke my Z endstop/probe and had to wait for a new one in the mail to continue printing. The problem persists.
@deckingman said in Extreme over extrusion when upgrading from 3.2.2 to 3.3:
@makestuffmakestuff I don't see anything in your config.g that would cause the machine to extrude more than 20X the required amount of filament. About the only thing I can think of which might cause that behaviour is perhaps an M82 has crept in somewhere which is overriding the M83 you have in your config.g. So instead of expecting the gcode from the slicer to have relative moves, it is expecting them to be absolute. Possible laces to look would be config-overide.g if you use it, or the slicer start gcode, or any macros you run prior to printing. Either that, or maybe the gcode file itself is corrupted. What happens if you manually extrude using DWC?
There is no M82 or M83 anywhere in the gcode, config, config-override or homing files. If I manually extrude with DWC I get the expected extrusion length.
@percar said in Extreme over extrusion when upgrading from 3.2.2 to 3.3:
Check out the M82 M83 issue
I recently had the same issue and i was pulling out my hair
Ensure that your slicer is not inserting M82 or M83 someplace it shouldnt
I found my issuer on my Z homing file that i had written years agoNo luck finding M82 or M83 anywhere.
@phaedrux said in Extreme over extrusion when upgrading from 3.2.2 to 3.3:
@makestuffmakestuff said in Extreme over extrusion when upgrading from 3.2.2 to 3.3:
E3:4:8:9
Not sure if it will matter but you've got 4 extruder drives mapped, but only have values for 2 extruders in your other settings.
M350 X16 Y16 Z16 E16:16
Either unbind the additional extruders, or define their settings as well.
What do you have in your slicer start gcode? The fact that it stuck around between 3.3 and going back to 3.2 seems to indicate the firmware change is a red herring. Did something else change in the slicer?
I'll remove the 2 extra extruder definitions, but they've been there since before this issue showed up.
As for the slicer changing, I have a gcode file that printed perfectly. When I run the same exact file now I get the extreme over extrusion. That is what indicates to me that it has to be a configuration issue. I can't for the life of me remember changing anything before the 3.3 upgrade though. And when I extrude with DWC I get the expected filament length. Just for fun, I'll post the beginning of a sliced file for analysis.
T-1 ; make sure we don't have a tool in the holder T1 P0 ; Turn on the first layer tool to get temp rising without running change macros T-1 P0 ; Set it back to no tool, again running no tool change macro to set Tool 0 to standby M568 P1 R220 S240 ; Set the first tool to standby and set the active and standby temps M140 S90 ; Set first layer bed temp G28 ; home all axes M190 S90 ; Set first layer bed temp and wait before leveling bed G32 ; level the bed G28 Z ; Home the Z axis only G1 Z20 F5000 ; lift nozzle T1 ; Get the first tool to be used M116 ; Wait for all temperatures to reach printing values ; Filament gcode M290 R0 S0 ; Reset babystepping to 0 ;M290 S-0.2 ; Set babystep to 0.05 farther from the bed M107 ;LAYER_CHANGE ;Z:0.34 ;HEIGHT:0.34 G1 Z0.340000 F9000 G1 E-2.00000 F2400 G1 X94.939 Y65.392 F9000 G1 E0.00000 F2400 ;TYPE:Skirt ;WIDTH:0.37 G1 F900 G1 X95.955 Y64.044 E0.07231 G1 X97.002 Y62.975 E0.13639 ;Gcode continues after this...
-
@makestuffmakestuff said in Extreme over extrusion when upgrading from 3.2.2 to 3.3:
If I manually extrude with DWC I get the expected extrusion length.
That means the configuration is most likely correct.
The gcode snippet you just posted contains nothing that makes me think there is an issue with the start gcode.
Can you try forcing M83 in your start gcode - put it in as late as possible before the print starts.
Also check the tool change files for M82 or M221
-
Can you share some photos of the printer and the over extrusion?
Can you share a gcode file that shows the problem as well?
For good measure can you also share the results of sending M122 and M98 P"config.g"?