EZO Documentation
Notice: This subtree is original repo-authored documentation informed by Atlas Scientific product documentation. It is not an official Atlas Scientific manual and intentionally avoids copied vendor tables, diagrams, and page structure.
Purpose
docs/ezo/ is the product and protocol context layer for this repo.
It exists to do three things:
- summarize shared EZO transport behavior once
- summarize each supported EZO product family once
- keep repo-facing guidance separate from vendor-manual reproduction
This structure follows the codebase. The current library is split first by transport family (I2C and UART), while product behavior is a second axis that matters for future helpers, examples, tests, and parsing.
How To Use This Tree
Start here if you are deciding where a fact belongs:
- source-policy.md: provenance, copyright, and summary rules
- common/command-taxonomy.md: shared command families and product-only families
- common/uart.md: UART framing and response behavior
- common/i2c.md: I2C transaction and status-byte behavior
- common/mode-switching.md: UART/I2C switching, protocol lock, and reboot expectations
Then use the relevant product page:
Structure Decision
This repo does not organize docs as ph-uart.md, ph-i2c.md, ec-uart.md, and so on.
That layout would duplicate the same transport rules across every product and would pull the repo toward vendor-manual mirroring. Instead:
- common protocol mechanics live in
common/ - product behavior lives in
products/
If a product page grows too large later, split it by concern such as calibration or measurement model, not by transport.
What These Docs Are Not
These docs are not a replacement for official vendor documentation.
Use them for:
- repo architecture decisions
- product-aware API design
- example and test design
- caller expectations around output shape and timing
Use the official Atlas Scientific materials for:
- full command syntax
- wiring and soldering instructions
- hardware recovery procedures
- workflows outside the supported repo surface