Duet3 mini speed limits
-
@Polo the Duet 3 Mini 5+ can go very fast, same as Klipper boards, a 6HC, or any standard board in the market. i can run a 12 minute benchy just like any other. likely your extruder speed needs to be increased. It will be a limiting factor in the overall speed. Try increasing these and i bet you will see proper speeds.
M203 E7200 ; set maximum speeds (mm/min) M201 E10000 ; set accelerations
-
I'm new with duet3 and still learning , thanks much appreciate your help !!!
-
@Polo also check that your slicer hasn't inserted any M203 commands into the GCode file you are trying to print.
-
This is what i have on my gcode . I see M204
code_text ```G90 ; use absolute coordinates M83 ; extruder relative mode M104 S170 ; set extruder temp for bed leveling M140 S[first_layer_bed_temperature] ; set bed temp M109 R170 ; wait for bed leveling temp M190 S[first_layer_bed_temperature] ; wait for bed temp M204 T1250 ; set travel acceleration M204 T[machine_max_acceleration_travel] ; restore travel acceleration M104 S[first_layer_temperature] ; set extruder temp G92 E0 G1 Y13.0 X179 F7400 G1 Z3 F720 M109 S[first_layer_temperature] ; wait for extruder temp ; intro line G1 X300 F1000 G1 Z0.2 F720 G1 X110 E8 F900 G1 X40 E10 F700 G92 E833.33 M106 M221 S150 D1
-
M201 E10000
Just curios is the highest speed I can go ? -
If you are using PrusaSlicer, check Printer settings > Machine limits.
Make sure the limits match the capabilities of your printer and set the drop down at the top to only apply to time estimates.
Post your config.g so we can see what your firmware limits are set to.
-
@Polo you can in theory go much higher, but this is the reasonably safe extrusion value i have found. particularly i use the Orbiter extruder with Nema 14 motor. i would not go faster honestly.
are you not seeing any improved speeds?
-
Here are mi config,g settings
; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"V-Core3" ; set printer name M669 K1 ; CoreXY G21 ; Set Units to Millimeters ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0.0 S0 ; physical drive 0.0 goes forwards M569 P0.1 S0 ; physical drive 0.1 goes forwards M569 P0.2 S0 ; physical drive 0.2 goes forwards M569 P0.3 S1 ; physical drive 0.3 goes forwards M569 P0.4 S1 ; physical drive 0.4 goes forwards M569 P0.5 S0 ; physical drive 0.5 goes forwards M584 X0.4 Y0.3 Z0.0:0.1:0.2 E0.5 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z800.00 E933.33 ; set steps per mm M906 X1600 Y1600 Z1600 I30 ; set motor currents (mA) and motor idle factor in per cent -- safe for Duet 3 mini 5+ M84 S30 ; Set idle timeout M566 X400.00 Y400.00 Z6.00 E120.00 P1 ; set maximum instantaneous speed changes (mm/min) M203 X10800.00 Y10800.00 Z1000.00 E7200 ; set maximum speeds (mm/min) M201 X3000.00 Y3000.00 Z100.00 E10000 ; set accelerations (mm/s^2) ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X510 Y500 Z500 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io0.in" ; configure active high endstops M574 Y2 S1 P"io1.in" ; configure active high endstops M564 H0 M671 X-4.5:250:504.5 Y-4.52:505:-4.52 S5 ; define positions of Z leadscrews or bed levelling screws M557 X30:280 Y30:280 P5 ; define 5x5 mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B3950 A"Bed" ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" T0 Q11 ; create bed heater output on out5 and map it to sensor 0, lower switching frequency to 11Hz M307 H1 R2.186 K0.17:0.11 D5.67 S1.00 V24.0 ; set the process parameters for heater 1 M307 H1 ; report model parameters for heater 1, and whether the model is being used M140 H0 ; map heated bed to heater 0 M143 H0 S110 ; set temperature limit for heater 0 to 110C ;; Run Bed PID Tune!! Below is an example for a 300x300 bed ;; M307 H0 A303.1 C356.7 D1.4 S1.00 V24.0 B0 ; Fans M950 F0 C"out4" Q500 ; create fan 0 on pin out4 and set its frequency M106 P0 C"Layer Fan" S0 H-1 ; set fan 0 name and value. Thermostatic control is turned off M950 F1 C"out3" Q500 ; create fan 1 on pin out3 and set its frequency M106 P1 C"Hotend Fan" S1 H1 T45 ; set fan 1 name and value. Thermostatic control turned on for Hotend ; Tools M563 P0 D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C M950 H1 C"out1" T1 ; create nozzle heater output on out2 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S250 ; set the maximum temperature in C for heater ; EVA 2 / BMG / E3D V6 M92 E830 ; set extruder steps per mm, 0.9 angle/step (LDO Pancake) M906 E800 ; set extruder motor current (mA) and idle factor in per cent M308 S1 P"temp1" Y"thermistor" T100000 B4725 C7.060000e-8 A"Hotend" ;; Run Heater PID Tune!! ;; M307 H1 A751.5 C196.6 D4.7 S1.00 V23.9 B0 ; Z-Probe ;; Inductive Probe ; M558 P5 C"!io3.in" H5 F400 T5000 ; set Z probe type to unmodulated and the dive height + speeds ; G31 P500 X-30 Y-15 Z0.20 ; set Z probe trigger value, offset and trigger height, more Z means closer to the bed ;; BLTouch M950 S0 C"io2.out" ; Create a servo pin on io7 M558 P9 C"io2.in" H5 F240 T10800 A5 ; set Z probe type to unmodulated and the dive height + speeds G31 P25 X-28.00 Y-13.00 Z.1.25 ; set Z probe trigger value, offset and trigger height, more Z means closer to the bed ; Select default tool T0 ; Pressure Advance ; M572 D0 S0.10
-
Yes I did see a little improvement but nothing special. Is the m204 on my prusa slicer start gcode has to do something with it ?? what is the T1250 ?? Thanks fir your help !!
M204 T1250 ; set travel acceleration M204 T[machine_max_acceleration_travel] ; restore travel acceleration
-
Try these values
M566 X1000.00 Y1000.00 Z60.00 E3000.00 P1 ; set maximum instantaneous speed changes (mm/min) M203 X18000.00 Y18000.00 Z1000.00 E7200 ; set maximum speeds (mm/min) M201 X3000.00 Y3000.00 Z100.00 E10000 ; set accelerations (mm/s^2)
-
@Polo yes for sure its very likely your startup acceleration is causing the slow speed. i run my travel acceleration at T4000 on a CoreXY printer. you could try that and see if your particular printer can handle it. just lower it until satisfied.
i see you have a RatRig Vcore 500mm. I am using a Vcore 3.1 300mm. when i first got my printer the default settings from the RatRig setup guide gave me slow print speeds and motion compared to what i would see on Klipper videos. at first i was worried the Duet system or lack of a Raspberry pi was the problem, but i ultimately found proper settings. here is my config.g:
; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"V-Core3" ; set printer name M669 K1 ; CoreXY G21 ; Set Units to Millimeters ; Network M552 S2 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet G4 S2 ; wait for expansion boards to start ; Drives M569 P0.0 S0 D2 ; Left Z physical drive 0.0 goes forwards M569 P0.1 S0 D2 ; Rear Z physical drive 0.1 goes forwards M569 P0.2 S0 D2 ; Right Z physical drive 0.2 goes forwards M569 P0.3 S1 D2 ; Right physical drive 0.3 goes forwards M569 P0.4 S1 D2 ; Left physical drive 0.4 goes forwards M569 P121.0 S1 D2 ; Extruder physical drive 0.5 goes forwards M584 X0.4 Y0.3 Z0.0:0.1:0.2 E121.0 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X80.00 Y80.00 Z800.00 E690 ;E400 ; set steps per mm M906 X2000 Y2000 Z1800 E1000 I10 ;E700 I30 ; set motor currents (mA) and motor idle factor in per cent -- safe for Duet 3 mini 5+ M84 S30 ; Set idle timeout M566 X500.00 Y500.00 Z60.00 E300 P1 ;X1500.00 Y1500.00 Z6.00 E300 P1 ;E120.00 P1 ; set maximum instantaneous speed changes (mm/min) M203 X30000.00 Y30000.00 Z1000.00 E7200 ;E3600.00 ; set maximum speeds (mm/min) M201 X10000.00 Y10000.00 Z100.00 E10000 ;E3600.00 ; set accelerations (mm/s^2) M207 S0.6 F7200 Z0.2 ; firmware retraction orbiter 2.0 ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X310 Y310 Z300 S0 ; set axis maxima ; Endstops M574 X1 S1 P"121.io2.in" ; configure active high endstops M574 Y2 S1 P"io2.in" ; configure active high endstops. IO0 and IO1 also are UART, so do not put endstops on them, use them elsewhere to free up UART. M574 Z1 S2 M671 X-4.5:150:304.5 Y-4.52:305:-4.52 S5 ; define positions of Z leadscrews or bed levelling screws M557 X30:280 Y20:290 P5 ; define 5x5 mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B3950 A"Keenevo 600W Bed" ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" T0 Q10 ; Define Heater0 as the heated bed, bind to Sensor0 M140 H0 P0 ; Define Heated Bed M307 H0 R0.602 K0.401:0.000 D2.44 E1.35 S1.00 B0 ; PID Tuning for Heater0, Heated Bed (100C) M143 H0 S140 ; Set temperature limit for Heater0 to 120C M308 S1 P"121.temp0" Y"thermistor" T100000 B4725 C7.060000e-8 A"Slice Hotend" ;Slice Engineering 300C thermistor, settings are online M950 H1 C"121.out0" T1 Q100 ; Define Heater1 as Extruder0 heater, bind to Sensor1 M307 H1 R3.030 K0.444:0.000 D4.49 E1.35 S1.00 B0 V23.8 ; PID Tuning for Heater1, Extruder0 (240C) M143 H1 S325 ; Set temperature limit for heater 1 to 285C M308 S2 P"temp1" Y"thermistor" T100000 B3950 C7.060000e-8 A"Chamber" ; configure sensor 2 as thermistor on pin temp1 M950 H2 C"out1" T2 ;Q10 ; create chamber heater output on out1 and map it to sensor 2 M307 H2 R0.01 K0.200:0.000 D60 E1.35 S1.00 B1 ; enable bang-bang mode for the chamber heater and set PWM limit M141 H2 ; map chamber to heater 2 M143 H2 S120 ; set temperature limit for heater 2 to 60C M308 S3 P"121.temp1" Y"thermistor" A"Cooling Block" T100000 B3950 C7.060000e-8 ; Define Sensor as Chamber temperature M308 S4 Y"drivers" A"4028 Power" ; 4028 power using spare heater M308 S5 Y"mcu-temp" A"MCU" ; Define Sensor3 as the integrated MCU temperature sensor M308 S6 Y"drivers" A"TMC Drivers" ; Define Sensor4 as the TMC overheat sensor M308 S7 Y"mcu-temp" P"121.dummy" A"Toolboard MCU" M308 S8 Y"drivers" P"121.dummy" A"1LC Stepper" M308 S9 P"temp2" Y"thermistor" T100000 B3950 C7.060000e-8 A"Orbiter Motor" ; configure sensor 9 as thermistor on pin temp2 M308 S10 P"spi.cs1" Y"thermocouple-max31856" K"K" A"TC0 Chamber Heater"; define temperature sensor number 10 as a K Type thermocouple on the first port of a temperature daughter board plugged into the expansion board with CAN bus address 3. M308 S11 P"spi.cs2" Y"thermocouple-max31856" K"K" A"TC1 Chamber Fins"; define temperature sensor number11 as a T Type thermocouple on the first port of a temperature daughter board plugged into the expansion board with CAN bus address 3. ; Fans M950 H3 C"!out2" T2 Q10 ;H2 ; Define Heater2 as the 4028 fan power, bind to Sensor3 M143 H3 P2 S200 ; Needed M143 to set max temp so the graph scaled correctly M950 F0 C"!121.out1+out1.tach" Q25000 ;Q500 ; create fan 0 on pin out4 and set its frequency M106 P0 C"Layer Fan" L0.0 X1.0 S0 H-1 B0.1 ; set fan 0 name and value. Thermostatic control is turned off M950 F1 C"121.out2+out2.tach" Q500 ; Fan 1 uses out3, and using out3.tach as a tacho input M106 P1 C"Hotend Fan" S0 H1 T45 ; set fan 1 name and value. Thermostatic control turned on for Hotend M950 F2 C"out5" Q500 ; create fan 1 on pin out5 and set its frequency M106 P2 C"Board Fan" S0 H4:5:6 T46 ; set fan 1 name and value. Thermostatic control turned on for Hotend M950 F3 C"!out3+out3.tach" Q500 ; Chamber Heater Fan Noctua NF-F12 Industrial M106 P3 C"Chamber Heater Fan" H10 T30 ; S0.3 L0.3 X0.6 B0.1 T30:40 ; set fan 1 name and value. Thermostatic control turned on for Hotend. M950 F4 C"out6" Q500 ; create fan 4 for Water Cooling 12V Fan 4 on pin out4 and set its frequency M106 P4 C"Radiator Cooling Fan" S0 H3 T35 ; set fan 1 name and value. Thermostatic control turned on for liquid cooling hotend M950 F5 C"out4+out4.tach" Q500 ; create fan 4 for Water Cooling 12V Fan 4 on pin out4 and set its frequency M106 P5 C"Liquid Cooling Pump" S0 H3 T20 ; set fan 1 name and value. Thermostatic control turned on for liquid cooling hotend ; Tools M563 P0 D0 H1 F0 S"Mosquito Magnum" ; define tool 0 G10 P0 X0 Y0 Z0 R0 S0 ; set tool 0 axis offsets, set initial tool 0 active 60C and standby temperatures to 0C ;M563 P0 H0 F0 S"Keenevo 600W Bed" ;G10 P0 X0 Y0 Z0 ;G10 P0 R50 S0 ; Z-Probe Inductive Probe ;M558 P5 C"121.io0.in" H5 F400 T5000 ; set Z probe type to unmodulated and the dive height + speeds M558 P8 C"^121.io0.in" H8 F400 T9000 A1 ; S0.01 ; set Z probe type to unmodulated and the dive height + speeds G31 P1000 X-28 Y-20 Z8.78 ; K0 ; set Z probe trigger value, offset and trigger height, more Z means closer to the bed ;; BLTouch ; M950 S0 C"io7.out" ; Create a servo pin on io7 ; M558 P9 C"io7.in" H5 F240 T10800 A5 ; set Z probe type to unmodulated and the dive height + speeds ; G31 P25 X-28.00 Y-13.00 Z0.78 ; set Z probe trigger value, offset and trigger height, more Z means closer to the bed ;Accelerometer M955 P121.0 I16 ;Input Shaper M593 P"zvdd" F44 ; for 10k acceleration ;M593 P"mzv" F42.5 ; for 15k acceleration ;Filament Sensor0 M591 D0 P3 C"121.io1.in" S1 M591 D0 L27 R10:190 ;PanelDue 5i M575 P1 S1 B57600 ;NeoPixels x3 M150 X3 Q4000000 ;R128 U128 B128 P128 S2 F0 M150 X3 R255 U255 B255 W255 P255 S2 F0 ; display led ; Custom settings G29 S1 M572 D0 S0.01; set Pressure Advance K-factor M501 ;M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss ; init filament sensor error global variables if !exists(global.filamentTimestamp) global filamentCounter = 0 global filamentTimestamp = state.Uptime ; init print time logging if !exists(global.runtime) M98 P"runtime.g" ; init LED variables if !exists(global.warmUp) global warmUp = false ; Select default tool M404 N1.75 ; Define filament diameter for print monitor T0
-
@Polo said in Duet3 mini speed limits:
Yes I did see a little improvement but nothing special. Is the m204 on my prusa slicer start gcode has to do something with it ?? what is the T1250 ?? Thanks fir your help !!
M204 T1250 ; set travel acceleration M204 T[machine_max_acceleration_travel] ; restore travel acceleration
If those lines are exactly like that in your start GCode, then the travel acceleration set by the first M204 command will be immediately overridden by the second one. So it all depends on what value you have configured for machine_max_acceleration_travel in SuperSlicer. If you can post the GCode file that you are trying to print then we will be able to see what value has been substituted there, and perhaps spot other issues.
The default printing speeds and accelerations in PrusaSlicer (from which SuperSlicer is derived) are very conservative. I had to increase them quite a lot to get good printing speeds.
-
I used this config and I can see a lot improvement thanks a lot !! Now the question is do I have to change my settings on the extruder to compensate the speed ? I have a bad layer once the machine reach the maximum speed.
-
You may be exceeding the maximum extrusion speed of your hotend.
See here: https://docs.duet3d.com/en/How_to_guides/Calibration#h-4-find-maximum-extrusion-rate