# Reference Documentation

This folder contains source material used while reverse-engineering and validating the `WF100DPZ` protocol and behavior.

## Why this exists

The vendor documentation for `WF100DPZ` is inconsistent across versions.
Some files describe overlapping features with different register details, command framing, or behavior notes.
Keeping all versions in one place preserves traceability for design decisions in this library.

In practice, many concepts in `WF100DPZ` appear related to the `WF5803` family.
The `WF5803` documents are included as reference material only, not as authoritative specs for `WF100DPZ`.

## Scope of this library

This implementation is currently targeted at the `WF100DPZ 2BG` sensor, the 2 bar (`200 kPa`) variant.

The pressure/temperature conversion equations used by this library are expected to be valid for this SKU.
Other SKUs may require different constants or equations.

If equations for other SKUs are obtained, they can be added to this library without major architectural changes.
Those values can come from:
- official manufacturer documentation/support
- reverse-engineering and validation against hardware

## What is included

- [`API.md`](API.md)
  - Archived API notes/reference material captured during development.

- [`datasheets/WF100DPZ_REG.pdf`](datasheets/WF100DPZ_REG.pdf) / [`datasheets/WF100DPZ_REG.md`](datasheets/WF100DPZ_REG.md)
  - Register-level `WF100DPZ` documentation used as a primary baseline.

- [`datasheets/WF100D_OEM.pdf`](datasheets/WF100D_OEM.pdf) / [`datasheets/WF100D_OEM.md`](datasheets/WF100D_OEM.md)
  - OEM-style datasheet variant with overlapping but sometimes different details.

- [`reference/WF100D_200KPA_S6_SPI.ino`](reference/WF100D_200KPA_S6_SPI.ino)
  - Manufacturer-supplied example sketch.
  - This file is the practical foundation for this library's initial implementation.
  - It provides critical details for:
    - 3-wire SPI transaction flow/protocol behavior
    - measurement conversion equations used for sensor outputs

- [`datasheets/WF5803F.pdf`](datasheets/WF5803F.pdf) / [`datasheets/WF5803F.md`](datasheets/WF5803F.md)
- [`datasheets/WF5803_Variometer.pdf`](datasheets/WF5803_Variometer.pdf) / [`datasheets/WF5803_Variometer.md`](datasheets/WF5803_Variometer.md)
  - Related-family reference documents that helped interpret undocumented or ambiguous behavior.

## Usage guidance

- Treat `WF100DPZ` files as primary sources.
- Use `WF5803` files only for context when `WF100DPZ` docs are ambiguous.
- Validate protocol assumptions against real hardware whenever possible.

## Notes

These files are archived for engineering reference and historical context.
They are not guaranteed to be complete, mutually consistent, or fully accurate.
