Skip to content

docs: restructure README into README + TUTORIAL.md + docs/PICS.md - #4

Merged
sws-chipkin merged 1 commit into
mainfrom
docs/readme-tutorial-pics-restructure
Sep 16, 2026
Merged

sws-chipkin merged 1 commit into
mainfrom
docs/readme-tutorial-pics-restructure

Conversation

@sws-chipkin

Copy link
Copy Markdown
Collaborator

Restructures this repo's documentation to match the shared series shape (established in BACnetProfileExample-B-SS-CPP): README.md cut down to what this example is and how to build/run/verify it, a new TUTORIAL.md for extending and reviewing the device, and a new docs/PICS.md (ANSI/ASHRAE 135 Annex A conformance statement) generated from docs/objects.json. The build now documents the adapter's default SOURCE mode (a single cmake -B build -S . + cmake --build build --config Release, no prebuilt library, no series-root script) so a customer who downloads only this repository can build it.

Verified with a real build-and-run cycle; the README's expected-output block reflects actual captured output.

🤖 Generated with Claude Code

…d SOURCE build

Matches the shape already applied to BACnetProfileExample-B-SS-CPP
(docs/readme-tutorial-pics-restructure @ d159156):

- README.md cut down to this example only: what the profile is, the device
  it creates, BIBBs/services/objects it supports, build/run/verify. Removed
  the series-framing, the generic profile explanation, the detailed
  F-MULTIPORT/F-ROUTER narrative, "Before you ship", "Get the code", "Link
  mode", Troubleshooting, and "Objects and properties" (each moved to
  TUTORIAL.md, main.cpp comments, or docs/PICS.md). The router forwarding
  limitation notice is kept verbatim near the top - it is the single most
  important fact about this example.
- New TUTORIAL.md: extending the example (with the silent-failure warning
  for a half-added object), the F-MULTIPORT/F-ROUTER walkthroughs (router
  gap notice carried over word for word), what each object type needs
  served, who serves what for the representative commandable object,
  reviewing a device, and troubleshooting.
- New docs/PICS.md in the ANSI/ASHRAE 135 Annex A shape; every row read
  from main.cpp. Section 9 (networking options) is explicit that router
  CONFIGURATION and ANNOUNCEMENT work but cross-network FORWARDING does
  not at this stack pin (#2037), and that Routing_Table read aborts
  outside a test-tool build (#2038).
- docs/objects.json's Device entry now separates "stack" (device-wide
  facts the stack computes) from "accepted" (the stack's configured
  defaults), matching the series shape. Regenerated with
  tools/gen-objects-properties.py - zero warning rows.
- main.cpp: absorbed the former README "Before you ship" table into a
  comment next to each CHANGE ALL OF THIS BEFORE YOU SHIP constant,
  including the DEVICE_NAME uniqueness warning and the two network
  numbers' uniqueness requirement.
- Build is now `cmake -B build -S .` / `cmake --build build --config
  Release` only, in the adapter's default SOURCE mode - no
  tools/build-stack-static.sh (series-repo-only script, unavailable to a
  customer who only has this repository) and no prebuilt STATIC library.
  CMakeLists.txt, AGENTS.md and .github/workflows/release.yml updated to
  match; the workflow drops the STATIC library build/cache and matrix
  lib: entries, asserts CAS_BACNET_STACK_LINK=SOURCE, sets
  "link_mode": "SOURCE" in metrics JSON, and packages TUTORIAL.md /
  docs/PICS.md with the release artifact.
- Re-synced the series profile table (tools/sync-profile-table.sh
  BACnetProfileExample-B-RTR-CPP).
- Verified: fresh `cmake -B build-verify -S .` +
  `cmake --build build-verify --config Release --parallel` succeeds,
  CAS_BACNET_STACK_LINK:STRING=SOURCE confirmed in CMakeCache.txt, the
  binary reaches "ready" on --port 47831 --port2 47832 with the expected
  router bind/attribution error lines, tools/gen-objects-properties.py
  --check reports current, and every relative markdown link resolves.
  build-verify deleted after verification.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@sws-chipkin
sws-chipkin merged commit 94c61d5 into main Sep 16, 2026
3 checks passed
@sws-chipkin
sws-chipkin deleted the docs/readme-tutorial-pics-restructure branch September 16, 2026 16:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant