Duet 3 - Moves really slow?
-
Hello there! - Im trying to setup my Duet 3 mainboard with the RPI as SBC.
Im trying to use some of my old settings from when I had a duet wifi on it (but its over a year ago now)
My probles is, now im trying to setup sensorless homing, but when I run the homex.g, it moves really slow - like less than 5mm/s is my guess. On my old duet wifi, steps per mm (200) and x16 microstep gave me a good speed (idk maybe 40mm/s) when homing
my config.g is:; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Duet 3" ; set printer name M669 K1 ; select CoreXY mode ; Drives M569 P0.1 S1 ; physical drive 0.1 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes forwards M569 P0.3 S1 ; physical drive 0.3 goes forwards M569 P0.0 S1 ; physical drive 0.0 goes forwards M584 X0.1 Y0.2 Z0.3 E0.0 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X200 Y200 Z800.00 E415.00 ; set steps per mm M566 X1500.00 Y1500.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X8400.00 Y8400.00 Z180.00 E1200.00 ; set maximum speeds (mm/min) M201 X800.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2) M906 X1200 Y1200 Z800 E800 I40 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X320 Y290 Z480 S0 ; set axis maxima ; Endstops M574 X1 S3 ; Set endstops controlled by motor load detection M574 Y1 S3 ; Set endstops controlled by motor load detection M574 Z0 ; Set endstop Z to be probe M915 X Y H200 S0 R0 F0 ; set X and Y to sensitivity , do nothing when stall, unfiltered ; Z-Probe M950 S0 C"io7.out" ; create servo pin 0 for BLTouch M558 P9 C"^io7.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X15:215 Y15:195 S20 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"temp2" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp2 M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit ; Fans M950 F0 C"out7" Q500 ; create fan 0 on pin out7 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"out5" Q500 ; create fan 1 on pin out5 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; 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 ; Custom settings are not defined ; Miscellaneous T0 ; select first tool
and homex.g:
G91 ; relative positioning M913 X30 Y30 ; Drop current to 30% G1 H2 Z3 F6000 ; lift Z relative to current position G1 H1 X-325 F4000 ; move quickly to X axis endstop and stop there (first pass) G1 X5 F6000 ; go back a few mm G1 H1 X-325 F500 ; move slowly to X axis endstop once more (second pass) G1 H2 Z-3 F200 ; lower Z again G90 ; absolute positioning M913 X100 Y100 ; return current to 100%
-
Also - I use 0.9deg steppers fyi
-
i cant spot anything wrong.
are you on firmware 3.1.1 (check with m115)
-
Is 30% current too low?
Does it move correctly outside of the homex?
Can you post the results of M122 and M98 P"config.g" ?
-
@Phaedrux said in Duet 3 - Moves really slow?:
Is 30% current too low?
Does it move correctly outside of the homex?
Can you post the results of M122 and M98 P"config.g" ?
my old setup worked fine on 40% - I have tried 30,40,70 and 100% current
I cant tell if it moves corretly, since I cant move it before homing it first.
m122 === Diagnostics === RepRapFirmware for Duet 3 MB6HC version 3.1.1 running on Duet 3 MB6HC v0.6 or 1.0 (SBC mode) Board ID: 08DJM-956L2-G43S8-6J9D6-3SN6M-KU0UG Used output buffers: 1 of 40 (10 max) === RTOS === Static ram: 154604 Dynamic ram: 162712 of which 108 recycled Exception stack ram used: 224 Never used ram: 75568 Tasks: NETWORK(ready,1972) HEAT(blocked,1188) CanReceiv(suspended,3820) CanSender(suspended,1488) CanClock(blocked,1436) TMC(blocked,204) MAIN(running,4952) IDLE(ready,76) Owned mutexes: === Platform === Last reset 03:21:20 ago, cause: software Last software reset at 2020-10-28 16:46, reason: User, spinning module LinuxInterface, available RAM 75568 bytes (slot 1) Software reset code 0x0010 HFSR 0x00000000 CFSR 0x00000000 ICSR 0x0444a000 BFAR 0x00000000 SP 0xffffffff Task MAIN Error status: 0 MCU temperature: min 44.5, current 44.9, max 45.2 Supply voltage: min 23.9, current 23.9, max 24.0, under voltage events: 0, over voltage events: 0, power good: yes 12V rail voltage: min 12.0, current 12.0, max 12.1, under voltage events: 0 Driver 0: standstill, reads 21200, writes 14 timeouts 0, SG min/max 0/0 Driver 1: standstill, reads 21199, writes 15 timeouts 0, SG min/max 0/0 Driver 2: standstill, reads 21200, writes 15 timeouts 0, SG min/max 0/0 Driver 3: standstill, reads 21201, writes 14 timeouts 0, SG min/max 0/0 Driver 4: standstill, reads 21204, writes 11 timeouts 0, SG min/max 0/0 Driver 5: standstill, reads 21205, writes 11 timeouts 0, SG min/max 0/0 Date/time: 2020-10-28 20:07:36 Slowest loop: 3.70ms; fastest: 0.14ms === Storage === Free file entries: 10 SD card 0 not detected, interface speed: 37.5MBytes/sec SD card longest read time 0.0ms, write time 0.0ms, max retries 0 === Move === Hiccups: 0(0), FreeDm: 375, MinFreeDm: 375, MaxWait: 0ms Bed compensation in use: none, comp offset 0.000 === MainDDARing === Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1 === AuxDDARing === Scheduled moves: 0, completed moves: 0, StepErrors: 0, LaErrors: 0, Underruns: 0, 0 CDDA state: -1 === Heat === Bed heaters = 0 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1, chamberHeaters = -1 -1 -1 -1 Heater 1 is on, I-accum = 0.0 === GCodes === Segments left: 0 Movement lock held by null HTTP* is ready with "M122" in state(s) 0 Telnet is idle in state(s) 0 File is idle in state(s) 0 USB is idle in state(s) 0 Aux is idle in state(s) 0 Trigger* is idle in state(s) 0 Queue is idle in state(s) 0 LCD is idle in state(s) 0 SBC is idle in state(s) 0 Daemon* is idle in state(s) 0 Aux2 is idle in state(s) 0 Autopause is idle in state(s) 0 Code queue is empty. === Network === Slowest loop: 0.83ms; fastest: 0.01ms Responder states: HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) HTTP(0) FTP(0) Telnet(0), 0 sessions Telnet(0), 0 sessions HTTP sessions: 0 of 8 - Ethernet - State: disabled Error counts: 0 0 0 0 0 Socket states: 0 0 0 0 0 0 0 0 === CAN === Messages sent 48293, longest wait 0ms for type 0 === Linux interface === State: 0, failed transfers: 0 Last transfer: 16ms ago RX/TX seq numbers: 63333/63335 SPI underruns 0, overruns 0 Number of disconnects: 0 Buffer RX/TX: 0/0-0 === Duet Control Server === Duet Control Server v3.1.1 Code buffer space: 4096 Configured SPI speed: 8000000 Hz Full transfers per second: 32.38
M98 P"config.g" Warning: M307: Heater 0 appears to be over-powered. If left on at full power, its temperature is predicted to reach 365C
-
@Martin1454 said in Duet 3 - Moves really slow?:
I cant tell if it moves corretly, since I cant move it before homing it first.
Send G92 X100 to set it's position to 100 and flag it as homed. You can then jog the X axis as normal.
-
I didn't spot anything wrong either. Please send M92, M203 and M350, all without parameters, and check that the values reported are as set in config.g.
-
@dc42 said in Duet 3 - Moves really slow?:
M350
So this looks like there is something overwriting my settings on the m203 - gotta dig into that I guess.Edit: Non of my gcode scripts contains the numbers 140
If i send G92 X100 and then jog it, it seems normal, but as soon as I press homex it vibrates the motors for like 1 second, stops and then moves slowly towoards home.
@dc42 Do you have any idea why it shortly vibrates before doing the homing move?
-
send M999 and redo the steps
-
@Martin1454 M203 in config.g is set in mm/min, but reports in mm/sec. 140mm/s is the same as 8400mm/min.
Ian
-
@droftarts said in Duet 3 - Moves really slow?:
M203
gets me every time
are the movements also slow if you do manual movements via g code?
i.e G0 X50
to
G0 X150 -
Are you sure X Y steps per mm is 200? If you command 100mm of movement does it actually move that much?
-
@Veti said in Duet 3 - Moves really slow?:
@droftarts said in Duet 3 - Moves really slow?:
M203
gets me every time
are the movements also slow if you do manual movements via g code?
i.e G0 X50
to
G0 X150Moves a little bit slower than jogging, but still way faster than when homing
@Phaedrux said in Duet 3 - Moves really slow?:
Are you sure X Y steps per mm is 200? If you command 100mm of movement does it actually move that much?
Yes, it moves excatly 50mm when I jog it 50mm
-
@Martin1454 said in Duet 3 - Moves really slow?:
Moves a little bit slower than jogging, but still way faster than when homing
and when you issue this command on its own.
G1 H1 X-325 F4000 ; move quickly to X axis endstop and stop there (first pass)
? -
Can you add M400 before your M913 commands to change the motor current?
-
@Veti said in Duet 3 - Moves really slow?:
@Martin1454 said in Duet 3 - Moves really slow?:
Moves a little bit slower than jogging, but still way faster than when homing
and when you issue this command on its own.
G1 H1 X-325 F4000 ; move quickly to X axis endstop and stop there (first pass)
?It steps 1 step towrds -x, but not 325mm
@Phaedrux said in Duet 3 - Moves really slow?:
Can you add M400 before your M913 commands to change the motor current?
I did now - still no change
-
@Martin1454 said in Duet 3 - Moves really slow?:
It steps 1 step towrds -x, but not 325mm
I'm not sure what you mean by that.
Can you post your current config.g and all your homing files? bed.g if used.
Jogging moves will happen at the defined feed rate in config.g unless otherwise specified with an F parameter.
The feed rate of the homing moves is defined in the homing file, so jogging and homing is going to look different unless they have the same feed rate specified.
-
@Phaedrux
The stepper takes 1 step - like it moves to the left a tiny bit. (I think 1 full step, not microstep)The current config.g
; Configuration file for Duet 3 (firmware version 3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.1.4 on Mon Oct 12 2020 17:14:31 GMT+0200 (Centraleuropæisk sommertid) ; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Duet 3" ; set printer name M669 K1 ; select CoreXY mode ; Drives M569 P0.1 S1 ; physical drive 0.1 goes forwards M569 P0.2 S1 ; physical drive 0.2 goes forwards M569 P0.3 S1 ; physical drive 0.3 goes forwards M569 P0.0 S1 ; physical drive 0.0 goes forwards M584 X0.1 Y0.2 Z0.3 E0.0 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X200 Y200 Z800.00 E415.00 ; set steps per mm M566 X1500.00 Y1500.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min) M203 X8400.00 Y8400.00 Z180.00 E1200.00 ; set maximum speeds (mm/min) M201 X800.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2) M906 X1200 Y1200 Z800 E800 I40 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X320 Y290 Z480 S0 ; set axis maxima ; Endstops M574 X1 S3 ; Set endstops controlled by motor load detection M574 Y1 S3 ; Set endstops controlled by motor load detection M574 Z0 ; Set endstop Z to be probe M915 X Y H200 S0 R0 F0 ; set X and Y to sensitivity , do nothing when stall, unfiltered ; Z-Probe M950 S0 C"io7.out" ; create servo pin 0 for BLTouch M558 P9 C"^io7.in" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X15:215 Y15:195 S20 ; define mesh grid ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin temp0 M950 H0 C"out0" T0 ; create bed heater output on out0 and map it to sensor 0 M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M308 S1 P"temp2" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp2 M950 H1 C"out1" T1 ; create nozzle heater output on out1 and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit ; Fans M950 F0 C"out7" Q500 ; create fan 0 on pin out7 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"out5" Q500 ; create fan 1 on pin out5 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; 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 ; Custom settings are not defined ; Miscellaneous T0 ; select first tool
bed.g
; bed.g ; called to perform automatic bed compensation via G32 ; ; generated by RepRapFirmware Configuration Tool v3.1.4 on Mon Oct 12 2020 17:14:31 GMT+0200 (Centraleuropæisk sommertid) M561 ; clear any bed transform G29 ; probe the bed and enable compensation
And homex.g
; homex.g ; called to home the X axis ; ; generated by RepRapFirmware Configuration Tool v3.1.4 on Mon Oct 12 2020 17:14:31 GMT+0200 (Centraleuropæisk sommertid) G91 ; relative positioning M400 ; M913 X30 Y30 ; Drop current to 70% G1 H2 Z3 F6000 ; lift Z relative to current position G1 H1 X-325 F4000 ; move quickly to X axis endstop and stop there (first pass) G1 X5 F6000 ; go back a few mm G1 H1 X-325 F500 ; move slowly to X axis endstop once more (second pass) G1 H2 Z-3 F200 ; lower Z again G90 ; absolute positioning M913 X100 Y100 ; return current to 100%
-
@Martin1454 said in Duet 3 - Moves really slow?:
The stepper takes 1 step - like it moves to the left a tiny bit. (I think 1 full step, not microstep)
That sounds like stall detection has triggered prematurely. Does it show the axis as homed after it stops?
I guess I'm a bit confused, is it a case of movement being slower than requested or is it stalling before it should?
Have you gone through any of the stall detection tuning?
https://duet3d.dozuki.com/Wiki/Stall_detection_and_sensorless_homing
-
@Martin1454 Can you post your homeall as well if you're using it? Or are you only testing home x at the moment?
Mostly just curious to see if there are any other gcode commands being executed to change the values between config.g being executed at startup and when executing homex.