Upgrade from Duet 2 wifi to Duet 3 6hc config Issues
-
@Alijambo73 which firmware version are you using?
What changes did you make to your config.g and homing files when switching to the 6HC?
When you attempt to home all, do X and Y home correctly?
-
@dc42 Im using 3.5.2.
I used the config tool and then tweaked the errors I saw (fixing the endstops and motor mapping for the daul motors) and messed with the laser and spindle.
When I home all x and y do home corectly but z is the same as home z.
-
@Alijambo73 said in Upgrade from Duet 2 wifi to Duet 3 6hc config Issues:
> G1 H1 'z{-var.maxTravel} F1800 ; coarse home in the -z direction
Could it be, that the " ' " before the z parameter is the problem?
-
@cosmowave I took the " ' " out but it didn't solve the problem.
-
@dc42 Any other ideas?
-
@Alijambo73 In your M584 you have not defined extra 'y and 'z axes:
; Axis M584 X0.0 Y0.1:0.3 Z0.2:0.4 ; set axis mapping
You only have X, Y and Z axes, and your Y and Z axes have already combined the two motors on each axis. So (as @jumpedwithbothfeet said earlier) you shouldn't define values for the non-existant 'y and 'z axes in the following, or anywhere else in config.g or homing macros:
M350 X16 Y16 Z16 'y16 'z16 I1 ; configure microstepping with interpolation M906 X800 Y800 Z800 'y800 'z800 ; set axis driver currents M92 X100 Y100 Z400 'y100 'z400 ; configure steps per mm M566 X900 Y900 Z12 'y900 'z12 ; set maximum instantaneous speed changes (mm/min) M203 X6000 Y6000 Z180 'y6000 'z180 ; set maximum speeds (mm/min) M201 X1500 Y1500 Z60 'y1500 'z60 ; set accelerations (mm/s^2)
Your homeall.g macro calls these axis macros at the end:
M98 P"home'y.g" ; home y axis M98 P"home'z.g" ; home z axis
So the reported error may be in those macros, probably. Also, homey.g and homez.g will be called afterwards, if Y and Z are not homed at the end of those. Have homing macros called 'homey.g' and 'homez.g', and remove the home'y.g and home'z.g macros.
For the tool issue, you are calling M452 twice in config.g to set laser mode, and also setting T0 at the end, when you have no T0, only T1 and T2:
M563 P1 S"Makita R0701C" R0 ; create tool #0 ... M563 P2 S"Laser"
I can't remember how tools are shown in Laser mode. I'm not sure they are, as you can have only one. See https://docs.duet3d.com/en/User_manual/Machine_configuration/Configuration_laser
Ian
-
So should my M584 line be like this?
M584 X0.0 Y0.1 Z0.2 'y0.3 'z0.4
-
@Alijambo73 how many axes does your machine have? If it's just the standard X Y and Z then do not use the ' character at all when you refer to them.
-
@dc42 just X, Y & Z. Y and Z have dual motors with dual endstops.
-
@Alijambo73 took out all of the ' refrences do now it is like this
; Smart Drivers M569 P0.0 S0 D2 ; driver 0.0 goes backwards (X axis) M569 P0.1 S0 D2 ; driver 0.1 goes backwards (Y axis) M569 P0.2 S0 D2 ; driver 0.2 goes forwards (Z axis) M569 P0.3 S1 D2 ; driver 0.3 goes forwards (y1 axis) M569 P0.4 S0 D2 ; driver 0.4 goes forwards (z1 axis) ; Motor Idle Current Reduction M906 I30 ; set motor current idle factor M84 S30 ; set motor current idle timeout ; Axis M669 K0 ; set Cartesian kinematics M584 X0.0 Y0.1:0.3 Z0.2:0.4 ; set axis mapping M350 X16 Y16 Z16I1 ; configure microstepping with interpolation M906 X800 Y800 Z800 ; set axis driver currents M92 X100 Y100 Z400 ; configure steps per mm M566 X900 Y900 Z12 ; set maximum instantaneous speed changes (mm/min) M203 X6000 Y6000 Z180 ; set maximum speeds (mm/min) M201 X1500 Y1500 Z60 ; set accelerations (mm/s^2) ; Axis Limits M208 X0 Y0 Z-30 S1 ; set axis minimum M208 X1248 Y2470 Z100 S0 ; set axis maximum
Is this correct?
-
@droftarts I changed home Y and homex I even uncommented line 14 to make sure it wasn't used to see if the errror message would change the line number but I still get the exact same erroe meeage.
-
@Alijambo73 Please post your homeall.g, homex.g, homey.g and homez.g as they currently stand. If you have any other homing macros, post them too.
Ian
-
@droftarts Here are the current home files and config.g.
config.g
; Configuration file for RepRapFirmware on Duet 3 Main Board 6HC ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Mon Sep 09 2024 22:47:07 GMT-0600 (Mountain Daylight Time) ; General G90 ; absolute coordinates M83 ; relative extruder moves M550 P"Duet3CNC" ; set hostname ; Accessories M575 P1 S0 B57600 ; configure PanelDue support ; Smart Drivers M569 P0.0 S0 D2 ; driver 0.0 goes backwards (X axis) M569 P0.1 S0 D2 ; driver 0.1 goes backwards (Y axis) M569 P0.2 S0 D2 ; driver 0.2 goes forwards (Z axis) M569 P0.3 S1 D2 ; driver 0.3 goes forwards (y1 axis) M569 P0.4 S0 D2 ; driver 0.4 goes forwards (z1 axis) ; Motor Idle Current Reduction M906 I30 ; set motor current idle factor M84 S30 ; set motor current idle timeout ; Axis M669 K0 ; set Cartesian kinematics M584 X0.0 Y0.1:0.3 Z0.2:0.4 ; set axis mapping M350 X16 Y16 Z16I1 ; configure microstepping with interpolation M906 X800 Y800 Z800 ; set axis driver currents M92 X100 Y100 Z400 ; configure steps per mm M566 X900 Y900 Z12 ; set maximum instantaneous speed changes (mm/min) M203 X6000 Y6000 Z180 ; set maximum speeds (mm/min) M201 X1500 Y1500 Z60 ; set accelerations (mm/s^2) ; Axis Limits M208 X0 Y0 Z-30 S1 ; set axis minimum M208 X1248 Y2470 Z100 S0 ; set axis maximum ; Kinematics M669 K0 ; configure Cartesian kinematics ; Probes M558 P1 C"io6.in" H5 F120 T6000 ; configure analog probe via slot #0 G31 P850 X0 Y0 Z13.95 ; set Z probe trigger value, offset and trigger height ; Endstops M574 X1 S1 P"io1.in" ; configure X axis endstop via pin io1.in M574 Y1 S1 P"io2.in+io3.in" ; configure active-high endstop for low end on Y via pin io2.in + io3.in M574 Z2 S1 P"io4.in+io5.in" ; configure active-high endstop for high end on Z via pin io4.in + io5.in ;M666 Y+2 ; move Y1 motor -1.5 from block to adjust for square ; Heaters M140 H-1 ; disable heated bed (overrides default heater mapping) M141 H-1 ; Spindles M950 R0 C"out9" Q1000 L10000:30000 ; configure spindle #0 M563 P1 S"Makita R0701C" R0 ; create tool #0 M453 ; set to CNC mode ; Lasers ;M950 c"io7.out" S1 Q500 M452 C"io7.out" F500 R255 S1 ; configure Laser port ; Tools M563 P2 S"Laser" ;M568 P0 F0 ; set initial tool #0 active and standby temperatures to 0C ; Miscellaneous M452 ; select Laser mode T0 ; select first tool M308 S10 Y"mcu-temp" A"MCU" M308 S11 Y"drivers" A"Steppers"
homey.g
; home'y.g ; called to home the y axis ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Mon Sep 09 2024 22:47:08 GMT-0600 (Mountain Daylight Time) ; increase Z G91 ; relative positioning G1 H2 Z5 ; move Z relative to current position to avoid dragging nozzle over the bed G90 ; absolute positioning ; home y G91 ; relative positioning var maxTravel = move.axes[3].max - move.axes[3].min + 5 ; calculate how far y can travel plus 5mm G1 H1 Y{-var.maxTravel} F3000; coarse home in the -y direction G1 Y5 F7200 ; move back 5mm G1 H1 Y{-var.maxTravel} F3000 ; fine home in the -y direction G90 ; absolute positioning ; decrease Z again G91 ; relative positioning G1 H2 Z-5 F7200 ; move Z relative to current position G90 ; absolute positioning
homex.g
; homex.g ; called to home the X axis ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Mon Sep 09 2024 22:47:08 GMT-0600 (Mountain Daylight Time) ; increase Z G91 ; relative positioning G1 H2 Z5 ; move Z relative to current position to avoid dragging nozzle over the bed G90 ; absolute positioning ; home X G91 ; relative positioning var maxTravel = move.axes[0].max - move.axes[0].min + 5 ; calculate how far X can travel plus 5mm G1 H1 X{-var.maxTravel} F6000 ; coarse home in the -X direction G1 X5 F7200 ; move back 5mm G1 H1 X{-var.maxTravel} F300 ; fine home in the -X direction G90 ; absolute positioning ; decrease Z again G91 ; relative positioning G1 H2 Z-5 F7200 ; move Z relative to current position G90 ; absolute positioning
homez.g
; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Mon Sep 09 2024 22:47:08 GMT-0600 (Mountain Daylight Time) ; increase Z G91 ; relative positioning G1 H2 Z5 ; move Z relative to current position to avoid dragging nozzle over the bed G90 ; absolute positioning ; home Z var xCenter = move.compensation.probeGrid.mins[0] + (move.compensation.probeGrid.maxs[0] - move.compensation.probeGrid.mins[0]) / 2 - sensors.probes[0].offsets[0] var yCenter = move.compensation.probeGrid.mins[1] + (move.compensation.probeGrid.maxs[1] - move.compensation.probeGrid.mins[1]) / 2 - sensors.probes[0].offsets[1] G1 X{var.xCenter} Y{var.yCenter} F7200 ; go to bed centre G30 ; probe the bed
homeall.g
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Mon Sep 09 2024 22:47:08 GMT-0600 (Mountain Daylight Time) ; increase Z G91 ; relative positioning G1 H2 Z5 F7200 ; move Z relative to current position to avoid dragging nozzle over the bed G90 ; absolute positioning ; home XY var XTravel = move.axes[0].max - move.axes[0].min + 5 ; calculate how far X can travel plus 5mm var YTravel = move.axes[1].max - move.axes[1].min + 5 ; calculate how far Y can travel plus 5mm G91 ; relative positioning G1 H1 X{-var.xTravel} Y{-var.yTravel} F6000 ; coarse home in the -X and -Y directions G1 H2 X5 Y5 F7200 ; move back 5mm G1 H1 X{-var.xTravel} Y{-var.yTravel} F300 ; fine home in the -X and -Y directions G90 ; absolute positioning ; home Z var XCenter = move.compensation.probeGrid.mins[0] + (move.compensation.probeGrid.maxs[0] - move.compensation.probeGrid.mins[0]) / 2 - sensors.probes[0].offsets[0] var YCenter = move.compensation.probeGrid.mins[1] + (move.compensation.probeGrid.maxs[1] - move.compensation.probeGrid.mins[1]) / 2 - sensors.probes[0].offsets[1] G1 X{var.xCenter} Y{var.yCenter} F7200 ; go to bed centre G30 ; probe the bed M98 P"home'y.g" ; home y axis M98 P"home'z.g" ; home z axis
-
@Alijambo73 said in Upgrade from Duet 2 wifi to Duet 3 6hc config Issues:
This is line 14 of homez.g:
G1 X{var.xCenter} Y{var.yCenter} F7200 ; go to bed centre
This will give an error if X and Y are not homed already.
In your homeall.g, you still have these two lines:
M98 P"home'y.g" ; home y axis
M98 P"home'z.g" ; home z axisDo you still have these macros in your sys folder? If not, delete them.
Ian
-
@droftarts Thank you for lookinh into this.
I deleted the 2 lines from homeall.g but I still get "Error: in file macro line 14: G1: insufficient axes homed"
If I home X and Y I get " Error: in file macro line 14: G1: target position outside machine limits".Here are the current files for reference
homeall.g
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Mon Sep 09 2024 22:47:08 GMT-0600 (Mountain Daylight Time) ; increase Z G91 ; relative positioning G1 H2 Z5 F7200 ; move Z relative to current position to avoid dragging nozzle over the bed G90 ; absolute positioning ; home XY var xTravel = move.axes[0].max - move.axes[0].min + 5 ; calculate how far X can travel plus 5mm var yTravel = move.axes[1].max - move.axes[1].min + 5 ; calculate how far Y can travel plus 5mm ;G91 ; relative positioning G1 H1 X{-var.xTravel} Y{-var.yTravel} F6000 ; coarse home in the -X and -Y directions G1 H2 X5 Y5 F7200 ; move back 5mm G1 H1 X{-var.xTravel} Y{-var.yTravel} F300 ; fine home in the -X and -Y directions G90 ; absolute positioning ; home Z var xCenter = move.compensation.probeGrid.mins[0] + (move.compensation.probeGrid.maxs[0] - move.compensation.probeGrid.mins[0]) / 2 - sensors.probes[0].offsets[0] var yCenter = move.compensation.probeGrid.mins[1] + (move.compensation.probeGrid.maxs[1] - move.compensation.probeGrid.mins[1]) / 2 - sensors.probes[0].offsets[1] G1 X{var.xCenter} Y{var.yCenter} F7200 ; go to bed centre G30 ; probe the bed
homez.g
; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Mon Sep 09 2024 22:47:08 GMT-0600 (Mountain Daylight Time) ; increase Z G91 ; relative positioning G1 H2 Z5 ; move Z relative to current position to avoid dragging nozzle over the bed G90 ; absolute positioning ; home Z var xCenter = move.compensation.probeGrid.mins[0] + (move.compensation.probeGrid.maxs[0] - move.compensation.probeGrid.mins[0]) / 2 - sensors.probes[0].offsets[0] var yCenter = move.compensation.probeGrid.mins[1] + (move.compensation.probeGrid.maxs[1] - move.compensation.probeGrid.mins[1]) / 2 - sensors.probes[0].offsets[1] G1 X{var.xCenter} Y{var.yCenter} F7200 ; go to bed centre G30 ; probe the bed
config.g
; Configuration file for RepRapFirmware on Duet 3 Main Board 6HC ; executed by the firmware on start-up ; ; generated by RepRapFirmware Configuration Tool v3.5.4 on Mon Sep 09 2024 22:47:07 GMT-0600 (Mountain Daylight Time) ; General G90 ; absolute coordinates M83 ; relative extruder moves M550 P"Duet3CNC" ; set hostname ; Accessories M575 P1 S0 B57600 ; configure PanelDue support ; Smart Drivers M569 P0.0 S0 D2 ; driver 0.0 goes backwards (X axis) M569 P0.1 S0 D2 ; driver 0.1 goes backwards (Y axis) M569 P0.2 S0 D2 ; driver 0.2 goes forwards (Z axis) M569 P0.3 S1 D2 ; driver 0.3 goes forwards (y1 axis) M569 P0.4 S0 D2 ; driver 0.4 goes forwards (z1 axis) ; Motor Idle Current Reduction M906 I30 ; set motor current idle factor M84 S30 ; set motor current idle timeout ; Axis M669 K0 ; set Cartesian kinematics M584 X0.0 Y0.1:0.3 Z0.2:0.4 ; set axis mapping M350 X16 Y16 Z16I1 ; configure microstepping with interpolation M906 X800 Y800 Z800 ; set axis driver currents M92 X100 Y100 Z400 ; configure steps per mm M566 X900 Y900 Z12 ; set maximum instantaneous speed changes (mm/min) M203 X6000 Y6000 Z180 ; set maximum speeds (mm/min) M201 X1500 Y1500 Z60 ; set accelerations (mm/s^2) ; Axis Limits M208 X0 Y0 Z-30 S1 ; set axis minimum M208 X1248 Y2470 Z200 S0 ; set axis maximum ; Kinematics ;M669 K0 ; configure Cartesian kinematics ; Probes M558 P5 C"io6.in" H5 F120 T6000 ; configure analog probe via slot #0 G31 P850 X0 Y0 Z13.95 ; set Z probe trigger value, offset and trigger height ; Endstops M574 X1 S1 P"io1.in" ; configure X axis endstop via pin io1.in M574 Y1 S1 P"io2.in+io3.in" ; configure active-high endstop for low end on Y via pin io2.in + io3.in M574 Z2 S1 P"io4.in+io5.in" ; configure active-high endstop for high end on Z via pin io4.in + io5.in ;M666 Y+2 ; move Y1 motor -1.5 from block to adjust for square ; Heaters M140 H-1 ; disable heated bed (overrides default heater mapping) M141 H-1 ; Spindles M950 R0 C"out9" Q1000 L10000:30000 ; configure spindle #0 M563 P1 S"Makita R0701C" R0 ; create tool #0 M453 ; set to CNC mode ; Lasers ;M950 c"io7.out" S1 Q500 M452 C"io7.out" F500 R255 S1 ; configure Laser port ; Tools M563 P2 S"Laser" ;M568 P0 F0 ; set initial tool #0 active and standby temperatures to 0C ; Miscellaneous M452 ; select Laser mode T0 ; select first tool M308 S10 Y"mcu-temp" A"MCU" M308 S11 P"DRIVER_0" Y"drivers" A"X Driver" M308 S12 P"DRIVER_1" Y"drivers" A"Y Driver" M308 S13 P"DRIVER_3" Y"drivers" A"Y1 Driver" M308 S14 P"DRIVER_2" Y"drivers" A"Z Driver" M308 S15 P"DRIVER_4" Y"drivers" A"Z1 Driver"
-
Can you send M98 P"config.g" in the gcode console and share any errors that result?
-
@Alijambo73 said in Upgrade from Duet 2 wifi to Duet 3 6hc config Issues:
M350 X16 Y16 Z16I1 ; configure microstepping with interpolation
You're missing a space between the Z16 and I1
-
@Alijambo73 said in Upgrade from Duet 2 wifi to Duet 3 6hc config Issues:
;G91 ; relative positioning
In your homeall you should not comment out that G91. You want to be in relative mode for those X Y homing moves.
-
@Phaedrux I made the 2 changes. When I enter M98 P"config.g" into the console it just shows M98 P"config.g" with a green background and does not report any errors.
-
Can you send M122 in the console and share the report here?
Are you still getting that error message when homing?
How are you triggering the homing?