Skip to content
firepick1 (localhost) edited this page Aug 30, 2015 · 4 revisions

Latch Backoff Calibration

Latch Backoff refers to the reversed movement executed after a limit switch (i.e., "latch") is tripped. Latch backoff provides a safety margin to prevent unwanted limit switch triggering on high speed moves or loss of steps during jerky motion. In FirePick Delta (FPD), the latch backoff is also used to equalize the manufacturing or assembly variances that would cause the axis limit switches to trip at different angles.

If your machine is symmetrically proportioned and all arms trip at the same angle, you won't need to change the default latch backoff of 200 microsteps.

However, if you suspect that one arm is higher or lower than the others when tripped, you should measure and equalize the arm angles by adjusting the latch backoff for each affected axis. Here we set the x-stepper latch backoff. On FirePick Delta, this would lower the first stepper by 40 steps when homed:

{"xlb":240}

MTO_FPD Calibration

Latch backoff calibration evens out the three FPD primary axes so that they are at the same angle when positioned to the same stepper coordinate.

Step 1. Level your FPD and disconnect the effector arms

Level your FPD by adjusting its feet (paper shims or modeling clay both work) in both X and Y directions. FPD leveling is important because we'll be measuring the plumbness of each arm, which should point directly down at 90 degrees below horizontal.

Disconnect the effector arms to get them out of the way.

Step 2. Position each FPD primary axis to the same angle

There are various ways to position an FPD primary axis to a known angle. For example, it's really easy to point the arms straight down (i.e., 90 degrees) and use a plumb bob to measure the angle. You can also use 3DLC1043 angle calibration tool

First move the stepper axis to about 90 degrees:

{"mova1":90}

If the FPD arm isn't pointing directly down at 90 degrees, just move the arm to a different angle till it is pointing exactly down. The actual FireStep positioning angle is irrelevant, all that matters is that all three physical arms are pointing exactly down at the same angle on the real machine.

Repeat with the next two axes, entering the appropriate position for plumbness:

{"mova2":90}
{"mova3":90}
Step 3. Set individual axis latch backoff

With the arms now at the same angle, print out their stepper coordinates:

{"xpo":"", "ypo":"", "zpo":""}

You will get something like this:

{"s":0, "r":{"xpo":7491,"ypo":7583,"zpo":7491},"t":0.000}

Here we see that the x-arm and z-arm are already at the same position, but the y-arm is positioned 42 steps more than the other two. To address this, we simply take the excess and add it to the latch backoff for that axis. Since the default latch backoff is 200, we need to set the y-arm latch backoff to 242:

{"ylb":242}

Test your latch backoff settings by homing the machine:

{"hom":""}
Step 4. Set autoHome and save your configuration

Enabling autoHome on startup is an important safety step that ensures your machine knows its own position on startup. Sometimes you will want to disable autoHome especially when debugging a startup problem. However we have just tested homing, so this should be safe:

{"sysah":true}

Toggle the auto-sync flag to save your configuration.

{"sysas":true}
{"sysas":false}

Your machine should now have its arms pointing at the same angle for any position along the Z-axis.

See Also