Inverted Axis Questions

I'm adding inverted axis support to my plugin due to a few requests and for completeness, but am not sure exactly how this affects things.

I looked in the Octoprint control tab and tried some movements with the axis inverted, and noticed that the sign of the relative movement switched. For example, to raise the Z axis by 10 MM in relative axis mode a G1 Z-10 was sent. This makes sense to me, but I can't test the other features (to my knowledge) like homing and absolute axis moves, so that brings me to my questions:

  1. Is there any way to invert specific axes within the virtual printer for testing?
  2. If the homed coordinates of a printer is x0 y0 z0, what are the homed coordinates of a printer with all 3 axes inverted if the build area is say 100x100x100?
  3. Are absolute movements affected by inversion? If so, would X=0 be at the right side of the bed (as opposed to X=0 being at the left for a non-inverted axis)? Similarly would Z=0 indicate that the Z axis was fully raised(or the bed fully lowered)?

In the current version of Octolapse, both relative and absolute commands can be sent by Octolapse, so I really need to get this right, else all hell will break loose :slight_smile: Thanks for your input in advance!

So the inversion is used ONLY to match people's expectations on how the printer will move to the arrows on the control panel. For example, if someone has a printer where the bed itself moves, It's reasonable to expect that clicking the down arrow within the control panel will move the bed down. However, by default clicking down moves the extruder closer to the bed, which is logical but counter to one's expectation. Similarly if the X axis moves the entire gantry, clicking left has the effect of moving the extruder towards the left edge of the bed, but in this case the bed itself will move to the right, again counter to one's intuition. Axis inversion simply adjusts the the gcode to match our expectations about the movement direction.

In short, Octolapse needs no adjustment for axis inversion at all, since it has no UI controls that indicate a movement direction. It's ONLY used for aligning one's expectations with the movement of the printer.

Solved (thanks Foosel!)

3 Likes