mirror of
https://github.com/openglow-org/forgefirm.git
synced 2026-09-27 16:51:12 -07:00
baseline: take the fresh-boot reference after the controller applied its config
/mode reports controller=running at the spawn, so the reference dump raced grblHAL's init writes and captured the supervisor's motion-probe values (motor_lock 0, step_freq 10000, y_mode at the module default) instead of the resting state. boot_reference() now waits for the controller's markers (step_freq/motor_lock/y_mode at their fixed values, bounded 20 s, GRBL mode only) plus a 1 s settle before dumping, retakes a saved reference that shows the pre-config state while the boot is still fresh, and marks it otherwise. Tests cover the wait, its timeout, the non-GRBL no-op, the pre-config recognition and the retake.
This commit is contained in:
+7
-1
@@ -1502,7 +1502,13 @@ forgectrl restarts; the fresh-boot dump of this image (uptime 235 s)
|
||||
confirmed the fixed values (`motor_lock 8`, `x/y_mode 8`, `x/y_decay 1`,
|
||||
`step_freq 28160` - the controller's tick, not the probe's 10000 -
|
||||
`ramp_rate 125000`, hold currents 33/5, lamps and button LEDs 0, heater
|
||||
and TEC off). Proof: k1-k2 / k3 / fire-abu re-run under the baseline -
|
||||
and TEC off). A reference dumped at uptime 30 s on 2026-08-16 showed the
|
||||
probe values instead (`motor_lock 0`, `step_freq 10000`, `y_mode 1`): the
|
||||
dump raced the controller's init writes - `/mode` reports `running` at the
|
||||
spawn, not at the config - so `boot_reference()` now waits for the
|
||||
controller's markers (`step_freq`/`motor_lock`/`y_mode` at their fixed
|
||||
values, bounded 20 s) before dumping, and retakes a pre-config reference
|
||||
while the boot is still fresh. Proof: k1-k2 / k3 / fire-abu re-run under the baseline -
|
||||
counters (0,0,0) before and after, the probe verified in 3 s after every
|
||||
takeover, no ladder, `post: clean` every time. (2) Two forgectrl items
|
||||
for the operator's decision, not changed: the liveness probe should write
|
||||
|
||||
Reference in New Issue
Block a user