From a8f5f6664764b901c90ff684b1ee39da5905257d Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Thu, 8 Oct 2026 22:03:14 -0400 Subject: [PATCH] docs(index): OtOpcUa hardware batch #647-#651 + hw2 live gates --- .claude/skills/sister-project-history/otopcua.md | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.claude/skills/sister-project-history/otopcua.md b/.claude/skills/sister-project-history/otopcua.md index b015883..4dda8d1 100644 --- a/.claude/skills/sister-project-history/otopcua.md +++ b/.claude/skills/sister-project-history/otopcua.md @@ -102,3 +102,15 @@ AddRoute of the dev Mac (`oee-tagdump-mac`, `10.181.206.245.1.1`) on the two tes `/raw`; #646 AbLegacy indirect addressing (`N7:[N7:0]`); FOCAS `Status/` subtree + PMC range coalescing (read-only); S7 STRING/DT unrepresentable writes now `BadOutOfRange`. Theme `.rise` upstream fix committed in scadaproj (0.4.2, not adopted by OtOpcUa — package versions frozen there). +- **Hardware-available batch #647-#651 + hw2 live gates (2026-10-08, OtOpcUa `master` `88016317..ec375538`).** Parallel worktree + agents + opus/sonnet review, live-gated on docker-dev, the FOCAS/MTConnect fixtures, Makino Z-34184 (read-only) and Elma presses + Z35474 (TC3) / Z34834 (TC2) (read-only). **ScadaBridge-visible:** (1) **#647 FOCAS native alarms now reach Part 9 conditions** via + `ALARM:` raw tags (`*`, ``, `/`, `/-`, `T`, `OTHER`) — a new alarm source for ScadaBridge; + read-only, ack server-side. (2) **A Raise on an already-active condition with the same message is a re-statement** — keeps the ack + and writes no second "Activated" `/alerts` row (a driver-recreating deploy no longer un-acks active native alarms); OpcUaClient / + Galaxy send Retrigger when the upstream is unacked. (3) #650 MTConnect DATA_SET/TABLE items read as compact JSON strings. + (4) #649 OpcUaClient HistoryRead returns per-node status (latent — the server never dispatches driver HistoryRead, #655). + Not ScadaBridge-affecting: **TwinCAT sum-read (#645) had never worked on hardware** (Beckhoff `SumRead` needs an array, not a + List — every batched tag was BadCommunicationError) — fixed, opt-in, now ~5x faster polls; TC2 diagnostics fallback; FOCAS + startup double-connect to the CNC fixed; Client.CLI `alarms` prints EventId/ConditionNodeId; #648 vestigial + TargetNamespaceKind/UnsMappingTable removed; CI artifact upload + load-race flakes (#606). New: #654 #655 #656.