feat: Add documentation for wiring and assembly/printing#7
Merged
Conversation
Promotes the overnight verification scripts from .claude/tmp into the repo. run_sim_smoke.sh brings up sim_launch.py + slam_launch.py (use_sim_time), runs verify_sim.py, and tears everything down via a process-group trap. verify_sim.py drives the robot and asserts odom integration, scan rate/content, and that slam_toolbox publishes a map with plausible dimensions (the /map check is now a Python assertion with transient-local QoS rather than a shell echo). Runs in ~20 s on a workstation with a GPU. Location-independent and runs directly in the sim env (no nested pixi). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The drive phase gated on wall-clock time but asserted a sim-time distance. The sim does not run at realtime (scans arrive well above the configured rate), so on a loaded machine a wall-clock duration yields a variable distance and could fail the assertion spuriously. Gate the drive on sim time (with a wall-clock safety cap so a stalled /clock can't hang), and compute scan rate from message header stamps. Forward distance now lands at 0.600 m exactly. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Record why the sensor+SLAM smoke test can't run on GPU-less hosted runners: software rendering starves the gz loop and the in-process controller_manager can't spawn controllers in time. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The sim and sim-test tasks are defined only in the sim feature, so 'pixi run sim' / 'pixi run sim-test' auto-select that environment (same as 'pixi run rviz' for the dev env). Only ad-hoc 'pixi run -- <cmd>' invocations still need -e sim, since those default to the robot env. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
A quick pre-commit setup (~1 s cached): whitespace/EOF/line-ending fixers, YAML/TOML validation, merge-conflict and large-file guards, shellcheck for the shell scripts, and ruff (pyflakes only, no style reformatting) for the Python launch files. Slow build-dependent checks stay in CI / 'pixi run test' / 'pixi run sim-test'. Runs in its own minimal 'lint' pixi environment (no ROS) so it solves and installs fast. Tasks: 'pixi run lint' and 'pixi run lint-install'. design/ and docs/images/ are excluded so text hooks never rewrite the ASCII STEP CAD files or binary assets. verify_sim.py marked executable to satisfy the shebang check. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Track A of the dev-story plan. watchexec (dev feature) continuously rsyncs to the Pi on save via 'pixi run sync-watch'. README now spells out the colcon --symlink-install fast path: edits to launch/config/ Python go live with no rebuild, so the loop is sync-watch + re-launch, not sync + rebuild. Replaces the stale 'pixi pack TBD' note with the pixi-build-ros channel direction. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
design/WIRING.md: connection tables (power + data), a GitHub-rendered Mermaid topology diagram, the 5V power analysis (servos run below their 7.4V rating; USB-C PD delivers far less than its rated wattage at 5V, which is why the servo board needs the high-current Out1 port), a rough 5V budget, and the BNO085 I2C pinout. design/ASSEMBLY.md: per-part print settings and step-by-step assembly grounded in the 235mm chassis / 50mm standoff / power-bank-sandwich / ORP-grid design. Both linked from design/README.md. Hardware-specific unknowns (connector genders, servo stall current at 5V, exact screw lengths, tyre material) are flagged as Verify rather than guessed. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Reframe the servo-voltage note: 5V operation is confirmed working, not a performance worry. Keep only the factual caveat that datasheet torque figures are quoted at the higher rated voltage. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Tyre is TPU (confirmed). Screws: most joints M3x12 (~6mm plate + ~6mm captive-nut pocket), M3x10 for thinner stacks. All data links are plain USB, so the connector-gender Verify flags are resolved. Remaining Verify items are electrical only (barrel-cable 5V profile, servo stall current, BNO085 VIN voltage). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.
Adds a rough outline for wiring and assembly docs. We will still need to mostly replace this with images before its ready to go.
Redo of #6