Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .agents/skills/g6-orientation/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ interface.
|---|---|
| **reiserlab/maDisplayTools** | **MATLAB** tools (G4+). Pattern math reference — **web output must match MATLAB exactly** (CI validates, tol 1e-4). Its protocol **runner is G4.1-only and frozen** (decision 2026-10-26); protocol authority = `webDisplayTools/docs/development/v3-spec.md` + conformance fixtures. (Its `docs/development/G4G6_ROADMAP.md` is largely historical now — use the umbrella docs for current G6.) |
| **reiserlab/LED-Display_pyDisplayTools** (pyDisplayTools) | **Python** tools for the displays (G4 pattern + experiment-folder tools). **Accepted destination** for the Python arena library and the **headless runner** (`arena-run`), a peer of the web runner (decision 2026-10-26). |
| **reiserlab/rig-nodes** | **Current location (since 2026-10-26)** of the shared ROS 2 infrastructure for every lab rig: `rig_interfaces` (FicTracFrame, ArenaFrame, ConnectorReply), the device adapters + simulators (FicTrac, Kinefly, BIAS, ScanImage; SiPM and the ScanImage frames node follow when their PRs land), the MCAP recorder/indexer/CDR decoder/Foxglove rewriter, the supervision primitives and the Zenoh configs, as the `rig_nodes` + `rig_interfaces` packages (one package-set version, conda channel at a release tag). `CONTRACT.md` there is the graph contract (topics, QoS, envelope, invariants). webDisplayTools' `rig/` installs the set and keeps only the arena gateway, composition and visualization. Record: `webDisplayTools/docs/development/rig-software-repos-and-runners.md`. |
| **reiserlab/rig-nodes** | **Current location (since 2026-10-26)** of the shared ROS 2 infrastructure for every lab rig: `rig_interfaces` (FicTracFrame, ArenaFrame, ConnectorReply), the device adapters + simulators (FicTrac, Kinefly, BIAS; the 2P imaging code — ScanImage JSON connector, ZMQ frames node, SiPM node, tiff2mcap — is private since 2026-10-28, in reiserlab/scanimage-2026-bergamo `2p-rig-nodes/`), the MCAP recorder/indexer/CDR decoder/Foxglove rewriter, the supervision primitives and the Zenoh configs, as the `rig_nodes` + `rig_interfaces` packages (one package-set version, conda channel at a release tag). `CONTRACT.md` there is the graph contract (topics, QoS, envelope, invariants). webDisplayTools' `rig/` installs the set and keeps only the arena gateway, composition and visualization. Record: `webDisplayTools/docs/development/rig-software-repos-and-runners.md`. |

### G6 firmware (what the web connects to over USB)
| repo | role |
Expand Down Expand Up @@ -125,7 +125,7 @@ interface.
sim` (start the bridge first). The web runner executes only the `fictrac` and `log` plugins;
`backlight`/`camera`/`temperature` are declared for MATLAB and **skipped on the web**.
- **ROS 2 graph (LAB-303, released 2026-10-20/26)** — `rig/` replaces the bridge with a graph
(rmw_zenoh, MCAP record, BIAS + ScanImage connectors) behind the SAME WebSocket; the Studio is
(rmw_zenoh, MCAP record, the BIAS connector; the 2P rig adds its private ScanImage/SiPM nodes) behind the SAME WebSocket; the Studio is
unchanged. Since 2026-10-26 the device nodes, simulators and recording primitives come from the
installed `rig_nodes` package (reiserlab/rig-nodes); `rig/` keeps the gateway (`bridge_node.py`),
the composition (`rig.py`) and the arena visualization. Record: `rig-software-repos-and-runners.md`.
Expand Down
3 changes: 2 additions & 1 deletion CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -377,7 +377,8 @@ fix flows to every page automatically; two hand-written HTML pages never will.
before the load are allowlisted in `tests/test-studio-preview-sources.js`.
- **ROS 2 bridge = the bridge going forward (LAB-303, decided 2026-10-16/17).** Rig PCs run
`cd rig && pixi run rig` (its own pixi workspace: Zenoh router + FicTrac adapter + bridge node
+ optional `--bias` / `--scanimage` / `--foxglove`). Bridge 3.4 (`pixi run bridge` at the root) is
+ optional `--bias` / `--foxglove`; the 2P rig's ScanImage and SiPM nodes are private, in
reiserlab/scanimage-2026-bergamo `2p-rig-nodes/`). Bridge 3.4 (`pixi run bridge` at the root) is
the legacy path for course rigs, BUT `fictrac-bridge/bridge.py` is STILL IMPORTED by
`rig/nodes/bridge_node.py` and `mcap_convert.py` (Hub, LogWriter, Pipeline, the pure
encoders): a change there changes ROS acquisition and the conversion of every historical bag.
Expand Down
2 changes: 1 addition & 1 deletion configs/rigs/bergamo_g6_2x10_2p.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
# asserted by Arena Studio before every run and written into the run header
# (docs/development/controller-settings-strategy.md).
#
# Cabling (rig checklist docs/development/2p-line-sync-rig-checklist.md):
# Cabling (rig checklist, now in reiserlab/scanimage-2026-bergamo procedures/webdisplaytools-2p/2p-line-sync-rig-checklist.md):
# Digital IO 1 (J3) → vDAQ free digital input (D2.1), ScanImage "Aux trigger 1":
# one 5 V pulse per 300 Hz frame transfer, stamped into every TIFF header.
# Digital IO 2 (J4) ← ScanImage line clock (HIGH while pixels are recorded, LOW in the
Expand Down
138 changes: 0 additions & 138 deletions docs/development/2p-line-sync-rig-checklist.md

This file was deleted.

Loading
Loading