G92 Problem

I have a Ramps 1.4 with 5 stepper drivers and dual endstops. The homing works great. (Except of the M666 command, which doesn't work, but that's not a big problem, I aligned the endstops and now it's in perfect angle.)
But when I set the X (or Y or Z, all three axis) axis to 0 (with G92 X0) and move some milimeters, the mpcnc moves further.
I've tried all two versions avaliable on the Github repository, the only things I've changed are the DEFAULT_AXIS_STEPS_PER_UNIT and to disable the ReapRapDiskont Display.
Made a short video to show:

Try repetier and see if it still happens, it seems like pronterface is adding your two current moves. I am not sure I have not used that in many years.

The only part of that that doesn’t make sense is the move command, and that didn’t print. It looks like prontoneer is keeping track of it’s own copy of x and adding 10, and sending 110. Can you try typing G00 X10 instead of the button?

I tried it with Repetier and with only typing the commands. Same as in the video. My printer (runs on Smoothieware) works like expected.

1 Like


I don’t have the hardware to run dual motors right now. I can look at the code tonight though. Can you paste a zip of exactly your code?

Are there any other dual endstop users that can confirm this? Seems like one of the first problems they would find.

It’s not some absolute/relative problem is it? G90/G91?

Thanks for reporting this and the detailed video. This is pretty frustrating, I’m sure.

Here’s my code, only two lines changed, orginal at https://github.com/Allted/Marlin/archive/MPCNC_Ramps_T8_16T_LCD_32step_DualEndstop.zip

I don’t think that it’s a absolute/relative problem, I tried all G90/91 combinations …


Aktuell-Marlin-MPCNC_Ramps_T8_16T_LCD_32step_DualEndstop.zip (3.84 MB)

How does regular gcode run, like my crown file for example?

works like it should.


But I think there is a bug in relative movement AFTER a G92 homing.

Pronterface (at least my version) sends G91 G0 X1 G90 for a 1mm right movement, doesn’t work like it should

Repetier Host works with absolute coordinates, this works.


thanks for your time




Try those 3 commands on separate lines, that is how I have to do it with repetier.

I don’t really think this is a firmware issue, but I guess it could be. If I ever move with the commands I never go back to zero manually. So this could have been a bug forever if it is.

Where does this cause you a problem in real world use, other than testing?

Sorry I read that wrong. So this is a pronterface issue, not firmware or repetier, just pronterface?

My usecase is:

I home the mpcnc

the I use the buttons on Pronterface to move to point I want to start routing

I set X and Y = 0

Then I recognize that the starting point is not the right, so I try to move for some mm, but that doesn’t work (with Pronterface)

So, is there a simple gcode set that shows what you’re talking about? Something that should work, but doesn’t work right?

G0 X10
G92 X0
G0 X10 (moves 20, oops)

Something like that? I think that should end up 20mm from home, with a “position” set to 10mm, but the video makes me think your machine would end up 30mm from home, with a position of 20mm. That would seem like a problem in the firmware (although it’s a little academic, and you have a workaround).

exactly, but I know what to do , so nevermind