From 1727b819cb16ef5d645b18b03252dbbafba9e74b Mon Sep 17 00:00:00 2001 From: ScottW514 Date: Sat, 26 Sep 2026 12:08:07 -0400 Subject: [PATCH] homing.manual and the harnesses: the gantry stops by name The parts the manual home rests against are the gantry stops in homing.manual's title and comments, in manual_home_test.py's docstrings, and in a comment of the baseline's hand-back. No check changes. Acceptance: homing.manual's own text changed, inside its function, so no other test's fingerprint moves. manual_home_test.py passes against the driver. --- forgetest/forgetest/baseline.py | 2 +- forgetest/forgetest/suite/motion.py | 6 +++--- scripts/bench/manual_home_test.py | 8 ++++---- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/forgetest/forgetest/baseline.py b/forgetest/forgetest/baseline.py index baa1827..f6e1e10 100644 --- a/forgetest/forgetest/baseline.py +++ b/forgetest/forgetest/baseline.py @@ -895,7 +895,7 @@ class Baseline: # wherever the head then stood. Unless the test said where that was # (ctx.counters_rezeroed), the two readings share no frame: on the # bench reference a head that had not moved was "returned" 30 mm into - # the stop blocks this way, twice. Nothing is moved on a guess. + # the gantry stops this way, twice. Nothing is moved on a guess. frame_lost = ("frame" in captured and captured["frame"] != counter_frame() and not captured.get("rezero_declared")) if was is not None and now is not None and now != was and frame_lost and not self.cloud_mode(): diff --git a/forgetest/forgetest/suite/motion.py b/forgetest/forgetest/suite/motion.py index 46dc6a3..bc752b8 100644 --- a/forgetest/forgetest/suite/motion.py +++ b/forgetest/forgetest/suite/motion.py @@ -1995,7 +1995,7 @@ def motor_release(ctx): "energized with no fault, and the liveness probe and the witnessed jogs say the drivers are alive") -@test("homing.manual", title="Manual home: $H declares the stop-block position and jogs to an offset origin", +@test("homing.manual", title="Manual home: $H declares the gantry-stop position and jogs to an offset origin", subsystem="motion", kind="auto", mode="grbl", est_min=5, covers=_MOTION_COVERS + [("forgectrl", "src/status.*"), ("forgectrl", "src/main.c")], requires=["motion.jog-roundtrip"], @@ -2057,7 +2057,7 @@ def manual_home(ctx): ctx.check(ev["past_envelope"] == "error:15", "a jog past the envelope after the home got %s, not error:15", ev["past_envelope"]) - # With an offset: the head at the blocks is minus it, and $H jogs + # With an offset: the head at the gantry stops is minus it, and $H jogs # it to the origin before it answers. st, body = fc.post("/settings", data={"manual_home_x": "%g" % offset[0], "manual_home_y": "%g" % offset[1]}) @@ -2117,7 +2117,7 @@ def manual_home(ctx): # controller start zeroes them: left like this, the next test # that restarts the controller reads as out of place and the # hand-back "returns" a head that never moved (on the bench - # reference it drove the head into the stop blocks). One more + # reference it drove the head into the gantry stops). One more # start, with the head back, leaves the counters at zero where the # run began, which is what the rest of the catalog counts on. _drop_reference(ctx, fc) diff --git a/scripts/bench/manual_home_test.py b/scripts/bench/manual_home_test.py index 8cced71..8594eaa 100644 --- a/scripts/bench/manual_home_test.py +++ b/scripts/bench/manual_home_test.py @@ -25,8 +25,8 @@ operator's own $ME or a manual $H energizes it: 6. the port's panel operations (release, energize, home) do the same with a sender connected, and the sender's response count stays exact; home is refused unless homing_mode = manual - 7. manual_home_x and manual_home_y: how far in front of the stop blocks - the origin lies, never negative. With an offset the head at the blocks + 7. manual_home_x and manual_home_y: how far in front of the gantry stops + the origin lies, never negative. With an offset the head at the stops is declared at minus it and jogs to the origin, dark, before $H answers, through the sender and through the port; the envelope starts at the origin, and an out-of-range offset is clamped; a jog cancel @@ -393,8 +393,8 @@ def test_restart_while_released(s): def test_stop_block_offsets(s): - """manual_home_x and _y are how far in front of the stop blocks the origin - lies, never negative: the head at the blocks is declared at minus them and + """manual_home_x and _y are how far in front of the gantry stops the origin + lies, never negative: the head at the stops is declared at minus them and jogs to the origin, dark, before $H answers, and the envelope starts at the origin.""" s.sender.wait_state("Idle")