Reference
The API reference at site/api/index.html is a separate tree, generated by Doxygen from the declarations themselves. It is built rather than committed, so there is nothing to link to from here on GitHub: run make docs and open it. On the published site that path is a live link.
Use it when you need the exact shape of something:
- preprocessor constants, which is where most of the protocol lives in this codebase
(attribute IDs, frame lengths, key-block offsets, bitmask layouts)
- enum values and their numeric encodings
- struct members, with the per-field comments
- include graphs
It covers the code this project owns: modules/woz_port, modules/woz_uwb, modules/woz_aliro, modules/woz_aliro_ecp, and the ESP32-S3 reader components (aliro_ble, aliro_crypto, aliro_reader).
Reference or Architecture?
The two trees answer different questions, and neither replaces the other.
| Question | Where to look |
|---|---|
| What are the fields of this struct? What is this constant's value? | Reference |
| What calls this function, and what does it call? | Architecture |
| Which files make up this subsystem, and what depends on what? | Architecture |
| Why is it built this way? What went wrong on the bench? | The guides, starting with esp32-gotchas.md |
Undocumented symbols are omitted from the Reference tree rather than listed empty. If something you expect is missing, the fix is a doc comment at the declaration, not a generator setting.