Skip to content

Devdoc: firmware-loaded I2C devices (VL53L5CX) - feasible, parked; TODO tidied - #27

Merged
robdobsn merged 1 commit into
mainfrom
docs/firmware-loaded-devices-parked
Oct 25, 2026
Merged

robdobsn merged 1 commit into
mainfrom
docs/firmware-loaded-devices-parked

Conversation

@robdobsn

Copy link
Copy Markdown
Owner

Docs only, no code changes.

devdocs/firmware-loaded-i2c-devices-plan.md (new)

How the VL53L5CX could become an ordinary device type, replacing the Axiom's VL53LxCX SysMod, which runs ST's driver in its own task.

  • Assets: a record names its binary files (the sensor firmware) by name, size and SHA-256. They're shipped beside the records in a source, then either compiled into the firmware, put in the file system image, or uploaded with a type file. The device finds an asset by name and checks it.
  • Other generic changes:
    • init steps that write an asset slice in chunks and wait on a register;
    • init that gives way to other devices, and its own bus speed;
    • array init values;
    • reads over 240 bytes;
    • conditional polls;
    • decoding ST's frame format in custom decode code.
  • Also covered:
    • what has changed in RaftCore and RaftI2C since the Axiom plan (2026-10-03);
    • the C++ init-handler alternative;
    • an illustrative record;
    • phases, risks, and decisions F1–F9;
    • what to re-check before resuming.
  • Status: feasible, but parked, with no schedule. The Axiom SysMod stays in use meanwhile.

TODO.md

  • New Parked section: the item above, replacing the two VL53L5CX items.
  • Done items removed: device type file tools (the Python tools and raftjs), the web UI (the Device Types app), and init code.
  • Kept open: the VL53L0X SPAD setup, the part of the init code item that isn't done.

🤖 Generated with Claude Code

…es - feasible, parked; TODO tidied

- devdocs/firmware-loaded-i2c-devices-plan.md: how the VL53L5CX could move from the Axiom's SysMod to a record -
  named, hashed assets (compiled in, in the FS image, or uploaded with a type file) and generic init steps (asset
  slices in chunks, register waits, init bus speed, array init values), reads over 240 bytes, conditional polls;
  what has changed since the Axiom plan, the C++ init handler alternative, phases, risks, decisions F1-F9, and what
  to re-check before resuming. Feasible; parked, on no schedule
- TODO.md: a Parked section with it (replacing the two VL53L5CX items); done items removed (type file tools, the
  web UI, initCode), keeping the VL53L0X SPAD setup as an open item

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@robdobsn
robdobsn merged commit 8a58e62 into main Oct 25, 2026
1 check passed
@robdobsn
robdobsn deleted the docs/firmware-loaded-devices-parked branch October 25, 2026 13:26
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