Cant get duet 2 in corexy to move correctly
-
Cant get duet 2 in corexy to move correctly
If i send it a M669 it sends mem669
Kinematics is CoreXY, matrix:
1.00 1.00 0
1.00 -1.00 0
0 0 1.00and the motor outputs are not correct
if i move in X, X moves at a 45° and 1 Z motor moves
if i move in Y, Y moves at a 45° and other Z motor movesI have never got both x and y motors to move at the same time when i move the machine
could use someones help if you got time, there is something i'm not understanding
; Configuration file for Duet WiFi (firmware version 3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.1.4 on Fri Oct 16 2020 22:33:42 GMT-0500 (Central Daylight Time); General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"My Printer" ; set printer name
M669 K1 ; select CoreXY mode; Network
M552 S1 ; enable network
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable 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
M569 P4 S1 ; physical drive 3 goes forwardsM584 X0 Y1 Z2:4 E3 ; set drive mapping
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X80.00 Y80.00 Z4000.00 E420.00 ; set steps per mm
M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
M906 X1000 Y1000 Z1000 E800 I30 ; 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 X300 Y300 Z300 S0 ; set axis maxima; Endstops
M574 X1 S1 P"!xstop" ; configure active-high endstop for low end on X via pin xstop
M574 Y2 S1 P"!ystop" ; configure active-high endstop for high end on Y via pin ystop
M574 Z1 S2 ; configure Z-probe endstop for low end on Z; Z-Probe
M950 S0 C"exp.heater3" ; create servo pin 0 for BLTouch
M558 P9 C"^zprobe.in" H5 F120 T1500 ; set Z probe type to bltouch and the dive height + speeds
G31 P500 X2 Y-43 Z2.5 ; set Z probe trigger value, offset and trigger height
M557 X25:275 Y25:275 S75 ; define mesh grid; Heaters
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 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"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; Fans
M950 F0 C"fan0" 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 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
M575 P1 S1 B57600 ; enable support for PanelDue -
please verify that you are on firmware version 3.1.1
using m115
-
@Szwalkiewicz said in Cant get duet 2 in corexy to move correctly:
M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; configure sensor 0 as thermistor on pin bedtemp
M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; configure sensor 1 as thermistor on pin e0tempunrelated but your thermistor config is wrong. find your correct beta value in the technical documentation of your thermistor.
-
m115
FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 3.1.1 ELECTRONICS: Duet WiFi 1.02 or later FIRMWARE_DATE: 2020-05-19b2 -
if i move in X, X moves at a 45° and 1 Z motor moves
what is the command you issued?
-
greetings
I see that in the M669 command of config.g you only define the kinematics type as corexy (K1) but you do not define the motion matrix.
i use the following command on my corexy printer and it works fine for me
M669 K1 X1: 1 Y1: -1the console output it gives me is as follows:
M669
Kinematics is CoreXY, matrix:
1.00 1.00 0 0
1.00 -1.00 0 0
0 0 1.00 0
0 0 0 1.00I hope it serves
-
for the default corexy M669 K1 does not need parameters.
you seem to need it because you have 4 axis. -
how i moved it was:
the printer is a 300x300x300 so i moved it to the center on x,y and z and (by hand) and sent a g92 of 150 on all three and then used the paneldue jog screen on move around
-
-
The dzuki is always a good place to start, but movment on Z when i move the X or Y I think shows of a larger underlying problem
I tried it on two seperate duet2wifi's one on 2.xx and 3.xx firmware with the same outcome I must have missed a step some where
I'm going to hard reset one and reload the firmware -
change out of corexy mode and test each motor seperately
-
@Veti I like you idea so I erased a board reloaded firmware to start fresh on and rebuild the sd card files. On Cartesian Kinematics I set the motor output to M584 Z0 Y1 X2 E3 (to match board silkscreen) and placed to motor wires on the board to match and everything works as planed then thats when i powered down the board and on reboot with no changes Z and X swaped places? now the motor output is not matching the M584?
-
@Szwalkiewicz said in Cant get duet 2 in corexy to move correctly:
M584
run the command in the console and see if it matches
-
@Szwalkiewicz said in Cant get duet 2 in corexy to move correctly:
M584 Z0 Y1 X2 E3
0 is not the Z driver. The default would be M584 X0 Y1 Z2 E3:4
So when you are seeing movement of the Z axis it's probably because you have the x or y motor connected to the z stepper or z axis motor to the x stepper.
-
@Phaedrux Thanks Phaedrux and Veti for your time and help. I incorrectly assumed the drive assignments