2 Z motor setup help



  • I know this has been hashed over 1000 time already..

    But I have read many messages about the subject, and I'm still a little confused
    I just received a duet maestro and have 2 z motors and a pizeo on the hotend
    so would like to use the probe to home Z also looked at the doc file setting up 3 or 2 z motors
    it doesn't show adding another P569.
    do I need to add another motor M569 P3 or P4 S1 ; Physical drive 3 goes forwards
    I plan on using E1 for the second drive and pizeo for probing and Z end stops.

    Any suggestion? I am running the latest firmware last version released.

    Thanks gary



  • You also need to use M584 to map the drivers if you want to use non-default assignments.



  • so something like this
    M584 X0 Y1 Z2:4 E3 ;
    Hopefully the second Z would be on E1
    Gary



  • Yeah that looks right. Then when you set up your dual lead screws make sure everything is listed in the same order as that command.



  • So does this like close to being usable
    Piezo Z probe for Z homing also.

    ; Configuration file for Duet WiFi (firmware version 1.21)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Tue Jul 02 2019 13:29:03 GMT-0400 (Eastern Daylight Time)

    ; General preferences
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves

    ; Network
    M550 P"mycartiesan" ; Set machine name
    M552 S1 ; Enable network
    ;*** Access point is configured manually via M587
    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 forwards
    M350 X32 Y32 Z32 E32 I0 ; Configure microstepping without 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 X800.00 Y800.00 Z800.00 E800.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ;Dual Z
    M584 X0 Y1 Z2:4 E3 ; two Z motors connected to driver outputs Z and E1
    M671 X-20:330 Y0:0 S0.5 ; leadscrews at left and right of X axis
    M208 X-5:325 Y0:325 ; X carriage moves from -5 to 205, Y bed goes from 0 to 200
    ;

    ; Axis Limits
    M208 X0 Y0 Z0 S1 ; Set axis minima
    M208 X330 Y330 Z330 S0 ; Set axis maxima

    ; Endstops
    M574 X1 Y1 Z1 S1 ; Set active high endstops

    ; Z-Probe
    M558 P5 R0.4 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 X15:300 Y15:300 S20 ; Define mesh grid

    ; Heaters
    M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120 ; Set temperature limit for heater 0 to 120C
    M305 P1 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280 ; Set temperature limit for heater 1 to 280C

    ; Fans
    M106 P0 S0 I0 F500 H1 T45 ; Set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned on
    M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on

    ; Tools
    M563 P0 D0 H1 ; 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

    ; Automatic saving after power loss is not enabled

    ; Custom settings are not configured

    Thanks gary



  • @gorf26 I just stumbled across this thread and have taken a quick look at your config.g file. A couple of things leapt out at me.

    You've set micro-stepping for 32X in your M350 but then on the next line you've put the steps per mm in at values which look very much like 16X. So you either need to set micro-stepping to 16X (and I recommend you do that plus use I1 to turn on interpolation), or you need to double or the steps per mm. For future reference, if you reverse the order of those commands (i.e, put the M92 steps per mm before the M350 micro-step[ping) then you just set the micro-stepping for 16X and if you then change the M350 micro-stepping setting, the firmware will automatically re-calculate the steps per mm.

    You've set the axis limits for X and Y using "M208 X-5:325 Y0:325 ;" which is fine but then just under that you've set them again using M208 X0 Y0 Z0 S1 ; Set axis minima and M208 X330 Y330 Z330 S0 ; Set axis maxima. These values will override the previous ones.

    Also you commented in the file that "X carriage moves from -5 to 205, Y bed goes from 0 to 200". Either the comment is wrong or the values are wrong. If that comment is true, then you need to set the axes minima and maxima to those values and not 0 to 330 for all 3 axes. Also the mesh grid would need to be changed if you do change the axes maxima.

    Fan 0 (M106 P0) is usual the part cooling fan - the one that is controlled by slicer generated M106 commands. But you have it set to come on thermostatically when the hot end heater reaches 45 deg C (the same as your hot end heat sink fan). If you want fan 0 to be the part cooling fan, then use something like M106 P0 S0 I0 F500 H-1.

    I can't comment on your probe settings as I don't use a piezo. The rest of you settings look reasonable although I would set extruder jerk very much higher but as it is, the worse that can happen is that it might slow down your prints a bit if you try and ramp the speed up.



  • Thanks made some changes not sure if the not sure if the m280 is set right
    Also do I need to add any motors to the m350 m92 one for the E1 motor? do I use U ?
    or am I good as is?

    ; Configuration file for Duet WiFi (firmware version 1.21)
    ; executed by the firmware on start-up
    ;
    ; generated by RepRapFirmware Configuration Tool v2 on Tue Jul 02 2019 13:29:03 GMT-0400 (Eastern Daylight Time)

    ; General preferences
    G90 ; Send absolute coordinates...
    M83 ; ...but relative extruder moves

    ; Network
    M550 P"mycartiesan" ; Set machine name
    M552 S1 ; Enable network
    ;*** Access point is configured manually via M587
    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 forwards
    M350 X16 Y16 Z16 E16 I1 ; Configure microstepping without 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 X800.00 Y800.00 Z800.00 E800.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    ;Dual Z
    M584 X0 Y1 Z2:4 E3 ; two Z motors connected to driver outputs Z and E1
    M671 X-20:330 Y0:0 S0.5 ; leadscrews at left and right of X axis

    ; Axis Limits
    M208 X-5:325 Y0:325 Z0:325 ; X carriage moves from -5 to 325, Y bed goes from 0 to 325 Z from 0 to 325
    ;
    ;M208 X0 Y0 Z0 S1 ; Set axis minima
    ;M208 X330 Y330 Z330 S0 ; Set axis maxima

    ; Endstops
    M574 X1 Y1 Z1 S1 ; Set active high endstops

    ; Z-Probe
    M558 P5 R0.4 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 X10:300 Y10:300 S20 ; Define mesh grid

    ; Heaters
    M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120 ; Set temperature limit for heater 0 to 120C
    M305 P1 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280 ; Set temperature limit for heater 1 to 280C

    ; Fans
    M106 P0 S0 I0 F500 H-1 ; Set fan 0 value, PWM signal inversion and frequency
    M106 P1 S1 I0 F500 H1 T45 ; Set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on

    ; Tools
    M563 P0 D0 H1 ; 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

    ; Automatic saving after power loss is not enabled

    ; Custom settings are not configured

    Thanks gary



  • @gorf26 said in 2 Z motor setup help:

    Thanks made some changes not sure if the not sure if the m280 is set right
    Also do I need to add any motors to the m350 m92 one for the E1 motor? do I use U ?
    or am I good as is?
    ............

    I guess you meant M208 and not M280 but yes, if the new comment about axis movement s correct, then the minima and maxima are correct.

    M350 and M92 are on a per axis and per extruder basis so no, you don't need to add anything to what you have. It can get a little confusing if you have multiple extruders mapped to multiple drives but you don't have to worry about that. Your single extruder is referred to as D0 in your tool definition because it's the first and only extruder drive you've mapped in M584.



  • Thanks for your help I guess I will go and see how the printer reacts to the new config,
    of course it will be the first test👌

    never tested the pizeo either most likely will be an adventure

    Gary



  • I finally got things connected and have run the duet web.
    I haven't tested motors and heaters yet but wanted to check on a couple things
    The probe in duet web shows 1000 and then 0 when tapped is this correct
    also the bed thermistor shows 9.3 %c that doesn't seem correct.. its a 120v keenovo
    heater...

    Thanks gary



  • @gorf26 said in 2 Z motor setup help:

    M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0
    M305 P1 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 1

    B4138 is the defaul value in the configurator. this value will almost certainly be wrong for you.
    you need to find out which thermistor your hotend and bed are using. then look up the beta values for those thermistors.



  • ; Heaters
    M305 P0 T100000 B3950 R25 ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120 ; Set temperature limit for heater 0 to 120C
    M305 P1 T100000 B4725 C7.060000e-8 R4700 ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280

    does this look close not sure of the r or c values for the bed
    I think its an ntc 100k
    hot end is a ed3 v6..

    Thanks gary



  • @gorf26

    I made these changes and seem to be getting a close temp reading when cold 24 - 25c on hot end and bed.
    I have a duet wifi also on my delta and it's been running good for a while and that's around the same cold temp i'm getting there.

    ; Heaters
    M305 P0 T97700 B3950 R2200 ; Set thermistor + ADC parameters for heater 0
    M143 H0 S120 ; Set temperature limit for heater 0 to 120C
    M305 P1 T97700 B4380 R2200 ; Set thermistor + ADC parameters for heater 1
    M143 H1 S280 ; Set temperature limit for heater 1 to 280C

    gary



  • Add I1 to your M558 so the probe signal is low when not triggered and high when triggered.



  • genuine e3d use semtic 104-gt2. the correct settings for that are T100000 B4725 C7.060000e-8



  • Thanks

    I added the I1 works correct now 0 then 1000 when triggered..
    also changed M305 to T100000 B4725 C7.060000e-8
    as suggested works but getting the same cold temp readings as I did with my old settings
    maybe it will read better when I test the heater that's the next step..

    Gary


 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.