Motors move wrong way
-
@tecno if itβs a delta, probably X and Y motors are flipped in M584. Donβt forget to swap the endstop assignments too!
Ian
-
Yes it is a Delta.
G0 X-5 X should go down not up. It is X moving not Y so I dont see flipping X/Y in M584 do anything good.
-
@tecno check the individual motor moves for delta here: https://docs.duet3d.com/User_manual/Connecting_hardware/Motors_testing#checking-movement-direction
Ian
-
@droftarts said in Motors move wrong way:
@tecno check the individual motor moves for delta here: https://docs.duet3d.com/User_manual/Connecting_hardware/Motors_testing#checking-movement-direction
Ian
Guess what, all axis move as commanded in the test BUT in DWC it is the opposite.
-
@tecno with a simple diagram can you show us the motor positions when looking down on the delta from above similar to
Z
X Y.
Also post your full Config.g
Doug
-
; Configuration file for Duet 3 Mini 5+ (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue May 31 2022 17:03:35 GMT+0200 (centraleuropeisk sommartid) ; General preferences M575 P1 S0 B57600 ; enable support for PanelDue G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"BigDelta" ; set printer name M665 R300 L615 B275 H570 ; Set delta radius, diagonal rod length, printable radius and homed height M666 X0 Y0 Z0 ; put your endstop adjustments here, or let auto calibration find them M669 S1 T1 ; kinematics linear delta M564 H0 S0 ; allow axis movement not homed ; Wait a moment for the CAN expansion boards to start G4 S2 ; Network M551 P"bengt" ; set password M552 P192.168.1.124 S1 ; enable network and acquire dynamic address via DHCP M586 P0 S1 ; enable HTTP M586 P1 S1 ; enable FTP M586 P2 S1 ; enable Telnet ; Drives ;M569 P40.0 S0 R1 T10:10:10:10 ; physical drive 121.0 goes forwards ;M569 P41.0 S0 R1 T10:10:10:10 ; physical drive 122.0 goes forwards ;M569 P42.0 S0 R1 T10:10:10:10 ; physical drive 123.0 goes forwards ;M584 X40.0 Y41.0 Z42.0 E0.0 ; set drive mapping M569 P0 S0 M569 P1 S1 M569 P2 S1 M569 P3 S1 M584 X3 Y2 Z1 E0 M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation X16 Y16 Z16 M92 X40.00 Y40.00 Z40.00 E663.00 ; set steps per mm M566 X120.00 Y120.00 Z120.00 E1200.00 ; set maximum instantaneous speed changes (mm/min) M203 X800.00 Y800.00 Z800.00 E1200.00 ; set maximum speeds (mm/min) M201 X1000.00 Y1000.00 Z1000.00 E1000.00 ; set accelerations (mm/s^2) M906 X1500 Y1500 Z1500 E800 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 Z0 S1 ; set minimum Z ; Endstops M574 X2 S1 P"40.io1.in" ; configure switch-type (e.g. microswitch) endstop for high end on X via pin io0.in M574 Y2 S1 P"41.io1.in" ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin io1.in M574 Z2 S1 P"42.io1.in" ; configure switch-type (e.g. microswitch) endstop for high end on Z via pin io2.in ; Z-Probe M558 P5 R0.4 C"io3.in+io4.out" H5 F1200 T6000 ; set Z probe type to effector and the dive height + speeds G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height M557 R85 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"temp1" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin temp1 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 M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F0 C"out5" Q500 ; create fan 0 on pin out3 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"out4" Q500 ; create fan 1 on pin out4 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P1 D0 H1 F0 ; define tool 1 G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets G10 P1 R0 S0 ; set initial tool 1 active and standby temperatures to 0C ; Custom settings are not defined ; Miscellaneous ;M501 ; load saved parameters from non-volatile memory T1
Z back
X left front
Y right front -
@tecno In that case I think your M584 is in the wrong sequence as George said above try
M584 X1 Y2 Z3 E0 assuming that the motors are connected to X Y and Z ports in that order.
-
Sorry but there is no reason to have X on port 1 !
Anyhow I did that and edit config and switched motor wires = Still same problem
Will try to switch motor wires on one winding to see if it helps.
//edit No it did not
-
@tecno said in Motors move wrong way:
Sorry but there is no reason to have X on port 1 !
Anyhow I did that and edit config and switched motor wires = Still same problem
Will try to switch motor wires on one winding to see if it helps.
//edit No it did not
Your config order of the M569 P1 to P3 suggests that the motors are connected to ports 1 2 and 3 in XYZ order tho
Maybe reverse the order of them may solve your issue because your motors all move in the correct way when individually commanded it has to be a config issue!Argh sorry that order I don't think matters but I think it is still worth trying.
Just looked up M584 and wonder if this maybe your issue.```
-
@tecno said in Motors move wrong way:
Anyhow I did that and edit config and switched motor wires = Still same problem
if you switch the configuration and the wiring at the same time, the problem will persist. Do one or the other.
-
Also remember that in Delta kinematics all 3 axis have to move for any movement in the cartesian plane.
-
I have tried all possibly settings
-
So M584 line has to be X0 Y1 Z2 and E4 or E5 or just E4 no x/y/z?
-
I feel like fool now
Been looking at the carriage motion not head motion = NOOB with Delta
All appears to move as it should.
-
@tecno said in Motors move wrong way:
So M584 line has to be X0 Y1 Z2 and E4 or E5 or just E4 no x/y/z?
I am just about to go out but I will get you a copy of my Config.g
; General preferences M575 P1 S1 B57600 ; enable support for PanelDue G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Delta" ; set printer name M665 R239.403 L450.7 B175 H401 ; Set delta radius, diagonal rod length, printable radius and homed height M666 X0 Y0 Z0 ; put your endstop adjustments here, or let auto calibration find them ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S1 ; enable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0 S1 ; physical drive 0 goes forwards M569 P1 S1 ; physical drive 1 goes forwards M569 P2 S1 ; physical drive 2 goes forwards M569 P3 S1 ; physical drive 3 goes forwards M584 X0 Y1 Z2 E3 ; set drive mapping M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation M92 X200.00 Y200.00 Z200.00 E2500.00 ; set steps per mm M566 X54000.00 Y54000.00 Z54000.00 E2400.00 ; set maximum instantaneous speed changes (mm/min) M203 X1080000.00 Y1080000.00 Z1080000.00 E144000.00 ; set maximum speeds (mm/min) M201 X1000.00 Y1000.00 Z1000.00 E120.00 ; set accelerations (mm/s^2) M906 X1000 Y1000 Z1000 E500 I30 ; set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout ; Axis Limits M208 Z0 S1 ; set minimum Z ; Endstops M574 X2 S1 P"xstop" ; configure switch-type (e.g. microswitch) endstop for high end on X via pin xstop M574 Y2 S1 P"ystop" ; configure switch-type (e.g. microswitch) endstop for high end on Y via pin ystop M574 Z2 S1 P"zstop" ; configure switch-type (e.g. microswitch) endstop for high end on Z via pin zstop ; Z-Probe M558 P5 R0.4 C"zprobe.in+zprobe.mod" H5 F1200 T6000 ; set Z probe type to effector and the dive height + speeds G31 P500 X0 Y0 Z0.1 ; set Z probe trigger value, offset and trigger height M557 R85 S20 ; define mesh grid ; Heaters M308 S0 P"spi.cs2" Y"rtd-max31865" F50 ;M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M307 H0 B0 S1.00 ; disable bang-bang mode for the bed heater and set PWM limit M140 H0 ; map heated bed to heater 0 M143 H0 S75 ; set temperature limit for heater 0 to 75C M308 S1 P"spi.cs1" Y"rtd-max31865" F50 ;M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0temp M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M950 F0 C"fan2" Q500 ; create fan 0 on pin fan0 and set its frequency M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency M106 P1 S1 H1 T45 ; set fan 1 value. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F2 ; 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 M501 ; load saved parameters from non-volatile memory T0 ; select first tool
-
-