Solved Z-drives not moving, new Duet3
-
Hello
I have z-drive not moving, and I'm unsure what there could be wrong.
It's a new setup/build. Voron 2.4.
I have installed RRF 3.4 on Duet3 and Duet exp 3.
I have lined up the code accordingly with the guides, and I have been testing last night with different variations of code for the Z-drive. But still the same, not moving.
The endstops has been configurated and are working.
I have no visible problems homing X and Y.Sorry for posting twice. Messed up
Config.g code
; Configuration file for Duet 3 (firmware version 3.3) ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue Mar 22 2022 17:37:43 GMT+0100 (Centraleuropæisk normaltid) ; General preferences M575 P1 S1 B57600 ; enable support for PanelDue G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"My Printer" ; set printer name M669 K1 Z3 ; select CoreXY mode ; Wait a moment for the CAN expansion boards to start G4 S2 ; Network M552 P192.168.0.110 S1 ; enable network and acquire dynamic address via DHCP M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Drives M569 P0.0 S1 ; physical drive 0.0 goes forwards, drive E M569 P1.0 S1 ; physical drive 1.0 goes forwards, drive A M569 P0.1 S0 ; physical drive 0.1 goes forwards, drive Z1 M569 P1.1 S1 ; physical drive 1.1 goes forwards, drive B M569 P0.2 S1 ; physical drive 0.1 goes forwards, drive Z2 M569 P0.3 S0 ; physical drive 0.1 goes forwards, drive Z3 M569 P0.4 S1 ; physical drive 0.1 goes forwards, drive Z4 M584 X1.0 Y1.1 Z0.1:0.2:0.3:0.4 E0.0 ; set drive mapping M350 X16 Y16 Z16 I0 ; configure microstepping without interpolation M350 E16 I1 ; configure microstepping with interpolation M92 X53.333 Y53.333 Z53.333 E397.00 ; set steps per mm M566 X720.00 Y720.00 Z150.00 E600.00 ; set maximum instantaneous speed changes (mm/min) M203 X18000.00 Y18000.00 Z2400.00 E6000.00 ; set maximum speeds (mm/min) M201 X2000.00 Y2000.00 Z250.00 E1800.00 ; set accelerations (mm/s^2) M906 X900 Y900 Z900 E1000 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"!io1.in" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin !io0.in M574 Y1 S1 P"!io2.in" ; configure switch-type (e.g. microswitch) endstop Y1 = low-end on Y via pin !io1.in M574 Z1 S1 P"io3.in" ; configure switch-type (e.g. microswitch) endstop U1 = low-end, S1 = active-high (NC) on Z via pin io3.in ; Z-Probe M558 P5 A5 S0.01 B0 R0.2 C"^io4.in" H5 F1000:400 T4500 I0 ; set Z probe type to switch and the dive height + speeds M558 H30 ;*** Remove this line after delta calibration has been done and new delta parameters have been saved G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X50:250 Y50:250 S20 ; define mesh grid ; Bed leveling M671 X-65:-65:365:365 Y-20:380:380:-20 S20 ; Define Z belts location (Front_Left, Back_Left, Back_Right, Front_Right) M557 X25:275 Y25:275 S25 ; Define bed mesh grid (inductive probe, positions include the Z offset!) ; Heaters M308 S0 P"temp0" Y"thermistor" T100000 B3950 ; 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 ; 100% PWM, bang-bang mode for the bed heater 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 B4725 C7.06e-8 ; 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 S300 ; set temperature limit for heater 1 to 300C ; Fans M950 F0 C"out4" Q500 ; create fan 0 on pin out4 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 I0 H1 T50 ; set fan 1 value. Thermostatic control is turned on when temp reaches 50 °C M950 F2 C"out7" Q500 ; create fan 2 on pin out7 and set its frequency. Electronics bay fan, turn on gradually if MCU is over 45 °C or any TMC driver is over temp M106 P2 T45:65 F50 H-1 ; set fan 2 value. Thermostatic control is turned off M950 F3 C"out8" Q500 ; create fan 3 on pin out8 and set its frequency. Electronics bay fan, turn on gradually if MCU is over 45 °C or any TMC driver is over temp M106 P3 T45:65 F50 H-1 ; set fan 3 value. Thermostatic control is turned off ; Tools M563 P0 D0 H1 F1 ; 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 T0 ; Custom settings are not defined
Homex.g
; homex.g ; called to home the X axis ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue Mar 22 2022 17:37:43 GMT+0100 (Centraleuropæisk normaltid) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X350 F1800 ; move quickly to X axis endstop and stop there (first pass) G1 H2 X3 F6000 ; go back a few mm G1 H1 X350 F360 ; move slowly to X axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
HomeY.g
; homey.g ; called to home the Y axis ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue Mar 22 2022 17:37:43 GMT+0100 (Centraleuropæisk normaltid) G91 ; relative positioning G1 H2 Z2 F6000 ; lift Z relative to current position G1 H1 Y350 F1800 ; move quickly to Y axis endstop and stop there (first pass) G1 H2 Y2 F6000 ; go back a few mm G1 H1 Y350 F360 ; move slowly to Y axis endstop once more (second pass) G1 H2 Z-5 F6000 ; lower Z again G90 ; absolute positioning
Homez.g
homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue Mar 22 2022 17:37:43 GMT+0100 (Centraleuropæisk normaltid) G91 ; relative mode G1 H2 Z4 F200 ; raise head 4mm to ensure it is above the switch trigger height G90 ; back to absolute mode G1 X0 Y0 F2000 ; put the head wherever you want it to be when you home Z (omit this line if it doesn't matter) G91 ; relative mode G1 H1 Z-200 F100 ; move Z down until the switch triggers G90 ; back to absolute mode G92 Z0.3 ; tell the firmware that we are at Z=0.3mm
Homeall.g
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.3.10 on Tue Mar 22 2022 17:37:43 GMT+0100 (Centraleuropæisk normaltid) 91 ; relative mode G1 H2 Z4 F200 ; raise head 4mm G1 H1 X350 Y350 F3000 ; move up to 240mm in the -X and -Y directions until the homing switches are triggered G1 H2 X4 Y4 F600 ; move slowly 4mm in +X and +Y directions G1 H1 X-10 Y-10 ; move up to 10mm in the -X and -Y directions until the homing switches are triggered G90 ; back to absolute mode G1 X100 Y100 F2000 ; put head over the centre of the bed, or wherever you want to probe G30 ; lower head, stop when probe triggered and set Z to trigger height ; Uncomment the following lines to lift Z after probing ;G91 ; relative positioning ;G1 S2 Z5 F100 ; lift Z relative to current position ;G90 ; absolute positioning ; Uncomment the following lines to lift Z after probing ;G91 ; relative positioning ;G1 Z5 F100 ; lift Z relative to current position ;G90 ; absolute positioning
-
-
@heide said in Z-drives not moving, new Duet3:
M669 K1 Z3 ; select CoreXY mode
You have your machine set to 'linear delta', not Core XY.Incorrect, see later.See https://docs.duet3d.com/en/User_manual/Reference/Gcodes/M669
Ian
-
@droftarts I does not work. I have also tried K2 Z1, and K2 Z3 and K1 Z3.
Now it is K1 Z1.
Instead of going down, the X and Y moves very slowly towars -X and -Y
; General preferences
M575 P1 S1 B57600 ; enable support for PanelDue
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"My Printer" ; set printer name
M669 K1 Z1 ; select CoreXY mode; Wait a moment for the CAN expansion boards to start
G4 S2; Network
M552 P192.168.0.110 S1 ; enable network and acquire dynamic address via DHCP
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 -
New homeZ and homeAll
When I use homeall, it works until it reaches the Z code
HomeZ.g
G91 ; relative mode
G1 H2 Z4 F200 ; raise head 4mm to ensure it is above the switch trigger height
G90 ; back to absolute mode
G1 X-5 Y-100 F2000 ; put the head wherever you want it to be when you home Z (omit this line if it doesn't matter)
G91 ; relative mode
G1 H1 Z-200 F100 ; move Z down until the switch triggers
G90 ; back to absolute mode
G92 Z0.3 ; tell the firmware that we are at Z=0.3mmHomeall.g
G91 ; relative mode
G1 H1 X-240 Y-240 F3000 ; coarse home X or Y
G1 H1 X400 ; coarse home X
G1 H1 Y400 ; coarse home Y
G1 X4 Y4 F600 ; move away from the endstops
G1 H1 X-100 ; fine home X
G1 H1 Y-5 ; fine home Y
G1 H2 Z4 F200 ; raise head 4mm to ensure it is above the switch trigger height
G90 ; back to absolute mode
G1 X0 Y0 F2000 ; put the head wherever you want it to be when you home Z (omit this line if it doesn't matter)
G91 ; relative mode
G1 H1 Z-200 F100 ; move Z down until the switch triggers
G90 ; back to absolute mode
G92 Z0.3 ; tell the firmware that we are at Z=0.3mm -
@heide Sorry, my answer was incorrect. You don't need the Z parameter on M669. Just use:
M669 K1 ; select CoreXY mode
Edit:
If I send it with the Z parameter, I get:M669 K1 Z3 Error: Invalid kinematics matrix
Send M669 on it's own to check the kinematics in use. Should show:
M669 Kinematics is CoreXY, no segmentation, matrix: 1.00 1.00 0 1.00 -1.00 0 0 0 1.00
Ian
-
@droftarts Does not work (K1), now it is just making a rumbling sound.
K1 Z3 thats also what the RRF for coreXY has. But not working
-
25.3.2022 14.42.15 M669
Kinematics is CoreXY, no segmentation, matrix:
1.00 1.00 0
1.00 -1.00 0
0 0 1.00 -
With Z3
25.3.2022 14.43.33 M669
Kinematics is CoreXY, no segmentation, modified matrix:
1.00 1.00 0
1.00 -1.00 0
3.00 0 0 -
@heide said in Z-drives not moving, new Duet3:
With Z3
25.3.2022 14.43.33 M669
Kinematics is CoreXY, no segmentation, modified matrix:
1.00 1.00 0
1.00 -1.00 0
3.00 0 0You don't want the Z to move 3 times what X is moving, and not move with Z, which is what that shows. Use
M669 K1
, it's correct. If Z is rumbling, sound more like the motors are blocked from moving mechanically.K1 Z3 thats also what the RRF for coreXY has. But not working
Where did this come from? It's not what the configuration tool produces.
Ian
-
@droftarts After the build and lining the linear rails. I could move the gantry with my little finger. After I have assembled it with belts I can move it without any problems (there are resistance, but nothing out of the ordinary) . I am positive that there are no tight assembly.
But maybe the assemble of the wire on the motor is wrong??? I change it the other day for all the motors. But there not any problems with the X and Y.
-
I forgot about the K1 Z3. It is from the configuring of RRF for coreXY printer. I can not remember what the original code was from Config tool. But I will try with the tool again
-
This is when homing Z.
But I would think that it's normal, when not homed
-
I have tried to move the gantry up and down (I'm not happy doing that, but I wanted to be sure that there are normal movement), and it feels as it should
-
If I use this command it gantry moved up, without any problem.
G91
G1 H2 Z300 F3000 -
@heide I've edited your first post to put your config and homing files in code tags, which makes it easier to read and find the relevant bits.
I think this is an endstop issue. Your Z homing is using two methods:
When you call 'homez.g', it uses an endstop switch, and it is configured to trigger at the MINIMUM Z, ie when the nozzle touches the bed, with
M574 Z1 S1 P"io3.in"
. Is this correct? The homing move isG1 H1 Z-200 F100
, so it's moving the bed up. Also, a quirk of homing is that it relies on the M208 settings; currently you have the Z maximum set toM208 Z300
, so it's possible for the Z axis to move and not hit the endstop. This may also cause homing to fail.When you call 'homeall.g', it's using the Z probe. homeall.g should work correctly, assuming the probe is configured correctly.
The comments in the config.g are slightly confusing. It talks about moving Z up and down. But this is based on a machine that moves the nozzle in Z, eg Prusa i3. For a CoreXY, think of it 'Z up' as 'increasing the distance between bed and nozzle' and vice versa for 'Z down'.
Edit: Sorry, I see in your later edit to homez.g and homeall.g that you are using just endstops, not probe.
-
@heide Can you describe where your Z endstop is? Is it the same as the Z probe? If so, you just want to use G30 for homing Z, not command a move.
Ian
-
@droftarts the endstop is not assigned as the probe. It's placed near the bed.
I have tested it, and it works.@droftarts said in Z-drives not moving, new Duet3:
hen you call 'homez.g', it uses an endstop switch, and it is configured to trigger at the MINIMUM Z, ie when the nozzle touches the bed, with M574 Z1 S1 P"io3.in". Is this correct? The homing move is G1 H1 Z-200 F100, so it's moving the bed up. Also, a quirk of homing is that it relies on the M208 settings; currently you have the Z maximum set to M208 Z300, so it's possible for the Z axis to move and not hit the endstop. This may also cause homing to fail.
M574 Z1 S1 P"io3.in" correct
Just to be clear the bed is not moving, the gantry is.
I will a just the Z to 400 -
@heide said in Z-drives not moving, new Duet3:
Just to be clear the bed is not moving, the gantry is.
Ah, yes, forgot it was a Voron!
the endstop is not assigned as the probe. It's placed near the bed.
I realise that now, looking at the assigned pins for Z endstop and probe. However, if you have a probe, and you can home with that, what is the function of the endstop? It would be better to have it at the top of the machine, furthest from the bed. That way, in the event of a loss of power, you can home Z to the top, and continue printing. Home at the bottom, and you're more likely to hit the print.
I will a just the Z to 400
Yes, just needs to be bigger than the value set by M208.
Ian
-
@droftarts I learn all the time, but that make sens somehow. But I my case it does not matter witch one I use. I does not move at all. It moves when I punch in this code
G91
G1 H2 Z300 F3000 -
@heide Hmm. I think that as that works, it's got to be a configuration issue. Can you post your current config.g, homez.g and homeall.g, preferably in code tags </> on the editing bar. Also post response to
M122
andM98 P"config.g"
Ian