configuring Dual Z w/ Dual Z endstops....



  • @Veti RR3 runs on Duet 2 ? I thought it required a raspberrypi 3 ? or is that just for a Duet 3 ? and how does one convert working configs ??



  • @dc42 so... Thanks foir the input, use the second link if i stay on RR2, use the first if i decide to go to RR3.... what scares me is the config changes required to get to 3 from 2 when i almost have 2 completely configured properly. 🙂 and RR config doesnt seem to work for RR3.



  • @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

    RR3 runs on Duet 2 ?

    yes

    I thought it required a raspberrypi 3 ?

    no, not even on the duet 3.

    and how does one convert working configs ??

    see
    https://forum.duet3d.com/topic/13630/reprapfirmware-3-0-is-released



  • @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

    and RR config doesnt seem to work for RR3.

    why not?



  • @Veti i tried it, wouldnt let me download anything.



  • @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

    tried it, wouldnt let me download anything.

    works for me. did you forget to add the io mapping?



  • @Veti must have been cashed in the browser.... ok went through it again i see 3 issues..... doesnt appear to let me map E1 to Z2 ... manual edit i guess, hrmm hows the second Z stop get configured LOL 🙂 kill me now... ok ok putting on the patience hat.... and second BLtouch is blanked out 🙂 ... i generated what i could for V3 lemme start manually editing to match what i had for v2 ......



  • @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

    and second BLtouch is blanked out

    you need to assign PWM Control Channel (BLTouch only) in io mapping

    dual z stop is explained here
    https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_RepRapFirmware_Num_3



  • @Veti wow this config is really confusing now.....

    rr2 config.g
    ; Drives
    M569 P0 S0 ; physical drive 0 goes forwards
    M569 P2 S1 ; physical drive 2 goes forwards
    M569 P1 S1 ; physical drive 1 goes forwards
    M569 P3 S0 ; physical drive 3 goes forwards
    M569 P4 S0 ; physical drive 4 goes forwards
    M584 X0 Y2 Z1:4 E3 ; set drive mapping
    M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z800.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 Y800 Z800 E800 I80 ; 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 X350 Y350 Z850 S0 ; set axis maxima

    ; Endstops
    M574 X1 Y1 Z1 S0 ; set active low and disabled endstops

    rr3 config (makes no sense) (M584 X0 Y2 Z1 E3:4 should be M584 X0 Y2 Z1:4 E3 )

    ; Drives
    M569 P0 S1 ; physical drive 0 goes forwards
    M569 P2 S0 ; physical drive 2 goes backwards
    M569 P1 S0 ; physical drive 1 goes backwards
    M569 P3 S1 ; physical drive 3 goes forwards
    M569 P4 S0 ; physical drive 4 goes backwards
    M584 X0 Y2 Z1 E3:4 ; set drive mapping
    M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z800.00 E420.00:420.00 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00 E1200.00:1200.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00 E250.00:250.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800 E800:800 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 X350 Y350 Z850 S0 ; set axis maxima

    ; Endstops
    M574 X1 S0 P"xstop" ; configure active-low endstop for low end on X via pin xstop
    M574 Y1 S0 P"zstop" ; configure active-low endstop for low end on Y via pin zstop
    M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop



  • @dingo007 me thinks i see what its doing. it should be
    ; Drives
    M569 P0 S0 ; physical drive 0 goes forwards
    M569 P2 S1 ; physical drive 2 goes backwards
    M569 P1 S1 ; physical drive 1 goes backwards
    M569 P3 S0 ; physical drive 3 goes forwards
    M569 P4 S0 ; physical drive 4 goes backwards
    M584 X0 Y2 Z1:4 E3 ; set drive mapping
    M350 X16 Y16 Z16:16 E16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z800.00:800.00 E420.00 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00:12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00:180 E1200.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00:20.00 E250.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800:800 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 X350 Y350 Z850 S0 ; set axis maxima

    ; Endstops
    M574 X1 S0 P"xstop" ; configure active-low endstop for low end on X via pin xstop
    M574 Y1 S0 P"zstop" ; configure active-low endstop for low end on Y via pin zstop
    M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop



  • @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

    rr3 config (makes no sense) (M584 X0 Y2 Z1 E3:4 should be M584 X0 Y2 Z1:4 E3 )

    yes change it. thats the manual change that you did.



  • @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

    M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop

    now add your second stop like this
    M574 Z1 S0 P"ystop+e0stop" ; configure active-low endstop for low end on Z via pin ystop



  • @Veti
    And below where it states, makes completely no sense to my brain, can someone explain ?
    You must use the M671 command to define the X and Y coordinates of the leadscrews
    where my left and right Z screws are at 225 to the bed which is centered of the 450x450 bed

    M671 X-20:220 Y0:0 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
    M208 X-5:205 Y0:200 ; X carriage moves from -5 to 205, Y bed goes from 0 to 200



  • @Veti said in configuring Dual Z w/ Dual Z endstops....:

    M574 Z1 S0 P"ystop+e0stop" ; configure active-low endstop for low end on Z via pin ystop

    Im using Y and E1 so.....
    M574 Z1 S0 P"ystop+e1stop" ; configure active-low endstop for low end on Z via pin ystop



  • @dingo007 i guess its..... ???

    M671 X0:250 Y0:250 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
    M208 X0:250 Y0:250 ; X carriage moves from 0 to 250, Y carraige goes from 0 to 250



  • @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

    M671 X0:250 Y0:250 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis

    what are you trying to do now? dual z endstop or independent leveling?
    thats only needed for the second one.





  • final RR3 config
    config.g
    ; Drives
    M569 P0 S1 ; physical drive 0 goes forwards
    M569 P2 S0 ; physical drive 2 goes backwards
    M569 P1 S0 ; physical drive 1 goes backwards
    M569 P3 S1 ; physical drive 3 goes forwards
    M569 P4 S0 ; physical drive 4 goes backwards
    M584 X0 Y2 Z1:4 E3 ; set drive mapping
    M350 X16 Y16 Z16:16 E16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z800.00:800.00 E420.00 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00:12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00:180.00 E1200.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00:20.00 E250.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800:800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    M671 X0:250 Y0:250 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
    M208 X0:250 Y0:250 ; 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 X350 Y350 Z850 S0 ; set axis maxima

    ; Endstops
    M574 X1 S0 P"xstop" ; configure active-low endstop for low end on X via pin xstop
    M574 Y1 S0 P"zstop" ; configure active-low endstop for low end on Y via pin zstop
    ;M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop
    M574 Z1 S0 P"ystop+e1stop" ; configure active-low endstop for low end on Z via pin ystop

    bed.g

    ; bed.g
    ; called to perform automatic bed compensation via G32
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.5 on Fri Jan 10 2020 16:18:31 GMT+0700 (Indochina Time)
    M561 ; clear any bed transform
    G29 ; probe the bed and enable compensation
    G28 ; home
    ;M401 ; deploy Z probe (omit if using bltouch)
    G30 P0 X250 Y250 Z-99999 ; probe near a leadscrew, half way along Y axis
    G30 P1 X250 Y250 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
    ;M402 ; retract probe (omit if using bltouch)



  • did you try homing?



  • @Veti not yet, waiting for a print to finish before i reflash to 3.x



  • @Veti Okay so it doesnt home Z the way i would think. 1 end stop per Z axis .... cut the motor per side when end stop triggered. the right (Y) Z end stop both from movement, where i would think the opposite side would continue to move until its end stop was triggered.

    config.g
    ; Drives
    M569 P0 S0 ; physical drive 0 goes forwards
    M569 P2 S1 ; physical drive 2 goes backwards
    M569 P1 S1 ; physical drive 1 goes backwards
    M569 P3 S0 ; physical drive 3 goes forwards
    M569 P4 S1 ; physical drive 4 goes backwards
    M584 X0 Y2 Z1:4 E3 ; set drive mapping
    M350 X16 Y16 Z16:16 E16 I1 ; configure microstepping with interpolation
    M92 X80.00 Y80.00 Z800.00:800.00 E420.00 ; set steps per mm
    M566 X900.00 Y900.00 Z12.00:12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
    M203 X6000.00 Y6000.00 Z180.00:180.00 E1200.00 ; set maximum speeds (mm/min)
    M201 X500.00 Y500.00 Z20.00:20.00 E250.00 ; set accelerations (mm/s^2)
    M906 X800 Y800 Z800:800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
    M84 S30 ; Set idle timeout

    M671 X0:250 Y0:250 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
    M208 X0:250 Y0:250 ; 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 X350 Y350 Z850 S0 ; set axis maxima

    ; Endstops
    M574 X1 S0 P"xstop" ; configure active-low endstop for low end on X via pin xstop
    M574 Y1 S0 P"zstop" ; configure active-low endstop for low end on Y via pin zstop
    ;M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop
    M574 Z1 S0 P"ystop+e1stop" ; configure active-low endstop for low end on Z via pin ystop

    ; Z-Probe
    M558 P1 C"zprobe.in+zprobe.mod" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds
    G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height
    M557 X15:215 Y15:195 S20 ; define mesh grid

    bed.g
    ; bed.g
    ; called to perform automatic bed compensation via G32
    ;
    ; generated by RepRapFirmware Configuration Tool v2.1.5 on Fri Jan 10 2020 16:18:31 GMT+0700 (Indochina Time)
    M561 ; clear any bed transform
    G29 ; probe the bed and enable compensation
    G28 ; home
    ;M401 ; deploy Z probe (omit if using bltouch)
    G30 P0 X250 Y250 Z-99999 ; probe near a leadscrew, half way along Y axis
    G30 P1 X250 Y250 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
    ;M402 ; retract probe (omit if using bltouch)



  • this has to be answerd by dc


Log in to reply