jcrocholl/Marlin — pull request #1 by pranjalv123 (2012-10-22 02:36:55+00:00)
Title: Make sure all cartridges home at the same rate.

On the current master, if I send a gcode command telling the robot to go outside the area it can actually print, it gives bad behaviour that mechanically stresses the mechanisms.

So I tried to constrain the X/Y/Z cartesian axes with {X/Y/Z}_{MIN/MAX}_POS, so that the deltabot doesn't try to go outside the valid build area. This works well - the robot won't go outside a safe range. But, the homing code sets the destinations of the *cartridges* based on the MIN/MAX_POS, which I'm using to limit the *cartesian* coordinates. This means that the X and Y cartridges (cartridges attached to the X and Y motor ports on the controller) home at a different speed than the Z cartridge.

So I used the assumption that the MAX_Z_POS - MIN_Z_POS is the length of each of the smooth rods, and I use this for homing each of the cartridges. This fixes the problem.