Repository navigation
docs: published pages match the as-built firmware - #405
Merged
Merged
Conversation
Docs PR B of the 2026-10-27 audit: the published MkDocs pages now say what the code on main does (specs were fixed in #403). - can-bus: bridge HB_0/SYNC_REQ queue behind CTRL_BCAST; no coalescing; output catch-up = next frame or autosync, SYNC_REQ is inputs only; drops counted on the board, not reported - bring-up: per-node SYNC flow; power-cut recovery recipe - bootloader: 200 ms catch window, not "a few milliseconds"; footprint - compatibility: 0xFF02/0xFF04 listed; late-started Gateway still sees every board's version - new-control-type: forceReport sends state only - build-flags: 63 flags (CAN ring sizes, OSH_BOOT_BRIDGE, PDU pins, new seams, I2C test pins); recipe counts - base-boards: UART back-feed limit is calculated, not measured (#290)
Contributor
📝 Docs site may need an updateThis PR touches files the docs site is built from. Before merging,
Backstop: the weekly docs-drift review. Ignore |
Power-cut recipe covers self-recovery and a cut after the commit; boot frames sit above CTRL_BCAST only; build-flags test-seam count and uncounted test-sketch knobs; forceReport wording; Gateway UART back-feed now measured (#290).
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.
Docs PR B of the 2026-10-27 audit. PR #403 fixed the specs (FirmwarePlan, TechSpec and the decision log). This PR fixes the published MkDocs pages. Every claim below was checked against the code on
main; the spec was only used as a guide.Docs only: no firmware, no frame or reporting changes.
Changes, with the code each one was checked against
architecture/can-bus.mdpriorityCANProtocol.cpp:148-158), so the bridge'sHB_0/SYNC_REQwait behindCTRL_BCASTframes queued before them. The size of that wait is marked unmeasured.can-bus.mdoutput catch-upSYNC_REQasks for inputs only (PanelGroup.cpp:109-114).can-bus.mdTX overflowCANProtocol.cpp:433-435, about a fifth). A full ring drops the new frame, andtxDropCount()counts it on the board only. It is not reported over the bus.can-bus.mdbatch deadlineCTRL_BCASTalso holds at least 2 ms (CANProtocol.cpp:51,:412).guides/bring-up.mdstep 4PanelBridge.cpp:505/508/636).guides/bring-up.mdUploader.cpp:28-33,211-215,483-485), a cut before the erase (old firmware) or after the commit (new firmware), and red + green blinking together (waiting in the bootloader), in which case re-run the update from SkyHawkClient. Source:12-bootloader.md(commit-last; APP_INVALID) andBootloader/src/main.cpp:572-573.firmware/bootloader.mdBootProtocol.h:189,main.cpp:583). Footprint added: about 3.7 KB, roughly 400 B free. The page now links to the recovery recipe. The #404 zip wording is untouched.firmware/compatibility.mdCANProtocol.cpp:357,PanelBridge.cpp:620-631), so a board that started before the Gateway is still reported.0xFF04(forget node,NodeStatus.h:46) is added to the PC-side row and0xFF02(bridge enter-bootloader,BootProtocol.h:181) to the Gateway-link row.guides/new-control-type.mdforceReport()"send the current state"PanelGroup.h:85-94, #394).firmware/build-flags.mdCAN_TX_RING_SIZE64/16 andCAN_RX_RING_SIZE128/8 (CANProtocol.cpp:37/43),OSH_BOOT_BRIDGE,PDU_PIN_*,DIMMER_TEST,SWITCHWITHCOVER_TEST,I2C_TEST_SCL/SDA. Recipe counts are now 28 set / 53 read. The seam paragraph is corrected, and headings no longer carry counts, so their anchors stay stable.hardware/base-boards.md(+_source)_source.Checks
python3 tools/docs-drift/check_doc_refs.py: OK, 38 citations.mkdocs build -f docs/mkdocs.yml: exit 0. The only warning comes from a mkdoxy-generateddocs/api/anonymous-enum anchor and is not from this PR. The new anchors resolve.BEGIN_COMMIT_OVERRIDE
docs(can-bus): bridge frames queue behind CTRL_BCAST; no coalescing; output catch-up is next frame or autosync; drops counted on the board only
docs(bring-up): per-node SYNC flow; power-cut recovery recipe
docs(bootloader): 200 ms catch window at every boot; footprint
docs(compatibility): name each reserved export address by its owning constant, 0xFF02/0xFF04 included; a board running before the Gateway still reports its version
docs(controls): forceReport sends state only
docs(build-flags): inventory matches the 63 flags the code reads and sets
docs(hardware): Gateway UART back-feed measured — none into the unpowered RP2040; reverse direction and 12 V path still open (#290)
END_COMMIT_OVERRIDE