6HC + 1XD with Clearpath Servos
-
Greetings,
Past few days I've been attempting to install my Clearpath servos on my coreXY machine (railcore), which uses a Duet3 6HC and 2x 1XD's for step/direction. I've tried all the suggestions I could find in threads here, but still just getting odd behavior.
Config wise, I moved the XD's to 40 and 41:M569 P40.0 S1 T3:3:3:3 M569 P41.0 S0 T3:3:3:3 M92 X80 Y80 Z1600 E837
I have the servo's themselves set to 3200 pulses / rev
So now if I turn the printer on, issue
G92 X0 Y0, and then G1 X1 or X10 I get about the given correct steps, at least close enough for rough testing now. So I then attempt to issue a home, doesn't matter if it hits the X or Y end stop, it touches the endstop and then races the end and crashes it into the right side of the printer.My homeY for example:
G91 G1 Z4 F200 H2 G1 Y-350 F3000 H1 G1 Y4 F600 G1 Y-10 H1 G1 Z-4 F200 H2 G90
So I'm a bit at a loss here, because there are zero X movements in my home Y.
Any ideas?
TIA! -
@ric0_md
AFAIR a CoreXY needs a different homing file, where both motors need to be addressed together: G28 XY, then G28 ZExample from the Wiki:
G91 ; relative mode G1 H1 X-240 Y-240 F3000 ; coarse home X or Y G1 H1 X-240 ; coarse home X G1 H1 Y-240 ; coarse home Y G1 X4 Y4 F600 ; move away from the endstops G1 H1 X-10 ; fine home X G1 H1 Y-10 ; fine home Y ; Z homing section follows ...
-
@o_lampe hmmm. I am homing first X then Y on my corexy...
-
@pcr both in seperated homeing files
-
@pcr
So you use G1 ... H2 mode in your homing files? That's another option, but not mentioned in the Wiki yet. -
@ric0_md please publish your complete config file. In particular, we need to see how you have configured the machine limits and the endstop switches.
-
@dc42 sure thing, here it is
;General Setup - RailCore RRF on a SBC for Duet3 G21 ;Work in millimetres G90 ;Send absolute coordinates... M83 ;...but relative extruder moves G4 S2 ;wait for expansion boards to start ; Stepper configuration ;--M569 P0 S0 D3 ;Drive 0 X / Rear (On Board) ;--M569 P1 S1 D3 ;Drive 1 Y / Front (On Board) M569 P40.0 S1 T3:3:3:3 ;XD1 Bus: 40 (ClearPath) (X/FRONT) M569 P41.0 S0 T3:3:3:3 ;XD2 Bus: 41 (ClearPath) (Y/REAR) M569 P2 S0 D3 ;Drive 2 Z Front Left M569 P3 S0 D3 ;Drive 3 Z Rear Left M569 P4 S0 D3 ;Drive 4 Z Right M569 P5 S0 D3 ;Drive 5 Extruder ;PanelDue 7i M575 P1 S1 B57600 ;Axis configuration M669 K1 ;corexy mode ;--ORGM584 X0 Y1 Z2:3:4 E5 ;Map X to drive 0 Y to drive 1, Z to drives 2, 3, 4, and E to drive 5 M584 X41.0 Y40.0 Z2:3:4 E5 ;Map X to drive XD:Bus 40, Y to drive XD:Bus 41, Z to drives 2, 3, 4, and E to drive 5 ;Leadscrew locations M671 X-10:-10:333 Y22.5:277.5:150 S7.G5 ;M350 X16 Y16 Z16 E16 I1 ;set 16x microstepping for axes with interpolation M350 Z16 E16 I1 ;set 16x microstepping for axes with interpolation (ClearPath) M906 X1300 Y1300 Z1200 E800 I80 ;Set motor currents (mA) M201 X2500 Y2500 Z100 E1500 ;Accelerations (mm/s^2) M203 X24000 Y24000 Z900 E3600 ;Maximum speeds (mm/min) M566 X800 Y800 Z100 E1500 ;Maximum jerk speeds mm/minute M208 X305 Y300 Z315 ;set axis maxima and high homing switch positions (adjust to suit your machine) M208 X0 Y0 Z0 S1 ;set axis minima and low homing switch positions (adjust to make X=0 and Y=0 the edges of the bed) ;M92 X200 Y200 Z1600 E837 ;steps/mm ;M92 X320 Y320 Z1600 E837 ;steps/mm (ClearPath) M92 X80 Y80 Z1600 E837 ;steps/mm (ClearPath) ;M84 S60 ; Set motor idle timeout ; End Stops M574 X1 S1 P"io1.in" ;Map the X endstop to io1.in M574 Y1 S1 P"io2.in" ;Map the Y endstop to io2.in ; Thermistors M308 S0 P"temp0" Y"thermistor" A"bed_heat" T100000 B4240 H0 L0 ;Bed thermistor - connected to temp0 M308 S1 P"temp1" Y"thermistor" A"e0_heat" T100000 B4725 C7.06e-8 H0 L0 ;duet3 e3d thermistor - connected to e0_heat ;M308 S2 P"temp2" Y"thermistor" A"keenovo" T100000 B3950 R4700 C7.06E-8 H0 L0 ; Secondary bed thermistor M308 S10 P"spi.cs0" Y"dht22" A"Chamber Temp" M308 S11 P"S10.1" Y"dhthumidity" A"Chamber Hum[%]" ;Define Heaters M950 H0 C"out3" T0 ;Bed heater is on out3 M950 H1 C"out1" T1 ;Hotend heater is on out1 ;Define Bed M140 H0 M307 H0 R0.697 K0.224:0.000 D3.32 E1.35 S1.00 B0 ;Keenovo duet 3 configuration M307 H1 R2.158 K0.353:0.000 D5.24 E1.35 S1.00 B0 V23.8 ;E3D Hotend duet 3 configuration M570 S360 ;Hot end may be a little slow to heat up so allow it 180 seconds M143 S285 ;Set max hotend temperature ; Fans M950 F0 C"out5" ;Hotend fan on "out5" connector M106 P0 S255 H1 T50 ;enable thermostatic mode for hotend fan M950 F1 C"out4" ;Layer fan on "out4" connector M106 P1 S0 ;Layer Fan ; Tool definitions M563 P0 D0 H1 F1 ;Define tool 0 G10 P0 S0 R0 ;Set tool 0 operating and standby temperatures ;Elucid Probe Z-Probe Larger probe offset = nozzle closer to the bed M558 P5 C"^io3.in" H5 F600 T7200 A5 S0.01 M376 H5 ;G31 P500 X4 Y37 Z7.20 ;G31 P500 X4 Y37 Z6.70 G31 P500 X4 Y37 Z6.95 M557 X5:290 Y40:290 S50:43; Bed Probe Locations for G29 T0 ;select first hot end
-
@o_lampe said in 6HC + 1XD with Clearpath Servos:
@ric0_md
AFAIR a CoreXY needs a different homing file, where both motors need to be addressed together: G28 XY, then G28 ZExample from the Wiki:
G91 ; relative mode G1 H1 X-240 Y-240 F3000 ; coarse home X or Y G1 H1 X-240 ; coarse home X G1 H1 Y-240 ; coarse home Y G1 X4 Y4 F600 ; move away from the endstops G1 H1 X-10 ; fine home X G1 H1 Y-10 ; fine home Y ; Z homing section follows ...
You don't have to do both XY together. If you look at the example you posted, you'll see that X and Y do get homed individually after the first move. The initial G1 XY move simply moves in both axes simultaneously until one or other end stop triggers, which can save a few seconds - that's the only reason for it. As well as homeall, we still have homex and homey to home individual axes. Of course, the firmware has to control both the alpha and beta motors because with a CoreXY , technically, there is no X and Y motor but we don't have to worry about that with our homing files.
-
@dc42 with my config any ideas? As far as I've been able to google around seems like the config most are using, but I don't rule out I've done something silly either.
Thanks!