Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,14 @@ knowledge/** text eol=lf

# Large complete Machine KB files; hydrate before reading or building.
knowledge/claims/claims.jsonl filter=lfs diff=lfs merge=lfs -text
knowledge/id-registry.json filter=lfs diff=lfs merge=lfs -text
knowledge/inputs/claim-context.json filter=lfs diff=lfs merge=lfs -text
knowledge/inputs/claim-records.json filter=lfs diff=lfs merge=lfs -text
knowledge/inputs/id-registry.json filter=lfs diff=lfs merge=lfs -text
knowledge/inputs/reference-records.json filter=lfs diff=lfs merge=lfs -text
knowledge/llm/llm-corpus.md filter=lfs diff=lfs merge=lfs -text
knowledge/reference/entities.jsonl filter=lfs diff=lfs merge=lfs -text
knowledge/retrieval/chunks.jsonl filter=lfs diff=lfs merge=lfs -text

# Preserve review tables byte-for-byte; hydrate before examining their evidence.
project/review/**/*.tsv filter=lfs diff=lfs merge=lfs -text
23 changes: 23 additions & 0 deletions functional/who-4-temperature-control/addressing.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,3 +59,26 @@ For the four-zone case where probe and central share an address, the source desc
See [Temperature Control evidence](../../project/review/myopencommunity-integration.md#temperature-control).

See [`WHAT` Reference](what.md) for central-unit commands, [`DIMENSION` Reference](dimensions.md) for operation-specific payloads, and [Addressing](../../protocol/addressing.md) for the common system-scoped addressing model.

## Gateway firmware routing and actuator-request boundaries

**Local-bus `#4#INTERFACE` qualification.** In the pinned `own-firmware-oracle` `thermo-zone-requests` v3 suite at revision `de87a34e251b677a299917c98fcfcea3b409bf34` (`oracle_version=3`, full simulated-PIC harness, `reset=each` on `F450 020010` and `reset=0` on the other 11 targets, declared `settle_ms=3000`), none of the 12 emulated gateway Firmwares emits an interface-routed `$06EC` or `$06E4` SCS bus telegram on any of the nine `#4#INTERFACE`-qualified `WHO 4` status or dimension requests (`*#4*2#4#01##`, `*#4*2#4#12##`, `*#4*2#4#01*0##`, `*#4*2#4#01*11##`, `*#4*2#4#01*19##`, `*#4*2#4#01*20##`, `*#4*2#4#12*20##`, `*#4*2#1#4#01*20##`, `*#4*2#4#01*60##`):

| Gateway model | Firmware | `#4#INTERFACE` `WHO 4` request behavior | Dimensionless `*#4*2#1##` behavior | Original result |
| --- | --- | --- | --- | --- |
| F450 | `020010` | Truncates `*20` at `#` to local zone `2` (`$04A9023010`, `NACK` / `out`); `NACK` / `silent` on others | `NACK` / `silent` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/F450/020010/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| F453 | `010100` | `NACK` / `silent` on all nine `#4#INTERFACE` requests | `NACK` / `silent` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/F453/010100/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| F453AV | `030014` | `NACK` / `silent` on all nine `#4#INTERFACE` requests | `NACK` / `silent` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/F453AV/030014/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| F454 | `020051` | Truncates `*20` at `#` to local zone `2` (`$04A9023010`, `NACK` / `out`); `NACK` / `silent` on others | `NACK` / `silent` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/F454/020051/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| F459 | `020105` | Truncates `*20` and `*60` at `#` to local zone `2`; `NACK` / `silent` on others | `NACK` / `silent` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/F459/020105/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| F460 | `020012` | Truncates `*20` and `*60` at `#` to local zone `2`; `NACK` / `silent` on others | `NACK` / `silent` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/F460/020012/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| F461 | `020011` | Truncates `*20` and `*60` at `#` to local zone `2`; `NACK` / `silent` on others | `NACK` / `silent` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/F461/020011/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| H4684 | `020054` | Truncates status, `*0`, and `*19` at `#` to local zone `2`; `NACK` / `silent` on others | Truncates at `#` to local zone `2` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/H4684/020054/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| MH200 | `020102` | Truncates status, `*0`, and `*19` at `#` to local zone `2`; `NACK` / `silent` on others | Truncates at `#` to local zone `2` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/MH200/020102/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| MH200N | `010108` | `NACK` / `silent` on all nine `#4#INTERFACE` requests | `NACK` / `silent` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/MH200N/010108/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| MH202 | `010024` | Parses trailing `#4#01` on `*20` as local `Z=4, N=1` (`$0499843110`); `crash` on `*#4*2#4#01##`; `NACK` / `silent` on `#4#12` and others | `NACK` / `crash` (`coso` daemon exit) | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/MH202/010024/oracle/full/thermo-zone-requests.tsv#L21-L32) |
| MyHomeServer1 | `028206` | Truncates `*20` and `*60` at `#` to local zone `2`; `NACK` / `silent` on others | `NACK` / `silent` | [Pinned result](https://github.com/OpenWebNet-HA/own-firmware-oracle/blob/de87a34e251b677a299917c98fcfcea3b409bf34/results/MyHomeServer1/028206/oracle/full/thermo-zone-requests.tsv#L21-L32) |

Recorded `out` verdicts on `#4#INTERFACE`-qualified `WHO 4` requests must therefore not be interpreted as local-bus interface forwarding: on `F450`, `F454`, `F459`, `F460`, `F461`, `H4684`, `MH200`, and `MyHomeServer1`, the recorded SCS bus bytes query local main-bus zone `2`, while on `MH202` Firmware `010024` both `*#4*2#4#01*20##` and `*#4*2#1#4#01*20##` read the trailing `#4` and `#01` tokens as local zone `4` actuator `1` (`$0499843110`) and reject `*#4*2#4#12*20##` (`NACK` / `silent`). Clients should withhold outbound `#4#INTERFACE`-qualified `WHO 4` status and dimension polls unless gateway support is explicitly established, while continuing to parse `#4#INTERFACE`-qualified `WHO 4` event frames received from the bus.

**Dimensionless actuator status requests.** Dimensionless `*#4*Z#N##` status requests are not supported across the 12 inspected Firmwares: nine return `NACK` with `silent`, `H4684` Firmware `020054` and `MH200` Firmware `020102` truncate `2#1` at `#` to poll local zone `2`, and `MH202` Firmware `010024` terminates its `coso` translator process (`reply=nack`, `verdict=crash`) on both `*#4*2#1##` and misparsed `*#4*2#4#01##` (while rejecting `*#4*2#4#12##` with `NACK` / `silent`). Clients querying actuator state must request `DIMENSION 20` (`*#4*Z#N*20##` or `*#4*#0*20##`; zone-level `*#4*Z*20##` is dropped on six of the 12 inspected Firmwares) rather than sending dimensionless `*#4*Z#N##`. These observations come from inspected emulator artifacts and do not establish physical SCS bus behavior or uninspected Firmware versions; see [WHO 4 gateway routing and actuator-request review](../../project/review/who4-gateway-routing-and-actuator-requests.md).
4 changes: 2 additions & 2 deletions knowledge/claims/claims.jsonl
Git LFS file not shown
4 changes: 3 additions & 1 deletion knowledge/id-registry.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion knowledge/inputs/chunk-identities.json

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion knowledge/inputs/claim-context.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion knowledge/inputs/claim-coverage.json

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions knowledge/inputs/claim-records.json
Git LFS file not shown
2 changes: 1 addition & 1 deletion knowledge/inputs/evidence-reviews.json

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion knowledge/inputs/id-registry.json

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion knowledge/inputs/identities.json

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion knowledge/inputs/reference-records.json

Large diffs are not rendered by default.

Loading
Loading