docs(bioreactor-v1): refresh the Pi quickstart against v0.1.40 - #59
Merged
Merged
Conversation
Walked end-to-end on pi-g1 2026-08-03 (fresh wipe, install of v0.1.40, workbench 0.14.0). Corrections, in rough order of how badly they would have misled someone: - **Safety framing.** The guide said actuators are zeroed on stop "only by the automation/full variant's safe-state hooks" and that there is "no software e-stop button yet". Both wrong, and the first is the exact conflation that hid a missing `safety.safe_state` in this project for weeks: `automation.mode_transition_hooks` fire on MODE TRANSITIONS, while `safety.safe_state` is what `POST /v0/estop` runs. The two are now described separately. The e-stop button shipped in workbench v0.14.0. - **Heater gap.** Notes that `bread0/rlht0` is not covered by the software safe state (uint64 hook args, anolishq/anolis#252), so the backplane cut is its only stop if a heater load is connected. - **I2C.** The `raspi-config` line is marked REQUIRED, with the reason: `install.sh` reports "i2c: already enabled" on any Pi with HDMI because its glob matches the DDC buses, then the install fails 30 s later without naming the cause (anolishq/anolis#249). - **Read the exit code, not the banner** — a failed install still prints "Anolis installation complete" above the failure line. - **Versions.** v0.1.38 -> v0.1.40 (install.sh URL, expected pins, the verify step). Adds `--variant manual` so the machine boots inert. - **§5 friction.** `ANOLIS_WORKBENCH_RUNTIME_URL` is load-bearing, not a nicety, and it fixes only the proxy — `/api/status` still reports nothing running, so Operate's chrome stays wrong (anolis-workbench#277). - **Compose.** The "Compose strips safe-state hooks" warning predates the canonical-authoring flip (#255) and has not been re-verified; says so plainly rather than asserting it is either still true or fixed. - Handoff section now lists the four rough edges with their issue numbers. Refs anolishq/anolis#249, anolishq/anolis#252, anolishq/anolis-workbench#255, anolishq/anolis-workbench#277
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Walked end-to-end on pi-g1 today (fresh wipe → install of v0.1.40 → workbench 0.14.0 → software e-stop verified stopping a live impeller). Every correction below is something that misled me while following the guide.
The one that matters
The safety header said actuators are zeroed on stop "only by the automation/full variant's safe-state hooks", and that there is "no software e-stop button yet".
The second is simply out of date — the button shipped in workbench v0.14.0. The first is worse: it conflates two different mechanisms, and that conflation is why this project shipped with no
safety.safe_stateat all until #58 earlier today.automation.mode_transition_hookssafety.safe_statePOST /v0/estopThey are now described separately, with the heater gap (anolishq/anolis#252) called out — if a heater load is connected, the backplane cut is its only stop.
The rest
raspi-configmarked REQUIRED with the reason:install.shreports✓ i2c: already enabledon any Pi with HDMI because its glob matches the DDC buses, then the install fails 30 s later without naming the cause (install.sh: I2C enablement is unreachable on any Pi with HDMI (glob matches DDC buses) anolis#249).--variant manualso the machine boots inert.ANOLIS_WORKBENCH_RUNTIME_URLis load-bearing, not a nicety, and only fixes the proxy:/api/statusstill reports nothing running, so Operate's chrome stays wrong (anolis-workbench#277).No config or code changes — documentation only.