LR2 Build with dual endstop on Y and Z

I finalizing the hookup for the LR2 but I am having trouble getting the Z axis to auto level
Z axis is current set to level at the bottom of the travel. But if the gantry is not level the left side goes down and when the endstop switch trips the gantry stop and the right side does not continue down.
I have the right side endstop plugged into the XMax and the right side to Zmax
After reinstalling the firmware many times I now can not get the X and Y axis to home. Using CNCjs If I click the ‘Home’ button both axis move in the positive direction a few inches and just stop. I checked and the switches are not Tripped.
I have tried using [V1CNC_Rambo_Dual] and [V1CNC_Rambo_DualLR] from the Marlin Firmware - V1 Engineering Documentation page with basically the same results with no both

The DualLR firmware is the right firmware, but it needs to home up to the Z endstops, not down. Your Z direction is probably backwards. You can use G38.2 and a probe connected to zmin to get your Z=0 after your have a square Z axis.

Dual axis homing depends on three things:

  1. The endstops beed to be triggered when pressed and open when not. Check with M119. Endstops need to be wired normally closed.
  2. The correct endstop needs to be associated with the correct motor. If motor Z1 is stopped by endstop Z2, then motor Z2 will continue. Zmax is motor 1. Xmax is motor 2. The second Z motor needs to be connected to E1, not the second Z port.
  3. The motor direction needs to go the right way. There needs to be somewhere you can stand where:
    +X is to the right
    +Y is away from you
    +Z is up, away from the spoil board.

It sounds like you have your Z backwards, to make it home down. It needs to home up.


Thank you, I got some of the problems worked out but the Z is still not working.
I am now homing Z to the Top… I have Z1 endstop plugged into the Z Max on the board and Z2 plugged into X Max on the board. When I home Z … at start both show open with M119. As the Z axis goes up if I manually trigger the endstop for Z2 the Axis continue to go up. If I manually trigger the endstop for Z1 the axis stops. M119 show Open on both when not activated and Triggered when activated.
So why does the Z2 side not stop when the endstop is triggered?

What is the exact output from M119?

Thank you I finally got it all hooked up and working!!!
One more question. How come the Z1 side fall down to the wasteboard and not the Z2?
How do I get them both to stay up, so that Z axis does not fall as it will break a bit in the router?

They should both fall with just a little help. On mine, sometimes only one falls when the router (and all the weight) is on one side.

Get in the habit of moving the bit to a safe location. This drop is part of why it is called the low rider. :slight_smile:. You can install 1 start Z leadscrews, but that significantly reduces the Z top speed.

1 Like

OK, thank you for all your help… I can finally start cutting!!


After I run a cut my Gcode all pauses at the top above the last cut. Then I resume, then run a file called “park” That homes Z up, Homes X and Y, then lowers Z all the way down before powering off the steppers.

Ryan, Thank You, Can I please get a copy of your ‘park’ program?

I swear I had it listed somewhere, but can’t find it.

Park.gcode (50 Bytes)

;Project Park

G92 X0 Y0 Z0
G1 Z-80 F900

1 Like

I would suggest:

G0 Z(Whatever Z height is safe to lower to) F900

G28 homes the machine, and moves it to X=0, Y=0, Z=200(I think for the duallr firmware)

G0 Zxxx will lower the gantry, In Ryan’s case, probably this line would be G0 Z120 and would probably lower it to an effective 0 height, unless he’s flashed the firmware to home to Z=80, but the home position really doesn’t mean much in how the machine gets used, since you reset the coordinates to the work piece.

The M84 turns off the motors, and could be omitted.

Some people have put a cradle for the X gantry on their tables, and move the machine over it. This way, they can be sure that they power up their machines with the X gantry square to the Y axis and level in Z. It’s a good trick if you don’t use endstops.

That is odd, you should be right. I home so that is Z=0, driving to z=-80 should be below the table so by default it must be in relative mode. z=-80 is a few mm above the bottom for me.

1 Like

We should specify relative mode.

Add a G91 in there to be safe.

You home up, so Z=200. Your G92, then your G1 Z-80 will always go 80mm lower than your Z endstops. That seems like a smart idea to me (I disagree with Dan).

1 Like

Oh yup, duh, the g92. Good catch.

:rofl: That’s it. We can’t be friends anymore. (kidding!)

There are some things for my build that make it a bit easier to avoid the G92, not the least of which is that I’m using work coordinates, and that my machine coordinates actually are set to the movement envelope of my particular build. Oh, and RRF. Anyway, I can do G1 Z0 F900 and it will go to the bottom of physical travel for Z2 (Z1 can go another 1.61mm) so it’s a good place to leave the machine. If I change out the skate wheels for 608 bearings, I will also update the machine movement envelope, so machine Z=0 will always be within the movement envelope.

Anyway, Ryan’s solution works for him, and that’s the important bit. I think mine would have the same end result, so long as you don’t re-compile the firmware with a new Z endstop position.