Skip to content

Commit 6498d49

Browse files
committed
Correct the parameter counts: they were cumulative, not per device
An inventory printed at the end of each discovery burst grows as the sweep proceeds, so what looked like 88 parameters on the air conditioning was 88 seen so far across every device. Keyed per address it reports 32, the interface 60, and the bus 126 in total. Also records what each address actually answers for, now that the two can be told apart.
1 parent 1e74b67 commit 6498d49

2 files changed

Lines changed: 22 additions & 10 deletions

File tree

README.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -35,11 +35,12 @@ Heat/Cool mode.
3535
everything else goes away. A link that keeps flapping is the signature of a
3636
missing proxy, and that is only visible if something reports the link itself.
3737

38-
**Sensors — every parameter the bus reports.** The appliance answers parameter
39-
discovery with everything it knows about itself: 88 values on the air
40-
conditioning alone, from measured temperatures and mains presence to error
41-
codes, firmware revisions and timer configuration. Each becomes a diagnostic
42-
sensor, grouped under the device that reported it.
38+
**Sensors — every parameter the bus reports.** Each device answers parameter
39+
discovery with everything it knows about itself: 32 values on the air
40+
conditioning, 60 on the interface, and a handful each from the rest — measured
41+
temperatures, mains presence, error codes, firmware revisions, timer
42+
configuration. Every one becomes a diagnostic sensor, grouped under the device
43+
that reported it. On this system that is 126 sensors across eight devices.
4344

4445
A Truma system answers on more addresses than it has devices — the interface
4546
here answers on three, all reporting the same parameters under one

docs/findings.md

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,14 +44,25 @@ reference's warning that doing so breaks the transport.
4444

4545
Discovered from parameter discovery in capture 1.
4646

47-
| Address | Identifies as | Notes |
47+
Counted per address, from a sweep where each device was asked separately.
48+
49+
| Address | Identifies as | Own parameters |
4850
|---|---|---|
49-
| `0x0101` | **`iNet X Interface AC`**, `Identify.Type` = 10 (INTERFACE) | takes `RoomClimate` commands |
50-
| `0x0601` | blePeripheral | `BleDeviceManagement`, `DeviceManagement` |
51-
| `0x0702` | same serial as `0x0801` | `Identify` only |
52-
| `0x0801` | **`Identify.Name` = `Aventa comfort 2. G`**, `Identify.Type` = 3 (AC) | **takes `AmbientLight` commands** |
51+
| `0x0101` | **`iNet X Interface AC`**, `Identify.Type` = 10 (INTERFACE), serial `IIIRTEU-A-…`, sw 3.5 | 60 — takes `RoomClimate` commands |
52+
| `0x0801` | **`Aventa comfort 2. G`**, `Identify.Type` = 3 (AC), serial `AVRLWZZ-A-…`, sw 1.6 | 32 — takes `AmbientLight`, `AirCooling`, `AirHeating` |
53+
| `0x0702` | same serial as `0x0801` | 7, `Identify` only |
54+
| `0x0601` | blePeripheral | 10 |
55+
| `0x0600` | `Blemcu`, `DeviceManagement` | 6 |
56+
| `0x0800` | `DeviceManagement`, `ErrorReset` | 6 |
57+
| `0x0200`, `0x0400` | `DeviceManagement` only | 3 each |
58+
| `0x0500` | app slot 0 | 6 |
5359
| `0x0501` | app slot 1 | address assigned to us at registration |
5460

61+
Careful with cumulative counts: an inventory printed after each burst grows as
62+
the sweep proceeds, so "the appliance reports 88 parameters" was really "88
63+
parameters had been seen by then, across every device". Keyed per address, the
64+
air conditioning reports 32.
65+
5566
`0x0801` is not in the reference's address table, which lists `0x0800` as
5667
CAN_SLAVE and `0x0202` as `tinAventa`. Our Aventa is neither — so the address
5768
has to be discovered at runtime rather than assumed.

0 commit comments

Comments
 (0)