From c246e15d77a672b221a91eac55c83f272ce1f55b Mon Sep 17 00:00:00 2001 From: gdluck Date: Sat, 24 Oct 2026 16:20:14 +0300 Subject: [PATCH 1/3] test(trace): ingest live F461 2.0.11 2026-10-23 capture behind OWNd #136-#142 and MyHOME #791-#798 The maintainer asked on OpenWebNet-HA/OWNd#137 (comment 6384484511) for the physical trace behind the 2026-10-24 pull requests to be added to this repo like every capture before. Same plant and format as f461_live_2026-10-15 and f461_live_2026-10-18: a BTicino F461 2.0.11 (WHO 13 device type 200, WHO 1013 134.15.5.0) with BT-F411/4 lights at 06 / 07, an F422 light at 09 whose actuator lacked configurator 2 at capture time, a BT-F411/2 5 s shutter at 05 and a KW4691 standalone thermostat at zone 2 with a BT-F430/2 valve and a BT-F430/4 fan coil; no central unit. tests/fixtures/traces/f461_live_2026-10-23/: the derived trace archive (299 event-session frames, 939 tx / rx / result rows in ten runs: the oracle replay of 165 read-only requests, reviewer reads, setpoint restore, final state, report-form writes, the event session during a local Home Assistant run, the bus monitor of an earlier run, two flicker re-tries) and its README with the plant, the runs, what the plant established and which pull request each frame backs. MAC / IP are synthetic in both their text and WHO 13 byte forms. tests/test_f461_live_2026_10_23_trace.py pins the facts the pull requests rely on: the *#4*2## reply order with dimension 12 before and different from 14, *#4*2*20## followed by two actuator frames and *#4*#0*20## answering both, *#1*0007## NACK vs *#1*07## ACK vs *#1*7## empty, *#13**0## echoed on the event session, every WHO 16 request refused in under 10 ms, the dimension 27 model name frame, *#4*#2*14## and the other central-unit forms refused, one *2*0*0##, the shutter's own stop 5.1-5.9 s after each run; plus entity replays through handle_event that pass on the base branch with the pinned OWNd. tests/test_trace_oracle_validation.py: tier 4 tolerates the authentic *#13**27*70#52#54#49## reply until the pinned OWNd carries the dimension 27 decoder (OWNd#139); it parses to None without raising. The *4*311*2## NACK / *4*311*#2## ACK pair cited by OWNd#137 is already in f461_live_2026-10-15 and is referenced, not duplicated. scripts/update_trace_matrix.py leaves the matrix unchanged (the F461 row already covers WHO 1, 2, 4, 13, 1013). Co-Authored-By: Claude Fable 5.1 --- .../traces/f461_live_2026-10-23/README.md | 113 + .../myhome_trace_F461_live_2026-10-23.json | 9720 +++++++++++++++++ tests/test_f461_live_2026_10_23_trace.py | 618 ++ tests/test_trace_oracle_validation.py | 7 + 4 files changed, 10458 insertions(+) create mode 100644 tests/fixtures/traces/f461_live_2026-10-23/README.md create mode 100644 tests/fixtures/traces/f461_live_2026-10-23/myhome_trace_F461_live_2026-10-23.json create mode 100644 tests/test_f461_live_2026_10_23_trace.py diff --git a/tests/fixtures/traces/f461_live_2026-10-23/README.md b/tests/fixtures/traces/f461_live_2026-10-23/README.md new file mode 100644 index 000000000..c4cc1d013 --- /dev/null +++ b/tests/fixtures/traces/f461_live_2026-10-23/README.md @@ -0,0 +1,113 @@ +# Live capture: BTicino F461 (firmware 2.0.11), 2026-10-23 + +Every frame exchanged with a physical F461 gateway on 2026-10-23 (20:38 to 23:03 UTC) while the +findings behind OWNd #136-#142 and MyHOME #791-#798 were collected: an oracle replay of 165 read-only +requests, reviewer reads, a setpoint restore, two report-form writes, and the event session while a +local Home Assistant ran the integration under test. Nothing is synthetic except the gateway's MAC +and LAN address (rewritten in both their text and their WHO 13 byte forms, see below); the HMAC +handshake is not included. Recorded with OWNd master (`OWNCommandSession` + `OWNEventSession`), +one request at a time with a 1.2-1.5 s pause. + +The earlier capture of the same plant is `tests/fixtures/traces/f461_live_2026-10-15/` (lights still +at `01` / `04`). It already holds the WHO 4 central-mode pair cited by OWNd #137 (`*4*311*2##` NACK, +`*4*311*#2##` ACK and ignored, `run3_climate` t=252 and `probe_followup` t=7) and the dimension 22 +crash behind OWNd #136 (`probe_dim22_confirm`); those frames are not duplicated here. + +## Plant + +| Item | Value | +|---|---| +| Gateway | F461, firmware 2.0.11 (`*#13**16*2*0*11##`), kernel 5.10.35, distribution 2.26.4, WHO 13 device type `200`, WHO 13 dimension 27 model name `70#52#54#49` = "F461", WHO 1013 object model `134.15.5.0`, clock time zone `999`, HMAC SHA-256 on both sessions | +| Lights | BT-F411/4 at A=0 PL=6 (`WHERE 06`) and A=0 PL=7 (`WHERE 07`), Group `#1`, General `0`; an F422 interface with a light at `WHERE 09` whose actuator was missing configurator "2" at capture time: it appears in the area sweep (`*1*0*09##`) but answers no point request or command | +| Shutter | BT-F411/2 at A=0 PL=5 (`WHERE 05`), no position reporting, stops itself 5.1-5.9 s after a run starts | +| Climate | Living Now KW4691 standalone thermostat at zone 2 with a BT-F430/2 heating valve (actuator 1) and a BT-F430/4 fan coil (actuator 2); heating season; no central unit | +| Not present | WHO 16 / 22 sound devices, WHO 18 meters, WHO 5 / 9 alarm, central unit | + +## File format: `myhome_trace_F461_live_2026-10-23.json` + +Standard `MyHOME` derived trace archive: + +- `capture` and `gateway`: metadata with the RFC 5737 documentation IP `192.0.2.92` and the synthetic + MAC `00:03:50:00:10:23`. The MAC also appears as the WHO 13 dimension 12 reply `*#13**12*0*3*80*0*16*35##` + and the IP as `*#13**10*192*0*2*92##`: the decimal bytes of the synthetic values, rewritten consistently. + `capture.runs` lists each run with its source, UTC window and purpose. +- `frames`: the 299 event-session `rx` frames (`timestamp`, `direction: "rx"`, `raw`, `run`, `session: "evt"`), + replayed by `test_device_health_corpus.py` and parsed by `test_trace_oracle_validation.py` (tier 4). +- `rows`: the 939 session-log entries in capture order: + +| `dir` | Meaning | Fields | +|---|---|---| +| `tx` | frame written on the command session | `frame`, `is_status_request` (how OWNd sent it) | +| `rx` | frame read; `session: "cmd"` for the replies and the closing `*#*1##` / `*#*0##`, `session: "evt"` for the event monitor | `frame`; event rows also carry `ownd_class` and `ownd_log`, what OWNd master made of the frame at capture time | +| `result` | what the command session returned for the `tx` | `ack`, `reply_time_s`, `replies` (frames collected on the command session; empty on a NACK and on an ACK that carried no data), `events_after` (event-session frames seen before the next request), `utc`, `note` on the frames the pull requests cite | + +`t` is seconds since the start of that run; `step` is the phase (`oracle_who` / `plant_reads` in run 1, +the run name elsewhere, `listen` for the event-only runs). + +## The runs + +| `run` | UTC | What it was | +|---|---|---| +| `run1_oracle_replay_readonly` | 20:38-20:44 | 165 status / dimension requests mirrored from the firmware-oracle suites (WHO 1, 2, 3, 4, 5, 8, 9, 13, 14, 16, 17, 18, 22, 25, 1001, 1013) plus 31 plant reads (`*#1*06##`, `*#4*2*12##`, `*#13**27##`, ...); read-only, no WHO 4 dimension 22, no report-form writes | +| `run2_reviewer_reads` | 21:02 | `*#1*0007##` / `*#1*07##` / `*#1*7##`, `*#4*0*60##`, `*#4*2*60##`, `*#22*3#1#1*1##`, `*#13**0##` | +| `run3_climate_setpoint_restore` | 21:13 | `*#4*2*#14*0235*3##` restores the setpoint in force, then `*#4*2##` | +| `run4_final_state` | 21:13 | `*#1*06##`, `*#1*07##`, `*#2*05##`, `*#4*2##` after the Home Assistant session (dimension 12 = 14 = 21.0) | +| `run4b_final_state_after_restore` | 23:03 | the same reads two hours after the restore (dimension 12 = 14 = 23.5) | +| `run5_injection_flags` | 21:10 | report-form writes used by the expose engine: `*#18*51*113*100##`, `*#4*#0*0*0215##` | +| `run6_event_session_ha_fixed_integration` | 22:31-23:00 | event session only (1770 s) while a local Home Assistant ran the integration with the fixes under review: six reconnect sweeps, actuator frames after every zone poll, eight shutter runs, one general stop | +| `run7_localha_bus_monitor` | 21:03-21:13 | event session only: the local Home Assistant on the unpatched branch (lights 06 / 07, `close_cover`, `set_cover_position 40`, `close_cover`, `set_temperature 22` then 21, a manual `*#4*2*20##`) | +| `run8_flicker_repro`, `run8b_flicker_repro_who22` | 20:49-20:50 | the reads that preceded a 100 ms pulse of lights 07 and 06 in run 1 (`*#25*21##`, `*#3*#1##`, three WHO 22 reads) re-sent twice: no pulse, no event; the pulse came from somewhere else | + +## What the plant established (each row has its frames in the archive) + +* `*#4*2##` is answered in 1.3 s with `*#4*2*0*0239##`, `*#4*2*12*0235*3##`, `*4*1*2##`, `*#4*2*14*0210*3##`, + `*#4*2*13*00##`: dimension 12 (23.5, the setpoint in force, set at the thermostat) precedes and differs from + dimension 14 (21.0, the last value written from Home Assistant). `*#4*2*#14*0235*3##` (mode 3) is ACKed in + 78 ms, dimension 12 follows at once, dimension 14 catches up 0.3 s later, the season frame stays `*4*1*2##`. +* `*#4*2*20##` is ACKed in 111 ms with `*#4*2#1*20*0##` on the command session, followed by `*#4*2#2*20*5##` on the + event session; `*#4*#0*20##` returns both on the command session after 2.1 s. While the integration polled the + zone (run 6), the two actuator frames followed every `*#4*2##` burst within 3 s. +* `*#4*0*60##` is answered by zone 2 (`*#4*2*60*39##`) after 2.1 s, `*#4*2*60##` in 0.14 s; the thermostat pushed + `*#4*2*60*38##` three times in 30 minutes on its own. +* `*#4*0##`, `*#5*0##`, `*#5*#1##`, `*#9*0##`, `*#17*0##`, `*#14*06##`, `*#25*21##`, `*#3*…##`, `*#8*…##` and all + 18 WHO 16 forms are refused by the gateway itself in under 10 ms. `*#4*#2##`, `*#4*#2*14##`, `*#4*#0##`, + `*#4*#0*14##` and the 13 WHO 22 reads are forwarded to the bus and NACKed after the TX-ACK wait (1.8-2.9 s). +* `*#1*0007##`, `*#1*0001##`, `*#1*0002##` are refused in 5-7 ms; `*#1*07##` answers `*1*0*07##` in 88 ms; + `*#1*7##` is area 7 (ACK, no data, 1.0 s). `*#1*0##` and `*#1*00##` list `06`, `07` and `09`; `*#1*09##` times + out on the bus. Dimension 15 is group-only (`*#1*06*15##` NACK, `*#1*#1*15##` ACK and echoed). +* `*#13**0##` sent on the command session is also delivered on the event session (`*#13**0*23*38*50*999##`, + `*#13**0*00*02*31*999##`). `*#13**10##`, `*#13**11##`, `*#13**12##`, `*#13**19##`, `*#13**27##` are answered + on an F461 (`*#13**27*70#52#54#49##` has no decoder in the pinned OWNd: `OWNMessage.parse` returns `None` + without raising; OWNd #139 adds it). The spontaneous `*#13**12*…##` and `*#1013**1*134*15*5*0##` open every + event session. The gateway's clock echoes carry an empty time-zone field (`*#13**#0*01*40*00*##`). +* `*#18*51*51##`, `*#18*51*113##`, `*#18*51*54##` are ACKed with no data after 0.6-0.8 s (no meter); + `*#18*51*1200##` is refused; `*#18*51*113*100##` (report form) is ACKed in 1.4 s and not echoed; + `*#4*#0*0*0215##` is NACKed after 4.1 s. +* The F411/2 shutter: every run starts with the gateway burst `*2*1000#0*05##`, `*2*0*05##`, `*2*1000#<1|2>*05##`, + `*2*<1|2>*05##` (the order of the two translation echoes and the stop status varies) and a full run ends with + the actuator's own `*2*0*05##` 5.1-5.9 s later (nine full runs); the two `set_cover_position` runs were stopped + by Home Assistant after 2.45 s and 3.65 s. `*#2*05*10##` ACKs with no data, + `*#2*05*11##` is refused. `*2*0*0##` (one general stop from Home Assistant) appears exactly once. +* Lights 06 / 07 switched from Home Assistant echo `*1*<0|1>*0<6|7>##` in about 0.1 s with no group or area frame. + +## What this capture backs + +| Pull request | Frames in this archive | +|---|---| +| OWNd #136 (refuse WHO 4 dimension 22 in every send path) | not in this capture (no dimension 22 was sent); the crash is `probe_dim22_confirm` in `f461_live_2026-10-15` | +| OWNd #137 (`set_central_mode` requires a central-unit address) | `*#4*#2##`, `*#4*#2*14##`, `*#4*#0##`, `*#4*#0*14##` NACK after the bus timeout on a plant without a central unit (run 1); the `*4*311*2##` NACK / `*4*311*#2##` ACK pair is in `f461_live_2026-10-15` | +| OWNd #138 (`#`-prefixed dimension 14 setpoints, WHO 13 clock echoes) | `*#4*2#1*#20*0##` (run 6, a `#`-prefixed dimension echo), `*#13**#0*01*40*00*##` / `*#13**#1*06*24*10*2026##` clock echoes on the event session (run 6) | +| OWNd #139 (WHO 13 dimension 27 model name, WHO 1001 diagnostic event) | `*#13**27##` -> `*#13**27*70#52#54#49##` (run 1); `*#1001*74##` NACK (no WHO 1001 device on this plant) | +| OWNd #140 (`actuators_status` builder) | `*#4*2*20##` -> `*#4*2#1*20*0##`, `*#4*2#2*20*5##`; `*#4*#0*20##` (run 1, run 6, run 7) | +| OWNd #141 (`normalize_where` area-0 four-digit points) | `*#1*0007##` NACK vs `*#1*07##` ACK vs `*#1*7##` (run 2); `*#1*0001##`, `*#1*0002##` NACK (run 1) | +| OWNd #142 (drop WHO 16 from the F461 profile) | all 18 WHO 16 requests NACK in under 10 ms (run 1) | +| MyHOME #791 (setpoint in force = dimension 12) | `*#4*2##` reply order and dimension 12 != 14 (run 1, run 4); `*#4*2*#14*0235*3##` restore (run 3, run 4b) | +| MyHOME #792 (request dimension 20 on add and after reconnect) | `*#4*2*20##`, `*#4*#0*20##` (run 1); the actuator frames after every reconnect (run 6); the manual request (run 7) | +| MyHOME #793 (humidity poll gate) | `*#4*0*60##`, `*#4*2*60##` (run 2); spontaneous `*#4*2*60*38##` (run 6) | +| MyHOME #794 (skip the startup requests the firmware refuses) | `*#4*0##`, `*#16*0*5##`, `*#5*0##` NACK in under 10 ms (run 1) | +| MyHOME #795 (timed cover starts unknown) | the shutter runs and their hardware stops 5.1-5.9 s later (run 6, run 7) | +| MyHOME #796 (yaml `class:` for WHO 2) | nothing on the bus; configuration only | +| MyHOME #797 (scope events only for frames that carry a state) | one `*2*0*0##` (run 6); light toggles without group / area frames (run 7) | +| MyHOME #798 (canonicalise four-digit area-0 addresses) | `*#1*0007##` NACK, `*#1*07##` ACK (run 2) | + +Tests: `tests/test_f461_live_2026_10_23_trace.py`. diff --git a/tests/fixtures/traces/f461_live_2026-10-23/myhome_trace_F461_live_2026-10-23.json b/tests/fixtures/traces/f461_live_2026-10-23/myhome_trace_F461_live_2026-10-23.json new file mode 100644 index 000000000..56bc5de05 --- /dev/null +++ b/tests/fixtures/traces/f461_live_2026-10-23/myhome_trace_F461_live_2026-10-23.json @@ -0,0 +1,9720 @@ +{ + "capture": { + "kind": "derived_trace_archive", + "started_at": "2026-10-23T20:38:04+00:00", + "notes": "Live BTicino F461 (firmware 2.0.11 / WHO 13 device type 200 / WHO 1013 134.15.5.0) multi-session bus capture of 2026-10-23 recorded with OWNd master on the physical test plant: BT-F411/4 lights at WHERE 06 and 07 (Group #1, General 0), an F422 interface with a light at WHERE 09 whose actuator lacked configurator 2 at capture time (it reports in the area sweep but answers no point command), BT-F411/2 5 s timed shutter at WHERE 05, Living Now KW4691 standalone thermostat at Zone 2 with a BT-F430/2 heating valve (actuator 1) and a BT-F430/4 fan coil (actuator 2); no central unit, no WHO 16 / 22 devices. Purpose: the physical evidence behind OWNd pull requests 136-142 and MyHOME pull requests 791-798 (oracle replay of 165 read-only requests, reviewer reads, setpoint restore, report-form writes, and the event-session bus while the fixed integration ran in a local Home Assistant). The *4*311*2## NACK / *4*311*#2## ACK pair cited by OWNd 137 is in the earlier capture of the same plant, tests/fixtures/traces/f461_live_2026-10-15 (run3_climate, probe_followup).", + "window": { + "first": "2026-10-23T20:38:04+00:00", + "last": "2026-10-23T23:03:07+00:00", + "frames": 299, + "rows": 939 + }, + "runs": [ + {"run": "run1_oracle_replay_readonly", "source": "replay_readonly.jsonl", "utc": "20:38:05-20:44:27", "rows": 603, "frames": 69, "purpose": "165 status / dimension requests mirrored from the firmware-oracle suites (WHO 1, 2, 3, 4, 5, 8, 9, 13, 14, 16, 17, 18, 22, 25, 1001, 1013) plus 31 plant reads; read-only, no WHO 4 dimension 22, no report-form writes"}, + {"run": "run2_reviewer_reads", "source": "reviewer_reads.jsonl", "utc": "21:02:20-21:02:32", "rows": 29, "frames": 4, "purpose": "address spellings *#1*0007## / *#1*07## / *#1*7##, humidity *#4*0*60## and *#4*2*60##, a WHO 22 read, *#13**0## echoed on the event session"}, + {"run": "run3_climate_setpoint_restore", "source": "restore_setpoint.jsonl", "utc": "21:13:33-21:13:39", "rows": 19, "frames": 8, "purpose": "*#4*2*#14*0235*3## restores the setpoint in force, then *#4*2## shows the reply order 0, 12, season, 14, 13"}, + {"run": "run4_final_state", "source": "final_state.jsonl", "utc": "21:13:17-21:13:21", "rows": 28, "frames": 8, "purpose": "final plant state after the Home Assistant session: lights 06 / 07, cover 05, zone 2 (*#4*2## with dimension 12 = 21.0)"}, + {"run": "run4b_final_state_after_restore", "source": "final_state_2.jsonl", "utc": "23:03:03-23:03:07", "rows": 28, "frames": 8, "purpose": "same reads two hours later: dimension 12 and 14 both 23.5 after the restore"}, + {"run": "run5_injection_flags", "source": "injection_flags.jsonl", "utc": "21:10:36-21:10:42", "rows": 6, "frames": 0, "purpose": "report-form writes used by the expose engine: *#18*51*113*100## ACK (not echoed), *#4*#0*0*0215## NACK after the bus timeout (no central unit)"}, + {"run": "run6_event_session_ha_fixed_integration", "source": "verify_bus.jsonl", "utc": "22:31:06-23:00:36", "rows": 171, "frames": 171, "purpose": "event session only, 1770 s listen while a local Home Assistant ran the integration under test: startup sweeps, *#4*#0*20## actuator replies after every reconnect, cover 05 runs, one *2*0*0## general stop, the spontaneous WHO 13 / 1013 frames at connect"}, + {"run": "run7_localha_bus_monitor", "source": "localha_session_bus.jsonl", "utc": "21:03:01-21:13:03", "rows": 31, "frames": 31, "purpose": "event session only, bus monitor of the local Home Assistant session: light 06 / 07 toggles, cover 05 close / position / close, setpoint 22.0 then 21.0, the manual *#4*2*20## reply"}, + {"run": "run8_flicker_repro", "source": "repro_flicker.jsonl", "utc": "20:49:37-20:49:49", "rows": 9, "frames": 0, "purpose": "re-sent *#25*21## and *#3*#1## after a 100 ms light pulse was seen during run1 at 20:42:07 UTC; not reproduced, the pulse came from elsewhere"}, + {"run": "run8b_flicker_repro_who22", "source": "repro_flicker2.jsonl", "utc": "20:50:05-20:50:14", "rows": 15, "frames": 0, "purpose": "second attempt with the WHO 22 reads that preceded the pulse in run1; not reproduced"} + ] + }, + "gateway": { + "model": "F461", + "manufacturer": "BTicino", + "firmware": "2.0.11", + "kernel": "5.10.35", + "distribution": "2.26.4", + "ip": "192.0.2.92", + "mac": "00:03:50:00:10:23", + "identification": { + "model": "F461", + "who13_code": "200", + "who13_model_name": "F461", + "who1013_code": "134" + } + }, + "frames": [ + {"timestamp": 1.148, "direction": "rx", "raw": "*1*0*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 1.188, "direction": "rx", "raw": "*1*0*07##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 1.228, "direction": "rx", "raw": "*2*0*05##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 1.299, "direction": "rx", "raw": "*1*0*09##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 5.804, "direction": "rx", "raw": "*2*0*05##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 5.851, "direction": "rx", "raw": "*1*0*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 5.891, "direction": "rx", "raw": "*1*0*07##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 5.94, "direction": "rx", "raw": "*2*0*05##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 5.98, "direction": "rx", "raw": "*1*0*09##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 45.312, "direction": "rx", "raw": "*#1013**1*134*15*5*0##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 46.52, "direction": "rx", "raw": "*#13**0*23*38*50*999##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 47.73, "direction": "rx", "raw": "*#13**1*05*23*10*2026##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 48.938, "direction": "rx", "raw": "*#13**15*200##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 50.149, "direction": "rx", "raw": "*#13**16*2*0*11##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 51.359, "direction": "rx", "raw": "*#13**22*23*38*55*999*05*23*10*2026##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 52.588, "direction": "rx", "raw": "*#13**23*5*10*35##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 53.797, "direction": "rx", "raw": "*#13**24*2*26*4##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 116.485, "direction": "rx", "raw": "*#13**#1*05*23*10*2026##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 116.486, "direction": "rx", "raw": "*#13**#0*23*40*00*##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 174.88, "direction": "rx", "raw": "*1*0*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 174.928, "direction": "rx", "raw": "*1*0*07##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 174.97, "direction": "rx", "raw": "*2*0*05##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 175.049, "direction": "rx", "raw": "*1*0*09##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 242.983, "direction": "rx", "raw": "*1*1*07##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 243.086, "direction": "rx", "raw": "*1*0*07##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 243.19, "direction": "rx", "raw": "*1*1*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 243.295, "direction": "rx", "raw": "*1*0*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 258.456, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 258.512, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 260.944, "direction": "rx", "raw": "*#4*2*60*39##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 316.173, "direction": "rx", "raw": "*1*0*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 316.212, "direction": "rx", "raw": "*1*0*07##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 316.253, "direction": "rx", "raw": "*2*0*05##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 316.325, "direction": "rx", "raw": "*1*0*09##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 318.157, "direction": "rx", "raw": "*2*0*05##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 318.205, "direction": "rx", "raw": "*1*0*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 318.253, "direction": "rx", "raw": "*1*0*07##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 318.325, "direction": "rx", "raw": "*1*0*09##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 324.613, "direction": "rx", "raw": "*2*0*05##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 325.229, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 325.545, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 325.547, "direction": "rx", "raw": "*4*1*2##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 325.849, "direction": "rx", "raw": "*#4*2*14*0210*3##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 325.96, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 328.246, "direction": "rx", "raw": "*#4*2*60*39##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 333.676, "direction": "rx", "raw": "*1*0*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 334.961, "direction": "rx", "raw": "*1*0*07##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 341.7, "direction": "rx", "raw": "*1*0*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 343.028, "direction": "rx", "raw": "*1*0*06##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 345.524, "direction": "rx", "raw": "*#1*#1*15##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 346.805, "direction": "rx", "raw": "*2*0*05##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 352.097, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 352.403, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 352.405, "direction": "rx", "raw": "*4*1*2##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 352.722, "direction": "rx", "raw": "*#4*2*14*0210*3##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 352.815, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 354.135, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 355.447, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 355.45, "direction": "rx", "raw": "*4*1*2##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 356.769, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 358.062, "direction": "rx", "raw": "*#4*2*14*0210*3##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 359.375, "direction": "rx", "raw": "*#4*2*19*5*0##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 360.686, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 360.749, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 372.948, "direction": "rx", "raw": "*#13**10*192*0*2*92##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 374.159, "direction": "rx", "raw": "*#13**11*255*255*255*0##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 375.369, "direction": "rx", "raw": "*#13**12*0*3*80*0*16*35##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 378.994, "direction": "rx", "raw": "*#13**27*70#52#54#49##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 380.204, "direction": "rx", "raw": "*#13**19*0*0*38*54##", "run": "run1_oracle_replay_readonly", "session": "evt"}, + {"timestamp": 2.333, "direction": "rx", "raw": "*1*0*07##", "run": "run2_reviewer_reads", "session": "evt"}, + {"timestamp": 5.869, "direction": "rx", "raw": "*#4*2*60*39##", "run": "run2_reviewer_reads", "session": "evt"}, + {"timestamp": 9.214, "direction": "rx", "raw": "*#4*2*60*39##", "run": "run2_reviewer_reads", "session": "evt"}, + {"timestamp": 13.632, "direction": "rx", "raw": "*#13**0*00*02*31*999##", "run": "run2_reviewer_reads", "session": "evt"}, + {"timestamp": 1.232, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 1.235, "direction": "rx", "raw": "*4*1*2##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 1.267, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 3.704, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 4.007, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 4.009, "direction": "rx", "raw": "*4*1*2##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 4.312, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 4.396, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 1.143, "direction": "rx", "raw": "*1*0*06##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 1.735, "direction": "rx", "raw": "*1*0*07##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 2.344, "direction": "rx", "raw": "*2*0*05##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 3.427, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 3.735, "direction": "rx", "raw": "*#4*2*12*0210*3##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 3.739, "direction": "rx", "raw": "*4*1*2##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 4.035, "direction": "rx", "raw": "*#4*2*14*0210*3##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 4.112, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 1.149, "direction": "rx", "raw": "*1*0*06##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 1.741, "direction": "rx", "raw": "*1*0*07##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 2.326, "direction": "rx", "raw": "*2*0*05##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 3.452, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 3.724, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 3.727, "direction": "rx", "raw": "*4*1*2##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 4.034, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 4.134, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 25.965, "direction": "rx", "raw": "*#13**12*0*3*80*0*16*35##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 25.974, "direction": "rx", "raw": "*#1013**1*134*15*5*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 26.164, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 26.21, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 26.25, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 26.322, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 28.171, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 28.212, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 28.259, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 28.332, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 30.148, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 30.768, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 31.097, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 31.099, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 31.407, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 31.511, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 31.66, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 31.715, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 71.297, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 71.333, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 71.373, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 71.393, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 76.506, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 85.93, "direction": "rx", "raw": "*1*1*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 88.249, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 163.434, "direction": "rx", "raw": "*2*0*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 201.962, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 202.002, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 202.05, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 202.121, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 204.058, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 204.107, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 204.146, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 204.22, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 206.036, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 206.678, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 206.991, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 206.994, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 207.294, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 207.387, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 209.667, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 209.723, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 214.202, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 214.249, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 214.282, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 214.353, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 216.201, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 216.249, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 216.307, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 216.338, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 218.156, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 218.884, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 219.124, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 219.132, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 219.398, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 219.54, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 221.891, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 221.938, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 460.582, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 460.634, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 460.671, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 460.751, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 462.679, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 462.726, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 462.775, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 462.847, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 464.784, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 465.404, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 465.723, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 465.727, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 466.021, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 466.104, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 468.386, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 468.429, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 468.473, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 560.258, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 560.262, "direction": "rx", "raw": "*#13**#0*01*40*00*##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 808.031, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 808.074, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 808.111, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 808.152, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 809.951, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 809.995, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 810.04, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 810.112, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 811.96, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 812.588, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 812.9, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 812.903, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 813.219, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 813.296, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 815.576, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 815.62, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 819.382, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 819.407, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 819.448, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 819.479, "direction": "rx", "raw": "*2*1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 825.168, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 829.063, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 829.079, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 829.128, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 829.152, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 832.806, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 832.831, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 835.158, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 835.191, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 835.223, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 835.263, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 841.111, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 881.384, "direction": "rx", "raw": "*#4*2*60*38##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1153.503, "direction": "rx", "raw": "*#4*2#1*#20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1153.535, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1160.117, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1160.118, "direction": "rx", "raw": "*#13**#0*01*50*00*##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1611.985, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1612.033, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1612.083, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1612.113, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1612.17, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1613.972, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1614.019, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1614.059, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1614.14, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1615.988, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1616.624, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1616.953, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1616.955, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1617.258, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1617.349, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1619.695, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1619.737, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1622.619, "direction": "rx", "raw": "*#4*2*60*38##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1624.734, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1624.758, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1624.815, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1624.847, "direction": "rx", "raw": "*2*1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1630.61, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1632.239, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1632.273, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1632.303, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1632.32, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1637.584, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1738.85, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1738.89, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1738.93, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1739.01, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1740.859, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1740.905, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1740.953, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1741.026, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1742.859, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1743.478, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1743.782, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1743.784, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1744.086, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1744.204, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1746.499, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1746.546, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1749.435, "direction": "rx", "raw": "*#4*2*60*38##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1759.563, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1759.566, "direction": "rx", "raw": "*#13**#0*02*00*00*##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1780.8, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1780.842, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1780.888, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1780.913, "direction": "rx", "raw": "*2*1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1786.082, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1790.497, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1790.523, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1790.565, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1790.594, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1796.061, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2.922, "direction": "rx", "raw": "*1*0*06##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 17.369, "direction": "rx", "raw": "*1*1*06##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 19.2, "direction": "rx", "raw": "*1*0*06##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 41.464, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 41.49, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 41.531, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 41.561, "direction": "rx", "raw": "*2*2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 47.105, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 68.215, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 68.249, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 68.273, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 68.314, "direction": "rx", "raw": "*2*1*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 70.76, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 70.777, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 83.37, "direction": "rx", "raw": "*#4*2*12*0220*3##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 83.372, "direction": "rx", "raw": "*4*1*2##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 83.41, "direction": "rx", "raw": "*#4*2*0*0240##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 94.067, "direction": "rx", "raw": "*#4*2*12*0210*3##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 94.069, "direction": "rx", "raw": "*4*1*2##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 94.113, "direction": "rx", "raw": "*#4*2*0*0240##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 107.296, "direction": "rx", "raw": "*1*1*07##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 110.296, "direction": "rx", "raw": "*1*0*07##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 371.087, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 371.15, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 371.199, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 380.284, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 380.309, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 380.342, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 380.381, "direction": "rx", "raw": "*2*2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 386.109, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 605.147, "direction": "rx", "raw": "*1*0*07##", "run": "run7_localha_bus_monitor", "session": "evt"} + ], + "rows": [ + { + "run": "run1_oracle_replay_readonly", + "t": 1.043, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 1.148, + "step": "oracle_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 1.188, + "step": "oracle_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 1.228, + "step": "oracle_who1", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 1.299, + "step": "oracle_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 2.301, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*06##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 2.301, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*07##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 2.301, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*09##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 2.301, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 2.301, + "utc": "20:38:07", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*0##", + "ack": true, + "reply_time_s": 1.258, + "replies": [ + "*1*0*06##", + "*1*0*07##", + "*1*0*09##" + ], + "events_after": [ + "*1*0*06##", + "*1*0*07##", + "*2*0*05##", + "*1*0*09##" + ], + "note": "area_0_sweep_reports_06_07_and_09" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 3.501, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0*12##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 4.507, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 4.507, + "utc": "20:38:09", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*0*12##", + "ack": true, + "reply_time_s": 1.006, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.707, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*00##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.804, + "step": "oracle_who1", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.851, + "step": "oracle_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.891, + "step": "oracle_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.94, + "step": "oracle_who1", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.98, + "step": "oracle_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 6.979, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*06##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 6.979, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*07##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 6.979, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*09##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 6.979, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 6.979, + "utc": "20:38:12", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*00##", + "ack": true, + "reply_time_s": 1.272, + "replies": [ + "*1*0*06##", + "*1*0*07##", + "*1*0*09##" + ], + "events_after": [ + "*2*0*05##", + "*1*0*06##", + "*1*0*07##", + "*2*0*05##", + "*1*0*09##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 8.18, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0001##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 8.185, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 8.185, + "utc": "20:38:13", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*0001##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [], + "note": "four_digit_area0_point_refused_locally" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 9.385, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0002##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 9.39, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 9.39, + "utc": "20:38:14", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*0002##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [], + "note": "four_digit_area0_point_refused_locally" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 10.592, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0002#4#01##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 10.597, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 10.597, + "utc": "20:38:15", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*0002#4#01##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 11.797, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0010##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 13.805, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 13.805, + "utc": "20:38:19", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*0010##", + "ack": false, + "reply_time_s": 2.008, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 15.006, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0010#4#01##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 17.013, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 17.013, + "utc": "20:38:22", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*0010#4#01##", + "ack": false, + "reply_time_s": 2.007, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 18.214, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0012*14##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 20.222, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 20.222, + "utc": "20:38:25", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*0012*14##", + "ack": false, + "reply_time_s": 2.008, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 21.423, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0015##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 23.43, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 23.43, + "utc": "20:38:28", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*0015##", + "ack": false, + "reply_time_s": 2.007, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 24.63, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*02##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 26.637, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 26.637, + "utc": "20:38:31", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*02##", + "ack": false, + "reply_time_s": 2.007, + "replies": [], + "events_after": [], + "note": "unpopulated_point_02_nack_after_bus_timeout" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 27.838, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 28.845, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 28.845, + "utc": "20:38:34", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*2##", + "ack": true, + "reply_time_s": 1.007, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 30.053, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*31##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 32.058, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 32.058, + "utc": "20:38:37", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*31##", + "ack": false, + "reply_time_s": 2.005, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 33.258, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*31*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 35.266, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 35.266, + "utc": "20:38:40", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*31*1##", + "ack": false, + "reply_time_s": 2.008, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 36.476, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*31*4##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 38.484, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 38.484, + "utc": "20:38:43", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*31*4##", + "ack": false, + "reply_time_s": 2.008, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 39.685, + "step": "oracle_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*74##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 41.691, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 41.691, + "utc": "20:38:47", + "step": "oracle_who1", + "dir": "result", + "frame": "*#1*74##", + "ack": false, + "reply_time_s": 2.006, + "replies": [], + "events_after": [], + "note": "where_74_nack_oracle_divergence" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 42.892, + "step": "oracle_who1001", + "dir": "tx", + "session": "cmd", + "frame": "*#1001*74##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 42.898, + "step": "oracle_who1001", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 42.898, + "utc": "20:38:48", + "step": "oracle_who1001", + "dir": "result", + "frame": "*#1001*74##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 44.097, + "step": "oracle_who1013", + "dir": "tx", + "session": "cmd", + "frame": "*#1013*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 44.104, + "step": "oracle_who1013", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 44.104, + "utc": "20:38:49", + "step": "oracle_who1013", + "dir": "result", + "frame": "*#1013*0##", + "ack": false, + "reply_time_s": 0.007, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 45.305, + "step": "oracle_who1013", + "dir": "tx", + "session": "cmd", + "frame": "*#1013*0*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 45.312, + "step": "oracle_who1013", + "dir": "rx", + "session": "evt", + "frame": "*#1013**1*134*15*5*0##", + "ownd_class": "OWNGatewayDiagnosticEvent", + "ownd_log": "Gateway diagnostic object model is: F461 (134)." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 45.315, + "step": "oracle_who1013", + "dir": "rx", + "session": "cmd", + "frame": "*#1013**1*134*15*5*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 45.315, + "step": "oracle_who1013", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 45.315, + "utc": "20:38:50", + "step": "oracle_who1013", + "dir": "result", + "frame": "*#1013*0*1##", + "ack": true, + "reply_time_s": 0.01, + "replies": [ + "*#1013**1*134*15*5*0##" + ], + "events_after": [ + "*#1013**1*134*15*5*0##" + ], + "note": "who1013_object_model_134_15_5_0" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 46.515, + "step": "oracle_who13", + "dir": "tx", + "session": "cmd", + "frame": "*#13**0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 46.52, + "step": "oracle_who13", + "dir": "rx", + "session": "evt", + "frame": "*#13**0*23*38*50*999##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal time is: 23:38:50." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 46.523, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#13**0*23*38*50*999##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 46.523, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 46.523, + "utc": "20:38:51", + "step": "oracle_who13", + "dir": "result", + "frame": "*#13**0##", + "ack": true, + "reply_time_s": 0.008, + "replies": [ + "*#13**0*23*38*50*999##" + ], + "events_after": [ + "*#13**0*23*38*50*999##" + ], + "note": "who13_time_echoed_on_evt" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 47.724, + "step": "oracle_who13", + "dir": "tx", + "session": "cmd", + "frame": "*#13**1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 47.73, + "step": "oracle_who13", + "dir": "rx", + "session": "evt", + "frame": "*#13**1*05*23*10*2026##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal date is: 2026-10-23." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 47.733, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#13**1*05*23*10*2026##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 47.733, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 47.733, + "utc": "20:38:53", + "step": "oracle_who13", + "dir": "result", + "frame": "*#13**1##", + "ack": true, + "reply_time_s": 0.009, + "replies": [ + "*#13**1*05*23*10*2026##" + ], + "events_after": [ + "*#13**1*05*23*10*2026##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 48.933, + "step": "oracle_who13", + "dir": "tx", + "session": "cmd", + "frame": "*#13**15##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 48.938, + "step": "oracle_who13", + "dir": "rx", + "session": "evt", + "frame": "*#13**15*200##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway device type is: F454 / MyHomeServer1 / MH202 / F461 / H4890 / F450 / F459 / F460 / MH201." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 48.944, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#13**15*200##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 48.944, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 48.944, + "utc": "20:38:54", + "step": "oracle_who13", + "dir": "result", + "frame": "*#13**15##", + "ack": true, + "reply_time_s": 0.011, + "replies": [ + "*#13**15*200##" + ], + "events_after": [ + "*#13**15*200##" + ], + "note": "who13_device_type_200" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 50.145, + "step": "oracle_who13", + "dir": "tx", + "session": "cmd", + "frame": "*#13**16##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 50.149, + "step": "oracle_who13", + "dir": "rx", + "session": "evt", + "frame": "*#13**16*2*0*11##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's firmware version is: 2.0.11." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 50.153, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#13**16*2*0*11##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 50.153, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 50.153, + "utc": "20:38:55", + "step": "oracle_who13", + "dir": "result", + "frame": "*#13**16##", + "ack": true, + "reply_time_s": 0.008, + "replies": [ + "*#13**16*2*0*11##" + ], + "events_after": [ + "*#13**16*2*0*11##" + ], + "note": "who13_firmware_2_0_11" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 51.354, + "step": "oracle_who13", + "dir": "tx", + "session": "cmd", + "frame": "*#13**22##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 51.359, + "step": "oracle_who13", + "dir": "rx", + "session": "evt", + "frame": "*#13**22*23*38*55*999*05*23*10*2026##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal datetime is: 2026-10-23 23:38:55." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 51.381, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#13**22*23*38*55*999*05*23*10*2026##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 51.381, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 51.381, + "utc": "20:38:56", + "step": "oracle_who13", + "dir": "result", + "frame": "*#13**22##", + "ack": true, + "reply_time_s": 0.027, + "replies": [ + "*#13**22*23*38*55*999*05*23*10*2026##" + ], + "events_after": [ + "*#13**22*23*38*55*999*05*23*10*2026##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 52.583, + "step": "oracle_who13", + "dir": "tx", + "session": "cmd", + "frame": "*#13**23##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 52.588, + "step": "oracle_who13", + "dir": "rx", + "session": "evt", + "frame": "*#13**23*5*10*35##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's kernel version is: 5.10.35." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 52.592, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#13**23*5*10*35##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 52.592, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 52.592, + "utc": "20:38:57", + "step": "oracle_who13", + "dir": "result", + "frame": "*#13**23##", + "ack": true, + "reply_time_s": 0.009, + "replies": [ + "*#13**23*5*10*35##" + ], + "events_after": [ + "*#13**23*5*10*35##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 53.793, + "step": "oracle_who13", + "dir": "tx", + "session": "cmd", + "frame": "*#13**24##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 53.797, + "step": "oracle_who13", + "dir": "rx", + "session": "evt", + "frame": "*#13**24*2*26*4##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's distribution version is: 2.26.4." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 53.825, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#13**24*2*26*4##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 53.825, + "step": "oracle_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 53.825, + "utc": "20:38:59", + "step": "oracle_who13", + "dir": "result", + "frame": "*#13**24##", + "ack": true, + "reply_time_s": 0.032, + "replies": [ + "*#13**24*2*26*4##" + ], + "events_after": [ + "*#13**24*2*26*4##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 55.025, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 55.029, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 55.029, + "utc": "20:39:00", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*0##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 56.23, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*0*5##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 56.235, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 56.235, + "utc": "20:39:01", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*0*5##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [], + "note": "who16_refused_locally" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 57.436, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*100*5##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 57.44, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 57.44, + "utc": "20:39:02", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*100*5##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 58.64, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*101##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 58.645, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 58.645, + "utc": "20:39:03", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*101##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 59.845, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*101*5##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 59.851, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 59.851, + "utc": "20:39:05", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*101*5##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 61.052, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*101*6##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 61.062, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 61.062, + "utc": "20:39:06", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*101*6##", + "ack": false, + "reply_time_s": 0.01, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 62.263, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*101*7##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 62.266, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 62.266, + "utc": "20:39:07", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*101*7##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 63.466, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*101*8##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 63.47, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 63.47, + "utc": "20:39:08", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*101*8##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 64.671, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*101*9##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 64.674, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 64.674, + "utc": "20:39:09", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*101*9##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 65.874, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*102*5##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 65.877, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 65.877, + "utc": "20:39:11", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*102*5##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 67.078, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*102*6##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 67.081, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 67.081, + "utc": "20:39:12", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*102*6##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 68.283, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*102*7##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 68.286, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 68.286, + "utc": "20:39:13", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*102*7##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 69.487, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*102*8##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 69.491, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 69.491, + "utc": "20:39:14", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*102*8##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 70.692, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*102*9##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 70.695, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 70.695, + "utc": "20:39:16", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*102*9##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 71.896, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*103*5##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 71.899, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 71.899, + "utc": "20:39:17", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*103*5##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 73.099, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*104*5##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 73.103, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 73.103, + "utc": "20:39:18", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*104*5##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 74.304, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*21*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 74.308, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 74.308, + "utc": "20:39:19", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*21*1##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 75.509, + "step": "oracle_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*21*5##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 75.512, + "step": "oracle_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 75.512, + "utc": "20:39:20", + "step": "oracle_who16", + "dir": "result", + "frame": "*#16*21*5##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 76.713, + "step": "oracle_who17", + "dir": "tx", + "session": "cmd", + "frame": "*#17*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 76.717, + "step": "oracle_who17", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 76.717, + "utc": "20:39:22", + "step": "oracle_who17", + "dir": "result", + "frame": "*#17*0##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 77.917, + "step": "oracle_who17", + "dir": "tx", + "session": "cmd", + "frame": "*#17*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 77.921, + "step": "oracle_who17", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 77.921, + "utc": "20:39:23", + "step": "oracle_who17", + "dir": "result", + "frame": "*#17*1##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 79.121, + "step": "oracle_who17", + "dir": "tx", + "session": "cmd", + "frame": "*#17*1*40##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 79.126, + "step": "oracle_who17", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 79.126, + "utc": "20:39:24", + "step": "oracle_who17", + "dir": "result", + "frame": "*#17*1*40##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 80.327, + "step": "oracle_who17", + "dir": "tx", + "session": "cmd", + "frame": "*#17*1*41##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 80.33, + "step": "oracle_who17", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 80.33, + "utc": "20:39:25", + "step": "oracle_who17", + "dir": "result", + "frame": "*#17*1*41##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 81.549, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*11*212##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 81.949, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 81.949, + "utc": "20:39:27", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*11*212##", + "ack": true, + "reply_time_s": 0.4, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 83.149, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*11*250##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 83.934, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 83.934, + "utc": "20:39:29", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*11*250##", + "ack": true, + "reply_time_s": 0.785, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 85.135, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*11*251##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 85.939, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 85.939, + "utc": "20:39:31", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*11*251##", + "ack": true, + "reply_time_s": 0.804, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 87.139, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*11*258##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 87.944, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 87.944, + "utc": "20:39:33", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*11*258##", + "ack": true, + "reply_time_s": 0.805, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 89.145, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*113##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 89.947, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 89.947, + "utc": "20:39:35", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*113##", + "ack": true, + "reply_time_s": 0.802, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 91.149, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*1130##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 91.953, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 91.953, + "utc": "20:39:37", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*1130##", + "ack": true, + "reply_time_s": 0.804, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 93.17, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*1134##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 93.957, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 93.957, + "utc": "20:39:39", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*1134##", + "ack": true, + "reply_time_s": 0.787, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 95.158, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*1200##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 95.164, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 95.164, + "utc": "20:39:40", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*1200##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [], + "note": "dim1200_read_refused_locally" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 96.365, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*51##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 96.963, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 96.963, + "utc": "20:39:42", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*51##", + "ack": true, + "reply_time_s": 0.598, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 98.164, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*511#10#1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 101.972, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 101.972, + "utc": "20:39:47", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*511#10#1##", + "ack": true, + "reply_time_s": 3.808, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 103.172, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*511#10#2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 106.979, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 106.979, + "utc": "20:39:52", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*511#10#2##", + "ack": true, + "reply_time_s": 3.807, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 108.18, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*512#10##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 112.482, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 112.482, + "utc": "20:39:57", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*512#10##", + "ack": true, + "reply_time_s": 4.302, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 113.683, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*513#10##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 116.485, + "step": "oracle_who18", + "dir": "rx", + "session": "evt", + "frame": "*#13**#1*05*23*10*2026##", + "ownd_class": "OWNGatewayCommand", + "ownd_log": "Gateway broadcasting internal date: 2026-10-23." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 116.486, + "step": "oracle_who18", + "dir": "rx", + "session": "evt", + "frame": "*#13**#0*23*40*00*##", + "ownd_class": "OWNGatewayCommand", + "ownd_log": "Gateway broadcasting internal time: 23:40:00." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 117.49, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 117.49, + "utc": "20:40:02", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*513#10##", + "ack": true, + "reply_time_s": 3.807, + "replies": [], + "events_after": [ + "*#13**#1*05*23*10*2026##", + "*#13**#0*23*40*00*##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 118.69, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*514#10##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 122.498, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 122.498, + "utc": "20:40:07", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*514#10##", + "ack": true, + "reply_time_s": 3.808, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 123.699, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*516##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 127.501, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 127.501, + "utc": "20:40:12", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*516##", + "ack": true, + "reply_time_s": 3.802, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 128.701, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*517#1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 132.508, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 132.508, + "utc": "20:40:17", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*517#1##", + "ack": true, + "reply_time_s": 3.807, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 133.71, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*517#2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 137.518, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 137.518, + "utc": "20:40:22", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*517#2##", + "ack": true, + "reply_time_s": 3.808, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 138.719, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*52##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 138.726, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 138.726, + "utc": "20:40:24", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*52##", + "ack": false, + "reply_time_s": 0.007, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 139.927, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*52#26#9##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 144.531, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 144.531, + "utc": "20:40:29", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*52#26#9##", + "ack": true, + "reply_time_s": 4.604, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 145.732, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*53##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 149.538, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 149.538, + "utc": "20:40:34", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*53##", + "ack": true, + "reply_time_s": 3.806, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 150.741, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*54##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 151.544, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 151.544, + "utc": "20:40:36", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*51*54##", + "ack": true, + "reply_time_s": 0.803, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 152.746, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*71#0*113##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 153.547, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 153.547, + "utc": "20:40:38", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*71#0*113##", + "ack": true, + "reply_time_s": 0.801, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 154.747, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*71#0*51##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 155.552, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 155.552, + "utc": "20:40:40", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*71#0*51##", + "ack": true, + "reply_time_s": 0.805, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 156.754, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*71#0*71##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 158.557, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 158.557, + "utc": "20:40:43", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*71#0*71##", + "ack": true, + "reply_time_s": 1.803, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 159.758, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*71#0*72#1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 163.565, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 163.565, + "utc": "20:40:48", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*71#0*72#1##", + "ack": true, + "reply_time_s": 3.807, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 164.766, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*71#0*72#2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 169.575, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 169.575, + "utc": "20:40:54", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*71#0*72#2##", + "ack": true, + "reply_time_s": 4.809, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 170.777, + "step": "oracle_who18", + "dir": "tx", + "session": "cmd", + "frame": "*#18*71#0*73##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 173.582, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 173.582, + "utc": "20:40:58", + "step": "oracle_who18", + "dir": "result", + "frame": "*#18*71#0*73##", + "ack": true, + "reply_time_s": 2.805, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 174.783, + "step": "oracle_who2", + "dir": "tx", + "session": "cmd", + "frame": "*#2*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 174.88, + "step": "oracle_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 174.928, + "step": "oracle_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 174.97, + "step": "oracle_who2", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 175.049, + "step": "oracle_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 176.051, + "step": "oracle_who2", + "dir": "rx", + "session": "cmd", + "frame": "*2*0*05##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 176.051, + "step": "oracle_who2", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 176.051, + "utc": "20:41:01", + "step": "oracle_who2", + "dir": "result", + "frame": "*#2*0##", + "ack": true, + "reply_time_s": 1.268, + "replies": [ + "*2*0*05##" + ], + "events_after": [ + "*1*0*06##", + "*1*0*07##", + "*2*0*05##", + "*1*0*09##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 177.252, + "step": "oracle_who2", + "dir": "tx", + "session": "cmd", + "frame": "*#2*0#4#02##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 178.33, + "step": "oracle_who2", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 178.33, + "utc": "20:41:03", + "step": "oracle_who2", + "dir": "result", + "frame": "*#2*0#4#02##", + "ack": true, + "reply_time_s": 1.078, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 179.53, + "step": "oracle_who2", + "dir": "tx", + "session": "cmd", + "frame": "*#2*11#4#02##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 180.634, + "step": "oracle_who2", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 180.634, + "utc": "20:41:05", + "step": "oracle_who2", + "dir": "result", + "frame": "*#2*11#4#02##", + "ack": true, + "reply_time_s": 1.104, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 181.835, + "step": "oracle_who2", + "dir": "tx", + "session": "cmd", + "frame": "*#2*11#4#02*10##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 182.913, + "step": "oracle_who2", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 182.913, + "utc": "20:41:08", + "step": "oracle_who2", + "dir": "result", + "frame": "*#2*11#4#02*10##", + "ack": true, + "reply_time_s": 1.078, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 184.114, + "step": "oracle_who2", + "dir": "tx", + "session": "cmd", + "frame": "*#2*31##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 184.393, + "step": "oracle_who2", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 184.393, + "utc": "20:41:09", + "step": "oracle_who2", + "dir": "result", + "frame": "*#2*31##", + "ack": false, + "reply_time_s": 0.279, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 185.594, + "step": "oracle_who2", + "dir": "tx", + "session": "cmd", + "frame": "*#2*31*10##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 186.682, + "step": "oracle_who2", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 186.682, + "utc": "20:41:11", + "step": "oracle_who2", + "dir": "result", + "frame": "*#2*31*10##", + "ack": true, + "reply_time_s": 1.088, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 187.884, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*2#1*10##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 190.594, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 190.594, + "utc": "20:41:15", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*2#1*10##", + "ack": false, + "reply_time_s": 2.71, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 191.795, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*2#1*13##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 194.602, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 194.602, + "utc": "20:41:19", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*2#1*13##", + "ack": false, + "reply_time_s": 2.807, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 195.803, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*2#1*5##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 198.613, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 198.613, + "utc": "20:41:23", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*2#1*5##", + "ack": false, + "reply_time_s": 2.81, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 199.825, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*2#1*6##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 202.631, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 202.631, + "utc": "20:41:27", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*2#1*6##", + "ack": false, + "reply_time_s": 2.806, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 203.832, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#1#1*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 206.627, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 206.627, + "utc": "20:41:31", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*3#1#1*1##", + "ack": false, + "reply_time_s": 2.795, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 207.829, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#1#1*12##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 210.635, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 210.635, + "utc": "20:41:35", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*3#1#1*12##", + "ack": false, + "reply_time_s": 2.806, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 211.84, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#1#1*17##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 214.647, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 214.647, + "utc": "20:41:39", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*3#1#1*17##", + "ack": false, + "reply_time_s": 2.807, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 215.848, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#1#1*19##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 218.651, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 218.651, + "utc": "20:41:43", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*3#1#1*19##", + "ack": false, + "reply_time_s": 2.803, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 219.852, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#1#1*2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 222.661, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 222.661, + "utc": "20:41:47", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*3#1#1*2##", + "ack": false, + "reply_time_s": 2.809, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 223.862, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#1#1*20##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 226.669, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 226.669, + "utc": "20:41:51", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*3#1#1*20##", + "ack": false, + "reply_time_s": 2.807, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 227.87, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#1#1*4##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 230.677, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 230.677, + "utc": "20:41:55", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*3#1#1*4##", + "ack": false, + "reply_time_s": 2.807, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 231.879, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#2#0*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 234.686, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 234.686, + "utc": "20:41:59", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*3#2#0*1##", + "ack": false, + "reply_time_s": 2.807, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 235.886, + "step": "oracle_who22", + "dir": "tx", + "session": "cmd", + "frame": "*#22*5#2#1*5##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 238.693, + "step": "oracle_who22", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 238.693, + "utc": "20:42:04", + "step": "oracle_who22", + "dir": "result", + "frame": "*#22*5#2#1*5##", + "ack": false, + "reply_time_s": 2.807, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 239.893, + "step": "oracle_who25", + "dir": "tx", + "session": "cmd", + "frame": "*#25*21##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 240.843, + "step": "oracle_who25", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 240.843, + "utc": "20:42:06", + "step": "oracle_who25", + "dir": "result", + "frame": "*#25*21##", + "ack": false, + "reply_time_s": 0.95, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 242.045, + "step": "oracle_who3", + "dir": "tx", + "session": "cmd", + "frame": "*#3*#1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 242.049, + "step": "oracle_who3", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 242.049, + "utc": "20:42:07", + "step": "oracle_who3", + "dir": "result", + "frame": "*#3*#1##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [ + "*1*1*07##", + "*1*0*07##", + "*1*1*06##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 242.983, + "step": "oracle_who3", + "dir": "rx", + "session": "evt", + "frame": "*1*1*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched on." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 243.086, + "step": "oracle_who3", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 243.19, + "step": "oracle_who3", + "dir": "rx", + "session": "evt", + "frame": "*1*1*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched on." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 243.25, + "step": "oracle_who3", + "dir": "tx", + "session": "cmd", + "frame": "*#3*#2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 243.253, + "step": "oracle_who3", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 243.253, + "utc": "20:42:08", + "step": "oracle_who3", + "dir": "result", + "frame": "*#3*#2##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [ + "*1*0*06##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 243.295, + "step": "oracle_who3", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 244.454, + "step": "oracle_who3", + "dir": "tx", + "session": "cmd", + "frame": "*#3*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 244.458, + "step": "oracle_who3", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 244.458, + "utc": "20:42:09", + "step": "oracle_who3", + "dir": "result", + "frame": "*#3*0##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 245.66, + "step": "oracle_who3", + "dir": "tx", + "session": "cmd", + "frame": "*#3*10*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 245.666, + "step": "oracle_who3", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 245.666, + "utc": "20:42:10", + "step": "oracle_who3", + "dir": "result", + "frame": "*#3*10*0##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 246.866, + "step": "oracle_who3", + "dir": "tx", + "session": "cmd", + "frame": "*#3*10*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 246.87, + "step": "oracle_who3", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 246.87, + "utc": "20:42:12", + "step": "oracle_who3", + "dir": "result", + "frame": "*#3*10*1##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 248.073, + "step": "oracle_who3", + "dir": "tx", + "session": "cmd", + "frame": "*#3*10*2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 248.077, + "step": "oracle_who3", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 248.077, + "utc": "20:42:13", + "step": "oracle_who3", + "dir": "result", + "frame": "*#3*10*2##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 249.279, + "step": "oracle_who3", + "dir": "tx", + "session": "cmd", + "frame": "*#3*10*3##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 249.287, + "step": "oracle_who3", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 249.287, + "utc": "20:42:14", + "step": "oracle_who3", + "dir": "result", + "frame": "*#3*10*3##", + "ack": false, + "reply_time_s": 0.008, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 250.487, + "step": "oracle_who3", + "dir": "tx", + "session": "cmd", + "frame": "*#3*10*4##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 250.491, + "step": "oracle_who3", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 250.491, + "utc": "20:42:15", + "step": "oracle_who3", + "dir": "result", + "frame": "*#3*10*4##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 251.692, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*#0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 253.91, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 253.91, + "utc": "20:42:19", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*#0##", + "ack": false, + "reply_time_s": 2.218, + "replies": [], + "events_after": [], + "note": "central_status_nack_no_central_unit" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 255.111, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*#0*14##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 257.177, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 257.177, + "utc": "20:42:22", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*#0*14##", + "ack": false, + "reply_time_s": 2.066, + "replies": [], + "events_after": [], + "note": "central_setpoint_nack_no_central_unit" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 258.377, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*#0*20##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 258.456, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 258.512, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 260.514, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2#1*20*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 260.514, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2#2*20*5##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 260.514, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 260.514, + "utc": "20:42:25", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*#0*20##", + "ack": true, + "reply_time_s": 2.137, + "replies": [ + "*#4*2#1*20*0##", + "*#4*2#2*20*5##" + ], + "events_after": [ + "*#4*2#1*20*0##", + "*#4*2#2*20*5##", + "*#4*2*60*39##" + ], + "note": "all_zone_actuators_answer_for_zone_2" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 260.944, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*60*39##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a humidity of 39.0%." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 261.715, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 261.722, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 261.722, + "utc": "20:42:27", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*0##", + "ack": false, + "reply_time_s": 0.007, + "replies": [], + "events_after": [], + "note": "general_zone_status_refused_locally" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 262.922, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 266.2, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 266.2, + "utc": "20:42:31", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1##", + "ack": false, + "reply_time_s": 3.278, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 267.401, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1#1*20##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 269.472, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 269.472, + "utc": "20:42:34", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1#1*20##", + "ack": false, + "reply_time_s": 2.071, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 270.674, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 272.745, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 272.745, + "utc": "20:42:38", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1*0##", + "ack": false, + "reply_time_s": 2.071, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 273.946, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1*11##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 276.019, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 276.019, + "utc": "20:42:41", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1*11##", + "ack": false, + "reply_time_s": 2.073, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 277.219, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1*12##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 279.288, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 279.288, + "utc": "20:42:44", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1*12##", + "ack": false, + "reply_time_s": 2.069, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 280.489, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1*13##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 282.559, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 282.559, + "utc": "20:42:47", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1*13##", + "ack": false, + "reply_time_s": 2.07, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 283.76, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1*14##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 285.823, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 285.823, + "utc": "20:42:51", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1*14##", + "ack": false, + "reply_time_s": 2.063, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 287.024, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1*15#1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 289.112, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 289.112, + "utc": "20:42:54", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1*15#1##", + "ack": false, + "reply_time_s": 2.088, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 290.313, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1*15#2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 292.39, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 292.39, + "utc": "20:42:57", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1*15#2##", + "ack": false, + "reply_time_s": 2.077, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 293.591, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1*19##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 295.664, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 295.664, + "utc": "20:43:00", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1*19##", + "ack": false, + "reply_time_s": 2.073, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 296.865, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*1*20##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 298.935, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 298.935, + "utc": "20:43:04", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*1*20##", + "ack": false, + "reply_time_s": 2.07, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 300.137, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*105*15##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 302.232, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 302.232, + "utc": "20:43:07", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*105*15##", + "ack": false, + "reply_time_s": 2.095, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 303.433, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*23#1*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 303.439, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 303.439, + "utc": "20:43:08", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*23#1*0##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 304.641, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*23#1*15#1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 306.737, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 306.737, + "utc": "20:43:12", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*23#1*15#1##", + "ack": false, + "reply_time_s": 2.096, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 307.938, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*23*11##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 310.015, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 310.015, + "utc": "20:43:15", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*23*11##", + "ack": false, + "reply_time_s": 2.077, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 311.216, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*40*19##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 313.303, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 313.303, + "utc": "20:43:18", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*40*19##", + "ack": false, + "reply_time_s": 2.087, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 314.507, + "step": "oracle_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*41*19##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 316.173, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 316.212, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 316.253, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 316.325, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 318.157, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 318.205, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 318.253, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 318.325, + "step": "oracle_who4", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 320.332, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 320.332, + "utc": "20:43:25", + "step": "oracle_who4", + "dir": "result", + "frame": "*#4*41*19##", + "ack": false, + "reply_time_s": 5.825, + "replies": [], + "events_after": [ + "*1*0*06##", + "*1*0*07##", + "*2*0*05##", + "*1*0*09##", + "*2*0*05##", + "*1*0*06##", + "*1*0*07##", + "*1*0*09##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 321.532, + "step": "oracle_who5", + "dir": "tx", + "session": "cmd", + "frame": "*#5*#1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 321.545, + "step": "oracle_who5", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 321.545, + "utc": "20:43:26", + "step": "oracle_who5", + "dir": "result", + "frame": "*#5*#1##", + "ack": false, + "reply_time_s": 0.013, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 322.747, + "step": "oracle_who5", + "dir": "tx", + "session": "cmd", + "frame": "*#5*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 322.75, + "step": "oracle_who5", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 322.75, + "utc": "20:43:28", + "step": "oracle_who5", + "dir": "result", + "frame": "*#5*0##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [], + "note": "who5_refused_locally" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 323.952, + "step": "oracle_who8", + "dir": "tx", + "session": "cmd", + "frame": "*#8*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 323.956, + "step": "oracle_who8", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 323.956, + "utc": "20:43:29", + "step": "oracle_who8", + "dir": "result", + "frame": "*#8*0##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [ + "*2*0*05##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 324.613, + "step": "oracle_who8", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 325.157, + "step": "oracle_who8", + "dir": "tx", + "session": "cmd", + "frame": "*#8*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 325.161, + "step": "oracle_who8", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 325.161, + "utc": "20:43:30", + "step": "oracle_who8", + "dir": "result", + "frame": "*#8*1##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [ + "*#4*2*0*0239##", + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*14*0210*3##", + "*#4*2*13*00##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 325.229, + "step": "oracle_who8", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 325.545, + "step": "oracle_who8", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 325.547, + "step": "oracle_who8", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 325.849, + "step": "oracle_who8", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 21.0°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 325.96, + "step": "oracle_who8", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 326.362, + "step": "oracle_who8", + "dir": "tx", + "session": "cmd", + "frame": "*#8*11##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 326.366, + "step": "oracle_who8", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 326.366, + "utc": "20:43:31", + "step": "oracle_who8", + "dir": "result", + "frame": "*#8*11##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 327.567, + "step": "oracle_who8", + "dir": "tx", + "session": "cmd", + "frame": "*#8*11*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 327.573, + "step": "oracle_who8", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 327.573, + "utc": "20:43:32", + "step": "oracle_who8", + "dir": "result", + "frame": "*#8*11*0##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [ + "*#4*2*60*39##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 328.246, + "step": "oracle_who8", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*60*39##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a humidity of 39.0%." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 328.774, + "step": "oracle_who8", + "dir": "tx", + "session": "cmd", + "frame": "*#8*20##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 328.778, + "step": "oracle_who8", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 328.778, + "utc": "20:43:34", + "step": "oracle_who8", + "dir": "result", + "frame": "*#8*20##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 329.979, + "step": "oracle_who8", + "dir": "tx", + "session": "cmd", + "frame": "*#8*20*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 329.983, + "step": "oracle_who8", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 329.983, + "utc": "20:43:35", + "step": "oracle_who8", + "dir": "result", + "frame": "*#8*20*0##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 331.184, + "step": "oracle_who9", + "dir": "tx", + "session": "cmd", + "frame": "*#9*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 331.191, + "step": "oracle_who9", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 331.191, + "utc": "20:43:36", + "step": "oracle_who9", + "dir": "result", + "frame": "*#9*0##", + "ack": false, + "reply_time_s": 0.007, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 332.391, + "step": "oracle_who9", + "dir": "tx", + "session": "cmd", + "frame": "*#9*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 332.399, + "step": "oracle_who9", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 332.399, + "utc": "20:43:37", + "step": "oracle_who9", + "dir": "result", + "frame": "*#9*1##", + "ack": false, + "reply_time_s": 0.008, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 333.6, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*06##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 333.676, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 333.679, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*06##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 333.679, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 333.679, + "utc": "20:43:38", + "step": "plant_reads", + "dir": "result", + "frame": "*#1*06##", + "ack": true, + "reply_time_s": 0.079, + "replies": [ + "*1*0*06##" + ], + "events_after": [ + "*1*0*06##" + ], + "note": "poll_light_06" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 334.88, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*07##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 334.961, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 334.965, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*07##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 334.965, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 334.965, + "utc": "20:43:40", + "step": "plant_reads", + "dir": "result", + "frame": "*#1*07##", + "ack": true, + "reply_time_s": 0.085, + "replies": [ + "*1*0*07##" + ], + "events_after": [ + "*1*0*07##" + ], + "note": "poll_light_07" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 336.167, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*09##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 338.174, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 338.174, + "utc": "20:43:43", + "step": "plant_reads", + "dir": "result", + "frame": "*#1*09##", + "ack": false, + "reply_time_s": 2.007, + "replies": [], + "events_after": [], + "note": "poll_light_09_behind_f422_nack" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 339.375, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*#1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 340.382, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 340.382, + "utc": "20:43:45", + "step": "plant_reads", + "dir": "result", + "frame": "*#1*#1##", + "ack": true, + "reply_time_s": 1.007, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 341.583, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*06*1##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 341.7, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 341.702, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*06##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 341.702, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 341.702, + "utc": "20:43:47", + "step": "plant_reads", + "dir": "result", + "frame": "*#1*06*1##", + "ack": true, + "reply_time_s": 0.119, + "replies": [ + "*1*0*06##" + ], + "events_after": [ + "*1*0*06##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 342.902, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*06*4##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 343.028, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 343.03, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*06##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 343.03, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 343.03, + "utc": "20:43:48", + "step": "plant_reads", + "dir": "result", + "frame": "*#1*06*4##", + "ack": true, + "reply_time_s": 0.128, + "replies": [ + "*1*0*06##" + ], + "events_after": [ + "*1*0*06##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 344.231, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*06*15##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 344.236, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 344.236, + "utc": "20:43:49", + "step": "plant_reads", + "dir": "result", + "frame": "*#1*06*15##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [], + "note": "dim15_is_group_only" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 345.437, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*#1*15##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 345.524, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#1*#1*15##", + "ownd_class": "OWNLightingCommand", + "ownd_log": "*#1*#1*15##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 345.526, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 345.526, + "utc": "20:43:50", + "step": "plant_reads", + "dir": "result", + "frame": "*#1*#1*15##", + "ack": true, + "reply_time_s": 0.089, + "replies": [], + "events_after": [ + "*#1*#1*15##" + ], + "note": "group_1_dim15_echoed_on_evt" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 346.727, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#2*05##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 346.805, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 346.809, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*2*0*05##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 346.809, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 346.809, + "utc": "20:43:52", + "step": "plant_reads", + "dir": "result", + "frame": "*#2*05##", + "ack": true, + "reply_time_s": 0.082, + "replies": [ + "*2*0*05##" + ], + "events_after": [ + "*2*0*05##" + ], + "note": "poll_cover_05" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 348.01, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#2*05*10##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 349.102, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 349.102, + "utc": "20:43:54", + "step": "plant_reads", + "dir": "result", + "frame": "*#2*05*10##", + "ack": true, + "reply_time_s": 1.092, + "replies": [], + "events_after": [], + "note": "cover_05_dim10_ack_no_data" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 350.306, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#2*05*11##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 350.312, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 350.312, + "utc": "20:43:55", + "step": "plant_reads", + "dir": "result", + "frame": "*#2*05*11##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [], + "note": "cover_05_dim11_nack" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 351.513, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.097, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.403, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.405, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.722, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 21.0°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.815, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.818, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*0*0239##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.818, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*12*0235*3##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.818, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*4*1*2##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.818, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*14*0210*3##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.818, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*13*00##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.818, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 352.818, + "utc": "20:43:58", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*2##", + "ack": true, + "reply_time_s": 1.305, + "replies": [ + "*#4*2*0*0239##", + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*14*0210*3##", + "*#4*2*13*00##" + ], + "events_after": [ + "*#4*2*0*0239##", + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*14*0210*3##", + "*#4*2*13*00##" + ], + "note": "zone_2_status_dim12_differs_from_dim14" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 354.019, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2*0##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 354.135, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 354.138, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*0*0239##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 354.138, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 354.138, + "utc": "20:43:59", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*2*0##", + "ack": true, + "reply_time_s": 0.119, + "replies": [ + "*#4*2*0*0239##" + ], + "events_after": [ + "*#4*2*0*0239##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 355.339, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2*12##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 355.447, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 355.45, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 355.45, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*12*0235*3##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 355.45, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*4*1*2##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 355.45, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 355.45, + "utc": "20:44:00", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*2*12##", + "ack": true, + "reply_time_s": 0.111, + "replies": [ + "*#4*2*12*0235*3##", + "*4*1*2##" + ], + "events_after": [ + "*#4*2*12*0235*3##", + "*4*1*2##" + ], + "note": "zone_2_dim12_carries_season" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 356.651, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2*13##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 356.769, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 356.771, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*13*00##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 356.771, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 356.771, + "utc": "20:44:02", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*2*13##", + "ack": true, + "reply_time_s": 0.12, + "replies": [ + "*#4*2*13*00##" + ], + "events_after": [ + "*#4*2*13*00##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 357.973, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2*14##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 358.062, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 21.0°C." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 358.066, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*14*0210*3##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 358.066, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 358.066, + "utc": "20:44:03", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*2*14##", + "ack": true, + "reply_time_s": 0.093, + "replies": [ + "*#4*2*14*0210*3##" + ], + "events_after": [ + "*#4*2*14*0210*3##" + ], + "note": "zone_2_dim14_commanded_value" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 359.268, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2*19##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 359.375, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*19*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's cooling fan is off; heating valve is off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 359.378, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*19*5*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 359.378, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 359.378, + "utc": "20:44:04", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*2*19##", + "ack": true, + "reply_time_s": 0.11, + "replies": [ + "*#4*2*19*5*0##" + ], + "events_after": [ + "*#4*2*19*5*0##" + ], + "note": "zone_2_valves_status" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 360.579, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2*20##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 360.686, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 360.69, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2#1*20*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 360.69, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 360.69, + "utc": "20:44:06", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*2*20##", + "ack": true, + "reply_time_s": 0.111, + "replies": [ + "*#4*2#1*20*0##" + ], + "events_after": [ + "*#4*2#1*20*0##", + "*#4*2#2*20*5##" + ], + "note": "zone_2_actuators_two_frames" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 360.749, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 361.894, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2*11##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 363.977, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 363.977, + "utc": "20:44:09", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*2*11##", + "ack": false, + "reply_time_s": 2.083, + "replies": [], + "events_after": [], + "note": "fan_speed_nack_in_heating_season" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 365.179, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*#2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 367.262, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 367.262, + "utc": "20:44:12", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*#2##", + "ack": false, + "reply_time_s": 2.083, + "replies": [], + "events_after": [], + "note": "central_zone_form_nack_no_central_unit" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 368.462, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*#2*14##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 370.533, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 370.533, + "utc": "20:44:15", + "step": "plant_reads", + "dir": "result", + "frame": "*#4*#2*14##", + "ack": false, + "reply_time_s": 2.071, + "replies": [], + "events_after": [], + "note": "central_setpoint_zone_2_nack_no_central_unit" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 371.735, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#14*06##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 371.74, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 371.74, + "utc": "20:44:17", + "step": "plant_reads", + "dir": "result", + "frame": "*#14*06##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [], + "note": "who14_has_no_status_query" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 372.941, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**10##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 372.948, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#13**10*192*0*2*92##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's IP address is: 192.0.2.92." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 372.952, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#13**10*192*0*2*92##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 372.952, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 372.952, + "utc": "20:44:18", + "step": "plant_reads", + "dir": "result", + "frame": "*#13**10##", + "ack": true, + "reply_time_s": 0.011, + "replies": [ + "*#13**10*192*0*2*92##" + ], + "events_after": [ + "*#13**10*192*0*2*92##" + ], + "note": "who13_ip_answered_on_f461" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 374.153, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**11##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 374.159, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#13**11*255*255*255*0##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's netmask is: 255.255.255.0." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 374.163, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#13**11*255*255*255*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 374.163, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 374.163, + "utc": "20:44:19", + "step": "plant_reads", + "dir": "result", + "frame": "*#13**11##", + "ack": true, + "reply_time_s": 0.01, + "replies": [ + "*#13**11*255*255*255*0##" + ], + "events_after": [ + "*#13**11*255*255*255*0##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 375.363, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**12##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 375.369, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#13**12*0*3*80*0*16*35##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's MAC address is: 00:03:50:00:10:23." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 375.373, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#13**12*0*3*80*0*16*35##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 375.373, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 375.373, + "utc": "20:44:20", + "step": "plant_reads", + "dir": "result", + "frame": "*#13**12##", + "ack": true, + "reply_time_s": 0.01, + "replies": [ + "*#13**12*0*3*80*0*16*35##" + ], + "events_after": [ + "*#13**12*0*3*80*0*16*35##" + ], + "note": "who13_mac_answered_on_f461" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 376.574, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**25##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 376.579, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 376.579, + "utc": "20:44:21", + "step": "plant_reads", + "dir": "result", + "frame": "*#13**25##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 377.78, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**26##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 377.786, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 377.786, + "utc": "20:44:23", + "step": "plant_reads", + "dir": "result", + "frame": "*#13**26##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 378.987, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**27##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 378.994, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#13**27*70#52#54#49##", + "ownd_class": "str", + "ownd_log": "" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 378.998, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#13**27*70#52#54#49##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 378.998, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 378.998, + "utc": "20:44:24", + "step": "plant_reads", + "dir": "result", + "frame": "*#13**27##", + "ack": true, + "reply_time_s": 0.011, + "replies": [ + "*#13**27*70#52#54#49##" + ], + "events_after": [ + "*#13**27*70#52#54#49##" + ], + "note": "who13_dim27_model_name_F461_no_ownd_decoder" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 380.199, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**19##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 380.204, + "step": "plant_reads", + "dir": "rx", + "session": "evt", + "frame": "*#13**19*0*0*38*54##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's uptime is: 0:38:54." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 380.208, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#13**19*0*0*38*54##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 380.208, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 380.208, + "utc": "20:44:25", + "step": "plant_reads", + "dir": "result", + "frame": "*#13**19##", + "ack": true, + "reply_time_s": 0.009, + "replies": [ + "*#13**19*0*0*38*54##" + ], + "events_after": [ + "*#13**19*0*0*38*54##" + ] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 381.409, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**2##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 381.415, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 381.415, + "utc": "20:44:26", + "step": "plant_reads", + "dir": "result", + "frame": "*#13**2##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [] + }, + { + "run": "run1_oracle_replay_readonly", + "t": 382.617, + "step": "plant_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**3##", + "is_status_request": true + }, + { + "run": "run1_oracle_replay_readonly", + "t": 382.623, + "step": "plant_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 382.623, + "utc": "20:44:27", + "step": "plant_reads", + "dir": "result", + "frame": "*#13**3##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [] + }, + { + "run": "run2_reviewer_reads", + "t": 1.04, + "step": "reviewer_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0007##", + "is_status_request": true + }, + { + "run": "run2_reviewer_reads", + "t": 1.047, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run2_reviewer_reads", + "t": 1.047, + "utc": "21:02:20", + "step": "reviewer_reads", + "dir": "result", + "frame": "*#1*0007##", + "ack": false, + "reply_time_s": 0.007, + "replies": [], + "events_after": [], + "note": "four_digit_0007_nack" + }, + { + "run": "run2_reviewer_reads", + "t": 2.248, + "step": "reviewer_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*07##", + "is_status_request": true + }, + { + "run": "run2_reviewer_reads", + "t": 2.333, + "step": "reviewer_reads", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run2_reviewer_reads", + "t": 2.336, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*07##" + }, + { + "run": "run2_reviewer_reads", + "t": 2.336, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reviewer_reads", + "t": 2.336, + "utc": "21:02:21", + "step": "reviewer_reads", + "dir": "result", + "frame": "*#1*07##", + "ack": true, + "reply_time_s": 0.088, + "replies": [ + "*1*0*07##" + ], + "events_after": [ + "*1*0*07##" + ], + "note": "two_digit_07_ack" + }, + { + "run": "run2_reviewer_reads", + "t": 3.538, + "step": "reviewer_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#1*7##", + "is_status_request": true + }, + { + "run": "run2_reviewer_reads", + "t": 4.544, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reviewer_reads", + "t": 4.544, + "utc": "21:02:23", + "step": "reviewer_reads", + "dir": "result", + "frame": "*#1*7##", + "ack": true, + "reply_time_s": 1.006, + "replies": [], + "events_after": [], + "note": "one_digit_7_is_area_7_ack_empty" + }, + { + "run": "run2_reviewer_reads", + "t": 5.745, + "step": "reviewer_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*0*60##", + "is_status_request": true + }, + { + "run": "run2_reviewer_reads", + "t": 5.869, + "step": "reviewer_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*60*39##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a humidity of 39.0%." + }, + { + "run": "run2_reviewer_reads", + "t": 7.873, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*60*39##" + }, + { + "run": "run2_reviewer_reads", + "t": 7.873, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reviewer_reads", + "t": 7.873, + "utc": "21:02:26", + "step": "reviewer_reads", + "dir": "result", + "frame": "*#4*0*60##", + "ack": true, + "reply_time_s": 2.128, + "replies": [ + "*#4*2*60*39##" + ], + "events_after": [ + "*#4*2*60*39##" + ], + "note": "general_humidity_sweep_answered_by_zone_2" + }, + { + "run": "run2_reviewer_reads", + "t": 9.074, + "step": "reviewer_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2*60##", + "is_status_request": true + }, + { + "run": "run2_reviewer_reads", + "t": 9.214, + "step": "reviewer_reads", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*60*39##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a humidity of 39.0%." + }, + { + "run": "run2_reviewer_reads", + "t": 9.217, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*60*39##" + }, + { + "run": "run2_reviewer_reads", + "t": 9.217, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reviewer_reads", + "t": 9.217, + "utc": "21:02:28", + "step": "reviewer_reads", + "dir": "result", + "frame": "*#4*2*60##", + "ack": true, + "reply_time_s": 0.143, + "replies": [ + "*#4*2*60*39##" + ], + "events_after": [ + "*#4*2*60*39##" + ], + "note": "zone_2_humidity" + }, + { + "run": "run2_reviewer_reads", + "t": 10.418, + "step": "reviewer_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#1#1*1##", + "is_status_request": true + }, + { + "run": "run2_reviewer_reads", + "t": 12.426, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run2_reviewer_reads", + "t": 12.426, + "utc": "21:02:31", + "step": "reviewer_reads", + "dir": "result", + "frame": "*#22*3#1#1*1##", + "ack": false, + "reply_time_s": 2.008, + "replies": [], + "events_after": [], + "note": "who22_nack_after_bus_timeout" + }, + { + "run": "run2_reviewer_reads", + "t": 13.627, + "step": "reviewer_reads", + "dir": "tx", + "session": "cmd", + "frame": "*#13**0##", + "is_status_request": true + }, + { + "run": "run2_reviewer_reads", + "t": 13.632, + "step": "reviewer_reads", + "dir": "rx", + "session": "evt", + "frame": "*#13**0*00*02*31*999##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal time is: 00:02:31." + }, + { + "run": "run2_reviewer_reads", + "t": 13.635, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#13**0*00*02*31*999##" + }, + { + "run": "run2_reviewer_reads", + "t": 13.635, + "step": "reviewer_reads", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reviewer_reads", + "t": 13.635, + "utc": "21:02:32", + "step": "reviewer_reads", + "dir": "result", + "frame": "*#13**0##", + "ack": true, + "reply_time_s": 0.008, + "replies": [ + "*#13**0*00*02*31*999##" + ], + "events_after": [ + "*#13**0*00*02*31*999##" + ], + "note": "who13_time_echoed_on_evt" + }, + { + "run": "run3_climate_setpoint_restore", + "t": 1.043, + "step": "setpoint_restore", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2*#14*0235*3##", + "is_status_request": false + }, + { + "run": "run3_climate_setpoint_restore", + "t": 1.121, + "step": "setpoint_restore", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run3_climate_setpoint_restore", + "t": 1.121, + "utc": "21:13:35", + "step": "setpoint_restore", + "dir": "result", + "frame": "*#4*2*#14*0235*3##", + "ack": true, + "reply_time_s": 0.078, + "replies": [], + "events_after": [ + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*0*0239##" + ], + "note": "setpoint_write_mode_3_keeps_season" + }, + { + "run": "run3_climate_setpoint_restore", + "t": 1.232, + "step": "setpoint_restore", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run3_climate_setpoint_restore", + "t": 1.235, + "step": "setpoint_restore", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run3_climate_setpoint_restore", + "t": 1.267, + "step": "setpoint_restore", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + }, + { + "run": "run3_climate_setpoint_restore", + "t": 3.121, + "step": "setpoint_restore", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2##", + "is_status_request": true + }, + { + "run": "run3_climate_setpoint_restore", + "t": 3.704, + "step": "setpoint_restore", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.007, + "step": "setpoint_restore", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.009, + "step": "setpoint_restore", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.312, + "step": "setpoint_restore", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.396, + "step": "setpoint_restore", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.399, + "step": "setpoint_restore", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*0*0239##" + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.399, + "step": "setpoint_restore", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*12*0235*3##" + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.399, + "step": "setpoint_restore", + "dir": "rx", + "session": "cmd", + "frame": "*4*1*2##" + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.399, + "step": "setpoint_restore", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*14*0235*3##" + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.399, + "step": "setpoint_restore", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*13*00##" + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.399, + "step": "setpoint_restore", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run3_climate_setpoint_restore", + "t": 4.399, + "utc": "21:13:39", + "step": "setpoint_restore", + "dir": "result", + "frame": "*#4*2##", + "ack": true, + "reply_time_s": 1.278, + "replies": [ + "*#4*2*0*0239##", + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*14*0235*3##", + "*#4*2*13*00##" + ], + "events_after": [ + "*#4*2*0*0239##", + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*14*0235*3##", + "*#4*2*13*00##" + ], + "note": "zone_2_status_reply_order_0_12_season_14_13" + }, + { + "run": "run4_final_state", + "t": 1.042, + "step": "final_state", + "dir": "tx", + "session": "cmd", + "frame": "*#1*06##", + "is_status_request": true + }, + { + "run": "run4_final_state", + "t": 1.143, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run4_final_state", + "t": 1.145, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*06##" + }, + { + "run": "run4_final_state", + "t": 1.145, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run4_final_state", + "t": 1.145, + "utc": "21:13:18", + "step": "final_state", + "dir": "result", + "frame": "*#1*06##", + "ack": true, + "reply_time_s": 0.103, + "replies": [ + "*1*0*06##" + ], + "events_after": [ + "*1*0*06##" + ] + }, + { + "run": "run4_final_state", + "t": 1.646, + "step": "final_state", + "dir": "tx", + "session": "cmd", + "frame": "*#1*07##", + "is_status_request": true + }, + { + "run": "run4_final_state", + "t": 1.735, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run4_final_state", + "t": 1.737, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*07##" + }, + { + "run": "run4_final_state", + "t": 1.737, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run4_final_state", + "t": 1.737, + "utc": "21:13:18", + "step": "final_state", + "dir": "result", + "frame": "*#1*07##", + "ack": true, + "reply_time_s": 0.091, + "replies": [ + "*1*0*07##" + ], + "events_after": [ + "*1*0*07##" + ] + }, + { + "run": "run4_final_state", + "t": 2.238, + "step": "final_state", + "dir": "tx", + "session": "cmd", + "frame": "*#2*05##", + "is_status_request": true + }, + { + "run": "run4_final_state", + "t": 2.344, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run4_final_state", + "t": 2.346, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*2*0*05##" + }, + { + "run": "run4_final_state", + "t": 2.346, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run4_final_state", + "t": 2.346, + "utc": "21:13:19", + "step": "final_state", + "dir": "result", + "frame": "*#2*05##", + "ack": true, + "reply_time_s": 0.108, + "replies": [ + "*2*0*05##" + ], + "events_after": [ + "*2*0*05##" + ] + }, + { + "run": "run4_final_state", + "t": 2.847, + "step": "final_state", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2##", + "is_status_request": true + }, + { + "run": "run4_final_state", + "t": 3.427, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + }, + { + "run": "run4_final_state", + "t": 3.735, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 21.0°C." + }, + { + "run": "run4_final_state", + "t": 3.739, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run4_final_state", + "t": 4.035, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 21.0°C." + }, + { + "run": "run4_final_state", + "t": 4.112, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run4_final_state", + "t": 4.114, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*0*0239##" + }, + { + "run": "run4_final_state", + "t": 4.114, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*12*0210*3##" + }, + { + "run": "run4_final_state", + "t": 4.114, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*4*1*2##" + }, + { + "run": "run4_final_state", + "t": 4.114, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*14*0210*3##" + }, + { + "run": "run4_final_state", + "t": 4.114, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*13*00##" + }, + { + "run": "run4_final_state", + "t": 4.114, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run4_final_state", + "t": 4.114, + "utc": "21:13:21", + "step": "final_state", + "dir": "result", + "frame": "*#4*2##", + "ack": true, + "reply_time_s": 1.267, + "replies": [ + "*#4*2*0*0239##", + "*#4*2*12*0210*3##", + "*4*1*2##", + "*#4*2*14*0210*3##", + "*#4*2*13*00##" + ], + "events_after": [ + "*#4*2*0*0239##", + "*#4*2*12*0210*3##", + "*4*1*2##", + "*#4*2*14*0210*3##", + "*#4*2*13*00##" + ], + "note": "zone_2_status_dim12_equals_dim14_21_0" + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.053, + "step": "final_state", + "dir": "tx", + "session": "cmd", + "frame": "*#1*06##", + "is_status_request": true + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.149, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.153, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*06##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.153, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.153, + "utc": "23:03:04", + "step": "final_state", + "dir": "result", + "frame": "*#1*06##", + "ack": true, + "reply_time_s": 0.1, + "replies": [ + "*1*0*06##" + ], + "events_after": [ + "*1*0*06##" + ] + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.654, + "step": "final_state", + "dir": "tx", + "session": "cmd", + "frame": "*#1*07##", + "is_status_request": true + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.741, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.745, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*07##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.745, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 1.745, + "utc": "23:03:04", + "step": "final_state", + "dir": "result", + "frame": "*#1*07##", + "ack": true, + "reply_time_s": 0.091, + "replies": [ + "*1*0*07##" + ], + "events_after": [ + "*1*0*07##" + ] + }, + { + "run": "run4b_final_state_after_restore", + "t": 2.246, + "step": "final_state", + "dir": "tx", + "session": "cmd", + "frame": "*#2*05##", + "is_status_request": true + }, + { + "run": "run4b_final_state_after_restore", + "t": 2.326, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run4b_final_state_after_restore", + "t": 2.328, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*2*0*05##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 2.328, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 2.328, + "utc": "23:03:05", + "step": "final_state", + "dir": "result", + "frame": "*#2*05##", + "ack": true, + "reply_time_s": 0.082, + "replies": [ + "*2*0*05##" + ], + "events_after": [ + "*2*0*05##" + ] + }, + { + "run": "run4b_final_state_after_restore", + "t": 2.831, + "step": "final_state", + "dir": "tx", + "session": "cmd", + "frame": "*#4*2##", + "is_status_request": true + }, + { + "run": "run4b_final_state_after_restore", + "t": 3.452, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run4b_final_state_after_restore", + "t": 3.724, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run4b_final_state_after_restore", + "t": 3.727, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run4b_final_state_after_restore", + "t": 4.034, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." + }, + { + "run": "run4b_final_state_after_restore", + "t": 4.134, + "step": "final_state", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run4b_final_state_after_restore", + "t": 4.14, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*0*0241##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 4.14, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*12*0235*3##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 4.14, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*4*1*2##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 4.14, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*14*0235*3##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 4.14, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#4*2*13*00##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 4.14, + "step": "final_state", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run4b_final_state_after_restore", + "t": 4.14, + "utc": "23:03:07", + "step": "final_state", + "dir": "result", + "frame": "*#4*2##", + "ack": true, + "reply_time_s": 1.309, + "replies": [ + "*#4*2*0*0241##", + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*14*0235*3##", + "*#4*2*13*00##" + ], + "events_after": [ + "*#4*2*0*0241##", + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*14*0235*3##", + "*#4*2*13*00##" + ], + "note": "zone_2_status_dim12_equals_dim14_23_5" + }, + { + "run": "run5_injection_flags", + "t": 1.087, + "step": "injection_flags", + "dir": "tx", + "session": "cmd", + "frame": "*#18*51*113*100##", + "is_status_request": false + }, + { + "run": "run5_injection_flags", + "t": 2.496, + "step": "injection_flags", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run5_injection_flags", + "t": 2.496, + "utc": "21:10:36", + "step": "injection_flags", + "dir": "result", + "frame": "*#18*51*113*100##", + "ack": true, + "reply_time_s": 1.409, + "replies": [], + "events_after": [], + "note": "who18_report_form_ack_not_echoed" + }, + { + "run": "run5_injection_flags", + "t": 4.498, + "step": "injection_flags", + "dir": "tx", + "session": "cmd", + "frame": "*#4*#0*0*0215##", + "is_status_request": false + }, + { + "run": "run5_injection_flags", + "t": 8.623, + "step": "injection_flags", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run5_injection_flags", + "t": 8.623, + "utc": "21:10:42", + "step": "injection_flags", + "dir": "result", + "frame": "*#4*#0*0*0215##", + "ack": false, + "reply_time_s": 4.125, + "replies": [], + "events_after": [], + "note": "who4_central_report_form_nack_bus_timeout" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 25.965, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#13**12*0*3*80*0*16*35##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's MAC address is: 00:03:50:00:10:23." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 25.974, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#1013**1*134*15*5*0##", + "ownd_class": "OWNGatewayDiagnosticEvent", + "ownd_log": "Gateway diagnostic object model is: F461 (134)." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 26.164, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 26.21, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 26.25, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 26.322, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 28.171, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 28.212, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 28.259, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 28.332, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 30.148, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 30.768, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 31.097, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 31.099, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 31.407, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 31.511, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 31.66, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 31.715, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 71.297, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 71.333, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 71.373, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#2*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 71.393, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is closing." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 76.506, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 85.93, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*1*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched on." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 88.249, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 163.434, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*0##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 0 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 201.962, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 202.002, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 202.05, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 202.121, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 204.058, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 204.107, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 204.146, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 204.22, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 206.036, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 206.678, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 206.991, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 206.994, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 207.294, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 207.387, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 209.667, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 209.723, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 214.202, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 214.249, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 214.282, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 214.353, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 216.201, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 216.249, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 216.307, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 216.338, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 218.156, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 218.884, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 219.124, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 219.132, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 219.398, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 219.54, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 221.891, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 221.938, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 460.582, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 460.634, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 460.671, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 460.751, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 462.679, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 462.726, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 462.775, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 462.847, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 464.784, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 465.404, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 465.723, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 465.727, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 466.021, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 466.104, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 468.386, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 468.429, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 468.473, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 560.258, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#13**#1*06*24*10*2026##", + "ownd_class": "OWNGatewayCommand", + "ownd_log": "Gateway broadcasting internal date: 2026-10-24." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 560.262, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#13**#0*01*40*00*##", + "ownd_class": "OWNGatewayCommand", + "ownd_log": "Gateway broadcasting internal time: 01:40:00." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 808.031, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 808.074, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 808.111, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 808.152, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 809.951, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 809.995, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 810.04, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 810.112, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 811.96, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 812.588, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 812.9, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 812.903, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 813.219, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 813.296, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 815.576, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 815.62, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 819.382, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 819.407, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 819.448, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#1*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#1*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 819.479, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is opening." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 825.168, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 829.063, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 829.079, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 829.128, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#2*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 829.152, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is closing." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 832.806, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 832.831, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 835.158, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 835.191, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 835.223, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#2*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 835.263, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is closing." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 841.111, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 881.384, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*60*38##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a humidity of 38.0%." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1153.503, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*#20*0##", + "ownd_class": "OWNHeatingCommand", + "ownd_log": "*#4*2#1*#20*0##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1153.535, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1160.117, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#13**#1*06*24*10*2026##", + "ownd_class": "OWNGatewayCommand", + "ownd_log": "Gateway broadcasting internal date: 2026-10-24." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1160.118, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#13**#0*01*50*00*##", + "ownd_class": "OWNGatewayCommand", + "ownd_log": "Gateway broadcasting internal time: 01:50:00." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1611.985, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1612.033, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1612.083, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1612.113, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1612.17, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1613.972, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1614.019, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1614.059, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1614.14, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1615.988, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1616.624, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1616.953, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1616.955, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1617.258, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1617.349, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1619.695, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1619.737, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1622.619, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*60*38##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a humidity of 38.0%." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1624.734, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1624.758, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1624.815, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#1*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#1*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1624.847, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is opening." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1630.61, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1632.239, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1632.273, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1632.303, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#2*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1632.32, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is closing." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1637.584, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1738.85, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1738.89, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1738.93, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1739.01, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1740.859, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1740.905, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1740.953, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1741.026, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1742.859, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1743.478, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1743.782, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1743.784, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1744.086, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1744.204, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1746.499, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1746.546, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1749.435, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*60*38##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a humidity of 38.0%." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1759.563, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#13**#1*06*24*10*2026##", + "ownd_class": "OWNGatewayCommand", + "ownd_log": "Gateway broadcasting internal date: 2026-10-24." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1759.566, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#13**#0*02*00*00*##", + "ownd_class": "OWNGatewayCommand", + "ownd_log": "Gateway broadcasting internal time: 02:00:00." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1780.8, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1780.842, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1780.888, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#1*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#1*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1780.913, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is opening." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1786.082, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1790.497, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1790.523, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1790.565, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#2*05##" + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1790.594, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is closing." + }, + { + "run": "run6_event_session_ha_fixed_integration", + "t": 1796.061, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run7_localha_bus_monitor", + "t": 2.922, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run7_localha_bus_monitor", + "t": 17.369, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*1*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched on." + }, + { + "run": "run7_localha_bus_monitor", + "t": 19.2, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." + }, + { + "run": "run7_localha_bus_monitor", + "t": 41.464, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run7_localha_bus_monitor", + "t": 41.49, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run7_localha_bus_monitor", + "t": 41.531, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#2*05##" + }, + { + "run": "run7_localha_bus_monitor", + "t": 41.561, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is closing." + }, + { + "run": "run7_localha_bus_monitor", + "t": 47.105, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run7_localha_bus_monitor", + "t": 68.215, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run7_localha_bus_monitor", + "t": 68.249, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#1*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#1*05##" + }, + { + "run": "run7_localha_bus_monitor", + "t": 68.273, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run7_localha_bus_monitor", + "t": 68.314, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is opening." + }, + { + "run": "run7_localha_bus_monitor", + "t": 70.76, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run7_localha_bus_monitor", + "t": 70.777, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run7_localha_bus_monitor", + "t": 83.37, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0220*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 22.0°C." + }, + { + "run": "run7_localha_bus_monitor", + "t": 83.372, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run7_localha_bus_monitor", + "t": 83.41, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0240##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.0°C." + }, + { + "run": "run7_localha_bus_monitor", + "t": 94.067, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*12*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 21.0°C." + }, + { + "run": "run7_localha_bus_monitor", + "t": 94.069, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." + }, + { + "run": "run7_localha_bus_monitor", + "t": 94.113, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2*0*0240##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.0°C." + }, + { + "run": "run7_localha_bus_monitor", + "t": 107.296, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*1*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched on." + }, + { + "run": "run7_localha_bus_monitor", + "t": 110.296, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run7_localha_bus_monitor", + "t": 371.087, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." + }, + { + "run": "run7_localha_bus_monitor", + "t": 371.15, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run7_localha_bus_monitor", + "t": 371.199, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." + }, + { + "run": "run7_localha_bus_monitor", + "t": 380.284, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#0*05##" + }, + { + "run": "run7_localha_bus_monitor", + "t": 380.309, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run7_localha_bus_monitor", + "t": 380.342, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*1000#2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "*2*1000#2*05##" + }, + { + "run": "run7_localha_bus_monitor", + "t": 380.381, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*2*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 is closing." + }, + { + "run": "run7_localha_bus_monitor", + "t": 386.109, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." + }, + { + "run": "run7_localha_bus_monitor", + "t": 605.147, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." + }, + { + "run": "run8_flicker_repro", + "t": 1.046, + "step": "flicker_repro", + "dir": "tx", + "session": "cmd", + "frame": "*#25*21##", + "is_status_request": true + }, + { + "run": "run8_flicker_repro", + "t": 1.052, + "step": "flicker_repro", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run8_flicker_repro", + "t": 1.052, + "utc": "20:49:37", + "step": "flicker_repro", + "dir": "result", + "frame": "*#25*21##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [], + "note": "who25_refused_locally" + }, + { + "run": "run8_flicker_repro", + "t": 7.052, + "step": "flicker_repro", + "dir": "tx", + "session": "cmd", + "frame": "*#3*#1##", + "is_status_request": true + }, + { + "run": "run8_flicker_repro", + "t": 7.056, + "step": "flicker_repro", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run8_flicker_repro", + "t": 7.056, + "utc": "20:49:43", + "step": "flicker_repro", + "dir": "result", + "frame": "*#3*#1##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [], + "note": "who3_refused_locally" + }, + { + "run": "run8_flicker_repro", + "t": 13.057, + "step": "flicker_repro", + "dir": "tx", + "session": "cmd", + "frame": "*#25*21##", + "is_status_request": true + }, + { + "run": "run8_flicker_repro", + "t": 13.063, + "step": "flicker_repro", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run8_flicker_repro", + "t": 13.063, + "utc": "20:49:49", + "step": "flicker_repro", + "dir": "result", + "frame": "*#25*21##", + "ack": false, + "reply_time_s": 0.006, + "replies": [], + "events_after": [], + "note": "who25_refused_locally" + }, + { + "run": "run8b_flicker_repro_who22", + "t": 1.04, + "step": "flicker_repro", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#1#1*4##", + "is_status_request": true + }, + { + "run": "run8b_flicker_repro_who22", + "t": 2.89, + "step": "flicker_repro", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run8b_flicker_repro_who22", + "t": 2.89, + "utc": "20:50:05", + "step": "flicker_repro", + "dir": "result", + "frame": "*#22*3#1#1*4##", + "ack": false, + "reply_time_s": 1.85, + "replies": [], + "events_after": [], + "note": "who22_nack_after_bus_timeout" + }, + { + "run": "run8b_flicker_repro_who22", + "t": 4.091, + "step": "flicker_repro", + "dir": "tx", + "session": "cmd", + "frame": "*#22*3#2#0*1##", + "is_status_request": true + }, + { + "run": "run8b_flicker_repro_who22", + "t": 5.9, + "step": "flicker_repro", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run8b_flicker_repro_who22", + "t": 5.9, + "utc": "20:50:08", + "step": "flicker_repro", + "dir": "result", + "frame": "*#22*3#2#0*1##", + "ack": false, + "reply_time_s": 1.809, + "replies": [], + "events_after": [] + }, + { + "run": "run8b_flicker_repro_who22", + "t": 7.101, + "step": "flicker_repro", + "dir": "tx", + "session": "cmd", + "frame": "*#22*5#2#1*5##", + "is_status_request": true + }, + { + "run": "run8b_flicker_repro_who22", + "t": 8.906, + "step": "flicker_repro", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run8b_flicker_repro_who22", + "t": 8.906, + "utc": "20:50:11", + "step": "flicker_repro", + "dir": "result", + "frame": "*#22*5#2#1*5##", + "ack": false, + "reply_time_s": 1.805, + "replies": [], + "events_after": [] + }, + { + "run": "run8b_flicker_repro_who22", + "t": 10.107, + "step": "flicker_repro", + "dir": "tx", + "session": "cmd", + "frame": "*#25*21##", + "is_status_request": true + }, + { + "run": "run8b_flicker_repro_who22", + "t": 10.112, + "step": "flicker_repro", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run8b_flicker_repro_who22", + "t": 10.112, + "utc": "20:50:12", + "step": "flicker_repro", + "dir": "result", + "frame": "*#25*21##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [] + }, + { + "run": "run8b_flicker_repro_who22", + "t": 11.313, + "step": "flicker_repro", + "dir": "tx", + "session": "cmd", + "frame": "*#3*#1##", + "is_status_request": true + }, + { + "run": "run8b_flicker_repro_who22", + "t": 11.317, + "step": "flicker_repro", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run8b_flicker_repro_who22", + "t": 11.317, + "utc": "20:50:14", + "step": "flicker_repro", + "dir": "result", + "frame": "*#3*#1##", + "ack": false, + "reply_time_s": 0.004, + "replies": [], + "events_after": [] + } + ] +} diff --git a/tests/test_f461_live_2026_10_23_trace.py b/tests/test_f461_live_2026_10_23_trace.py new file mode 100644 index 000000000..ed1436c8d --- /dev/null +++ b/tests/test_f461_live_2026_10_23_trace.py @@ -0,0 +1,618 @@ +"""Replay and verification tests for the 2026-10-23 live BTicino F461 capture. + +Fixture: + tests/fixtures/traces/f461_live_2026-10-23/myhome_trace_F461_live_2026-10-23.json + +The capture is the physical evidence behind OWNd #136-#142 and MyHOME #791-#798. Every +test here pins a fact of the trace itself (a frame present, an ACK / NACK, a reply order, +a timing) or replays event-session frames through entities whose behaviour does not depend +on those pull requests, so the module passes on the base branch with the pinned OWNd. + +What the plant said (F461 2.0.11, WHO 13 device type 200, WHO 1013 134.15.5.0, no central +unit, no WHO 16 / 22 devices): + +- ``*#4*2##`` answers dimension 0, 12, the season, 14, 13 in that order and dimension 12 + (23.5, the setpoint in force) differs from dimension 14 (21.0, the last commanded value). +- ``*#4*2*20##`` is followed by two actuator frames on the event session; ``*#4*#0*20##`` + returns both on the command session in 2.1 s. +- ``*#1*0007##`` is refused in 7 ms, ``*#1*07##`` is answered, ``*#1*7##`` is area 7 (empty). +- ``*#13**0##`` sent on the command session is also delivered on the event session. +- all 18 WHO 16 requests, ``*#4*0##``, ``*#5*0##`` are refused locally (under 10 ms); + ``*#4*#2##``, ``*#4*#2*14##``, ``*#4*#0*14##`` are refused after the bus timeout. +- ``*#13**27##`` answers ``*#13**27*70#52#54#49##`` ("F461" as ASCII codes). +- ``*2*0*0##`` was seen exactly once (one general stop from Home Assistant). +- the F411/2 shutter at 05 stops itself 5.1-5.9 s after a run starts. +""" + +from __future__ import annotations + +import asyncio +import json +import re +from pathlib import Path +from types import SimpleNamespace +from unittest.mock import AsyncMock, MagicMock, patch + +import pytest +from homeassistant.components.climate import HVACMode +from homeassistant.const import CONF_NAME +from homeassistant.core import HomeAssistant +from OWNd.message import OWNCommand, OWNMessage +from OWNd.profiles import F461Profile + +from custom_components.myhome.const import CONF_ENTITY, CONF_PLATFORMS, CONF_WHERE, DOMAIN +from tests.conftest import attach_platform, attach_runtime + +MAC = "00:03:50:00:10:23" +MAC_FRAME = "*#13**12*0*3*80*0*16*35##" +MODEL_NAME_FRAME = "*#13**27*70#52#54#49##" +FIXTURE = ( + Path(__file__).resolve().parent + / "fixtures" + / "traces" + / "f461_live_2026-10-23" + / "myhome_trace_F461_live_2026-10-23.json" +) + +RUN1 = "run1_oracle_replay_readonly" +RUN2 = "run2_reviewer_reads" +RUN3 = "run3_climate_setpoint_restore" +RUN4 = "run4_final_state" +RUN4B = "run4b_final_state_after_restore" +RUN5 = "run5_injection_flags" +RUN6 = "run6_event_session_ha_fixed_integration" +RUN7 = "run7_localha_bus_monitor" +RUN8 = "run8_flicker_repro" +RUN8B = "run8b_flicker_repro_who22" +ALL_RUNS = (RUN1, RUN2, RUN3, RUN4, RUN4B, RUN5, RUN6, RUN7, RUN8, RUN8B) + + +@pytest.fixture(scope="module") +def trace_payload() -> dict: + """Load the 2026-10-23 F461 live trace archive.""" + assert FIXTURE.is_file(), FIXTURE + return json.loads(FIXTURE.read_text(encoding="utf-8")) + + +@pytest.fixture(scope="module") +def rows(trace_payload: dict) -> list[dict]: + """Return the chronological session log rows.""" + return trace_payload["rows"] + + +@pytest.fixture(scope="module") +def frames(trace_payload: dict) -> list[dict]: + """Return the event-session frames.""" + return trace_payload["frames"] + + +def _results(rows: list[dict], run: str | None = None, frame: str | None = None) -> list[dict]: + return [ + r + for r in rows + if r["dir"] == "result" + and (run is None or r["run"] == run) + and (frame is None or r["frame"] == frame) + ] + + +def _result(rows: list[dict], run: str, frame: str) -> dict: + found = _results(rows, run, frame) + assert len(found) == 1, (run, frame, len(found)) + return found[0] + + +def _evt(rows: list[dict], run: str) -> list[dict]: + return [r for r in rows if r["run"] == run and r["dir"] == "rx" and r["session"] == "evt"] + + +def _gateway() -> MagicMock: + gw = MagicMock() + gw.mac = MAC + gw.unique_id = MAC + gw.bus_group = MAC + gw.primary_gateway_mac = None + gw.delegated_whos = set() + gw.delegated_away_whos = set() + gw.log_id = "[F461 live 2026-10-23]" + gw.model = "F461" + gw.has_central_unit = False + gw.supports_zone_status = True + gw.initial_discovery_pending = False + gw.is_connected = True + gw.profile = F461Profile() + gw._gateway = SimpleNamespace(profile=gw.profile) + gw.sent: list[str] = [] + + async def _send(cmd, *a, **k): + gw.sent.append(str(cmd)) + fut: asyncio.Future[bool] = asyncio.get_running_loop().create_future() + fut.set_result(True) + return fut + + gw.send = AsyncMock(side_effect=_send) + gw.send_status_request = AsyncMock(side_effect=_send) + return gw + + +async def _setup_plant(hass: HomeAssistant, gw: MagicMock) -> dict[str, object]: + from custom_components.myhome.climate import async_setup_entry as climate_setup + from custom_components.myhome.cover import async_setup_entry as cover_setup + from custom_components.myhome.light import async_setup_entry as light_setup + + platforms_cfg = { + "light": { + "light_06": {CONF_WHERE: "06", CONF_NAME: "Light 06", "model": "F411"}, + "light_07": {CONF_WHERE: "07", CONF_NAME: "Light 07", "model": "F411"}, + "light_09": {CONF_WHERE: "09", CONF_NAME: "Light 09", "model": "F411"}, + }, + "cover": { + "cover_05": { + CONF_WHERE: "05", + CONF_NAME: "Cover 05", + "advanced": False, + "open_Best_Time": 6, + "close_Best_Time": 6, + }, + }, + "climate": { + "climate_zone_2": { + "who": "4", + "zone": "2", + "name": "Climate Zone 2", + "heat": True, + "cool": True, + "standalone": True, + "central": False, + "manufacturer": "BTicino", + "model": "F461", + } + }, + } + hass.data = {DOMAIN: {MAC: {CONF_ENTITY: gw, CONF_PLATFORMS: platforms_cfg}}} + entry = MagicMock() + entry.data = {"mac": MAC} + entry.entry_id = "f461_live_2026_10_23" + entry.options = {} + attach_runtime(hass, entry, MAC, gw) + + lights: list = [] + covers: list = [] + climates: list = [] + with ( + patch( + "custom_components.myhome.discovery.er.async_entries_for_config_entry", + return_value=[], + ), + patch("custom_components.myhome.discovery.er.async_get", return_value=MagicMock()), + ): + await light_setup(hass, entry, lights.extend) + await cover_setup(hass, entry, covers.extend) + await climate_setup(hass, entry, climates.extend) + + for ent in lights + covers + climates: + ent.hass = hass + domain = "climate" if ent in climates else ("cover" if ent in covers else "light") + ent.entity_id = f"{domain}.{ent._device_id}" + ent.async_write_ha_state = MagicMock() + ent.async_schedule_update_ha_state = MagicMock() + attach_platform(ent, entry) + + return {ent._where: ent for ent in lights + covers + climates} + + +# --------------------------------------------------------------- schema, privacy, parsing + + +def test_schema_runs_and_synthetic_identity(trace_payload: dict, rows: list[dict], frames: list[dict]) -> None: + """Fixture metadata, RFC 5737 / synthetic identity, run names and counts.""" + gw = trace_payload["gateway"] + assert gw["model"] == "F461" + assert gw["firmware"] == "2.0.11" + assert gw["ip"] == "192.0.2.92" + assert gw["mac"] == MAC + assert gw["identification"] == { + "model": "F461", + "who13_code": "200", + "who13_model_name": "F461", + "who1013_code": "134", + } + assert trace_payload["capture"]["kind"] == "derived_trace_archive" + assert [r["run"] for r in trace_payload["capture"]["runs"]] == list(ALL_RUNS) + assert trace_payload["capture"]["window"] == { + "first": "2026-10-23T20:38:04+00:00", + "last": "2026-10-23T23:03:07+00:00", + "frames": 299, + "rows": 939, + } + assert len(frames) == 299 + assert len(rows) == 939 + assert {r["run"] for r in rows} == set(ALL_RUNS) + assert all(f["direction"] == "rx" and f["session"] == "evt" for f in frames) + # the event rows of the log are the frames array, in the same order + assert [r["frame"] for r in rows if r["dir"] == "rx" and r["session"] == "evt"] == [f["raw"] for f in frames] + # the real MAC and LAN address were rewritten in both their text and their WHO 13 byte forms + text = json.dumps(trace_payload) + # every MAC-like string and every WHO 13 dimension 12 frame in the archive is the synthetic one + assert set(re.findall(r"(?:[0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}", text)) == {MAC} + assert {f["raw"] for f in frames if f["raw"].startswith("*#13**12*")} <= {MAC_FRAME} + assert "192*168" not in text and "192.168" not in text + assert MAC_FRAME in text and "*#13**10*192*0*2*92##" in text + assert "00:03:50:00:04:97" not in text, "a different synthetic MAC than the 2026-10-15 / 10-18 fixtures" + + +def test_every_frame_parses_in_ownd_except_the_pending_model_name_decoder(rows: list[dict], frames: list[dict]) -> None: + """Every rx frame parses in the pinned OWNd; the WHO 13 dimension 27 reply is the one exception.""" + for item in frames: + parsed = OWNMessage.parse(item["raw"]) + if item["raw"] == MODEL_NAME_FRAME: + continue # no decoder in the pinned OWNd (OWNd#139); it must not raise + assert parsed is not None, f"Failed to parse evt frame: {item['raw']}" + for r in rows: + if r["dir"] == "tx": + assert OWNCommand.parse(r["frame"]) is not None or OWNMessage.parse(r["frame"]) is not None, r + elif r["dir"] == "rx" and r["frame"] not in ("*#*1##", "*#*0##", MODEL_NAME_FRAME): + assert OWNMessage.parse(r["frame"]) is not None, r + + +def test_result_rows_are_consistent_with_their_tx_and_cmd_rx_rows(rows: list[dict]) -> None: + """Each result row follows its tx row, its replies are on the command session, ACK / NACK is logged.""" + for run in ALL_RUNS: + run_rows = [r for r in rows if r["run"] == run] + for i, r in enumerate(run_rows): + if r["dir"] != "result": + continue + tx = next(x for x in reversed(run_rows[:i]) if x["dir"] == "tx") + assert tx["frame"] == r["frame"] + assert tx["t"] <= r["t"] + assert abs((r["t"] - tx["t"]) - r["reply_time_s"]) < 0.002 + cmd_rx = [x["frame"] for x in run_rows[:i] if x["dir"] == "rx" and x["session"] == "cmd" and x["t"] == r["t"]] + assert cmd_rx == [*r["replies"], "*#*1##" if r["ack"] else "*#*0##"] + assert all(r["ack"] is False and r["replies"] == [] for r in _results(rows) if not r["ack"]) + + +# --------------------------------------------------------------- WHO 13 / 1013 identification + + +def test_gateway_identification_and_model_name_dimension_27(rows: list[dict], frames: list[dict]) -> None: + """WHO 13 device type 200, firmware 2.0.11, WHO 1013 object model 134.15.5.0, dimension 27 model name.""" + assert _result(rows, RUN1, "*#13**15##")["replies"] == ["*#13**15*200##"] + assert _result(rows, RUN1, "*#13**16##")["replies"] == ["*#13**16*2*0*11##"] + assert _result(rows, RUN1, "*#13**23##")["replies"] == ["*#13**23*5*10*35##"] + assert _result(rows, RUN1, "*#13**24##")["replies"] == ["*#13**24*2*26*4##"] + assert _result(rows, RUN1, "*#1013*0*1##")["replies"] == ["*#1013**1*134*15*5*0##"] + assert _result(rows, RUN1, "*#1013*0##")["ack"] is False + # the F461 answers its MAC and IP (synthetic values in the fixture) + assert _result(rows, RUN1, "*#13**12##")["replies"] == [MAC_FRAME] + assert _result(rows, RUN1, "*#13**10##")["replies"] == ["*#13**10*192*0*2*92##"] + # dimension 27: the model name as ASCII codes, also delivered on the event session + res = _result(rows, RUN1, "*#13**27##") + assert res["ack"] is True + assert res["replies"] == [MODEL_NAME_FRAME] + assert res["events_after"] == [MODEL_NAME_FRAME] + assert [f["raw"] for f in frames if f["raw"].startswith("*#13**27*")] == [MODEL_NAME_FRAME] + codes = MODEL_NAME_FRAME[len("*#13**27*") : -2].split("#") + assert "".join(chr(int(c)) for c in codes) == "F461" + # dimensions 2, 3, 25, 26 are refused locally + for dim in ("2", "3", "25", "26"): + res = _result(rows, RUN1, f"*#13**{dim}##") + assert res["ack"] is False and res["reply_time_s"] < 0.05, dim + # WHO 1001 is not answered on this plant (no WHO 1 fault / diagnostic device) + assert _result(rows, RUN1, "*#1001*74##")["ack"] is False + + +def test_who13_time_request_is_echoed_on_the_event_session(rows: list[dict]) -> None: + """*#13**0## sent on the command session is delivered on the event session too (liveness probe).""" + for run in (RUN1, RUN2): + res = _result(rows, run, "*#13**0##") + assert res["ack"] is True + assert len(res["replies"]) == 1 and res["replies"][0].startswith("*#13**0*") + assert res["events_after"] == res["replies"] + echo = [r for r in _evt(rows, run) if r["frame"] == res["replies"][0]] + assert len(echo) == 1 and echo[0]["ownd_class"] == "OWNGatewayEvent" + # the spontaneous MAC and object-model frames open the event session (run6, t = 26 s) + first_two = [r["frame"] for r in _evt(rows, RUN6)[:2]] + assert first_two == [MAC_FRAME, "*#1013**1*134*15*5*0##"] + # every WHO 13 clock echo on the event session carries an empty time-zone field on this F461 + clock_echoes = [r["frame"] for r in _evt(rows, RUN6) if r["frame"].startswith("*#13**#0*")] + assert clock_echoes == ["*#13**#0*01*40*00*##", "*#13**#0*01*50*00*##", "*#13**#0*02*00*00*##"] + assert all(OWNMessage.parse(f) is not None for f in clock_echoes) + + +# --------------------------------------------------------------- WHO 1 address spellings + + +def test_area0_point_spellings_0007_nack_07_ack_7_is_area_7(rows: list[dict]) -> None: + """Four-digit area-0 points are refused locally; two digits answer; one digit is an area.""" + four = _result(rows, RUN2, "*#1*0007##") + assert four["ack"] is False and four["reply_time_s"] < 0.05 and four["replies"] == [] + two = _result(rows, RUN2, "*#1*07##") + assert two["ack"] is True and two["replies"] == ["*1*0*07##"] and two["reply_time_s"] < 0.2 + one = _result(rows, RUN2, "*#1*7##") + assert one["ack"] is True and one["replies"] == [] and 0.9 < one["reply_time_s"] < 1.2 + for frame in ("*#1*0001##", "*#1*0002##", "*#1*0002#4#01##"): + res = _result(rows, RUN1, frame) + assert res["ack"] is False and res["reply_time_s"] < 0.05, frame + # 0010 / 0015 (area 1) are forwarded to the bus and time out there instead + for frame in ("*#1*0010##", "*#1*0015##", "*#1*02##", "*#1*31##"): + res = _result(rows, RUN1, frame) + assert res["ack"] is False and 1.8 < res["reply_time_s"] < 2.5, frame + # the plant's own points answer with the two-digit WHERE + assert _result(rows, RUN1, "*#1*06##")["replies"] == ["*1*0*06##"] + assert _result(rows, RUN1, "*#1*07##")["replies"] == ["*1*0*07##"] + + +def test_area0_sweep_reports_09_but_the_point_behind_the_f422_does_not_answer(rows: list[dict]) -> None: + """*#1*0## lists 06, 07 and 09; *#1*09## times out on the bus (actuator without configurator 2).""" + for frame in ("*#1*0##", "*#1*00##"): + res = _result(rows, RUN1, frame) + assert res["ack"] is True + assert res["replies"] == ["*1*0*06##", "*1*0*07##", "*1*0*09##"], frame + nine = _result(rows, RUN1, "*#1*09##") + assert nine["ack"] is False and 1.8 < nine["reply_time_s"] < 2.5 + # dimension 15 is group-only: refused on a point, answered (and echoed) on group 1 + assert _result(rows, RUN1, "*#1*06*15##")["ack"] is False + group = _result(rows, RUN1, "*#1*#1*15##") + assert group["ack"] is True and group["events_after"] == ["*#1*#1*15##"] + + +# --------------------------------------------------------------- WHO 4 climate + + +def test_zone_status_reply_order_and_dimension_12_differs_from_14(rows: list[dict]) -> None: + """*#4*2## answers 0, 12, season, 14, 13; dimension 12 (in force) is not dimension 14 (commanded).""" + res = _result(rows, RUN1, "*#4*2##") + assert res["ack"] is True + assert res["replies"] == [ + "*#4*2*0*0239##", + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*14*0210*3##", + "*#4*2*13*00##", + ] + assert res["events_after"] == res["replies"] + assert 1.2 < res["reply_time_s"] < 1.5 + assert _result(rows, RUN1, "*#4*2*12##")["replies"] == ["*#4*2*12*0235*3##", "*4*1*2##"] + assert _result(rows, RUN1, "*#4*2*14##")["replies"] == ["*#4*2*14*0210*3##"] + assert _result(rows, RUN1, "*#4*2*0##")["replies"] == ["*#4*2*0*0239##"] + assert _result(rows, RUN1, "*#4*2*13##")["replies"] == ["*#4*2*13*00##"] + assert _result(rows, RUN1, "*#4*2*19##")["replies"] == ["*#4*2*19*5*0##"] + # the fan-speed read is refused on the valve side in heating season (after the bus timeout) + fan = _result(rows, RUN1, "*#4*2*11##") + assert fan["ack"] is False and fan["reply_time_s"] > 1.8 + # run4: Home Assistant had written 21.0, so both dimensions read 21.0 + assert _result(rows, RUN4, "*#4*2##")["replies"][1] == "*#4*2*12*0210*3##" + assert _result(rows, RUN4, "*#4*2##")["replies"][3] == "*#4*2*14*0210*3##" + + +def test_setpoint_write_mode_3_restores_the_setpoint_in_force(rows: list[dict]) -> None: + """*#4*2*#14*0235*3## is ACKed, dimension 12 follows at once, dimension 14 catches up, the season stays.""" + write = _result(rows, RUN3, "*#4*2*#14*0235*3##") + assert write["ack"] is True and write["reply_time_s"] < 0.2 + assert write["events_after"] == ["*#4*2*12*0235*3##", "*4*1*2##", "*#4*2*0*0239##"] + evt = [r["frame"] for r in _evt(rows, RUN3)] + assert evt.index("*#4*2*12*0235*3##") < evt.index("*#4*2*14*0235*3##") + after = _result(rows, RUN3, "*#4*2##") + assert after["replies"] == [ + "*#4*2*0*0239##", + "*#4*2*12*0235*3##", + "*4*1*2##", + "*#4*2*14*0235*3##", + "*#4*2*13*00##", + ] + # two hours later the plant still reports 23.5 on both dimensions + later = _result(rows, RUN4B, "*#4*2##") + assert later["replies"][1] == "*#4*2*12*0235*3##" and later["replies"][3] == "*#4*2*14*0235*3##" + + +def test_actuator_status_dimension_20_per_zone_and_all_zones(rows: list[dict]) -> None: + """*#4*2*20## is followed by two actuator frames on evt; *#4*#0*20## returns both on cmd in 2.1 s.""" + zone = _result(rows, RUN1, "*#4*2*20##") + assert zone["ack"] is True and zone["reply_time_s"] < 0.2 + assert zone["replies"] == ["*#4*2#1*20*0##"] + assert zone["events_after"] == ["*#4*2#1*20*0##", "*#4*2#2*20*5##"] + all_zones = _result(rows, RUN1, "*#4*#0*20##") + assert all_zones["ack"] is True and 2.0 < all_zones["reply_time_s"] < 2.3 + assert all_zones["replies"] == ["*#4*2#1*20*0##", "*#4*2#2*20*5##"] + for raw, log in (("*#4*2#1*20*0##", "Zone 2's actuator 1 is off."), ("*#4*2#2*20*5##", "Zone 2's fan is off.")): + msg = OWNMessage.parse(raw) + assert msg is not None and msg.who == 4 and msg.zone == 2 + assert msg.is_active() is False and msg.human_readable_log == log + # the per-zone 1 / 23 / 40 / 41 forms are forwarded to the bus and time out (no such zones) + for frame in ("*#4*1*20##", "*#4*1#1*20##", "*#4*1*0##", "*#4*40*19##"): + res = _result(rows, RUN1, frame) + assert res["ack"] is False and res["reply_time_s"] > 1.8, frame + + +def test_actuator_frames_follow_every_zone_poll_while_the_fixed_integration_ran(rows: list[dict]) -> None: + """run6: after each *#4*2## reply burst the two actuator frames arrive within 3 s (one *#4*#0*20##).""" + evt = _evt(rows, RUN6) + polls = [r["t"] for r in evt if r["frame"] == "*#4*2*13*00##"] + assert len(polls) == 7 + for t in polls: + following = [r["frame"] for r in evt if t < r["t"] <= t + 3.5] + assert {"*#4*2#1*20*0##", "*#4*2#2*20*5##"} <= set(following), t + # the manual *#4*2*20## of the local Home Assistant session (run7, t = 371 s) + manual = [r["frame"] for r in _evt(rows, RUN7) if r["frame"].startswith("*#4*2#")] + assert manual == ["*#4*2#1*20*0##", "*#4*2#2*20*5##", "*#4*2#2*20*5##"] + # a '#'-prefixed dimension 20 write echo was seen once (t = 1153 s) and parses as a command + hashed = [r["frame"] for r in evt if r["frame"] == "*#4*2#1*#20*0##"] + assert len(hashed) == 1 and OWNMessage.parse(hashed[0]) is not None + + +def test_humidity_general_sweep_and_per_zone(rows: list[dict]) -> None: + """*#4*0*60## is answered by zone 2 after 2.1 s; *#4*2*60## in 0.14 s; the thermostat pushes it too.""" + sweep = _result(rows, RUN2, "*#4*0*60##") + assert sweep["ack"] is True and 2.0 < sweep["reply_time_s"] < 2.3 + assert sweep["replies"] == ["*#4*2*60*39##"] + zone = _result(rows, RUN2, "*#4*2*60##") + assert zone["ack"] is True and zone["reply_time_s"] < 0.2 + assert zone["replies"] == ["*#4*2*60*39##"] + spontaneous = [r for r in _evt(rows, RUN6) if r["frame"].startswith("*#4*2*60*")] + assert len(spontaneous) == 3 and all(r["frame"] == "*#4*2*60*38##" for r in spontaneous) + msg = OWNMessage.parse("*#4*2*60*39##") + assert msg is not None and msg.zone == 2 and msg.main_humidity == 39.0 + + +def test_central_unit_forms_are_refused_on_a_plant_without_one(rows: list[dict]) -> None: + """*#4*#2##, *#4*#2*14##, *#4*#0##, *#4*#0*14## time out on the bus; *#4*0## is refused locally.""" + for frame in ("*#4*#2##", "*#4*#2*14##", "*#4*#0##", "*#4*#0*14##"): + res = _result(rows, RUN1, frame) + assert res["ack"] is False and res["replies"] == [] and 2.0 < res["reply_time_s"] < 2.3, frame + general = _result(rows, RUN1, "*#4*0##") + assert general["ack"] is False and general["reply_time_s"] < 0.05 + report = _result(rows, RUN5, "*#4*#0*0*0215##") + assert report["ack"] is False and report["reply_time_s"] > 2.0 and report["events_after"] == [] + + +# --------------------------------------------------------------- refused WHOs and WHO 18 + + +def test_every_who16_request_is_refused_locally(rows: list[dict]) -> None: + """All 18 WHO 16 forms NACK in under 10 ms: the F461 has no sound-diffusion handler.""" + who16 = [r for r in _results(rows, RUN1) if r["frame"].startswith("*#16*")] + assert len(who16) == 18 + assert {r["frame"] for r in who16} >= {"*#16*0##", "*#16*0*5##", "*#16*101##", "*#16*101*5##", "*#16*21*1##"} + assert all(r["ack"] is False and r["replies"] == [] and r["reply_time_s"] <= 0.01 for r in who16) + for frame in ("*#5*0##", "*#5*#1##", "*#9*0##", "*#9*1##", "*#17*0##", "*#17*1##", "*#14*06##", "*#8*0##", "*#3*0##"): + res = _result(rows, RUN1, frame) + assert res["ack"] is False and res["reply_time_s"] < 0.05, frame + # WHO 22 is forwarded to the bus and times out (no sound devices): 1.8-2.9 s + who22 = [r for r in _results(rows, RUN1) if r["frame"].startswith("*#22*")] + assert len(who22) == 13 and all(not r["ack"] and 1.8 < r["reply_time_s"] < 2.9 for r in who22) + assert 1.9 < _result(rows, RUN2, "*#22*3#1#1*1##")["reply_time_s"] < 2.1 + + +def test_who18_energy_requests_on_a_plant_without_a_meter(rows: list[dict]) -> None: + """Meter reads are ACKed with no data after the bus timeout; the dimension 1200 read is refused.""" + for frame, lo, hi in (("*#18*51*51##", 0.5, 0.7), ("*#18*51*113##", 0.7, 0.9), ("*#18*51*54##", 0.7, 0.9)): + res = _result(rows, RUN1, frame) + assert res["ack"] is True and res["replies"] == [] and lo < res["reply_time_s"] < hi, frame + stream = _result(rows, RUN1, "*#18*51*1200##") + assert stream["ack"] is False and stream["reply_time_s"] < 0.05 + report = _result(rows, RUN5, "*#18*51*113*100##") + assert report["ack"] is True and report["events_after"] == [], "the report form is accepted but not echoed" + + +# --------------------------------------------------------------- WHO 2 cover 05 and the general stop + + +def test_general_stop_was_seen_exactly_once(frames: list[dict]) -> None: + """*2*0*0## (one Home Assistant general stop) is the only general WHO 2 frame of the capture.""" + general = [f for f in frames if f["raw"] == "*2*0*0##"] + assert len(general) == 1 and general[0]["run"] == RUN6 + msg = OWNMessage.parse("*2*0*0##") + assert msg is not None and msg.who == 2 and msg.where == "0" + assert not any(f["raw"].startswith("*2*") and f["raw"].endswith("*0##") and f["raw"] != "*2*0*0##" for f in frames) + + +def test_f411_2_shutter_05_stops_itself_after_each_run(frames: list[dict]) -> None: + """Every run starts with the gateway's pre-move STOP burst; a full run ends 5.1-5.9 s later on the actuator's own stop.""" + starts = [] + for run in (RUN6, RUN7): + evt = [f for f in frames if f["run"] == run] + for i, f in enumerate(evt): + if f["raw"] in ("*2*1*05##", "*2*2*05##"): + translation = f"*2*1000#{f['raw'][3]}*05##" + # the three frames before the move status: stop translation, stop status, move translation + # (the gateway delivers the translation echoes and the actuator statuses in varying order) + assert sorted(x["raw"] for x in evt[i - 3 : i]) == sorted(["*2*1000#0*05##", "*2*0*05##", translation]), (run, f["timestamp"]) + nxt = next(x for x in evt[i + 1 :] if x["raw"].startswith("*2*")) + starts.append((run, f["raw"], round(nxt["timestamp"] - f["timestamp"], 3), nxt["raw"])) + assert len(starts) == 11 + full_runs = [s for s in starts if s[3] == "*2*0*05##"] + assert len(full_runs) == 9 + assert all(5.1 <= s[2] <= 5.9 for s in full_runs), full_runs + # two runs (set_cover_position) were stopped by Home Assistant: after 2.45 s and 3.65 s + partial = [s for s in starts if s[3] != "*2*0*05##"] + assert partial == [ + (RUN6, "*2*2*05##", 3.654, "*2*1000#0*05##"), + (RUN7, "*2*1*05##", 2.446, "*2*1000#0*05##"), + ] + + +def test_cover_05_dimension_reads(rows: list[dict]) -> None: + """The F411/2 reports no position: dimension 10 ACKs with nothing, dimension 11 is refused.""" + assert _result(rows, RUN1, "*#2*05##")["replies"] == ["*2*0*05##"] + dim10 = _result(rows, RUN1, "*#2*05*10##") + assert dim10["ack"] is True and dim10["replies"] == [] and dim10["reply_time_s"] > 1.0 + assert _result(rows, RUN1, "*#2*05*11##")["ack"] is False + assert _result(rows, RUN1, "*#2*0##")["replies"] == ["*2*0*05##"] + + +# --------------------------------------------------------------- the light pulse of 20:42:07 UTC + + +def test_light_pulse_during_run1_was_not_reproduced(rows: list[dict]) -> None: + """A 100 ms pulse of 07 and 06 arrived during a locally refused read; re-sending the same reads showed nothing.""" + pulse = _result(rows, RUN1, "*#3*#1##") + assert pulse["ack"] is False and pulse["reply_time_s"] < 0.01 + assert pulse["events_after"] == ["*1*1*07##", "*1*0*07##", "*1*1*06##"] + for run in (RUN8, RUN8B): + for res in _results(rows, run): + assert res["ack"] is False and res["events_after"] == [], res + assert [r["frame"] for r in _results(rows, RUN8)] == ["*#25*21##", "*#3*#1##", "*#25*21##"] + assert not _evt(rows, RUN8) and not _evt(rows, RUN8B) + + +# --------------------------------------------------------------- entity replays + + +@pytest.mark.asyncio +async def test_replay_run7_lights_and_shutter_through_the_entities(hass: HomeAssistant, rows: list[dict]) -> None: + """The local Home Assistant session: 06 on / off, 07 on / off, three shutter runs with hardware stops.""" + entities = await _setup_plant(hass, _gateway()) + light_06, light_07, shutter = entities["06"], entities["07"], entities["05"] + seen: list[tuple[str, bool | None, bool, bool]] = [] + for r in _evt(rows, RUN7): + msg = OWNMessage.parse(r["frame"]) + assert msg is not None + if getattr(msg, "is_translation", False): + continue + who, where = getattr(msg, "who", None), getattr(msg, "where", None) + if who == 1 and where in ("06", "07"): + entities[where].handle_event(msg) + seen.append((r["frame"], light_06.is_on, light_07.is_on is True, False)) + elif who == 2 and where == "05": + shutter.handle_event(msg) + seen.append((r["frame"], None, shutter.is_closing is True, shutter.is_opening is True)) + light_states = [(f, on06, on07) for f, on06, on07, _ in seen if f.startswith("*1*")] + assert light_states == [ + ("*1*0*06##", False, False), + ("*1*1*06##", True, False), + ("*1*0*06##", False, False), + ("*1*1*07##", False, True), + ("*1*0*07##", False, False), + ("*1*0*07##", False, False), + ] + cover_states = [(f, closing, opening) for f, _, closing, opening in seen if f.startswith("*2*")] + assert cover_states == [ + ("*2*0*05##", False, False), + ("*2*2*05##", True, False), + ("*2*0*05##", False, False), + ("*2*0*05##", False, False), + ("*2*1*05##", False, True), + ("*2*0*05##", False, False), + ("*2*0*05##", False, False), + ("*2*2*05##", True, False), + ("*2*0*05##", False, False), + ] + assert light_06.is_on is False and light_07.is_on is False + assert shutter.is_closing is False and shutter.is_opening is False + + +@pytest.mark.asyncio +async def test_replay_run4b_zone_2_through_the_climate_entity(hass: HomeAssistant, rows: list[dict]) -> None: + """The final reads: 24.1 degrees measured, 23.5 in force and commanded, heating season, valve off.""" + entities = await _setup_plant(hass, _gateway()) + zone2 = entities["2"] + for r in _evt(rows, RUN4B): + msg = OWNMessage.parse(r["frame"]) + assert msg is not None + if getattr(msg, "who", None) == 4 and getattr(msg, "zone", None) == 2: + zone2.handle_event(msg) + assert zone2.current_temperature == 24.1 + assert zone2.target_temperature == 23.5 + assert zone2.hvac_mode == HVACMode.HEAT + assert zone2.extra_state_attributes["season"] == "heating" + assert zone2.extra_state_attributes["local_offset"] == 0 diff --git a/tests/test_trace_oracle_validation.py b/tests/test_trace_oracle_validation.py index 6e22577b9..411a5ac42 100644 --- a/tests/test_trace_oracle_validation.py +++ b/tests/test_trace_oracle_validation.py @@ -515,6 +515,11 @@ def test_tier4_all_trace_rx_frames_parse_cleanly_in_ownd(): # Known malformed synthetic frame in f500_tuner fixture (missing leading '#' on WHO 22 dim 6); # OWNMessage.parse must return None cleanly without raising. known_unparseable_rx = {"*22*2#1*6*2##"} + # Authentic frames whose decoder is not in the pinned OWNd yet: they must not raise, and + # they may parse to None until the decoder lands (then they parse like any other frame). + # - *#13**27*70#52#54#49##: WHO 13 dimension 27 model name ("F461" as ASCII codes) answered + # by a live F461 2.0.11 (tests/fixtures/traces/f461_live_2026-10-23); decoder in OWNd#139. + pending_decoder_rx = {"*#13**27*70#52#54#49##"} failures: list[str] = [] for frame in sorted(rx_frames): @@ -523,6 +528,8 @@ def test_tier4_all_trace_rx_frames_parse_cleanly_in_ownd(): if frame in known_unparseable_rx: if parsed is not None: failures.append(f"Expected None for malformed frame {frame}, got {parsed!r}") + elif frame in pending_decoder_rx: + continue elif parsed is None: failures.append(f"OWNMessage.parse returned None for trace rx frame: {frame}") except Exception as exc: # noqa: BLE001 From fd16d987bfc60c7f12af998e63b380c28ad07d54 Mon Sep 17 00:00:00 2001 From: gdluck Date: Sat, 24 Oct 2026 16:31:28 +0300 Subject: [PATCH 2/3] test(trace): add live MyHomeServer1 3.87.13 2026-10-24 status-read capture The facts of the F461 2026-10-23 capture read on a second gateway family: the user's home MyHomeServer1, firmware 3.87.13 (WHO 13 device type 200, WHO 1013 object model 67.15.5.0, dimension 27 "MyHomeServer1"), a large plant with WHO 4 zones 35-70 (dimension 7 setpoints, temperatures, humidity on 17 zones, actuators Z#1 / Z#2 and zone-0 actuators 0#1-0#4) and about 100 WHO 1 points including four-digit area-0 points 0010-0015. Status reads only. tests/fixtures/traces/myhomeserver1_live_2026-10-24/: the archive (376 event frames, 613 rows, three runs) and its README. The MAC is synthetic in text and in the WHO 13 dimension 12 bytes; the IP is a documentation address. tests/test_myhomeserver1_live_2026_10_24_trace.py pins: *#4*0## refused in 51 ms; *#4*#0## and *#4*#0*14## unanswered after 4.2 s (one OWNd retry); *#4*35## reply order 0, 12, season, 14, 13; *#4*35*20## one actuator and *#4*#0*20## 43 distinct actuator frames including zone 0; *#4*35*60## NACK where no probe exists, *#4*0*60## answered by 17 zones, *#4*39*60## answered; *#16*0*5## / *#16*101*5## / *#5*0## refused in 3-5 ms; *#1*0## with 100 point statuses; 0014 and 14 two devices, 0010 real and 10 absent, 0001 / 0004 refused at once vs 01 / 04 forwarded; *#13**0## echoed on the event session; *#13**12## answering the MAC; time zone 999. The firmware oracle emulates MyHomeServer1 2.82.06 while this unit runs 3.87.13, and *#13**12## returns a real MAC here where the emulated 2.82.06 returns zeros (oracle PR 59): stated in the fixture, the README and the tests. tests/test_trace_oracle_validation.py: the MyHomeServer1 dimension 27 reply joins the pending-decoder set (OWNd#139). The trace matrix is unchanged. Co-Authored-By: Claude Fable 5.1 --- .../myhomeserver1_live_2026-10-24/README.md | 79 + ...e_trace_MyHomeServer1_live_2026-10-24.json | 6812 +++++++++++++++++ ...est_myhomeserver1_live_2026_10_24_trace.py | 294 + tests/test_trace_oracle_validation.py | 7 +- 4 files changed, 7191 insertions(+), 1 deletion(-) create mode 100644 tests/fixtures/traces/myhomeserver1_live_2026-10-24/README.md create mode 100644 tests/fixtures/traces/myhomeserver1_live_2026-10-24/myhome_trace_MyHomeServer1_live_2026-10-24.json create mode 100644 tests/test_myhomeserver1_live_2026_10_24_trace.py diff --git a/tests/fixtures/traces/myhomeserver1_live_2026-10-24/README.md b/tests/fixtures/traces/myhomeserver1_live_2026-10-24/README.md new file mode 100644 index 000000000..b428c36c0 --- /dev/null +++ b/tests/fixtures/traces/myhomeserver1_live_2026-10-24/README.md @@ -0,0 +1,79 @@ +# Live capture: Legrand / BTicino MyHomeServer1 (firmware 3.87.13), 2026-10-24 + +Status reads only (no command was sent) against a physical MyHomeServer1 in a large home plant, +2026-10-24 13:19 to 13:22 UTC, recorded with OWNd master (`OWNCommandSession` + `OWNEventSession`, +`tools/probe.py` as for the F461 captures). The purpose: the facts established on the F461 2.0.11 +plant on 2026-10-23 (`tests/fixtures/traces/f461_live_2026-10-23/`) checked on a second gateway +family for OWnd #137, #139, #140, #141, #142 and MyHOME #791-#794, #798. + +Two caveats that apply to every row: the firmware oracle (`own-firmware-oracle`) emulates +MyHomeServer1 **2.82.06**, this unit runs **3.87.13**; and `*#13**12##` returns a real MAC address +here (synthetic in the fixture), where the emulated 2.82.06 returns zeros (oracle PR #59). + +## Plant + +| Item | Value | +|---|---| +| Gateway | MyHomeServer1, firmware 3.87.13 (`*#13**16*3*87*13##`), WHO 13 device type `200`, WHO 13 dimension 27 model name `77#121#72#111#109#101#83#101#114#118#101#114#49` = "MyHomeServer1", WHO 1013 object model `67.15.5.0` (`*#1013**1*67*15*5*0##`), clock time zone `999` | +| Thermoregulation | WHO 4 zones 35-70 (34 zones report a temperature); the plant broadcasts setpoints as dimension 7 (`*#4*Z*7*1*1*T##`), temperatures (`*#4*Z*0*T##`), dimension 5 and humidity on 17 zones; every zone has actuator `Z#1`, five have a fan coil `Z#2`, and zone 0 has actuators `0#1`-`0#4`; `*#4*#0##` is unanswered (no central unit answers) | +| Lighting | about 100 WHO 1 points in 74 addresses: two-digit `11`-`69`, four-digit area-0 `0010`-`0015` and four-digit `0110`-`0515` | +| Automation | `*#2*0##` is ACKed without data | +| Not present | WHO 16 sound diffusion, WHO 5 alarm (both refused locally) | + +## File format: `myhome_trace_MyHomeServer1_live_2026-10-24.json` + +Standard `MyHOME` derived trace archive, the same layout as `f461_live_2026-10-23` (see its README for the +field table): `capture` (with `runs`), `gateway` (synthetic MAC `00:03:50:00:20:24`, also as the WHO 13 dimension 12 +reply `*#13**12*0*3*80*0*32*36##`; documentation IP `192.0.2.9`; an `oracle_note`), `frames` (376 event-session +`rx` frames) and `rows` (613 `tx` / `rx` / `result` entries; `result.replies` are the frames collected on the +command session, `result.events_after` the event-session frames seen before the next request). + +## The runs + +| `run` | UTC | What it was | +|---|---|---| +| `run1_identify` | 13:19-13:20 | `*#13**15##`, `16`, `0`, `1`, `22`, `27`, `12`, `*#1013**1##`; 106 WHO 4 frames of the plant's own traffic meanwhile | +| `run2_reads_thermo_sound_alarm_lights` | 13:20-13:21 | `*#4*#0##`, `*#4*#0*14##`, `*#4*35##`, `*#4*35*12##`, `*#4*35*14##`, `*#4*35*20##`, `*#4*#0*20##`, `*#4*35*60##`, `*#4*0*60##`, `*#16*0*5##`, `*#16*101*5##`, `*#5*0##`, `*#1*0##`, `*#2*0##` | +| `run3_reads_lights_addresses_humidity` | 13:22 | `*#4*0##`, `*#4*39*60##`, `*#1*0014##` / `*#1*14##`, `*#1*0010##` / `*#1*10##`, `*#1*0001##` / `*#1*01##`, `*#1*0004##` / `*#1*04##`, `*#13**0##` | + +## What the plant established (each row has its frames in the archive) + +* `*#4*0##` is refused in 51 ms (NACK, nothing on the event session). `*#4*#0##` and `*#4*#0*14##` are forwarded + and unanswered: NACK after 4.2 s (OWNd retried the command once). +* `*#4*35##` is answered in 1.3 s with `*#4*35*0*0231##`, `*#4*35*12*0200*3##`, `*4*1*35##`, `*#4*35*14*0200*3##`, + `*#4*35*13*00##`: the same order as the F461 (dimension 12 before dimension 14). +* `*#4*35*20##` -> `*#4*35#1*20*0##` (189 ms). `*#4*#0*20##` is ACKed in 0.39 s; the command session collected + 8 of the frames, the event session all 43 distinct actuator frames (34 `Z#1`, 5 `Z#2` fan coils, `0#1`-`0#4`): + 44 actuator frames in the run counting the zone 35 reply. +* `*#4*35*60##` NACKs after 2.1 s (no humidity probe in zone 35); `*#4*0*60##` is ACKed in 0.5 s and answered by the + 17 zones that have one (`*#4*39*60*51##` ... `*#4*70*60*69##`); `*#4*39*60##` -> `*#4*39*60*51##` in 0.2 s. +* `*#16*0*5##` and `*#16*101*5##` NACK in 3 ms, `*#5*0##` in 5 ms: refused by the gateway itself. +* `*#1*0##` is ACKed after 4.7 s with 100 point statuses (74 distinct addresses, a few reported twice): four-digit + area-0 points `0010`-`0015`, four-digit `0110`-`0515` and two-digit `11`-`69`. `*#2*0##` is ACKed after 4.3 s + with no data. +* `*#1*0014##` -> `*1*0*0014##` and `*#1*14##` -> `*1*0*14##`: two different devices. `*#1*0010##` -> `*1*0*0010##` + while `*#1*10##` NACKs after 2.0 s (no device). `*#1*0001##` NACKs in 8 ms and `*#1*0004##` in 14 ms (the + four-digit `000N` spelling is refused at once), whereas `*#1*01##` and `*#1*04##` NACK after 2.0 s (forwarded, + no device): on this firmware a four-digit `00PL` with PL 10-15 is a real address, `000N` is not. +* `*#13**0##` is answered on the command session and the reply is also delivered on the event session + (`*#13**0*16*19*49*999##`, `*#13**0*16*22*38*999##`). Every WHO 13 / 1013 reply of run 1 was echoed on the event + session. `*#13**22##` reports time zone `999`. +* `*#13**27##` -> the model name "MyHomeServer1" as ASCII codes; `OWNMessage.parse` returns `None` for it in the pinned + OWNd (OWNd #139 adds the decoder). + +## What this capture backs + +| Pull request | Frames in this archive | +|---|---| +| OWNd #137 (`set_central_mode` requires a central-unit address) | `*#4*#0*14##`, `*#4*#0##` forwarded and unanswered (run 2) | +| OWNd #139 (WHO 13 dimension 27 model name) | `*#13**27##` -> "MyHomeServer1" (run 1) | +| OWNd #140 (`actuators_status` builder) | `*#4*35*20##`, `*#4*#0*20##` with the `Z#1` / `Z#2` / `0#N` reply forms (run 2) | +| OWNd #141, MyHOME #798 (area-0 four-digit addresses) | `*#1*0001##` / `*#1*0004##` refused at once; `0010`-`0015` real devices distinct from `10`-`15` (run 3, run 2) | +| OWNd #142, MyHOME #794 (WHO 16 / startup requests the firmware refuses) | `*#16*0*5##`, `*#16*101*5##`, `*#4*0##` refused locally (run 2, run 3) | +| MyHOME #791 (setpoint in force = dimension 12) | `*#4*35##` reply order (run 2) | +| MyHOME #792 (request dimension 20 on add and after reconnect) | the actuator status is answered on a MyHomeServer1, per zone and for all zones (run 2) | +| MyHOME #793 (humidity poll gate) | per-zone humidity answered only where a probe exists, the general sweep answered (run 2, run 3) | +| alarm gate (misc PR) | `*#5*0##` refused in 5 ms (run 2) | +| event-session liveness probe (misc PR) | `*#13**0##` echoed on the event session (run 1, run 3) | + +Tests: `tests/test_myhomeserver1_live_2026_10_24_trace.py`. diff --git a/tests/fixtures/traces/myhomeserver1_live_2026-10-24/myhome_trace_MyHomeServer1_live_2026-10-24.json b/tests/fixtures/traces/myhomeserver1_live_2026-10-24/myhome_trace_MyHomeServer1_live_2026-10-24.json new file mode 100644 index 000000000..b5daf77a2 --- /dev/null +++ b/tests/fixtures/traces/myhomeserver1_live_2026-10-24/myhome_trace_MyHomeServer1_live_2026-10-24.json @@ -0,0 +1,6812 @@ +{ + "capture": { + "kind": "derived_trace_archive", + "started_at": "2026-10-24T13:19:43+00:00", + "notes": "Live Legrand/BTicino MyHomeServer1 (firmware 3.87.13 / WHO 13 device type 200 / WHO 1013 67.15.5.0) multi-session capture of 2026-10-24 recorded with OWNd master on a large home plant: WHO 4 zones 35-70 (setpoints as dimension 7, temperatures, humidity on 17 zones, actuators Z#1 / Z#2 and zone-0 actuators 0#1..0#4), about 100 WHO 1 points including four-digit area-0 points 0010-0015 and four-digit 0111-0515, WHO 2 general status. Status reads only, no commands. Purpose: the same facts as the F461 capture of 2026-10-23 on a second gateway family (OWNd 137, 139, 140, 141, 142; MyHOME 791-794, 798). The firmware oracle emulates MyHomeServer1 2.82.06; this unit runs 3.87.13, and *#13**12## returns a real MAC here (scrubbed) where the emulated 2.82.06 returns zeros (oracle PR 59).", + "window": { + "first": "2026-10-24T13:19:43+00:00", + "last": "2026-10-24T13:22:39+00:00", + "frames": 376, + "rows": 613 + }, + "runs": [ + {"run": "run1_identify", "source": "identify.jsonl", "utc": "13:19:45-13:20:00", "rows": 148, "frames": 116, "purpose": "WHO 13 dimensions 15, 16, 0, 1, 22, 27, 12 and WHO 1013 dimension 1 on the home MyHomeServer1 (firmware 3.87.13); the event session shows the plant's own traffic meanwhile"}, + {"run": "run2_reads_thermo_sound_alarm_lights", "source": "reads1.jsonl", "utc": "13:20:30-13:21:19", "rows": 422, "frames": 255, "purpose": "status reads only: central-unit forms *#4*#0## / *#4*#0*14##, zone 35 status and dimensions 12 / 14 / 20, all-zone actuators *#4*#0*20##, humidity *#4*35*60## / *#4*0*60##, WHO 16 / WHO 5 forms, *#1*0## and *#2*0## general status"}, + {"run": "run3_reads_lights_addresses_humidity", "source": "reads2.jsonl", "utc": "13:22:09-13:22:39", "rows": 43, "frames": 5, "purpose": "*#4*0## (refused), *#4*39*60##, the WHO 1 address spellings 0014 / 14, 0010 / 10, 0001 / 01, 0004 / 04, and *#13**0## echoed on the event session"} + ] + }, + "gateway": { + "model": "MyHomeServer1", + "manufacturer": "Legrand / BTicino", + "firmware": "3.87.13", + "ip": "192.0.2.9", + "mac": "00:03:50:00:20:24", + "identification": { + "model": "MyHomeServer1", + "who13_code": "200", + "who13_model_name": "MyHomeServer1", + "who1013_code": "67" + }, + "oracle_note": "own-firmware-oracle emulates MyHomeServer1 2.82.06; this unit runs 3.87.13" + }, + "frames": [ + {"timestamp": 0.291, "direction": "rx", "raw": "*#4*53*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 0.381, "direction": "rx", "raw": "*#4*55*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 0.552, "direction": "rx", "raw": "*#4*58*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 0.648, "direction": "rx", "raw": "*#4*57*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 0.821, "direction": "rx", "raw": "*#4*60*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 0.911, "direction": "rx", "raw": "*#4*61*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 1.001, "direction": "rx", "raw": "*#4*59*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 1.087, "direction": "rx", "raw": "*#13**15*200##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 1.141, "direction": "rx", "raw": "*#1013**1*67*15*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 1.43, "direction": "rx", "raw": "*#4*68*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 1.5, "direction": "rx", "raw": "*#4*69*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 1.628, "direction": "rx", "raw": "*#4*70*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 2.111, "direction": "rx", "raw": "*#13**16*3*87*13##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 2.912, "direction": "rx", "raw": "*#4*35*7*1*1*0200##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 2.913, "direction": "rx", "raw": "*#4*35*0*0231##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 2.914, "direction": "rx", "raw": "*#4*36*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 2.963, "direction": "rx", "raw": "*#4*36*0*0235##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 2.966, "direction": "rx", "raw": "*#4*37*7*1*1*0130##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 2.966, "direction": "rx", "raw": "*#4*37*0*0206##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.033, "direction": "rx", "raw": "*#4*38*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.061, "direction": "rx", "raw": "*#4*38*0*0245##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.094, "direction": "rx", "raw": "*#4*39*7*1*1*0220##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.116, "direction": "rx", "raw": "*#4*39*0*0226##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.2, "direction": "rx", "raw": "*#13**0*16*19*49*999##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.265, "direction": "rx", "raw": "*#4*40*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.291, "direction": "rx", "raw": "*#4*41*7*1*1*0130##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.383, "direction": "rx", "raw": "*#4*41*0*0216##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.479, "direction": "rx", "raw": "*#4*40*0*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.559, "direction": "rx", "raw": "*#4*44*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.671, "direction": "rx", "raw": "*#4*45*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.764, "direction": "rx", "raw": "*#4*44*0*0243##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.8, "direction": "rx", "raw": "*#4*42*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.902, "direction": "rx", "raw": "*#4*42*0*0231##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 3.98, "direction": "rx", "raw": "*#4*46*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.082, "direction": "rx", "raw": "*#4*48*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.181, "direction": "rx", "raw": "*#4*46*0*0235##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.268, "direction": "rx", "raw": "*#13**1*06*24*10*2026##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.289, "direction": "rx", "raw": "*#4*48*0*0233##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.361, "direction": "rx", "raw": "*#4*47*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.461, "direction": "rx", "raw": "*#4*45*0*0242##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.558, "direction": "rx", "raw": "*#4*47*0*0236##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.771, "direction": "rx", "raw": "*#4*51*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.883, "direction": "rx", "raw": "*#4*59*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 4.972, "direction": "rx", "raw": "*#4*50*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.07, "direction": "rx", "raw": "*#4*55*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.16, "direction": "rx", "raw": "*#4*49*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.401, "direction": "rx", "raw": "*#13**22*16*19*51*999*06*24*10*2026##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.436, "direction": "rx", "raw": "*#4*61*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.472, "direction": "rx", "raw": "*#4*62*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.473, "direction": "rx", "raw": "*#4*61*0*0237##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.473, "direction": "rx", "raw": "*#4*63*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.474, "direction": "rx", "raw": "*#4*62*0*0241##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.57, "direction": "rx", "raw": "*#4*53*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.608, "direction": "rx", "raw": "*#4*60*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.641, "direction": "rx", "raw": "*#4*55*0*0238##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.682, "direction": "rx", "raw": "*#4*53*0*0229##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.79, "direction": "rx", "raw": "*#4*57*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.88, "direction": "rx", "raw": "*#4*65*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 5.981, "direction": "rx", "raw": "*#4*63*0*0232##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.012, "direction": "rx", "raw": "*#4*69*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.102, "direction": "rx", "raw": "*#4*57*0*0231##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.138, "direction": "rx", "raw": "*#4*69*0*0237##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.164, "direction": "rx", "raw": "*#4*49*0*0254##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.27, "direction": "rx", "raw": "*#4*66*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.29, "direction": "rx", "raw": "*#4*66*0*0248##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.37, "direction": "rx", "raw": "*#4*65*0*0235##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.41, "direction": "rx", "raw": "*#4*59*0*0236##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.454, "direction": "rx", "raw": "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.52, "direction": "rx", "raw": "*#4*70*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.541, "direction": "rx", "raw": "*#4*50*0*0233##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.621, "direction": "rx", "raw": "*#4*57*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.721, "direction": "rx", "raw": "*#4*53*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.809, "direction": "rx", "raw": "*#4*70*0*0231##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.902, "direction": "rx", "raw": "*#4*67*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 6.99, "direction": "rx", "raw": "*#4*64*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.081, "direction": "rx", "raw": "*#4*62*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.178, "direction": "rx", "raw": "*#4*51*0*0243##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.255, "direction": "rx", "raw": "*#4*67*0*0245##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.352, "direction": "rx", "raw": "*#4*53*0*0229##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.421, "direction": "rx", "raw": "*#4*57*0*0231##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.52, "direction": "rx", "raw": "*#13**12*0*3*80*0*32*36##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.53, "direction": "rx", "raw": "*#4*68*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.6, "direction": "rx", "raw": "*#4*69*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.655, "direction": "rx", "raw": "*#4*66*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.691, "direction": "rx", "raw": "*#4*68*0*0231##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.737, "direction": "rx", "raw": "*#4*68*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.78, "direction": "rx", "raw": "*#4*62*0*0241##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.823, "direction": "rx", "raw": "*#4*58*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.88, "direction": "rx", "raw": "*#4*52*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.909, "direction": "rx", "raw": "*#4*58*0*0234##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 7.951, "direction": "rx", "raw": "*#4*60*0*0240##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.001, "direction": "rx", "raw": "*#4*61*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.06, "direction": "rx", "raw": "*#4*65*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.09, "direction": "rx", "raw": "*#4*66*0*0248##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.132, "direction": "rx", "raw": "*#4*70*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.17, "direction": "rx", "raw": "*#4*61*0*0237##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.203, "direction": "rx", "raw": "*#4*69*0*0237##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.243, "direction": "rx", "raw": "*#4*60*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.281, "direction": "rx", "raw": "*#4*64*0*0233##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.314, "direction": "rx", "raw": "*#4*52*0*0236##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.349, "direction": "rx", "raw": "*#4*60*0*0240##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.396, "direction": "rx", "raw": "*#4*64*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.447, "direction": "rx", "raw": "*#4*58*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.5, "direction": "rx", "raw": "*#4*70*0*0231##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.531, "direction": "rx", "raw": "*#4*64*0*0233##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.559, "direction": "rx", "raw": "*#1013**1*67*15*5*0##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.58, "direction": "rx", "raw": "*#4*67*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.616, "direction": "rx", "raw": "*#4*58*0*0234##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.664, "direction": "rx", "raw": "*#4*52*7*1*1*0225##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.702, "direction": "rx", "raw": "*#4*65*0*0235##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.759, "direction": "rx", "raw": "*#4*63*7*1*1*0230##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.797, "direction": "rx", "raw": "*#4*63*0*0232##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.84, "direction": "rx", "raw": "*#4*68*0*0231##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.885, "direction": "rx", "raw": "*#4*67*0*0245##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 8.937, "direction": "rx", "raw": "*#4*52*0*0236##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 14.563, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run1_identify", "session": "evt"}, + {"timestamp": 14.073, "direction": "rx", "raw": "*#4*35*0*0231##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 14.378, "direction": "rx", "raw": "*#4*35*12*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 14.379, "direction": "rx", "raw": "*4*1*35##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 14.651, "direction": "rx", "raw": "*#4*35*14*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 14.753, "direction": "rx", "raw": "*#4*35*13*00##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 18.937, "direction": "rx", "raw": "*#4*35*12*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 18.952, "direction": "rx", "raw": "*4*1*35##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 21.118, "direction": "rx", "raw": "*#4*35*14*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 23.325, "direction": "rx", "raw": "*#4*35#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.443, "direction": "rx", "raw": "*#4*39#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.476, "direction": "rx", "raw": "*#4*48#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.508, "direction": "rx", "raw": "*#4*35#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.549, "direction": "rx", "raw": "*#4*64#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.574, "direction": "rx", "raw": "*#4*40#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.614, "direction": "rx", "raw": "*#4*47#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.647, "direction": "rx", "raw": "*#4*53#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.691, "direction": "rx", "raw": "*#4*43#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.729, "direction": "rx", "raw": "*#4*60#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.755, "direction": "rx", "raw": "*#4*36#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.79, "direction": "rx", "raw": "*#4*65#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.825, "direction": "rx", "raw": "*#4*47#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.859, "direction": "rx", "raw": "*#4*66#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.911, "direction": "rx", "raw": "*#4*48#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.932, "direction": "rx", "raw": "*#4*67#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 25.981, "direction": "rx", "raw": "*#4*41#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.006, "direction": "rx", "raw": "*#4*70#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.051, "direction": "rx", "raw": "*#4*0#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.076, "direction": "rx", "raw": "*#4*57#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.112, "direction": "rx", "raw": "*#4*37#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.146, "direction": "rx", "raw": "*#4*58#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.184, "direction": "rx", "raw": "*#4*0#3*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.216, "direction": "rx", "raw": "*#4*60#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.254, "direction": "rx", "raw": "*#4*38#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.289, "direction": "rx", "raw": "*#4*68#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.326, "direction": "rx", "raw": "*#4*42#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.359, "direction": "rx", "raw": "*#4*49#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.402, "direction": "rx", "raw": "*#4*44#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.429, "direction": "rx", "raw": "*#4*51#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.469, "direction": "rx", "raw": "*#4*0#4*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.503, "direction": "rx", "raw": "*#4*61#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.544, "direction": "rx", "raw": "*#4*59#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.579, "direction": "rx", "raw": "*#4*70#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.631, "direction": "rx", "raw": "*#4*52#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.661, "direction": "rx", "raw": "*#4*62#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.698, "direction": "rx", "raw": "*#4*50#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.735, "direction": "rx", "raw": "*#4*0#2*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.768, "direction": "rx", "raw": "*#4*57#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.826, "direction": "rx", "raw": "*#4*63#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.858, "direction": "rx", "raw": "*#4*55#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.921, "direction": "rx", "raw": "*#4*45#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 26.948, "direction": "rx", "raw": "*#4*69#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 27.011, "direction": "rx", "raw": "*#4*46#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.011, "direction": "rx", "raw": "*#4*39*60*51##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.041, "direction": "rx", "raw": "*#4*53*60*60##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.09, "direction": "rx", "raw": "*#4*48*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.126, "direction": "rx", "raw": "*#4*69*60*52##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.19, "direction": "rx", "raw": "*#4*40*60*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.225, "direction": "rx", "raw": "*#4*42*60*52##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.276, "direction": "rx", "raw": "*#4*43*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.326, "direction": "rx", "raw": "*#4*60*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.371, "direction": "rx", "raw": "*#4*47*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.425, "direction": "rx", "raw": "*#4*57*60*59##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.474, "direction": "rx", "raw": "*#4*41*60*49##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.561, "direction": "rx", "raw": "*#4*61*60*53##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.6, "direction": "rx", "raw": "*#4*55*60*51##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.648, "direction": "rx", "raw": "*#4*70*60*69##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.703, "direction": "rx", "raw": "*#4*58*60*55##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.754, "direction": "rx", "raw": "*#4*68*60*59##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 32.823, "direction": "rx", "raw": "*#4*59*60*66##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.462, "direction": "rx", "raw": "*1*0*14##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0514##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0014##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0415##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0015##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*14##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0315##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.711, "direction": "rx", "raw": "*1*0*0115##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.749, "direction": "rx", "raw": "*1*0*45##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.788, "direction": "rx", "raw": "*1*0*0513##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.821, "direction": "rx", "raw": "*1*0*33##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.858, "direction": "rx", "raw": "*1*0*0010##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.891, "direction": "rx", "raw": "*1*0*0314##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.929, "direction": "rx", "raw": "*1*0*17##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 40.961, "direction": "rx", "raw": "*1*0*34##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.006, "direction": "rx", "raw": "*1*0*21##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.039, "direction": "rx", "raw": "*1*0*0215##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.077, "direction": "rx", "raw": "*1*0*11##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.109, "direction": "rx", "raw": "*1*0*36##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.146, "direction": "rx", "raw": "*1*0*37##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.183, "direction": "rx", "raw": "*1*0*43##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.22, "direction": "rx", "raw": "*1*0*38##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.253, "direction": "rx", "raw": "*1*0*0012##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.287, "direction": "rx", "raw": "*1*0*0211##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.329, "direction": "rx", "raw": "*1*0*0515##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.367, "direction": "rx", "raw": "*1*0*0013##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.4, "direction": "rx", "raw": "*1*0*0512##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.441, "direction": "rx", "raw": "*1*0*0311##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.479, "direction": "rx", "raw": "*1*0*0312##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.511, "direction": "rx", "raw": "*1*0*21##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.547, "direction": "rx", "raw": "*1*0*0313##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.583, "direction": "rx", "raw": "*1*0*0111##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.617, "direction": "rx", "raw": "*1*0*0212##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.654, "direction": "rx", "raw": "*1*0*61##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.687, "direction": "rx", "raw": "*1*0*49##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.723, "direction": "rx", "raw": "*1*0*12##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.76, "direction": "rx", "raw": "*1*0*29##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.791, "direction": "rx", "raw": "*1*0*18##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.827, "direction": "rx", "raw": "*1*0*0310##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.86, "direction": "rx", "raw": "*1*0*0011##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.891, "direction": "rx", "raw": "*1*0*46##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.931, "direction": "rx", "raw": "*1*0*0510##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.961, "direction": "rx", "raw": "*1*0*0213##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.005, "direction": "rx", "raw": "*1*0*41##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.039, "direction": "rx", "raw": "*1*0*0511##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.072, "direction": "rx", "raw": "*1*0*44##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.111, "direction": "rx", "raw": "*1*0*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.148, "direction": "rx", "raw": "*1*0*42##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.185, "direction": "rx", "raw": "*1*0*0214##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.221, "direction": "rx", "raw": "*1*0*48##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.256, "direction": "rx", "raw": "*1*0*24##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.291, "direction": "rx", "raw": "*1*0*13##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.326, "direction": "rx", "raw": "*1*0*0210##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.361, "direction": "rx", "raw": "*1*0*64##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.396, "direction": "rx", "raw": "*1*0*0211##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.441, "direction": "rx", "raw": "*1*0*0315##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.481, "direction": "rx", "raw": "*1*0*0112##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.511, "direction": "rx", "raw": "*1*0*39##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.551, "direction": "rx", "raw": "*1*0*25##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.586, "direction": "rx", "raw": "*1*0*0212##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.624, "direction": "rx", "raw": "*1*0*65##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.658, "direction": "rx", "raw": "*1*0*45##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.691, "direction": "rx", "raw": "*1*0*16##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.727, "direction": "rx", "raw": "*1*0*46##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.767, "direction": "rx", "raw": "*1*0*0113##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.796, "direction": "rx", "raw": "*1*0*0213##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.833, "direction": "rx", "raw": "*1*0*62##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.867, "direction": "rx", "raw": "*1*0*0410##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.902, "direction": "rx", "raw": "*1*0*0514##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.935, "direction": "rx", "raw": "*1*0*0214##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.972, "direction": "rx", "raw": "*1*0*19##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.007, "direction": "rx", "raw": "*1*0*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.07, "direction": "rx", "raw": "*1*0*0413##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.096, "direction": "rx", "raw": "*1*0*31##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.135, "direction": "rx", "raw": "*1*0*26##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.17, "direction": "rx", "raw": "*1*0*0114##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.207, "direction": "rx", "raw": "*1*0*0515##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.24, "direction": "rx", "raw": "*1*0*0110##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.277, "direction": "rx", "raw": "*1*0*48##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.319, "direction": "rx", "raw": "*1*0*32##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.359, "direction": "rx", "raw": "*1*0*41##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.397, "direction": "rx", "raw": "*1*0*42##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.424, "direction": "rx", "raw": "*1*0*0411##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.461, "direction": "rx", "raw": "*1*0*63##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.505, "direction": "rx", "raw": "*1*0*27##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.549, "direction": "rx", "raw": "*1*0*11##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.586, "direction": "rx", "raw": "*1*0*66##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.629, "direction": "rx", "raw": "*1*0*0215##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.676, "direction": "rx", "raw": "*1*0*0512##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.719, "direction": "rx", "raw": "*1*0*28##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.767, "direction": "rx", "raw": "*1*0*31##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.808, "direction": "rx", "raw": "*1*0*32##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.837, "direction": "rx", "raw": "*1*0*12##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.87, "direction": "rx", "raw": "*1*0*25##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.908, "direction": "rx", "raw": "*1*0*13##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 43.941, "direction": "rx", "raw": "*1*0*26##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 44.003, "direction": "rx", "raw": "*1*0*68##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 44.032, "direction": "rx", "raw": "*1*0*27##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 44.094, "direction": "rx", "raw": "*1*0*69##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 44.12, "direction": "rx", "raw": "*1*0*28##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.211, "direction": "rx", "raw": "*1*0*17##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.242, "direction": "rx", "raw": "*1*0*0312##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.269, "direction": "rx", "raw": "*1*0*0514##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.312, "direction": "rx", "raw": "*1*0*0310##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.34, "direction": "rx", "raw": "*1*0*0010##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.369, "direction": "rx", "raw": "*1*0*0313##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.407, "direction": "rx", "raw": "*1*0*21##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.438, "direction": "rx", "raw": "*1*0*37##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.479, "direction": "rx", "raw": "*1*0*0014##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.521, "direction": "rx", "raw": "*1*0*0115##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.554, "direction": "rx", "raw": "*1*0*45##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.589, "direction": "rx", "raw": "*1*0*0513##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.622, "direction": "rx", "raw": "*1*0*46##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.659, "direction": "rx", "raw": "*1*0*0111##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.69, "direction": "rx", "raw": "*1*0*24##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.731, "direction": "rx", "raw": "*1*0*11##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.766, "direction": "rx", "raw": "*1*0*33##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.8, "direction": "rx", "raw": "*1*0*0415##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.835, "direction": "rx", "raw": "*1*0*38##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.871, "direction": "rx", "raw": "*1*0*61##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.905, "direction": "rx", "raw": "*1*0*0315##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.945, "direction": "rx", "raw": "*1*0*0015##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 50.979, "direction": "rx", "raw": "*1*0*34##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.015, "direction": "rx", "raw": "*1*0*12##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.051, "direction": "rx", "raw": "*1*0*43##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.095, "direction": "rx", "raw": "*1*0*13##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.126, "direction": "rx", "raw": "*1*0*39##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.161, "direction": "rx", "raw": "*1*0*18##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.2, "direction": "rx", "raw": "*1*0*0215##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.239, "direction": "rx", "raw": "*1*0*0012##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.275, "direction": "rx", "raw": "*1*0*29##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.31, "direction": "rx", "raw": "*1*0*19##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.345, "direction": "rx", "raw": "*1*0*0211##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.38, "direction": "rx", "raw": "*1*0*0212##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.418, "direction": "rx", "raw": "*1*0*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.455, "direction": "rx", "raw": "*1*0*0512##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.489, "direction": "rx", "raw": "*1*0*0011##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.52, "direction": "rx", "raw": "*1*0*0213##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.566, "direction": "rx", "raw": "*1*0*48##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.602, "direction": "rx", "raw": "*1*0*0110##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.635, "direction": "rx", "raw": "*1*0*0214##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.67, "direction": "rx", "raw": "*1*0*64##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.71, "direction": "rx", "raw": "*1*0*49##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.74, "direction": "rx", "raw": "*1*0*0510##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.775, "direction": "rx", "raw": "*1*0*0210##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.813, "direction": "rx", "raw": "*1*0*16##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.84, "direction": "rx", "raw": "*1*0*31##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.881, "direction": "rx", "raw": "*1*0*17##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.916, "direction": "rx", "raw": "*1*0*44##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.958, "direction": "rx", "raw": "*1*0*65##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 51.991, "direction": "rx", "raw": "*1*0*32##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.033, "direction": "rx", "raw": "*1*0*18##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.068, "direction": "rx", "raw": "*1*0*0314##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.1, "direction": "rx", "raw": "*1*0*14##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.136, "direction": "rx", "raw": "*1*0*0515##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.176, "direction": "rx", "raw": "*1*0*0014##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.208, "direction": "rx", "raw": "*1*0*0311##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.247, "direction": "rx", "raw": "*1*0*19##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.281, "direction": "rx", "raw": "*1*0*36##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.339, "direction": "rx", "raw": "*1*0*0013##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.37, "direction": "rx", "raw": "*1*0*41##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.4, "direction": "rx", "raw": "*1*0*42##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.44, "direction": "rx", "raw": "*1*0*0112##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.48, "direction": "rx", "raw": "*1*0*25##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.518, "direction": "rx", "raw": "*1*0*0511##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.552, "direction": "rx", "raw": "*1*0*66##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.591, "direction": "rx", "raw": "*1*0*0110##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.625, "direction": "rx", "raw": "*1*0*26##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.661, "direction": "rx", "raw": "*1*0*62##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.694, "direction": "rx", "raw": "*1*0*27##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.74, "direction": "rx", "raw": "*1*0*0015##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.771, "direction": "rx", "raw": "*1*0*0410##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.81, "direction": "rx", "raw": "*1*0*63##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.868, "direction": "rx", "raw": "*1*0*0113##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.893, "direction": "rx", "raw": "*1*0*28##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.942, "direction": "rx", "raw": "*1*0*64##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 52.97, "direction": "rx", "raw": "*1*0*0411##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 53.014, "direction": "rx", "raw": "*1*0*0114##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 53.069, "direction": "rx", "raw": "*1*0*0011##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 53.121, "direction": "rx", "raw": "*1*0*65##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 53.167, "direction": "rx", "raw": "*1*0*62##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 53.208, "direction": "rx", "raw": "*1*0*63##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 53.26, "direction": "rx", "raw": "*1*0*16##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 53.316, "direction": "rx", "raw": "*1*0*0413##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 53.37, "direction": "rx", "raw": "*1*0*68##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 53.429, "direction": "rx", "raw": "*1*0*69##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 7.264, "direction": "rx", "raw": "*#4*39*60*51##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, + {"timestamp": 9.383, "direction": "rx", "raw": "*1*0*0014##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, + {"timestamp": 11.483, "direction": "rx", "raw": "*1*0*14##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, + {"timestamp": 13.573, "direction": "rx", "raw": "*1*0*0010##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, + {"timestamp": 31.665, "direction": "rx", "raw": "*#13**0*16*22*38*999##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"} + ], + "rows": [ + { + "run": "run1_identify", + "t": 0.291, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*53*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 53's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 0.381, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*55*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 55's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 0.552, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*58*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 58's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 0.648, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*57*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 57's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 0.821, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*60*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 60's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 0.911, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*61*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 61's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 1.001, + "step": "listen", + "dir": "rx", + "session": "evt", + "frame": "*#4*59*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 59's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 1.046, + "step": "identify", + "dir": "tx", + "session": "cmd", + "frame": "*#13**15##", + "is_status_request": true + }, + { + "run": "run1_identify", + "t": 1.087, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#13**15*200##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway device type is: F454 / MyHomeServer1 / MH202 / F461 / H4890 / F450 / F459 / F460 / MH201." + }, + { + "run": "run1_identify", + "t": 1.089, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#13**15*200##" + }, + { + "run": "run1_identify", + "t": 1.089, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_identify", + "t": 1.089, + "utc": "13:19:47", + "step": "identify", + "dir": "result", + "frame": "*#13**15##", + "ack": true, + "reply_time_s": 0.043, + "replies": [ + "*#13**15*200##" + ], + "events_after": [ + "*#13**15*200##", + "*#1013**1*67*15*5*0##", + "*#4*68*5*0##", + "*#4*69*5*0##", + "*#4*70*5*0##" + ], + "note": "who13_device_type_200" + }, + { + "run": "run1_identify", + "t": 1.141, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#1013**1*67*15*5*0##", + "ownd_class": "OWNGatewayDiagnosticEvent", + "ownd_log": "Gateway diagnostic object model is: MyHomeServer1 (67)." + }, + { + "run": "run1_identify", + "t": 1.43, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*68*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 68's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 1.5, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*69*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 69's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 1.628, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*70*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 70's local control (dimension 5) is 0." + }, + { + "run": "run1_identify", + "t": 2.091, + "step": "identify", + "dir": "tx", + "session": "cmd", + "frame": "*#13**16##", + "is_status_request": true + }, + { + "run": "run1_identify", + "t": 2.111, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#13**16*3*87*13##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's firmware version is: 3.87.13." + }, + { + "run": "run1_identify", + "t": 2.121, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#13**16*3*87*13##" + }, + { + "run": "run1_identify", + "t": 2.121, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_identify", + "t": 2.121, + "utc": "13:19:48", + "step": "identify", + "dir": "result", + "frame": "*#13**16##", + "ack": true, + "reply_time_s": 0.03, + "replies": [ + "*#13**16*3*87*13##" + ], + "events_after": [ + "*#13**16*3*87*13##", + "*#4*35*7*1*1*0200##", + "*#4*35*0*0231##", + "*#4*36*7*1*1*0225##", + "*#4*36*0*0235##", + "*#4*37*7*1*1*0130##", + "*#4*37*0*0206##", + "*#4*38*7*1*1*0225##", + "*#4*38*0*0245##", + "*#4*39*7*1*1*0220##", + "*#4*39*0*0226##" + ], + "note": "who13_firmware_3_87_13" + }, + { + "run": "run1_identify", + "t": 2.912, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*35*7*1*1*0200##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35 is in heating setpoint at 20.0°C." + }, + { + "run": "run1_identify", + "t": 2.913, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*35*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's main sensor is reporting a temperature of 23.1°C." + }, + { + "run": "run1_identify", + "t": 2.914, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*36*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 36 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 2.963, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*36*0*0235##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 36's main sensor is reporting a temperature of 23.5°C." + }, + { + "run": "run1_identify", + "t": 2.966, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*37*7*1*1*0130##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 37 is in heating setpoint at 13.0°C." + }, + { + "run": "run1_identify", + "t": 2.966, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*37*0*0206##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 37's main sensor is reporting a temperature of 20.6°C." + }, + { + "run": "run1_identify", + "t": 3.033, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*38*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 38 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 3.061, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*38*0*0245##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 38's main sensor is reporting a temperature of 24.5°C." + }, + { + "run": "run1_identify", + "t": 3.094, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*39*7*1*1*0220##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 39 is in heating setpoint at 22.0°C." + }, + { + "run": "run1_identify", + "t": 3.116, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*39*0*0226##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 39's main sensor is reporting a temperature of 22.6°C." + }, + { + "run": "run1_identify", + "t": 3.121, + "step": "identify", + "dir": "tx", + "session": "cmd", + "frame": "*#13**0##", + "is_status_request": true + }, + { + "run": "run1_identify", + "t": 3.2, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#13**0*16*19*49*999##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal time is: 16:19:49." + }, + { + "run": "run1_identify", + "t": 3.215, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#13**0*16*19*49*999##" + }, + { + "run": "run1_identify", + "t": 3.215, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_identify", + "t": 3.215, + "utc": "13:19:49", + "step": "identify", + "dir": "result", + "frame": "*#13**0##", + "ack": true, + "reply_time_s": 0.094, + "replies": [ + "*#13**0*16*19*49*999##" + ], + "events_after": [ + "*#13**0*16*19*49*999##", + "*#4*40*7*1*1*0225##", + "*#4*41*7*1*1*0130##", + "*#4*41*0*0216##", + "*#4*40*0*0230##", + "*#4*44*7*1*1*0230##", + "*#4*45*7*1*1*0230##", + "*#4*44*0*0243##", + "*#4*42*7*1*1*0230##", + "*#4*42*0*0231##", + "*#4*46*7*1*1*0230##", + "*#4*48*7*1*1*0230##", + "*#4*46*0*0235##" + ], + "note": "who13_time_echoed_on_evt" + }, + { + "run": "run1_identify", + "t": 3.265, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*40*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 40 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 3.291, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*41*7*1*1*0130##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 41 is in heating setpoint at 13.0°C." + }, + { + "run": "run1_identify", + "t": 3.383, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*41*0*0216##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 41's main sensor is reporting a temperature of 21.6°C." + }, + { + "run": "run1_identify", + "t": 3.479, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*40*0*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 40's main sensor is reporting a temperature of 23.0°C." + }, + { + "run": "run1_identify", + "t": 3.559, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*44*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 44 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 3.671, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*45*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 45 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 3.764, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*44*0*0243##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 44's main sensor is reporting a temperature of 24.3°C." + }, + { + "run": "run1_identify", + "t": 3.8, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*42*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 42 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 3.902, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*42*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 42's main sensor is reporting a temperature of 23.1°C." + }, + { + "run": "run1_identify", + "t": 3.98, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*46*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 46 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 4.082, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*48*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 48 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 4.181, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*46*0*0235##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 46's main sensor is reporting a temperature of 23.5°C." + }, + { + "run": "run1_identify", + "t": 4.216, + "step": "identify", + "dir": "tx", + "session": "cmd", + "frame": "*#13**1##", + "is_status_request": true + }, + { + "run": "run1_identify", + "t": 4.268, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#13**1*06*24*10*2026##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal date is: 2026-10-24." + }, + { + "run": "run1_identify", + "t": 4.283, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#13**1*06*24*10*2026##" + }, + { + "run": "run1_identify", + "t": 4.283, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_identify", + "t": 4.283, + "utc": "13:19:50", + "step": "identify", + "dir": "result", + "frame": "*#13**1##", + "ack": true, + "reply_time_s": 0.067, + "replies": [ + "*#13**1*06*24*10*2026##" + ], + "events_after": [ + "*#13**1*06*24*10*2026##", + "*#4*48*0*0233##", + "*#4*47*7*1*1*0230##", + "*#4*45*0*0242##", + "*#4*47*0*0236##", + "*#4*51*7*1*1*0230##", + "*#4*59*7*1*1*0230##", + "*#4*50*7*1*1*0225##", + "*#4*55*7*1*1*0225##", + "*#4*49*7*1*1*0230##" + ] + }, + { + "run": "run1_identify", + "t": 4.289, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*48*0*0233##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 48's main sensor is reporting a temperature of 23.3°C." + }, + { + "run": "run1_identify", + "t": 4.361, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*47*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 47 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 4.461, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*45*0*0242##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 45's main sensor is reporting a temperature of 24.2°C." + }, + { + "run": "run1_identify", + "t": 4.558, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*47*0*0236##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 47's main sensor is reporting a temperature of 23.6°C." + }, + { + "run": "run1_identify", + "t": 4.771, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*51*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 51 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 4.883, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*59*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 59 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 4.972, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*50*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 50 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 5.07, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*55*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 55 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 5.16, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*49*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 49 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 5.284, + "step": "identify", + "dir": "tx", + "session": "cmd", + "frame": "*#13**22##", + "is_status_request": true + }, + { + "run": "run1_identify", + "t": 5.401, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#13**22*16*19*51*999*06*24*10*2026##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal datetime is: 2026-10-24 16:19:51." + }, + { + "run": "run1_identify", + "t": 5.432, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#13**22*16*19*51*999*06*24*10*2026##" + }, + { + "run": "run1_identify", + "t": 5.432, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_identify", + "t": 5.432, + "utc": "13:19:52", + "step": "identify", + "dir": "result", + "frame": "*#13**22##", + "ack": true, + "reply_time_s": 0.148, + "replies": [ + "*#13**22*16*19*51*999*06*24*10*2026##" + ], + "events_after": [ + "*#13**22*16*19*51*999*06*24*10*2026##", + "*#4*61*7*1*1*0225##", + "*#4*62*7*1*1*0230##", + "*#4*61*0*0237##", + "*#4*63*7*1*1*0230##", + "*#4*62*0*0241##", + "*#4*53*7*1*1*0225##", + "*#4*60*7*1*1*0230##", + "*#4*55*0*0238##", + "*#4*53*0*0229##", + "*#4*57*7*1*1*0230##", + "*#4*65*7*1*1*0230##", + "*#4*63*0*0232##", + "*#4*69*7*1*1*0225##", + "*#4*57*0*0231##", + "*#4*69*0*0237##", + "*#4*49*0*0254##", + "*#4*66*7*1*1*0230##", + "*#4*66*0*0248##", + "*#4*65*0*0235##", + "*#4*59*0*0236##" + ], + "note": "who13_datetime_timezone_999" + }, + { + "run": "run1_identify", + "t": 5.436, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*61*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 61 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 5.472, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*62*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 62 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 5.473, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*61*0*0237##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 61's main sensor is reporting a temperature of 23.7°C." + }, + { + "run": "run1_identify", + "t": 5.473, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*63*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 63 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 5.474, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*62*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 62's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run1_identify", + "t": 5.57, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*53*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 53 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 5.608, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*60*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 60 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 5.641, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*55*0*0238##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 55's main sensor is reporting a temperature of 23.8°C." + }, + { + "run": "run1_identify", + "t": 5.682, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*53*0*0229##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 53's main sensor is reporting a temperature of 22.9°C." + }, + { + "run": "run1_identify", + "t": 5.79, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*57*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 57 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 5.88, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*65*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 65 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 5.981, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*63*0*0232##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 63's main sensor is reporting a temperature of 23.2°C." + }, + { + "run": "run1_identify", + "t": 6.012, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*69*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 69 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 6.102, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*57*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 57's main sensor is reporting a temperature of 23.1°C." + }, + { + "run": "run1_identify", + "t": 6.138, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*69*0*0237##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 69's main sensor is reporting a temperature of 23.7°C." + }, + { + "run": "run1_identify", + "t": 6.164, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*49*0*0254##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 49's main sensor is reporting a temperature of 25.4°C." + }, + { + "run": "run1_identify", + "t": 6.27, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*66*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 66 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 6.29, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*66*0*0248##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 66's main sensor is reporting a temperature of 24.8°C." + }, + { + "run": "run1_identify", + "t": 6.37, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*65*0*0235##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 65's main sensor is reporting a temperature of 23.5°C." + }, + { + "run": "run1_identify", + "t": 6.41, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*59*0*0236##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 59's main sensor is reporting a temperature of 23.6°C." + }, + { + "run": "run1_identify", + "t": 6.433, + "step": "identify", + "dir": "tx", + "session": "cmd", + "frame": "*#13**27##", + "is_status_request": true + }, + { + "run": "run1_identify", + "t": 6.454, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##", + "ownd_class": "str", + "ownd_log": "" + }, + { + "run": "run1_identify", + "t": 6.484, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##" + }, + { + "run": "run1_identify", + "t": 6.484, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_identify", + "t": 6.484, + "utc": "13:19:53", + "step": "identify", + "dir": "result", + "frame": "*#13**27##", + "ack": true, + "reply_time_s": 0.051, + "replies": [ + "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##" + ], + "events_after": [ + "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##", + "*#4*70*7*1*1*0230##", + "*#4*50*0*0233##", + "*#4*57*7*1*1*0230##", + "*#4*53*7*1*1*0225##", + "*#4*70*0*0231##", + "*#4*67*7*1*1*0230##", + "*#4*64*7*1*1*0230##", + "*#4*62*7*1*1*0230##", + "*#4*51*0*0243##", + "*#4*67*0*0245##", + "*#4*53*0*0229##", + "*#4*57*0*0231##" + ], + "note": "who13_dim27_model_name_MyHomeServer1_no_ownd_decoder" + }, + { + "run": "run1_identify", + "t": 6.52, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*70*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 70 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 6.541, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*50*0*0233##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 50's main sensor is reporting a temperature of 23.3°C." + }, + { + "run": "run1_identify", + "t": 6.621, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*57*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 57 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 6.721, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*53*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 53 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 6.809, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*70*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 70's main sensor is reporting a temperature of 23.1°C." + }, + { + "run": "run1_identify", + "t": 6.902, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*67*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 67 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 6.99, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*64*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 64 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 7.081, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*62*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 62 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 7.178, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*51*0*0243##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 51's main sensor is reporting a temperature of 24.3°C." + }, + { + "run": "run1_identify", + "t": 7.255, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*67*0*0245##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 67's main sensor is reporting a temperature of 24.5°C." + }, + { + "run": "run1_identify", + "t": 7.352, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*53*0*0229##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 53's main sensor is reporting a temperature of 22.9°C." + }, + { + "run": "run1_identify", + "t": 7.421, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*57*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 57's main sensor is reporting a temperature of 23.1°C." + }, + { + "run": "run1_identify", + "t": 7.486, + "step": "identify", + "dir": "tx", + "session": "cmd", + "frame": "*#13**12##", + "is_status_request": true + }, + { + "run": "run1_identify", + "t": 7.52, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#13**12*0*3*80*0*32*36##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's MAC address is: 00:03:50:00:20:24." + }, + { + "run": "run1_identify", + "t": 7.524, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#13**12*0*3*80*0*32*36##" + }, + { + "run": "run1_identify", + "t": 7.524, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_identify", + "t": 7.524, + "utc": "13:19:54", + "step": "identify", + "dir": "result", + "frame": "*#13**12##", + "ack": true, + "reply_time_s": 0.038, + "replies": [ + "*#13**12*0*3*80*0*32*36##" + ], + "events_after": [ + "*#13**12*0*3*80*0*32*36##", + "*#4*68*7*1*1*0230##", + "*#4*69*7*1*1*0225##", + "*#4*66*7*1*1*0230##", + "*#4*68*0*0231##", + "*#4*68*7*1*1*0230##", + "*#4*62*0*0241##", + "*#4*58*7*1*1*0230##", + "*#4*52*7*1*1*0225##", + "*#4*58*0*0234##", + "*#4*60*0*0240##", + "*#4*61*7*1*1*0225##", + "*#4*65*7*1*1*0230##", + "*#4*66*0*0248##", + "*#4*70*7*1*1*0230##", + "*#4*61*0*0237##", + "*#4*69*0*0237##", + "*#4*60*7*1*1*0230##", + "*#4*64*0*0233##", + "*#4*52*0*0236##", + "*#4*60*0*0240##", + "*#4*64*7*1*1*0230##", + "*#4*58*7*1*1*0230##", + "*#4*70*0*0231##" + ], + "note": "who13_mac_answered_real_value_scrubbed" + }, + { + "run": "run1_identify", + "t": 7.53, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*68*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 68 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 7.6, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*69*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 69 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 7.655, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*66*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 66 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 7.691, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*68*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 68's main sensor is reporting a temperature of 23.1°C." + }, + { + "run": "run1_identify", + "t": 7.737, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*68*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 68 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 7.78, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*62*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 62's main sensor is reporting a temperature of 24.1°C." + }, + { + "run": "run1_identify", + "t": 7.823, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*58*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 58 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 7.88, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*52*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 52 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 7.909, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*58*0*0234##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 58's main sensor is reporting a temperature of 23.4°C." + }, + { + "run": "run1_identify", + "t": 7.951, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*60*0*0240##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 60's main sensor is reporting a temperature of 24.0°C." + }, + { + "run": "run1_identify", + "t": 8.001, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*61*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 61 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 8.06, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*65*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 65 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 8.09, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*66*0*0248##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 66's main sensor is reporting a temperature of 24.8°C." + }, + { + "run": "run1_identify", + "t": 8.132, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*70*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 70 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 8.17, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*61*0*0237##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 61's main sensor is reporting a temperature of 23.7°C." + }, + { + "run": "run1_identify", + "t": 8.203, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*69*0*0237##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 69's main sensor is reporting a temperature of 23.7°C." + }, + { + "run": "run1_identify", + "t": 8.243, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*60*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 60 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 8.281, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*64*0*0233##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 64's main sensor is reporting a temperature of 23.3°C." + }, + { + "run": "run1_identify", + "t": 8.314, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*52*0*0236##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 52's main sensor is reporting a temperature of 23.6°C." + }, + { + "run": "run1_identify", + "t": 8.349, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*60*0*0240##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 60's main sensor is reporting a temperature of 24.0°C." + }, + { + "run": "run1_identify", + "t": 8.396, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*64*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 64 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 8.447, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*58*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 58 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 8.5, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*70*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 70's main sensor is reporting a temperature of 23.1°C." + }, + { + "run": "run1_identify", + "t": 8.524, + "step": "identify", + "dir": "tx", + "session": "cmd", + "frame": "*#1013**1##", + "is_status_request": true + }, + { + "run": "run1_identify", + "t": 8.531, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*64*0*0233##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 64's main sensor is reporting a temperature of 23.3°C." + }, + { + "run": "run1_identify", + "t": 8.559, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#1013**1*67*15*5*0##", + "ownd_class": "OWNGatewayDiagnosticEvent", + "ownd_log": "Gateway diagnostic object model is: MyHomeServer1 (67)." + }, + { + "run": "run1_identify", + "t": 8.562, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#1013**1*67*15*5*0##" + }, + { + "run": "run1_identify", + "t": 8.562, + "step": "identify", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run1_identify", + "t": 8.562, + "utc": "13:19:55", + "step": "identify", + "dir": "result", + "frame": "*#1013**1##", + "ack": true, + "reply_time_s": 0.038, + "replies": [ + "*#1013**1*67*15*5*0##" + ], + "events_after": [ + "*#4*64*0*0233##", + "*#1013**1*67*15*5*0##", + "*#4*67*7*1*1*0230##", + "*#4*58*0*0234##", + "*#4*52*7*1*1*0225##", + "*#4*65*0*0235##", + "*#4*63*7*1*1*0230##", + "*#4*63*0*0232##", + "*#4*68*0*0231##", + "*#4*67*0*0245##", + "*#4*52*0*0236##" + ], + "note": "who1013_object_model_67_15_5_0" + }, + { + "run": "run1_identify", + "t": 8.58, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*67*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 67 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 8.616, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*58*0*0234##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 58's main sensor is reporting a temperature of 23.4°C." + }, + { + "run": "run1_identify", + "t": 8.664, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*52*7*1*1*0225##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 52 is in heating setpoint at 22.5°C." + }, + { + "run": "run1_identify", + "t": 8.702, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*65*0*0235##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 65's main sensor is reporting a temperature of 23.5°C." + }, + { + "run": "run1_identify", + "t": 8.759, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*63*7*1*1*0230##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 63 is in heating setpoint at 23.0°C." + }, + { + "run": "run1_identify", + "t": 8.797, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*63*0*0232##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 63's main sensor is reporting a temperature of 23.2°C." + }, + { + "run": "run1_identify", + "t": 8.84, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*68*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 68's main sensor is reporting a temperature of 23.1°C." + }, + { + "run": "run1_identify", + "t": 8.885, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*67*0*0245##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 67's main sensor is reporting a temperature of 24.5°C." + }, + { + "run": "run1_identify", + "t": 8.937, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#4*52*0*0236##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 52's main sensor is reporting a temperature of 23.6°C." + }, + { + "run": "run1_identify", + "t": 14.563, + "step": "identify", + "dir": "rx", + "session": "evt", + "frame": "*#13**#1*06*24*10*2026##", + "ownd_class": "OWNGatewayCommand", + "ownd_log": "Gateway broadcasting internal date: 2026-10-24." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 1.042, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*#0##", + "is_status_request": false + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 5.243, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 5.243, + "utc": "13:20:30", + "step": "read_who4", + "dir": "result", + "frame": "*#4*#0##", + "ack": false, + "reply_time_s": 4.201, + "replies": [], + "events_after": [], + "note": "central_status_nack_after_retry_no_central_unit" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 7.244, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*#0*14##", + "is_status_request": false + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 11.463, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 11.463, + "utc": "13:20:36", + "step": "read_who4", + "dir": "result", + "frame": "*#4*#0*14##", + "ack": false, + "reply_time_s": 4.219, + "replies": [], + "events_after": [], + "note": "central_setpoint_nack_after_retry_no_central_unit" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 13.465, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*35##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.073, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*35*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's main sensor is reporting a temperature of 23.1°C." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.378, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*35*12*0200*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's local target temperature is set to 20.0°C." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.379, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*4*1*35##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's season is heating." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.651, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*35*14*0200*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's target temperature is set to 20.0°C." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.753, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*35*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's local offset is set to 0°C." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.772, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*35*0*0231##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.772, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*35*12*0200*3##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.772, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*4*1*35##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.772, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*35*14*0200*3##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.772, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*35*13*00##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.772, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 14.772, + "utc": "13:20:40", + "step": "read_who4", + "dir": "result", + "frame": "*#4*35##", + "ack": true, + "reply_time_s": 1.307, + "replies": [ + "*#4*35*0*0231##", + "*#4*35*12*0200*3##", + "*4*1*35##", + "*#4*35*14*0200*3##", + "*#4*35*13*00##" + ], + "events_after": [ + "*#4*35*0*0231##", + "*#4*35*12*0200*3##", + "*4*1*35##", + "*#4*35*14*0200*3##", + "*#4*35*13*00##" + ], + "note": "zone_35_status_reply_order_0_12_season_14_13" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 18.773, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*35*12##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 18.937, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*35*12*0200*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's local target temperature is set to 20.0°C." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 18.952, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*4*1*35##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's season is heating." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 18.974, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*35*12*0200*3##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 18.974, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*4*1*35##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 18.974, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 18.974, + "utc": "13:20:44", + "step": "read_who4", + "dir": "result", + "frame": "*#4*35*12##", + "ack": true, + "reply_time_s": 0.201, + "replies": [ + "*#4*35*12*0200*3##", + "*4*1*35##" + ], + "events_after": [ + "*#4*35*12*0200*3##", + "*4*1*35##" + ], + "note": "zone_35_dim12_carries_season" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 20.975, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*35*14##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 21.118, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*35*14*0200*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's target temperature is set to 20.0°C." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 21.139, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*35*14*0200*3##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 21.139, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 21.139, + "utc": "13:20:46", + "step": "read_who4", + "dir": "result", + "frame": "*#4*35*14##", + "ack": true, + "reply_time_s": 0.164, + "replies": [ + "*#4*35*14*0200*3##" + ], + "events_after": [ + "*#4*35*14*0200*3##" + ], + "note": "zone_35_dim14" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 23.139, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*35*20##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 23.325, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*35#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 23.328, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*35#1*20*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 23.328, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 23.328, + "utc": "13:20:48", + "step": "read_who4", + "dir": "result", + "frame": "*#4*35*20##", + "ack": true, + "reply_time_s": 0.189, + "replies": [ + "*#4*35#1*20*0##" + ], + "events_after": [ + "*#4*35#1*20*0##" + ], + "note": "zone_35_actuator_1" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.329, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*#0*20##", + "is_status_request": false + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.443, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*39#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 39's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.476, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*48#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 48's fan is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.508, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*35#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.549, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*64#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 64's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.574, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*40#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 40's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.614, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*47#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 47's fan is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.647, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*53#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 53's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.691, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*43#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 43's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*39#1*20*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*48#2*20*5##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*35#1*20*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*64#1*20*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*40#1*20*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*47#2*20*5##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*53#1*20*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*43#1*20*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.723, + "utc": "13:20:51", + "step": "read_who4", + "dir": "result", + "frame": "*#4*#0*20##", + "ack": true, + "reply_time_s": 0.394, + "replies": [ + "*#4*39#1*20*0##", + "*#4*48#2*20*5##", + "*#4*35#1*20*0##", + "*#4*64#1*20*0##", + "*#4*40#1*20*0##", + "*#4*47#2*20*5##", + "*#4*53#1*20*0##", + "*#4*43#1*20*0##" + ], + "events_after": [ + "*#4*39#1*20*0##", + "*#4*48#2*20*5##", + "*#4*35#1*20*0##", + "*#4*64#1*20*0##", + "*#4*40#1*20*0##", + "*#4*47#2*20*5##", + "*#4*53#1*20*0##", + "*#4*43#1*20*0##", + "*#4*60#2*20*5##", + "*#4*36#1*20*0##", + "*#4*65#1*20*0##", + "*#4*47#1*20*0##", + "*#4*66#1*20*0##", + "*#4*48#1*20*0##", + "*#4*67#1*20*0##", + "*#4*41#1*20*0##", + "*#4*70#2*20*5##", + "*#4*0#1*20*0##", + "*#4*57#1*20*0##", + "*#4*37#1*20*0##", + "*#4*58#1*20*0##", + "*#4*0#3*20*0##", + "*#4*60#1*20*0##", + "*#4*38#1*20*0##", + "*#4*68#1*20*0##", + "*#4*42#1*20*0##", + "*#4*49#1*20*0##", + "*#4*44#1*20*0##", + "*#4*51#1*20*0##", + "*#4*0#4*20*0##", + "*#4*61#1*20*0##", + "*#4*59#1*20*0##", + "*#4*70#1*20*0##", + "*#4*52#1*20*0##", + "*#4*62#1*20*0##", + "*#4*50#1*20*0##", + "*#4*0#2*20*0##", + "*#4*57#2*20*5##", + "*#4*63#1*20*0##", + "*#4*55#1*20*0##", + "*#4*45#1*20*0##", + "*#4*69#1*20*0##", + "*#4*46#1*20*0##" + ], + "note": "all_zone_actuators_44_frames_including_zone_0" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.729, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*60#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 60's fan is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.755, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*36#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 36's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.79, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*65#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 65's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.825, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*47#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 47's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.859, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*66#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 66's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.911, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*48#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 48's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.932, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*67#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 67's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 25.981, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*41#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 41's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.006, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*70#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 70's fan is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.051, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*0#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 0's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.076, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*57#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 57's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.112, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*37#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 37's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.146, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*58#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 58's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.184, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*0#3*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 0's actuator 3 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.216, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*60#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 60's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.254, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*38#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 38's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.289, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*68#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 68's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.326, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*42#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 42's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.359, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*49#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 49's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.402, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*44#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 44's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.429, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*51#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 51's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.469, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*0#4*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 0's actuator 4 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.503, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*61#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 61's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.544, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*59#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 59's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.579, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*70#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 70's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.631, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*52#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 52's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.661, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*62#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 62's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.698, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*50#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 50's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.735, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*0#2*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 0's actuator 2 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.768, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*57#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 57's fan is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.826, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*63#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 63's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.858, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*55#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 55's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.921, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*45#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 45's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 26.948, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*69#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 69's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 27.011, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*46#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 46's actuator 1 is off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 27.723, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*35*60##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 29.851, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 29.851, + "utc": "13:20:55", + "step": "read_who4", + "dir": "result", + "frame": "*#4*35*60##", + "ack": false, + "reply_time_s": 2.128, + "replies": [], + "events_after": [], + "note": "zone_35_humidity_nack_no_probe" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 31.852, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*0*60##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.011, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*39*60*51##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 39's main sensor is reporting a humidity of 51.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.041, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*53*60*60##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 53's main sensor is reporting a humidity of 60.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.09, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*48*60*54##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 48's main sensor is reporting a humidity of 54.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.126, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*69*60*52##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 69's main sensor is reporting a humidity of 52.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.19, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*40*60*47##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 40's main sensor is reporting a humidity of 47.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.225, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*42*60*52##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 42's main sensor is reporting a humidity of 52.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.276, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*43*60*54##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 43's main sensor is reporting a humidity of 54.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.326, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*60*60*54##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 60's main sensor is reporting a humidity of 54.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*39*60*51##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*53*60*60##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*48*60*54##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*69*60*52##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*40*60*47##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*42*60*52##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*43*60*54##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*60*60*54##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.351, + "utc": "13:20:57", + "step": "read_who4", + "dir": "result", + "frame": "*#4*0*60##", + "ack": true, + "reply_time_s": 0.499, + "replies": [ + "*#4*39*60*51##", + "*#4*53*60*60##", + "*#4*48*60*54##", + "*#4*69*60*52##", + "*#4*40*60*47##", + "*#4*42*60*52##", + "*#4*43*60*54##", + "*#4*60*60*54##" + ], + "events_after": [ + "*#4*39*60*51##", + "*#4*53*60*60##", + "*#4*48*60*54##", + "*#4*69*60*52##", + "*#4*40*60*47##", + "*#4*42*60*52##", + "*#4*43*60*54##", + "*#4*60*60*54##", + "*#4*47*60*54##", + "*#4*57*60*59##", + "*#4*41*60*49##", + "*#4*61*60*53##", + "*#4*55*60*51##", + "*#4*70*60*69##", + "*#4*58*60*55##", + "*#4*68*60*59##", + "*#4*59*60*66##" + ], + "note": "general_humidity_17_zones" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.371, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*47*60*54##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 47's main sensor is reporting a humidity of 54.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.425, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*57*60*59##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 57's main sensor is reporting a humidity of 59.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.474, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*41*60*49##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 41's main sensor is reporting a humidity of 49.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.561, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*61*60*53##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 61's main sensor is reporting a humidity of 53.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.6, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*55*60*51##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 55's main sensor is reporting a humidity of 51.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.648, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*70*60*69##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 70's main sensor is reporting a humidity of 69.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.703, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*58*60*55##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 58's main sensor is reporting a humidity of 55.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.754, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*68*60*59##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 68's main sensor is reporting a humidity of 59.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 32.823, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*59*60*66##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 59's main sensor is reporting a humidity of 66.0%." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 34.353, + "step": "read_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*0*5##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 34.356, + "step": "read_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 34.356, + "utc": "13:20:59", + "step": "read_who16", + "dir": "result", + "frame": "*#16*0*5##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [], + "note": "who16_refused_locally" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 36.356, + "step": "read_who16", + "dir": "tx", + "session": "cmd", + "frame": "*#16*101*5##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 36.359, + "step": "read_who16", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 36.359, + "utc": "13:21:01", + "step": "read_who16", + "dir": "result", + "frame": "*#16*101*5##", + "ack": false, + "reply_time_s": 0.003, + "replies": [], + "events_after": [], + "note": "who16_refused_locally" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 38.361, + "step": "read_who5", + "dir": "tx", + "session": "cmd", + "frame": "*#5*0##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 38.366, + "step": "read_who5", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 38.366, + "utc": "13:21:03", + "step": "read_who5", + "dir": "result", + "frame": "*#5*0##", + "ack": false, + "reply_time_s": 0.005, + "replies": [], + "events_after": [], + "note": "who5_refused_locally" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.368, + "step": "read_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.462, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*14##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 14 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.68, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0514##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0514 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.68, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0014##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0014 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.68, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0415##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0415 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.68, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0015##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0015 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.68, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*14##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 14 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.68, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0315##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0315 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.711, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0115##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0115 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.749, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*45##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 45 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.788, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0513##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0513 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.821, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*33##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 33 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.858, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0010##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0010 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.891, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0314##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0314 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.929, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*17##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 17 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 40.961, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*34##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 34 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.006, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*21##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 21 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.039, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0215##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0215 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.077, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*11##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 11 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.109, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*36##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 36 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.146, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*37##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 37 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.183, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*43##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 43 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.22, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*38##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 38 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.253, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0012##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0012 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.287, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0211##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0211 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.329, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0515##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0515 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.367, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0013##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0013 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.4, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0512##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0512 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.441, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0311##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0311 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.479, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0312##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0312 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.511, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*21##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 21 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.547, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0313##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0313 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.583, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0111##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0111 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.617, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0212##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0212 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.654, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*61##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 61 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.687, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*49##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 49 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.723, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*12##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 12 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.76, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*29##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 29 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.791, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*18##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 18 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.827, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0310##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0310 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.86, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0011##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0011 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.891, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*46##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 46 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.931, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0510##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0510 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 41.961, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0213##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0213 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.005, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*41##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 41 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.039, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0511##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0511 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.072, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*44##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 44 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.111, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*47##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 47 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.148, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*42##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 42 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.185, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0214##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0214 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.221, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*48##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 48 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.256, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*24##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 24 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.291, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*13##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 13 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.326, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0210##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0210 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.361, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*64##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 64 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.396, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0211##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0211 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.441, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0315##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0315 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.481, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0112##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0112 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.511, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*39##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 39 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.551, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*25##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 25 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.586, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0212##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0212 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.624, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*65##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 65 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.658, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*45##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 45 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.691, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*16##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 16 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.727, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*46##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 46 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.767, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0113##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0113 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.796, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0213##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0213 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.833, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*62##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 62 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.867, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0410##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0410 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.902, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0514##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0514 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.935, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0214##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0214 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 42.972, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*19##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 19 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.007, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*47##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 47 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.07, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0413##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0413 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.096, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*31##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 31 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.135, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*26##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 26 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.17, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0114##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0114 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.207, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0515##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0515 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.24, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0110##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0110 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.277, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*48##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 48 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.319, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*32##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 32 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.359, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*41##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 41 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.397, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*42##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 42 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.424, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0411##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0411 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.461, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*63##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 63 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.505, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*27##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 27 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.549, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*11##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 11 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.586, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*66##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 66 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.629, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0215##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0215 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.676, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0512##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0512 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.719, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*28##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 28 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.767, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*31##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 31 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.808, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*32##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 32 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.837, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*12##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 12 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.87, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*25##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 25 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.908, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*13##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 13 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 43.941, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*26##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 26 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 44.003, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*68##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 68 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 44.032, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*27##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 27 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 44.094, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*69##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 69 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 44.12, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*28##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 28 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*14##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0514##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0014##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0415##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0015##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*14##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0315##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0115##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*45##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0513##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*33##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0010##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0314##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*17##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*34##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*21##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0215##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*11##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*36##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*37##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*43##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*38##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0012##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0211##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0515##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0013##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0512##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0311##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0312##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*21##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0313##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0111##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0212##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*61##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*49##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*12##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*29##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*18##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0310##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0011##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*46##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0510##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0213##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*41##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0511##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*44##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*47##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*42##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0214##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*48##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*24##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*13##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0210##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*64##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0211##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0315##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0112##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*39##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*25##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0212##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*65##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*45##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*16##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*46##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0113##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0213##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*62##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0410##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0514##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0214##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*19##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*47##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0413##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*31##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*26##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0114##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0515##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0110##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*48##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*32##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*41##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*42##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0411##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*63##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*27##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*11##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*66##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0215##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0512##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*28##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*31##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*32##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*12##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*25##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*13##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*26##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*68##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*27##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*69##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*28##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 45.106, + "utc": "13:21:10", + "step": "read_who1", + "dir": "result", + "frame": "*#1*0##", + "ack": true, + "reply_time_s": 4.738, + "replies": [ + "*1*0*14##", + "*1*0*0514##", + "*1*0*0014##", + "*1*0*0415##", + "*1*0*0015##", + "*1*0*14##", + "*1*0*0315##", + "*1*0*0115##", + "*1*0*45##", + "*1*0*0513##", + "*1*0*33##", + "*1*0*0010##", + "*1*0*0314##", + "*1*0*17##", + "*1*0*34##", + "*1*0*21##", + "*1*0*0215##", + "*1*0*11##", + "*1*0*36##", + "*1*0*37##", + "*1*0*43##", + "*1*0*38##", + "*1*0*0012##", + "*1*0*0211##", + "*1*0*0515##", + "*1*0*0013##", + "*1*0*0512##", + "*1*0*0311##", + "*1*0*0312##", + "*1*0*21##", + "*1*0*0313##", + "*1*0*0111##", + "*1*0*0212##", + "*1*0*61##", + "*1*0*49##", + "*1*0*12##", + "*1*0*29##", + "*1*0*18##", + "*1*0*0310##", + "*1*0*0011##", + "*1*0*46##", + "*1*0*0510##", + "*1*0*0213##", + "*1*0*41##", + "*1*0*0511##", + "*1*0*44##", + "*1*0*47##", + "*1*0*42##", + "*1*0*0214##", + "*1*0*48##", + "*1*0*24##", + "*1*0*13##", + "*1*0*0210##", + "*1*0*64##", + "*1*0*0211##", + "*1*0*0315##", + "*1*0*0112##", + "*1*0*39##", + "*1*0*25##", + "*1*0*0212##", + "*1*0*65##", + "*1*0*45##", + "*1*0*16##", + "*1*0*46##", + "*1*0*0113##", + "*1*0*0213##", + "*1*0*62##", + "*1*0*0410##", + "*1*0*0514##", + "*1*0*0214##", + "*1*0*19##", + "*1*0*47##", + "*1*0*0413##", + "*1*0*31##", + "*1*0*26##", + "*1*0*0114##", + "*1*0*0515##", + "*1*0*0110##", + "*1*0*48##", + "*1*0*32##", + "*1*0*41##", + "*1*0*42##", + "*1*0*0411##", + "*1*0*63##", + "*1*0*27##", + "*1*0*11##", + "*1*0*66##", + "*1*0*0215##", + "*1*0*0512##", + "*1*0*28##", + "*1*0*31##", + "*1*0*32##", + "*1*0*12##", + "*1*0*25##", + "*1*0*13##", + "*1*0*26##", + "*1*0*68##", + "*1*0*27##", + "*1*0*69##", + "*1*0*28##" + ], + "events_after": [ + "*1*0*14##", + "*1*0*0514##", + "*1*0*0014##", + "*1*0*0415##", + "*1*0*0015##", + "*1*0*14##", + "*1*0*0315##", + "*1*0*0115##", + "*1*0*45##", + "*1*0*0513##", + "*1*0*33##", + "*1*0*0010##", + "*1*0*0314##", + "*1*0*17##", + "*1*0*34##", + "*1*0*21##", + "*1*0*0215##", + "*1*0*11##", + "*1*0*36##", + "*1*0*37##", + "*1*0*43##", + "*1*0*38##", + "*1*0*0012##", + "*1*0*0211##", + "*1*0*0515##", + "*1*0*0013##", + "*1*0*0512##", + "*1*0*0311##", + "*1*0*0312##", + "*1*0*21##", + "*1*0*0313##", + "*1*0*0111##", + "*1*0*0212##", + "*1*0*61##", + "*1*0*49##", + "*1*0*12##", + "*1*0*29##", + "*1*0*18##", + "*1*0*0310##", + "*1*0*0011##", + "*1*0*46##", + "*1*0*0510##", + "*1*0*0213##", + "*1*0*41##", + "*1*0*0511##", + "*1*0*44##", + "*1*0*47##", + "*1*0*42##", + "*1*0*0214##", + "*1*0*48##", + "*1*0*24##", + "*1*0*13##", + "*1*0*0210##", + "*1*0*64##", + "*1*0*0211##", + "*1*0*0315##", + "*1*0*0112##", + "*1*0*39##", + "*1*0*25##", + "*1*0*0212##", + "*1*0*65##", + "*1*0*45##", + "*1*0*16##", + "*1*0*46##", + "*1*0*0113##", + "*1*0*0213##", + "*1*0*62##", + "*1*0*0410##", + "*1*0*0514##", + "*1*0*0214##", + "*1*0*19##", + "*1*0*47##", + "*1*0*0413##", + "*1*0*31##", + "*1*0*26##", + "*1*0*0114##", + "*1*0*0515##", + "*1*0*0110##", + "*1*0*48##", + "*1*0*32##", + "*1*0*41##", + "*1*0*42##", + "*1*0*0411##", + "*1*0*63##", + "*1*0*27##", + "*1*0*11##", + "*1*0*66##", + "*1*0*0215##", + "*1*0*0512##", + "*1*0*28##", + "*1*0*31##", + "*1*0*32##", + "*1*0*12##", + "*1*0*25##", + "*1*0*13##", + "*1*0*26##", + "*1*0*68##", + "*1*0*27##", + "*1*0*69##", + "*1*0*28##" + ], + "note": "general_light_status_100_replies" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.107, + "step": "read_who2", + "dir": "tx", + "session": "cmd", + "frame": "*#2*0##", + "is_status_request": true + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.211, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*17##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 17 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.242, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0312##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0312 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.269, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0514##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0514 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.312, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0310##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0310 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.34, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0010##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0010 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.369, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0313##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0313 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.407, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*21##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 21 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.438, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*37##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 37 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.479, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0014##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0014 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.521, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0115##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0115 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.554, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*45##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 45 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.589, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0513##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0513 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.622, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*46##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 46 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.659, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0111##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0111 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.69, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*24##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 24 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.731, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*11##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 11 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.766, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*33##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 33 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.8, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0415##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0415 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.835, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*38##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 38 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.871, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*61##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 61 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.905, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0315##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0315 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.945, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0015##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0015 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 50.979, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*34##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 34 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.015, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*12##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 12 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.051, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*43##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 43 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.095, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*13##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 13 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.126, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*39##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 39 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.161, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*18##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 18 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.2, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0215##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0215 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.239, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0012##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0012 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.275, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*29##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 29 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.31, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*19##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 19 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.345, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0211##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0211 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.38, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0212##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0212 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.418, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*47##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 47 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.455, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0512##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0512 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.489, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0011##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0011 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.52, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0213##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0213 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.566, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*48##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 48 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.602, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0110##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0110 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.635, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0214##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0214 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.67, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*64##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 64 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.71, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*49##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 49 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.74, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0510##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0510 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.775, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0210##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0210 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.813, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*16##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 16 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.84, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*31##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 31 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.881, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*17##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 17 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.916, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*44##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 44 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.958, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*65##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 65 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 51.991, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*32##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 32 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.033, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*18##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 18 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.068, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0314##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0314 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.1, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*14##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 14 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.136, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0515##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0515 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.176, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0014##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0014 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.208, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0311##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0311 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.247, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*19##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 19 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.281, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*36##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 36 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.339, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0013##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0013 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.37, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*41##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 41 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.4, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*42##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 42 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.44, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0112##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0112 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.48, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*25##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 25 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.518, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0511##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0511 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.552, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*66##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 66 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.591, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0110##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0110 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.625, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*26##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 26 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.661, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*62##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 62 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.694, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*27##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 27 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.74, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0015##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0015 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.771, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0410##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0410 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.81, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*63##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 63 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.868, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0113##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0113 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.893, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*28##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 28 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.942, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*64##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 64 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 52.97, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0411##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0411 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 53.014, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0114##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0114 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 53.069, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0011##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0011 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 53.121, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*65##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 65 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 53.167, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*62##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 62 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 53.208, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*63##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 63 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 53.26, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*16##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 16 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 53.316, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0413##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0413 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 53.37, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*68##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 68 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 53.429, + "step": "read_who2", + "dir": "rx", + "session": "evt", + "frame": "*1*0*69##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 69 is switched off." + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 54.408, + "step": "read_who2", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 54.408, + "utc": "13:21:19", + "step": "read_who2", + "dir": "result", + "frame": "*#2*0##", + "ack": true, + "reply_time_s": 4.301, + "replies": [], + "events_after": [ + "*1*0*17##", + "*1*0*0312##", + "*1*0*0514##", + "*1*0*0310##", + "*1*0*0010##", + "*1*0*0313##", + "*1*0*21##", + "*1*0*37##", + "*1*0*0014##", + "*1*0*0115##", + "*1*0*45##", + "*1*0*0513##", + "*1*0*46##", + "*1*0*0111##", + "*1*0*24##", + "*1*0*11##", + "*1*0*33##", + "*1*0*0415##", + "*1*0*38##", + "*1*0*61##", + "*1*0*0315##", + "*1*0*0015##", + "*1*0*34##", + "*1*0*12##", + "*1*0*43##", + "*1*0*13##", + "*1*0*39##", + "*1*0*18##", + "*1*0*0215##", + "*1*0*0012##", + "*1*0*29##", + "*1*0*19##", + "*1*0*0211##", + "*1*0*0212##", + "*1*0*47##", + "*1*0*0512##", + "*1*0*0011##", + "*1*0*0213##", + "*1*0*48##", + "*1*0*0110##", + "*1*0*0214##", + "*1*0*64##", + "*1*0*49##", + "*1*0*0510##", + "*1*0*0210##", + "*1*0*16##", + "*1*0*31##", + "*1*0*17##", + "*1*0*44##", + "*1*0*65##", + "*1*0*32##", + "*1*0*18##", + "*1*0*0314##", + "*1*0*14##", + "*1*0*0515##", + "*1*0*0014##", + "*1*0*0311##", + "*1*0*19##", + "*1*0*36##", + "*1*0*0013##", + "*1*0*41##", + "*1*0*42##", + "*1*0*0112##", + "*1*0*25##", + "*1*0*0511##", + "*1*0*66##", + "*1*0*0110##", + "*1*0*26##", + "*1*0*62##", + "*1*0*27##", + "*1*0*0015##", + "*1*0*0410##", + "*1*0*63##", + "*1*0*0113##", + "*1*0*28##", + "*1*0*64##", + "*1*0*0411##", + "*1*0*0114##", + "*1*0*0011##", + "*1*0*65##", + "*1*0*62##", + "*1*0*63##", + "*1*0*16##", + "*1*0*0413##", + "*1*0*68##", + "*1*0*69##" + ], + "note": "general_cover_status_ack_no_cmd_replies" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 1.037, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*0##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 1.088, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 1.088, + "utc": "13:22:09", + "step": "read_who4", + "dir": "result", + "frame": "*#4*0##", + "ack": false, + "reply_time_s": 0.051, + "replies": [], + "events_after": [], + "note": "general_zone_status_refused_locally" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 7.09, + "step": "read_who4", + "dir": "tx", + "session": "cmd", + "frame": "*#4*39*60##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 7.264, + "step": "read_who4", + "dir": "rx", + "session": "evt", + "frame": "*#4*39*60*51##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 39's main sensor is reporting a humidity of 51.0%." + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 7.294, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#4*39*60*51##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 7.294, + "step": "read_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 7.294, + "utc": "13:22:15", + "step": "read_who4", + "dir": "result", + "frame": "*#4*39*60##", + "ack": true, + "reply_time_s": 0.204, + "replies": [ + "*#4*39*60*51##" + ], + "events_after": [ + "*#4*39*60*51##" + ], + "note": "zone_39_humidity" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 9.296, + "step": "read_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0014##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 9.383, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0014##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0014 is switched off." + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 9.386, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0014##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 9.386, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 9.386, + "utc": "13:22:17", + "step": "read_who1", + "dir": "result", + "frame": "*#1*0014##", + "ack": true, + "reply_time_s": 0.09, + "replies": [ + "*1*0*0014##" + ], + "events_after": [ + "*1*0*0014##" + ], + "note": "four_digit_0014_is_a_device" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 11.386, + "step": "read_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*14##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 11.483, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*14##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 14 is switched off." + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 11.485, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*14##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 11.485, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 11.485, + "utc": "13:22:19", + "step": "read_who1", + "dir": "result", + "frame": "*#1*14##", + "ack": true, + "reply_time_s": 0.099, + "replies": [ + "*1*0*14##" + ], + "events_after": [ + "*1*0*14##" + ], + "note": "two_digit_14_is_another_device" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 13.487, + "step": "read_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0010##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 13.573, + "step": "read_who1", + "dir": "rx", + "session": "evt", + "frame": "*1*0*0010##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0010 is switched off." + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 13.576, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*0010##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 13.576, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 13.576, + "utc": "13:22:21", + "step": "read_who1", + "dir": "result", + "frame": "*#1*0010##", + "ack": true, + "reply_time_s": 0.089, + "replies": [ + "*1*0*0010##" + ], + "events_after": [ + "*1*0*0010##" + ], + "note": "four_digit_0010_is_a_device" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 15.577, + "step": "read_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*10##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 17.586, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 17.586, + "utc": "13:22:25", + "step": "read_who1", + "dir": "result", + "frame": "*#1*10##", + "ack": false, + "reply_time_s": 2.009, + "replies": [], + "events_after": [], + "note": "two_digit_10_nack_after_bus_timeout" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 19.587, + "step": "read_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0001##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 19.595, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 19.595, + "utc": "13:22:27", + "step": "read_who1", + "dir": "result", + "frame": "*#1*0001##", + "ack": false, + "reply_time_s": 0.008, + "replies": [], + "events_after": [], + "note": "four_digit_area0_point_refused_locally" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 21.596, + "step": "read_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*01##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 23.606, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 23.606, + "utc": "13:22:31", + "step": "read_who1", + "dir": "result", + "frame": "*#1*01##", + "ack": false, + "reply_time_s": 2.01, + "replies": [], + "events_after": [], + "note": "two_digit_01_nack_after_bus_timeout" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 25.606, + "step": "read_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*0004##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 25.62, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 25.62, + "utc": "13:22:33", + "step": "read_who1", + "dir": "result", + "frame": "*#1*0004##", + "ack": false, + "reply_time_s": 0.014, + "replies": [], + "events_after": [], + "note": "four_digit_area0_point_refused_locally" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 27.622, + "step": "read_who1", + "dir": "tx", + "session": "cmd", + "frame": "*#1*04##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 29.644, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 29.644, + "utc": "13:22:37", + "step": "read_who1", + "dir": "result", + "frame": "*#1*04##", + "ack": false, + "reply_time_s": 2.022, + "replies": [], + "events_after": [], + "note": "two_digit_04_nack_after_bus_timeout" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 31.646, + "step": "read_who13", + "dir": "tx", + "session": "cmd", + "frame": "*#13**0##", + "is_status_request": true + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 31.665, + "step": "read_who13", + "dir": "rx", + "session": "evt", + "frame": "*#13**0*16*22*38*999##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal time is: 16:22:38." + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 31.669, + "step": "read_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#13**0*16*22*38*999##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 31.669, + "step": "read_who13", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run3_reads_lights_addresses_humidity", + "t": 31.669, + "utc": "13:22:39", + "step": "read_who13", + "dir": "result", + "frame": "*#13**0##", + "ack": true, + "reply_time_s": 0.023, + "replies": [ + "*#13**0*16*22*38*999##" + ], + "events_after": [ + "*#13**0*16*22*38*999##" + ], + "note": "who13_time_echoed_on_evt" + } + ] +} diff --git a/tests/test_myhomeserver1_live_2026_10_24_trace.py b/tests/test_myhomeserver1_live_2026_10_24_trace.py new file mode 100644 index 000000000..db375f055 --- /dev/null +++ b/tests/test_myhomeserver1_live_2026_10_24_trace.py @@ -0,0 +1,294 @@ +"""Verification tests for the 2026-10-24 live MyHomeServer1 (firmware 3.87.13) status-read capture. + +Fixture: + tests/fixtures/traces/myhomeserver1_live_2026-10-24/myhome_trace_MyHomeServer1_live_2026-10-24.json + +A second gateway family for the facts behind OWNd #137, #139, #140, #141, #142 and MyHOME +#791-#794, #798: a large home plant (WHO 4 zones 35-70, about 100 WHO 1 points including +four-digit area-0 points 0010-0015). Only status reads were sent. Every test pins a fact of the +trace itself, so the module passes with the pinned OWNd. The firmware oracle emulates +MyHomeServer1 2.82.06; this unit runs 3.87.13, and *#13**12## answers a real MAC here (synthetic +in the fixture) where the emulated 2.82.06 returns zeros (oracle PR #59). +""" + +from __future__ import annotations + +import json +import re +from pathlib import Path + +import pytest +from OWNd.message import OWNCommand, OWNMessage + +MAC = "00:03:50:00:20:24" +MAC_FRAME = "*#13**12*0*3*80*0*32*36##" +MODEL_NAME_FRAME = "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##" +FIXTURE = ( + Path(__file__).resolve().parent + / "fixtures" + / "traces" + / "myhomeserver1_live_2026-10-24" + / "myhome_trace_MyHomeServer1_live_2026-10-24.json" +) + +RUN1 = "run1_identify" +RUN2 = "run2_reads_thermo_sound_alarm_lights" +RUN3 = "run3_reads_lights_addresses_humidity" + + +@pytest.fixture(scope="module") +def trace_payload() -> dict: + assert FIXTURE.is_file(), FIXTURE + return json.loads(FIXTURE.read_text(encoding="utf-8")) + + +@pytest.fixture(scope="module") +def rows(trace_payload: dict) -> list[dict]: + return trace_payload["rows"] + + +@pytest.fixture(scope="module") +def frames(trace_payload: dict) -> list[dict]: + return trace_payload["frames"] + + +def _result(rows: list[dict], run: str, frame: str) -> dict: + found = [r for r in rows if r["dir"] == "result" and r["run"] == run and r["frame"] == frame] + assert len(found) == 1, (run, frame, len(found)) + return found[0] + + +def _evt(rows: list[dict], run: str) -> list[dict]: + return [r for r in rows if r["run"] == run and r["dir"] == "rx" and r["session"] == "evt"] + + +# --------------------------------------------------------------- schema, privacy, parsing + + +def test_schema_runs_and_synthetic_identity(trace_payload: dict, rows: list[dict], frames: list[dict]) -> None: + gw = trace_payload["gateway"] + assert gw["model"] == "MyHomeServer1" + assert gw["firmware"] == "3.87.13" + assert gw["ip"] == "192.0.2.9" + assert gw["mac"] == MAC + assert gw["identification"] == { + "model": "MyHomeServer1", + "who13_code": "200", + "who13_model_name": "MyHomeServer1", + "who1013_code": "67", + } + assert "2.82.06" in gw["oracle_note"] + assert trace_payload["capture"]["kind"] == "derived_trace_archive" + assert [r["run"] for r in trace_payload["capture"]["runs"]] == [RUN1, RUN2, RUN3] + assert trace_payload["capture"]["window"]["frames"] == len(frames) == 376 + assert trace_payload["capture"]["window"]["rows"] == len(rows) == 613 + assert all(f["direction"] == "rx" and f["session"] == "evt" for f in frames) + assert [r["frame"] for r in rows if r["dir"] == "rx" and r["session"] == "evt"] == [f["raw"] for f in frames] + # only status reads were sent + assert all(r["frame"].startswith("*#") for r in rows if r["dir"] == "tx") + text = json.dumps(trace_payload) + # every MAC-like string and every WHO 13 dimension 12 frame in the archive is the synthetic one + assert set(re.findall(r"(?:[0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}", text)) == {MAC} + assert {f["raw"] for f in frames if f["raw"].startswith("*#13**12*")} <= {MAC_FRAME} + assert "192*168" not in text and "192.168" not in text + assert MAC_FRAME in text + assert "00:03:50:00:10:23" not in text, "a different synthetic MAC than the F461 fixtures" + + +def test_every_frame_parses_in_ownd_except_the_pending_model_name_decoder(rows: list[dict], frames: list[dict]) -> None: + for item in frames: + parsed = OWNMessage.parse(item["raw"]) + if item["raw"] == MODEL_NAME_FRAME: + continue # no decoder in the pinned OWNd (OWNd#139); it must not raise + assert parsed is not None, f"Failed to parse evt frame: {item['raw']}" + for r in rows: + if r["dir"] == "tx": + assert OWNCommand.parse(r["frame"]) is not None or OWNMessage.parse(r["frame"]) is not None, r + elif r["dir"] == "rx" and r["frame"] not in ("*#*1##", "*#*0##", MODEL_NAME_FRAME): + assert OWNMessage.parse(r["frame"]) is not None, r + + +def test_result_rows_are_consistent_with_their_tx_and_cmd_rx_rows(rows: list[dict]) -> None: + for run in (RUN1, RUN2, RUN3): + run_rows = [r for r in rows if r["run"] == run] + for i, r in enumerate(run_rows): + if r["dir"] != "result": + continue + tx = next(x for x in reversed(run_rows[:i]) if x["dir"] == "tx") + assert tx["frame"] == r["frame"] and tx["t"] <= r["t"] + assert abs((r["t"] - tx["t"]) - r["reply_time_s"]) < 0.002 + cmd_rx = [x["frame"] for x in run_rows[:i] if x["dir"] == "rx" and x["session"] == "cmd" and x["t"] == r["t"]] + assert cmd_rx == [*r["replies"], "*#*1##" if r["ack"] else "*#*0##"] + + +# --------------------------------------------------------------- WHO 13 / 1013 identification + + +def test_gateway_identification_firmware_3_87_13_and_model_name(rows: list[dict], frames: list[dict]) -> None: + assert _result(rows, RUN1, "*#13**15##")["replies"] == ["*#13**15*200##"] + assert _result(rows, RUN1, "*#13**16##")["replies"] == ["*#13**16*3*87*13##"] + assert _result(rows, RUN1, "*#1013**1##")["replies"] == ["*#1013**1*67*15*5*0##"] + assert _result(rows, RUN1, "*#13**1##")["replies"] == ["*#13**1*06*24*10*2026##"] + datetime_reply = _result(rows, RUN1, "*#13**22##")["replies"] + assert len(datetime_reply) == 1 and re.fullmatch(r"\*#13\*\*22\*\d\d\*\d\d\*\d\d\*999\*06\*24\*10\*2026##", datetime_reply[0]) + # the MAC is answered (a real one on 3.87.13, synthetic here; the emulated 2.82.06 answers zeros) + mac = _result(rows, RUN1, "*#13**12##") + assert mac["ack"] is True and mac["replies"] == [MAC_FRAME] and MAC_FRAME in mac["events_after"] + msg = OWNMessage.parse(MAC_FRAME) + assert msg is not None and msg.human_readable_log == f"Gateway's MAC address is: {MAC}." + # dimension 27: the model name as ASCII codes, no decoder in the pinned OWNd + res = _result(rows, RUN1, "*#13**27##") + assert res["ack"] is True and res["replies"] == [MODEL_NAME_FRAME] and MODEL_NAME_FRAME in res["events_after"] + codes = MODEL_NAME_FRAME[len("*#13**27*") : -2].split("#") + assert "".join(chr(int(c)) for c in codes) == "MyHomeServer1" + assert [f["raw"] for f in frames if f["raw"].startswith("*#13**27*")] == [MODEL_NAME_FRAME] + # every reply of run1 is also delivered on the event session; the plant's own WHO 4 traffic runs in between + for r in [x for x in rows if x["run"] == RUN1 and x["dir"] == "result"]: + assert r["ack"] is True and r["reply_time_s"] < 0.2 and r["replies"][0] in r["events_after"], r["frame"] + own_traffic = [r["frame"] for r in _evt(rows, RUN1) if r["frame"].startswith("*#4*")] + assert len(own_traffic) == 106 + + +def test_who13_time_request_is_echoed_on_the_event_session(rows: list[dict]) -> None: + for run, reply in ((RUN1, "*#13**0*16*19*49*999##"), (RUN3, "*#13**0*16*22*38*999##")): + res = _result(rows, run, "*#13**0##") + assert res["ack"] is True and res["reply_time_s"] < 0.1 + assert res["replies"] == [reply] and reply in res["events_after"] + echo = [r for r in _evt(rows, run) if r["frame"] == reply] + assert len(echo) == 1 and echo[0]["ownd_class"] == "OWNGatewayEvent" + + +# --------------------------------------------------------------- WHO 4 thermoregulation + + +def test_general_and_central_unit_forms(rows: list[dict]) -> None: + """*#4*0## is refused at once; *#4*#0## and *#4*#0*14## are forwarded, unanswered and retried once.""" + general = _result(rows, RUN3, "*#4*0##") + assert general["ack"] is False and general["reply_time_s"] < 0.1 and general["replies"] == [] + for frame in ("*#4*#0##", "*#4*#0*14##"): + res = _result(rows, RUN2, frame) + assert res["ack"] is False and res["replies"] == [] and res["events_after"] == [] + assert 4.0 < res["reply_time_s"] < 4.5, frame + assert [r for r in rows if r["run"] == RUN2 and r["dir"] == "tx" and r["frame"] == frame][0]["is_status_request"] is False + + +def test_zone_35_status_reply_order_and_dimensions(rows: list[dict]) -> None: + """*#4*35## answers dimension 0, 12, the season, 14, 13 in that order, like the F461.""" + res = _result(rows, RUN2, "*#4*35##") + assert res["ack"] is True and 1.2 < res["reply_time_s"] < 1.5 + assert res["replies"] == [ + "*#4*35*0*0231##", + "*#4*35*12*0200*3##", + "*4*1*35##", + "*#4*35*14*0200*3##", + "*#4*35*13*00##", + ] + assert res["events_after"] == res["replies"] + assert _result(rows, RUN2, "*#4*35*12##")["replies"] == ["*#4*35*12*0200*3##", "*4*1*35##"] + assert _result(rows, RUN2, "*#4*35*14##")["replies"] == ["*#4*35*14*0200*3##"] + season = OWNMessage.parse("*4*1*35##") + assert season is not None and season.who == 4 and season.zone == 35 + + +def test_actuator_status_per_zone_and_all_zones(rows: list[dict]) -> None: + """*#4*35*20## -> *#4*35#1*20*0##; *#4*#0*20## is ACKed with 44 actuator frames, zone 0 included.""" + zone = _result(rows, RUN2, "*#4*35*20##") + assert zone["ack"] is True and zone["reply_time_s"] < 0.3 + assert zone["replies"] == ["*#4*35#1*20*0##"] and zone["events_after"] == ["*#4*35#1*20*0##"] + all_zones = _result(rows, RUN2, "*#4*#0*20##") + assert all_zones["ack"] is True and all_zones["reply_time_s"] < 0.5 + assert len(all_zones["replies"]) == 8 and set(all_zones["replies"]) <= set(all_zones["events_after"]) + actuators = all_zones["events_after"] + assert len(actuators) == 43 and len(set(actuators)) == 43 + assert all(re.fullmatch(r"\*#4\*\d+#[1-4]\*20\*[05]##", f) for f in actuators) + assert {f for f in actuators if f.startswith("*#4*0#")} == { + "*#4*0#1*20*0##", + "*#4*0#2*20*0##", + "*#4*0#3*20*0##", + "*#4*0#4*20*0##", + } + fan_coils = sorted(f for f in actuators if "#2*20*5##" in f) + assert fan_coils == ["*#4*47#2*20*5##", "*#4*48#2*20*5##", "*#4*57#2*20*5##", "*#4*60#2*20*5##", "*#4*70#2*20*5##"] + assert len({f for f in actuators if "#1*20*0##" in f and not f.startswith("*#4*0#")}) == 34 + for raw in ("*#4*0#1*20*0##", "*#4*35#1*20*0##", "*#4*47#2*20*5##"): + msg = OWNMessage.parse(raw) + assert msg is not None and msg.who == 4 and msg.is_active() is False + + +def test_humidity_per_zone_only_where_a_probe_exists_and_general_sweep(rows: list[dict]) -> None: + """*#4*35*60## times out (no probe); *#4*0*60## answers 17 zones; *#4*39*60## answers directly.""" + none = _result(rows, RUN2, "*#4*35*60##") + assert none["ack"] is False and 2.0 < none["reply_time_s"] < 2.3 and none["events_after"] == [] + sweep = _result(rows, RUN2, "*#4*0*60##") + assert sweep["ack"] is True and sweep["reply_time_s"] < 0.6 + humid = sweep["events_after"] + assert len(humid) == 17 and len(set(humid)) == 17 + assert all(re.fullmatch(r"\*#4\*\d+\*60\*\d+##", f) for f in humid) + assert sorted(int(f.split("*")[2]) for f in humid) == [39, 40, 41, 42, 43, 47, 48, 53, 55, 57, 58, 59, 60, 61, 68, 69, 70] + assert set(sweep["replies"]) <= set(humid) and len(sweep["replies"]) == 8 + zone = _result(rows, RUN3, "*#4*39*60##") + assert zone["ack"] is True and zone["reply_time_s"] < 0.3 and zone["replies"] == ["*#4*39*60*51##"] + msg = OWNMessage.parse("*#4*39*60*51##") + assert msg is not None and msg.zone == 39 and msg.main_humidity == 51.0 + + +def test_the_plant_pushes_setpoints_as_dimension_7_and_temperatures(frames: list[dict]) -> None: + """The home plant broadcasts *#4*Z*7*1*1*T## setpoints and *#4*Z*0*T## temperatures on its own.""" + raws = [f["raw"] for f in frames] + dim7 = {r for r in raws if re.fullmatch(r"\*#4\*\d+\*7\*1\*1\*\d{4}##", r)} + assert len(dim7) >= 30 and "*#4*35*7*1*1*0200##" in dim7 + dim0 = {r for r in raws if re.fullmatch(r"\*#4\*\d+\*0\*\d{4}##", r)} + assert len(dim0) == 33 + zones = sorted({int(r.split("*")[2]) for r in dim7 | dim0}) + assert zones[0] == 35 and zones[-1] == 70 + for raw in ("*#4*35*7*1*1*0200##", "*#4*35*0*0231##", "*#4*53*5*0##"): + assert OWNMessage.parse(raw) is not None, raw + + +# --------------------------------------------------------------- WHO 16 / WHO 5 refused + + +def test_who16_and_who5_requests_are_refused_locally(rows: list[dict]) -> None: + for frame in ("*#16*0*5##", "*#16*101*5##"): + res = _result(rows, RUN2, frame) + assert res["ack"] is False and res["reply_time_s"] <= 0.005 and res["replies"] == [], frame + alarm = _result(rows, RUN2, "*#5*0##") + assert alarm["ack"] is False and alarm["reply_time_s"] <= 0.01 and alarm["events_after"] == [] + + +# --------------------------------------------------------------- WHO 1 / WHO 2 general status and address spellings + + +def test_general_light_status_lists_four_digit_and_two_digit_points(rows: list[dict]) -> None: + """*#1*0## answers about 100 point statuses (74 distinct points) in 4.7 s; *#2*0## ACKs with no data.""" + res = _result(rows, RUN2, "*#1*0##") + assert res["ack"] is True and 4.5 < res["reply_time_s"] < 5.0 + assert len(res["replies"]) == 100 + points = {r.split("*")[3][:-2] for r in res["replies"]} + assert len(points) == 74 + assert all(re.fullmatch(r"\*1\*[01]\*\d{2,4}##", r) for r in res["replies"]) + assert {"0010", "0011", "0012", "0013", "0014", "0015"} <= points, "four-digit area-0 points" + assert {"0111", "0215", "0515"} <= points, "four-digit area 1-5 points" + assert {"11", "14", "69"} <= points, "two-digit points" + assert "0001" not in points and "0004" not in points and "01" not in points and "04" not in points + cover = _result(rows, RUN2, "*#2*0##") + assert cover["ack"] is True and cover["replies"] == [] and 4.0 < cover["reply_time_s"] < 4.6 + assert cover["events_after"] and all(f.startswith("*1*") for f in cover["events_after"]) + + +def test_four_digit_area0_points_are_devices_distinct_from_the_two_digit_ones(rows: list[dict]) -> None: + """0014 and 14 are two devices; 0010 exists and 10 does not; 0001 / 0004 are refused at once.""" + assert _result(rows, RUN3, "*#1*0014##")["replies"] == ["*1*0*0014##"] + assert _result(rows, RUN3, "*#1*14##")["replies"] == ["*1*0*14##"] + assert _result(rows, RUN3, "*#1*0010##")["replies"] == ["*1*0*0010##"] + ten = _result(rows, RUN3, "*#1*10##") + assert ten["ack"] is False and 1.9 < ten["reply_time_s"] < 2.2 + for frame, limit in (("*#1*0001##", 0.01), ("*#1*0004##", 0.02)): + res = _result(rows, RUN3, frame) + assert res["ack"] is False and res["reply_time_s"] <= limit and res["events_after"] == [], frame + for frame in ("*#1*01##", "*#1*04##"): + res = _result(rows, RUN3, frame) + assert res["ack"] is False and 1.9 < res["reply_time_s"] < 2.2, frame + for raw, where in (("*1*0*0014##", "0014"), ("*1*0*14##", "14"), ("*1*0*0010##", "0010")): + msg = OWNMessage.parse(raw) + assert msg is not None and msg.who == 1 and msg.where == where diff --git a/tests/test_trace_oracle_validation.py b/tests/test_trace_oracle_validation.py index 411a5ac42..5101da91b 100644 --- a/tests/test_trace_oracle_validation.py +++ b/tests/test_trace_oracle_validation.py @@ -519,7 +519,12 @@ def test_tier4_all_trace_rx_frames_parse_cleanly_in_ownd(): # they may parse to None until the decoder lands (then they parse like any other frame). # - *#13**27*70#52#54#49##: WHO 13 dimension 27 model name ("F461" as ASCII codes) answered # by a live F461 2.0.11 (tests/fixtures/traces/f461_live_2026-10-23); decoder in OWNd#139. - pending_decoder_rx = {"*#13**27*70#52#54#49##"} + # - *#13**27*77#121#...#49##: the same dimension, "MyHomeServer1", from a live MyHomeServer1 + # 3.87.13 (tests/fixtures/traces/myhomeserver1_live_2026-10-24). + pending_decoder_rx = { + "*#13**27*70#52#54#49##", + "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##", + } failures: list[str] = [] for frame in sorted(rx_frames): From 3400664055aeb358d45c500103d1b9527e470833 Mon Sep 17 00:00:00 2001 From: gdluck Date: Sat, 24 Oct 2026 18:10:06 +0300 Subject: [PATCH 3/3] test(trace): address review on #799 (tier-1 tx coverage, archive timing artefacts, README wording, loud pending-decoder skip) Review 5638684839 on #799, items 2-5 (item 1, the real MAC suffixes in the test modules, was fixed in the rewritten history before this commit). Tier 1: _iter_all_trace_records also reads a derived_trace_archive's rows (dir tx / rx), so the requests of the six archives are checked. The oracle index at 53f9514 has no stimulus, direct or canonical, for 115 of them (dimension 60 humidity, WHO 13 dimensions 10-12 / 19 / 27, *#1*#1##, WHO 14 status, report-form writes, WHO 6 / 8 on the F461, ...): they are listed in PHYSICAL_ONLY_TX_FRAMES with the capture and the live reply per frame, and a new test fails when an entry leaves the corpus or when the oracle grows a verdict for it. No other tier changed; rows add no rx frame to tier 4. Archives: both regenerated. Command-session rx rows sit right after their request at its t with t_estimated true (the session returns the replies as a batch with the ACK / NACK); result.events_after holds only the event-session frames that arrived while the request was pending; t and frames[].timestamp are one monotonic axis across runs (capture.runs[].t_offset). Said in capture.notes and the READMEs. The trace tests read the chronological rows for the frames that arrived after the ACK; the facts are unchanged. README f461_live_2026-10-23: the refusal sentence matches run 1 (*#5*#1## 13 ms, *#25*21## 950 ms in run 1 and 5-6 ms in runs 8 / 8b); the run 6 bullet says the actuator frames followed each *#4*2## because the patched integration (#792) sent *#4*#0*20## after every poll. pending_decoder_rx: assert parsed is None instead of continue, so the entries fail loudly once the OWNd pin carries the dimension 27 decoder (OWNd#139). Co-Authored-By: Claude Fable 5.1 --- .../traces/f461_live_2026-10-23/README.md | 23 +- .../myhome_trace_F461_live_2026-10-23.json | 2872 +++++++------ .../myhomeserver1_live_2026-10-24/README.md | 5 +- ...e_trace_MyHomeServer1_live_2026-10-24.json | 3566 +++++++++-------- tests/test_f461_live_2026_10_23_trace.py | 46 +- ...est_myhomeserver1_live_2026_10_24_trace.py | 39 +- tests/test_trace_oracle_validation.py | 155 +- 7 files changed, 3587 insertions(+), 3119 deletions(-) diff --git a/tests/fixtures/traces/f461_live_2026-10-23/README.md b/tests/fixtures/traces/f461_live_2026-10-23/README.md index c4cc1d013..e5e8f459c 100644 --- a/tests/fixtures/traces/f461_live_2026-10-23/README.md +++ b/tests/fixtures/traces/f461_live_2026-10-23/README.md @@ -38,11 +38,13 @@ Standard `MyHOME` derived trace archive: | `dir` | Meaning | Fields | |---|---|---| | `tx` | frame written on the command session | `frame`, `is_status_request` (how OWNd sent it) | -| `rx` | frame read; `session: "cmd"` for the replies and the closing `*#*1##` / `*#*0##`, `session: "evt"` for the event monitor | `frame`; event rows also carry `ownd_class` and `ownd_log`, what OWNd master made of the frame at capture time | -| `result` | what the command session returned for the `tx` | `ack`, `reply_time_s`, `replies` (frames collected on the command session; empty on a NACK and on an ACK that carried no data), `events_after` (event-session frames seen before the next request), `utc`, `note` on the frames the pull requests cite | +| `rx` | frame read; `session: "cmd"` for the replies and the closing `*#*1##` / `*#*0##`, `session: "evt"` for the event monitor | `frame`; event rows also carry `ownd_class` and `ownd_log`, what OWNd master made of the frame at capture time. Command-session rows carry `t_estimated: true`: the session hands the replies over as a batch with the ACK / NACK, so their arrival time is unknown and they sit right after their request with `t` = the request's `t` | +| `result` | what the command session returned for the `tx` | `ack`, `reply_time_s`, `replies` (frames collected on the command session; empty on a NACK and on an ACK that carried no data), `events_after` (only the event-session frames that arrived while the request was pending, `tx.t <= t <= result.t`; what arrived during the pause before the next request is in the chronological rows only), `utc`, `note` on the frames the pull requests cite | -`t` is seconds since the start of that run; `step` is the phase (`oracle_who` / `plant_reads` in run 1, -the run name elsewhere, `listen` for the event-only runs). +`t` is one monotonic axis over the whole archive: each run starts 1 s after the previous one ended, and +`capture.runs[].t_offset` gives each run's start (`t - t_offset` is the time since that run's first frame), so +corpus replayers that drive a clock from `frames[].timestamp` never go backwards. `step` is the phase +(`oracle_who` / `plant_reads` in run 1, the run name elsewhere, `listen` for the event-only runs). ## The runs @@ -65,13 +67,16 @@ the run name elsewhere, `listen` for the event-only runs). dimension 14 (21.0, the last value written from Home Assistant). `*#4*2*#14*0235*3##` (mode 3) is ACKed in 78 ms, dimension 12 follows at once, dimension 14 catches up 0.3 s later, the season frame stays `*4*1*2##`. * `*#4*2*20##` is ACKed in 111 ms with `*#4*2#1*20*0##` on the command session, followed by `*#4*2#2*20*5##` on the - event session; `*#4*#0*20##` returns both on the command session after 2.1 s. While the integration polled the - zone (run 6), the two actuator frames followed every `*#4*2##` burst within 3 s. + event session; `*#4*#0*20##` returns both on the command session after 2.1 s. In run 6 the two actuator frames + followed every `*#4*2##` burst within 3 s because the patched integration under test (#792) sent `*#4*#0*20##` + after each zone poll; the F461 does not emit dimension 20 in reply to `*#4*2##` (run 1: `*#4*2##` answers + dimensions 0, 12, 14, 13 and the season only). * `*#4*0*60##` is answered by zone 2 (`*#4*2*60*39##`) after 2.1 s, `*#4*2*60##` in 0.14 s; the thermostat pushed `*#4*2*60*38##` three times in 30 minutes on its own. -* `*#4*0##`, `*#5*0##`, `*#5*#1##`, `*#9*0##`, `*#17*0##`, `*#14*06##`, `*#25*21##`, `*#3*…##`, `*#8*…##` and all - 18 WHO 16 forms are refused by the gateway itself in under 10 ms. `*#4*#2##`, `*#4*#2*14##`, `*#4*#0##`, - `*#4*#0*14##` and the 13 WHO 22 reads are forwarded to the bus and NACKed after the TX-ACK wait (1.8-2.9 s). +* `*#4*0##`, `*#5*0##`, `*#9*0##`, `*#17*0##`, `*#14*06##`, `*#3*…##`, `*#8*…##` and all 18 WHO 16 forms are refused + by the gateway itself in under 10 ms (`*#5*#1##` in 13 ms). `*#25*21##` NACKed after 950 ms in run 1 and in 5-6 ms + when re-sent in runs 8 / 8b. `*#4*#2##`, `*#4*#2*14##`, `*#4*#0##`, `*#4*#0*14##` and the 13 WHO 22 reads are + forwarded to the bus and NACKed after the TX-ACK wait (1.8-2.9 s). * `*#1*0007##`, `*#1*0001##`, `*#1*0002##` are refused in 5-7 ms; `*#1*07##` answers `*1*0*07##` in 88 ms; `*#1*7##` is area 7 (ACK, no data, 1.0 s). `*#1*0##` and `*#1*00##` list `06`, `07` and `09`; `*#1*09##` times out on the bus. Dimension 15 is group-only (`*#1*06*15##` NACK, `*#1*#1*15##` ACK and echoed). diff --git a/tests/fixtures/traces/f461_live_2026-10-23/myhome_trace_F461_live_2026-10-23.json b/tests/fixtures/traces/f461_live_2026-10-23/myhome_trace_F461_live_2026-10-23.json index 56bc5de05..9f3ceb3c0 100644 --- a/tests/fixtures/traces/f461_live_2026-10-23/myhome_trace_F461_live_2026-10-23.json +++ b/tests/fixtures/traces/f461_live_2026-10-23/myhome_trace_F461_live_2026-10-23.json @@ -2,7 +2,7 @@ "capture": { "kind": "derived_trace_archive", "started_at": "2026-10-23T20:38:04+00:00", - "notes": "Live BTicino F461 (firmware 2.0.11 / WHO 13 device type 200 / WHO 1013 134.15.5.0) multi-session bus capture of 2026-10-23 recorded with OWNd master on the physical test plant: BT-F411/4 lights at WHERE 06 and 07 (Group #1, General 0), an F422 interface with a light at WHERE 09 whose actuator lacked configurator 2 at capture time (it reports in the area sweep but answers no point command), BT-F411/2 5 s timed shutter at WHERE 05, Living Now KW4691 standalone thermostat at Zone 2 with a BT-F430/2 heating valve (actuator 1) and a BT-F430/4 fan coil (actuator 2); no central unit, no WHO 16 / 22 devices. Purpose: the physical evidence behind OWNd pull requests 136-142 and MyHOME pull requests 791-798 (oracle replay of 165 read-only requests, reviewer reads, setpoint restore, report-form writes, and the event-session bus while the fixed integration ran in a local Home Assistant). The *4*311*2## NACK / *4*311*#2## ACK pair cited by OWNd 137 is in the earlier capture of the same plant, tests/fixtures/traces/f461_live_2026-10-15 (run3_climate, probe_followup).", + "notes": "Live BTicino F461 (firmware 2.0.11 / WHO 13 device type 200 / WHO 1013 134.15.5.0) multi-session bus capture of 2026-10-23 recorded with OWNd master on the physical test plant: BT-F411/4 lights at WHERE 06 and 07 (Group #1, General 0), an F422 interface with a light at WHERE 09 whose actuator lacked configurator 2 at capture time (it reports in the area sweep but answers no point command), BT-F411/2 5 s timed shutter at WHERE 05, Living Now KW4691 standalone thermostat at Zone 2 with a BT-F430/2 heating valve (actuator 1) and a BT-F430/4 fan coil (actuator 2); no central unit, no WHO 16 / 22 devices. Purpose: the physical evidence behind OWNd pull requests 136-142 and MyHOME pull requests 791-798 (oracle replay of 165 read-only requests, reviewer reads, setpoint restore, report-form writes, and the event-session bus while the fixed integration ran in a local Home Assistant). The *4*311*2## NACK / *4*311*#2## ACK pair cited by OWNd 137 is in the earlier capture of the same plant, tests/fixtures/traces/f461_live_2026-10-15 (run3_climate, probe_followup). Timing: t is one monotonic axis over all runs (capture.runs[].t_offset is each run's start; t - t_offset is the time since that run's first frame); command-session rx rows carry t_estimated = true because the session hands the replies over as a batch with the ACK / NACK, so they are placed at their request's t; result.events_after holds only the event-session frames that arrived while the request was pending (tx.t <= t <= result.t).", "window": { "first": "2026-10-23T20:38:04+00:00", "last": "2026-10-23T23:03:07+00:00", @@ -10,16 +10,16 @@ "rows": 939 }, "runs": [ - {"run": "run1_oracle_replay_readonly", "source": "replay_readonly.jsonl", "utc": "20:38:05-20:44:27", "rows": 603, "frames": 69, "purpose": "165 status / dimension requests mirrored from the firmware-oracle suites (WHO 1, 2, 3, 4, 5, 8, 9, 13, 14, 16, 17, 18, 22, 25, 1001, 1013) plus 31 plant reads; read-only, no WHO 4 dimension 22, no report-form writes"}, - {"run": "run2_reviewer_reads", "source": "reviewer_reads.jsonl", "utc": "21:02:20-21:02:32", "rows": 29, "frames": 4, "purpose": "address spellings *#1*0007## / *#1*07## / *#1*7##, humidity *#4*0*60## and *#4*2*60##, a WHO 22 read, *#13**0## echoed on the event session"}, - {"run": "run3_climate_setpoint_restore", "source": "restore_setpoint.jsonl", "utc": "21:13:33-21:13:39", "rows": 19, "frames": 8, "purpose": "*#4*2*#14*0235*3## restores the setpoint in force, then *#4*2## shows the reply order 0, 12, season, 14, 13"}, - {"run": "run4_final_state", "source": "final_state.jsonl", "utc": "21:13:17-21:13:21", "rows": 28, "frames": 8, "purpose": "final plant state after the Home Assistant session: lights 06 / 07, cover 05, zone 2 (*#4*2## with dimension 12 = 21.0)"}, - {"run": "run4b_final_state_after_restore", "source": "final_state_2.jsonl", "utc": "23:03:03-23:03:07", "rows": 28, "frames": 8, "purpose": "same reads two hours later: dimension 12 and 14 both 23.5 after the restore"}, - {"run": "run5_injection_flags", "source": "injection_flags.jsonl", "utc": "21:10:36-21:10:42", "rows": 6, "frames": 0, "purpose": "report-form writes used by the expose engine: *#18*51*113*100## ACK (not echoed), *#4*#0*0*0215## NACK after the bus timeout (no central unit)"}, - {"run": "run6_event_session_ha_fixed_integration", "source": "verify_bus.jsonl", "utc": "22:31:06-23:00:36", "rows": 171, "frames": 171, "purpose": "event session only, 1770 s listen while a local Home Assistant ran the integration under test: startup sweeps, *#4*#0*20## actuator replies after every reconnect, cover 05 runs, one *2*0*0## general stop, the spontaneous WHO 13 / 1013 frames at connect"}, - {"run": "run7_localha_bus_monitor", "source": "localha_session_bus.jsonl", "utc": "21:03:01-21:13:03", "rows": 31, "frames": 31, "purpose": "event session only, bus monitor of the local Home Assistant session: light 06 / 07 toggles, cover 05 close / position / close, setpoint 22.0 then 21.0, the manual *#4*2*20## reply"}, - {"run": "run8_flicker_repro", "source": "repro_flicker.jsonl", "utc": "20:49:37-20:49:49", "rows": 9, "frames": 0, "purpose": "re-sent *#25*21## and *#3*#1## after a 100 ms light pulse was seen during run1 at 20:42:07 UTC; not reproduced, the pulse came from elsewhere"}, - {"run": "run8b_flicker_repro_who22", "source": "repro_flicker2.jsonl", "utc": "20:50:05-20:50:14", "rows": 15, "frames": 0, "purpose": "second attempt with the WHO 22 reads that preceded the pulse in run1; not reproduced"} + {"run": "run1_oracle_replay_readonly", "source": "replay_readonly.jsonl", "utc": "20:38:05-20:44:27", "t_offset": 0.0, "rows": 603, "frames": 69, "purpose": "165 status / dimension requests mirrored from the firmware-oracle suites (WHO 1, 2, 3, 4, 5, 8, 9, 13, 14, 16, 17, 18, 22, 25, 1001, 1013) plus 31 plant reads; read-only, no WHO 4 dimension 22, no report-form writes"}, + {"run": "run2_reviewer_reads", "source": "reviewer_reads.jsonl", "utc": "21:02:20-21:02:32", "t_offset": 383.623, "rows": 29, "frames": 4, "purpose": "address spellings *#1*0007## / *#1*07## / *#1*7##, humidity *#4*0*60## and *#4*2*60##, a WHO 22 read, *#13**0## echoed on the event session"}, + {"run": "run3_climate_setpoint_restore", "source": "restore_setpoint.jsonl", "utc": "21:13:33-21:13:39", "t_offset": 398.258, "rows": 19, "frames": 8, "purpose": "*#4*2*#14*0235*3## restores the setpoint in force, then *#4*2## shows the reply order 0, 12, season, 14, 13"}, + {"run": "run4_final_state", "source": "final_state.jsonl", "utc": "21:13:17-21:13:21", "t_offset": 403.657, "rows": 28, "frames": 8, "purpose": "final plant state after the Home Assistant session: lights 06 / 07, cover 05, zone 2 (*#4*2## with dimension 12 = 21.0)"}, + {"run": "run4b_final_state_after_restore", "source": "final_state_2.jsonl", "utc": "23:03:03-23:03:07", "t_offset": 408.771, "rows": 28, "frames": 8, "purpose": "same reads two hours later: dimension 12 and 14 both 23.5 after the restore"}, + {"run": "run5_injection_flags", "source": "injection_flags.jsonl", "utc": "21:10:36-21:10:42", "t_offset": 413.911, "rows": 6, "frames": 0, "purpose": "report-form writes used by the expose engine: *#18*51*113*100## ACK (not echoed), *#4*#0*0*0215## NACK after the bus timeout (no central unit)"}, + {"run": "run6_event_session_ha_fixed_integration", "source": "verify_bus.jsonl", "utc": "22:31:06-23:00:36", "t_offset": 423.534, "rows": 171, "frames": 171, "purpose": "event session only, 1770 s listen while a local Home Assistant ran the integration under test: startup sweeps, *#4*#0*20## actuator replies after every reconnect, cover 05 runs, one *2*0*0## general stop, the spontaneous WHO 13 / 1013 frames at connect"}, + {"run": "run7_localha_bus_monitor", "source": "localha_session_bus.jsonl", "utc": "21:03:01-21:13:03", "t_offset": 2220.595, "rows": 31, "frames": 31, "purpose": "event session only, bus monitor of the local Home Assistant session: light 06 / 07 toggles, cover 05 close / position / close, setpoint 22.0 then 21.0, the manual *#4*2*20## reply"}, + {"run": "run8_flicker_repro", "source": "repro_flicker.jsonl", "utc": "20:49:37-20:49:49", "t_offset": 2826.742, "rows": 9, "frames": 0, "purpose": "re-sent *#25*21## and *#3*#1## after a 100 ms light pulse was seen during run1 at 20:42:07 UTC; not reproduced, the pulse came from elsewhere"}, + {"run": "run8b_flicker_repro_who22", "source": "repro_flicker2.jsonl", "utc": "20:50:05-20:50:14", "t_offset": 2840.805, "rows": 15, "frames": 0, "purpose": "second attempt with the WHO 22 reads that preceded the pulse in run1; not reproduced"} ] }, "gateway": { @@ -107,236 +107,236 @@ {"timestamp": 375.369, "direction": "rx", "raw": "*#13**12*0*3*80*0*16*35##", "run": "run1_oracle_replay_readonly", "session": "evt"}, {"timestamp": 378.994, "direction": "rx", "raw": "*#13**27*70#52#54#49##", "run": "run1_oracle_replay_readonly", "session": "evt"}, {"timestamp": 380.204, "direction": "rx", "raw": "*#13**19*0*0*38*54##", "run": "run1_oracle_replay_readonly", "session": "evt"}, - {"timestamp": 2.333, "direction": "rx", "raw": "*1*0*07##", "run": "run2_reviewer_reads", "session": "evt"}, - {"timestamp": 5.869, "direction": "rx", "raw": "*#4*2*60*39##", "run": "run2_reviewer_reads", "session": "evt"}, - {"timestamp": 9.214, "direction": "rx", "raw": "*#4*2*60*39##", "run": "run2_reviewer_reads", "session": "evt"}, - {"timestamp": 13.632, "direction": "rx", "raw": "*#13**0*00*02*31*999##", "run": "run2_reviewer_reads", "session": "evt"}, - {"timestamp": 1.232, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run3_climate_setpoint_restore", "session": "evt"}, - {"timestamp": 1.235, "direction": "rx", "raw": "*4*1*2##", "run": "run3_climate_setpoint_restore", "session": "evt"}, - {"timestamp": 1.267, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run3_climate_setpoint_restore", "session": "evt"}, - {"timestamp": 3.704, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run3_climate_setpoint_restore", "session": "evt"}, - {"timestamp": 4.007, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run3_climate_setpoint_restore", "session": "evt"}, - {"timestamp": 4.009, "direction": "rx", "raw": "*4*1*2##", "run": "run3_climate_setpoint_restore", "session": "evt"}, - {"timestamp": 4.312, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run3_climate_setpoint_restore", "session": "evt"}, - {"timestamp": 4.396, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run3_climate_setpoint_restore", "session": "evt"}, - {"timestamp": 1.143, "direction": "rx", "raw": "*1*0*06##", "run": "run4_final_state", "session": "evt"}, - {"timestamp": 1.735, "direction": "rx", "raw": "*1*0*07##", "run": "run4_final_state", "session": "evt"}, - {"timestamp": 2.344, "direction": "rx", "raw": "*2*0*05##", "run": "run4_final_state", "session": "evt"}, - {"timestamp": 3.427, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run4_final_state", "session": "evt"}, - {"timestamp": 3.735, "direction": "rx", "raw": "*#4*2*12*0210*3##", "run": "run4_final_state", "session": "evt"}, - {"timestamp": 3.739, "direction": "rx", "raw": "*4*1*2##", "run": "run4_final_state", "session": "evt"}, - {"timestamp": 4.035, "direction": "rx", "raw": "*#4*2*14*0210*3##", "run": "run4_final_state", "session": "evt"}, - {"timestamp": 4.112, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run4_final_state", "session": "evt"}, - {"timestamp": 1.149, "direction": "rx", "raw": "*1*0*06##", "run": "run4b_final_state_after_restore", "session": "evt"}, - {"timestamp": 1.741, "direction": "rx", "raw": "*1*0*07##", "run": "run4b_final_state_after_restore", "session": "evt"}, - {"timestamp": 2.326, "direction": "rx", "raw": "*2*0*05##", "run": "run4b_final_state_after_restore", "session": "evt"}, - {"timestamp": 3.452, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run4b_final_state_after_restore", "session": "evt"}, - {"timestamp": 3.724, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run4b_final_state_after_restore", "session": "evt"}, - {"timestamp": 3.727, "direction": "rx", "raw": "*4*1*2##", "run": "run4b_final_state_after_restore", "session": "evt"}, - {"timestamp": 4.034, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run4b_final_state_after_restore", "session": "evt"}, - {"timestamp": 4.134, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run4b_final_state_after_restore", "session": "evt"}, - {"timestamp": 25.965, "direction": "rx", "raw": "*#13**12*0*3*80*0*16*35##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 25.974, "direction": "rx", "raw": "*#1013**1*134*15*5*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 26.164, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 26.21, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 26.25, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 26.322, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 28.171, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 28.212, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 28.259, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 28.332, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 30.148, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 30.768, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 31.097, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 31.099, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 31.407, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 31.511, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 31.66, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 31.715, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 71.297, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 71.333, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 71.373, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 71.393, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 76.506, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 85.93, "direction": "rx", "raw": "*1*1*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 88.249, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 163.434, "direction": "rx", "raw": "*2*0*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 201.962, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 202.002, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 202.05, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 202.121, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 204.058, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 204.107, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 204.146, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 204.22, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 206.036, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 206.678, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 206.991, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 206.994, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 207.294, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 207.387, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 209.667, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 209.723, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 214.202, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 214.249, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 214.282, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 214.353, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 216.201, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 216.249, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 216.307, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 216.338, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 218.156, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 218.884, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 219.124, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 219.132, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 219.398, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 219.54, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 221.891, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 221.938, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 460.582, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 460.634, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 460.671, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 460.751, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 462.679, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 462.726, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 462.775, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 462.847, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 464.784, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 465.404, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 465.723, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 465.727, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 466.021, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 466.104, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 468.386, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 468.429, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 468.473, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 560.258, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 560.262, "direction": "rx", "raw": "*#13**#0*01*40*00*##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 808.031, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 808.074, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 808.111, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 808.152, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 809.951, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 809.995, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 810.04, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 810.112, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 811.96, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 812.588, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 812.9, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 812.903, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 813.219, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 813.296, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 815.576, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 815.62, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 819.382, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 819.407, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 819.448, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 819.479, "direction": "rx", "raw": "*2*1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 825.168, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 829.063, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 829.079, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 829.128, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 829.152, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 832.806, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 832.831, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 835.158, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 835.191, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 835.223, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 835.263, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 841.111, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 881.384, "direction": "rx", "raw": "*#4*2*60*38##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1153.503, "direction": "rx", "raw": "*#4*2#1*#20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1153.535, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1160.117, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1160.118, "direction": "rx", "raw": "*#13**#0*01*50*00*##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1611.985, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1612.033, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1612.083, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1612.113, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1612.17, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1613.972, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1614.019, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1614.059, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1614.14, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1615.988, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1616.624, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1616.953, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1616.955, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1617.258, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1617.349, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1619.695, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1619.737, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1622.619, "direction": "rx", "raw": "*#4*2*60*38##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1624.734, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1624.758, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1624.815, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1624.847, "direction": "rx", "raw": "*2*1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1630.61, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1632.239, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1632.273, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1632.303, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1632.32, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1637.584, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1738.85, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1738.89, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1738.93, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1739.01, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1740.859, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1740.905, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1740.953, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1741.026, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1742.859, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1743.478, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1743.782, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1743.784, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1744.086, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1744.204, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1746.499, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1746.546, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1749.435, "direction": "rx", "raw": "*#4*2*60*38##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1759.563, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1759.566, "direction": "rx", "raw": "*#13**#0*02*00*00*##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1780.8, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1780.842, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1780.888, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1780.913, "direction": "rx", "raw": "*2*1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1786.082, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1790.497, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1790.523, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1790.565, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1790.594, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 1796.061, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, - {"timestamp": 2.922, "direction": "rx", "raw": "*1*0*06##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 17.369, "direction": "rx", "raw": "*1*1*06##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 19.2, "direction": "rx", "raw": "*1*0*06##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 41.464, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 41.49, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 41.531, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 41.561, "direction": "rx", "raw": "*2*2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 47.105, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 68.215, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 68.249, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 68.273, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 68.314, "direction": "rx", "raw": "*2*1*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 70.76, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 70.777, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 83.37, "direction": "rx", "raw": "*#4*2*12*0220*3##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 83.372, "direction": "rx", "raw": "*4*1*2##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 83.41, "direction": "rx", "raw": "*#4*2*0*0240##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 94.067, "direction": "rx", "raw": "*#4*2*12*0210*3##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 94.069, "direction": "rx", "raw": "*4*1*2##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 94.113, "direction": "rx", "raw": "*#4*2*0*0240##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 107.296, "direction": "rx", "raw": "*1*1*07##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 110.296, "direction": "rx", "raw": "*1*0*07##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 371.087, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 371.15, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 371.199, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 380.284, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 380.309, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 380.342, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 380.381, "direction": "rx", "raw": "*2*2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 386.109, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, - {"timestamp": 605.147, "direction": "rx", "raw": "*1*0*07##", "run": "run7_localha_bus_monitor", "session": "evt"} + {"timestamp": 385.956, "direction": "rx", "raw": "*1*0*07##", "run": "run2_reviewer_reads", "session": "evt"}, + {"timestamp": 389.492, "direction": "rx", "raw": "*#4*2*60*39##", "run": "run2_reviewer_reads", "session": "evt"}, + {"timestamp": 392.837, "direction": "rx", "raw": "*#4*2*60*39##", "run": "run2_reviewer_reads", "session": "evt"}, + {"timestamp": 397.255, "direction": "rx", "raw": "*#13**0*00*02*31*999##", "run": "run2_reviewer_reads", "session": "evt"}, + {"timestamp": 399.49, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 399.493, "direction": "rx", "raw": "*4*1*2##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 399.525, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 401.962, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 402.265, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 402.267, "direction": "rx", "raw": "*4*1*2##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 402.57, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 402.654, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run3_climate_setpoint_restore", "session": "evt"}, + {"timestamp": 404.8, "direction": "rx", "raw": "*1*0*06##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 405.392, "direction": "rx", "raw": "*1*0*07##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 406.001, "direction": "rx", "raw": "*2*0*05##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 407.084, "direction": "rx", "raw": "*#4*2*0*0239##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 407.392, "direction": "rx", "raw": "*#4*2*12*0210*3##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 407.396, "direction": "rx", "raw": "*4*1*2##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 407.692, "direction": "rx", "raw": "*#4*2*14*0210*3##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 407.769, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run4_final_state", "session": "evt"}, + {"timestamp": 409.92, "direction": "rx", "raw": "*1*0*06##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 410.512, "direction": "rx", "raw": "*1*0*07##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 411.097, "direction": "rx", "raw": "*2*0*05##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 412.223, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 412.495, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 412.498, "direction": "rx", "raw": "*4*1*2##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 412.805, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 412.905, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run4b_final_state_after_restore", "session": "evt"}, + {"timestamp": 449.499, "direction": "rx", "raw": "*#13**12*0*3*80*0*16*35##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 449.508, "direction": "rx", "raw": "*#1013**1*134*15*5*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 449.698, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 449.744, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 449.784, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 449.856, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 451.705, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 451.746, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 451.793, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 451.866, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 453.682, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 454.302, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 454.631, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 454.633, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 454.941, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 455.045, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 455.194, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 455.249, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 494.831, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 494.867, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 494.907, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 494.927, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 500.04, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 509.464, "direction": "rx", "raw": "*1*1*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 511.783, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 586.968, "direction": "rx", "raw": "*2*0*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 625.496, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 625.536, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 625.584, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 625.655, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 627.592, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 627.641, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 627.68, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 627.754, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 629.57, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 630.212, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 630.525, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 630.528, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 630.828, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 630.921, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 633.201, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 633.257, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 637.736, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 637.783, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 637.816, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 637.887, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 639.735, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 639.783, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 639.841, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 639.872, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 641.69, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 642.418, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 642.658, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 642.666, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 642.932, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 643.074, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 645.425, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 645.472, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 884.116, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 884.168, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 884.205, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 884.285, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 886.213, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 886.26, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 886.309, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 886.381, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 888.318, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 888.938, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 889.257, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 889.261, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 889.555, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 889.638, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 891.92, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 891.963, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 892.007, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 983.792, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 983.796, "direction": "rx", "raw": "*#13**#0*01*40*00*##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1231.565, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1231.608, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1231.645, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1231.686, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1233.485, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1233.529, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1233.574, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1233.646, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1235.494, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1236.122, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1236.434, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1236.437, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1236.753, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1236.83, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1239.11, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1239.154, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1242.916, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1242.941, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1242.982, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1243.013, "direction": "rx", "raw": "*2*1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1248.702, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1252.597, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1252.613, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1252.662, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1252.686, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1256.34, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1256.365, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1258.692, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1258.725, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1258.757, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1258.797, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1264.645, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1304.918, "direction": "rx", "raw": "*#4*2*60*38##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1577.037, "direction": "rx", "raw": "*#4*2#1*#20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1577.069, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1583.651, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 1583.652, "direction": "rx", "raw": "*#13**#0*01*50*00*##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2035.519, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2035.567, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2035.617, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2035.647, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2035.704, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2037.506, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2037.553, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2037.593, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2037.674, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2039.522, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2040.158, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2040.487, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2040.489, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2040.792, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2040.883, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2043.229, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2043.271, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2046.153, "direction": "rx", "raw": "*#4*2*60*38##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2048.268, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2048.292, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2048.349, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2048.381, "direction": "rx", "raw": "*2*1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2054.144, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2055.773, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2055.807, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2055.837, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2055.854, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2061.118, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2162.384, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2162.424, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2162.464, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2162.544, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2164.393, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2164.439, "direction": "rx", "raw": "*1*0*06##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2164.487, "direction": "rx", "raw": "*1*0*07##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2164.56, "direction": "rx", "raw": "*1*0*09##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2166.393, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2167.012, "direction": "rx", "raw": "*#4*2*0*0241##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2167.316, "direction": "rx", "raw": "*#4*2*12*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2167.318, "direction": "rx", "raw": "*4*1*2##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2167.62, "direction": "rx", "raw": "*#4*2*14*0235*3##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2167.738, "direction": "rx", "raw": "*#4*2*13*00##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2170.033, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2170.08, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2172.969, "direction": "rx", "raw": "*#4*2*60*38##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2183.097, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2183.1, "direction": "rx", "raw": "*#13**#0*02*00*00*##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2204.334, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2204.376, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2204.422, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2204.447, "direction": "rx", "raw": "*2*1*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2209.616, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2214.031, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2214.057, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2214.099, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2214.128, "direction": "rx", "raw": "*2*2*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2219.595, "direction": "rx", "raw": "*2*0*05##", "run": "run6_event_session_ha_fixed_integration", "session": "evt"}, + {"timestamp": 2223.517, "direction": "rx", "raw": "*1*0*06##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2237.964, "direction": "rx", "raw": "*1*1*06##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2239.795, "direction": "rx", "raw": "*1*0*06##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2262.059, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2262.085, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2262.126, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2262.156, "direction": "rx", "raw": "*2*2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2267.7, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2288.81, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2288.844, "direction": "rx", "raw": "*2*1000#1*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2288.868, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2288.909, "direction": "rx", "raw": "*2*1*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2291.355, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2291.372, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2303.965, "direction": "rx", "raw": "*#4*2*12*0220*3##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2303.967, "direction": "rx", "raw": "*4*1*2##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2304.005, "direction": "rx", "raw": "*#4*2*0*0240##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2314.662, "direction": "rx", "raw": "*#4*2*12*0210*3##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2314.664, "direction": "rx", "raw": "*4*1*2##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2314.708, "direction": "rx", "raw": "*#4*2*0*0240##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2327.891, "direction": "rx", "raw": "*1*1*07##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2330.891, "direction": "rx", "raw": "*1*0*07##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2591.682, "direction": "rx", "raw": "*#4*2#1*20*0##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2591.745, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2591.794, "direction": "rx", "raw": "*#4*2#2*20*5##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2600.879, "direction": "rx", "raw": "*2*1000#0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2600.904, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2600.937, "direction": "rx", "raw": "*2*1000#2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2600.976, "direction": "rx", "raw": "*2*2*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2606.704, "direction": "rx", "raw": "*2*0*05##", "run": "run7_localha_bus_monitor", "session": "evt"}, + {"timestamp": 2825.742, "direction": "rx", "raw": "*1*0*07##", "run": "run7_localha_bus_monitor", "session": "evt"} ], "rows": [ { @@ -350,75 +350,79 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 1.148, + "t": 1.043, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*06##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 06 is switched off." + "session": "cmd", + "frame": "*1*0*06##" }, { "run": "run1_oracle_replay_readonly", - "t": 1.188, + "t": 1.043, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*07##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 07 is switched off." + "session": "cmd", + "frame": "*1*0*07##" }, { "run": "run1_oracle_replay_readonly", - "t": 1.228, + "t": 1.043, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", - "session": "evt", - "frame": "*2*0*05##", - "ownd_class": "OWNAutomationEvent", - "ownd_log": "Cover 05 stopped." + "session": "cmd", + "frame": "*1*0*09##" }, { "run": "run1_oracle_replay_readonly", - "t": 1.299, + "t": 1.043, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*09##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 09 is switched off." + "session": "cmd", + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 2.301, + "t": 1.148, "step": "oracle_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*06##" + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." }, { "run": "run1_oracle_replay_readonly", - "t": 2.301, + "t": 1.188, "step": "oracle_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*07##" + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." }, { "run": "run1_oracle_replay_readonly", - "t": 2.301, + "t": 1.228, "step": "oracle_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*09##" + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." }, { "run": "run1_oracle_replay_readonly", - "t": 2.301, + "t": 1.299, "step": "oracle_who1", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*09##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 09 is switched off." }, { "run": "run1_oracle_replay_readonly", @@ -453,7 +457,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 4.507, + "t": 3.501, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -480,6 +485,42 @@ "frame": "*#1*00##", "is_status_request": true }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.707, + "t_estimated": true, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*06##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.707, + "t_estimated": true, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*07##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.707, + "t_estimated": true, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*09##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 5.707, + "t_estimated": true, + "step": "oracle_who1", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, { "run": "run1_oracle_replay_readonly", "t": 5.804, @@ -530,38 +571,6 @@ "ownd_class": "OWNLightingEvent", "ownd_log": "Light 09 is switched off." }, - { - "run": "run1_oracle_replay_readonly", - "t": 6.979, - "step": "oracle_who1", - "dir": "rx", - "session": "cmd", - "frame": "*1*0*06##" - }, - { - "run": "run1_oracle_replay_readonly", - "t": 6.979, - "step": "oracle_who1", - "dir": "rx", - "session": "cmd", - "frame": "*1*0*07##" - }, - { - "run": "run1_oracle_replay_readonly", - "t": 6.979, - "step": "oracle_who1", - "dir": "rx", - "session": "cmd", - "frame": "*1*0*09##" - }, - { - "run": "run1_oracle_replay_readonly", - "t": 6.979, - "step": "oracle_who1", - "dir": "rx", - "session": "cmd", - "frame": "*#*1##" - }, { "run": "run1_oracle_replay_readonly", "t": 6.979, @@ -595,7 +604,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 8.185, + "t": 8.18, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -625,7 +635,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 9.39, + "t": 9.385, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -655,7 +666,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 10.597, + "t": 10.592, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -684,7 +696,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 13.805, + "t": 11.797, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -713,7 +726,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 17.013, + "t": 15.006, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -742,7 +756,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 20.222, + "t": 18.214, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -771,7 +786,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 23.43, + "t": 21.423, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -800,7 +816,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 26.637, + "t": 24.63, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -830,7 +847,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 28.845, + "t": 27.838, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -859,7 +877,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 32.058, + "t": 30.053, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -888,7 +907,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 35.266, + "t": 33.258, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -917,7 +937,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 38.484, + "t": 36.476, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -946,7 +967,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 41.691, + "t": 39.685, + "t_estimated": true, "step": "oracle_who1", "dir": "rx", "session": "cmd", @@ -976,7 +998,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 42.898, + "t": 42.892, + "t_estimated": true, "step": "oracle_who1001", "dir": "rx", "session": "cmd", @@ -1005,7 +1028,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 44.104, + "t": 44.097, + "t_estimated": true, "step": "oracle_who1013", "dir": "rx", "session": "cmd", @@ -1034,29 +1058,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 45.312, + "t": 45.305, + "t_estimated": true, "step": "oracle_who1013", "dir": "rx", - "session": "evt", - "frame": "*#1013**1*134*15*5*0##", - "ownd_class": "OWNGatewayDiagnosticEvent", - "ownd_log": "Gateway diagnostic object model is: F461 (134)." + "session": "cmd", + "frame": "*#1013**1*134*15*5*0##" }, { "run": "run1_oracle_replay_readonly", - "t": 45.315, + "t": 45.305, + "t_estimated": true, "step": "oracle_who1013", "dir": "rx", "session": "cmd", - "frame": "*#1013**1*134*15*5*0##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 45.315, + "t": 45.312, "step": "oracle_who1013", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#1013**1*134*15*5*0##", + "ownd_class": "OWNGatewayDiagnosticEvent", + "ownd_log": "Gateway diagnostic object model is: F461 (134)." }, { "run": "run1_oracle_replay_readonly", @@ -1086,29 +1112,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 46.52, + "t": 46.515, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", - "session": "evt", - "frame": "*#13**0*23*38*50*999##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's internal time is: 23:38:50." + "session": "cmd", + "frame": "*#13**0*23*38*50*999##" }, { "run": "run1_oracle_replay_readonly", - "t": 46.523, + "t": 46.515, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", "session": "cmd", - "frame": "*#13**0*23*38*50*999##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 46.523, + "t": 46.52, "step": "oracle_who13", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**0*23*38*50*999##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal time is: 23:38:50." }, { "run": "run1_oracle_replay_readonly", @@ -1138,29 +1166,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 47.73, + "t": 47.724, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", - "session": "evt", - "frame": "*#13**1*05*23*10*2026##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's internal date is: 2026-10-23." + "session": "cmd", + "frame": "*#13**1*05*23*10*2026##" }, { "run": "run1_oracle_replay_readonly", - "t": 47.733, + "t": 47.724, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", "session": "cmd", - "frame": "*#13**1*05*23*10*2026##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 47.733, + "t": 47.73, "step": "oracle_who13", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**1*05*23*10*2026##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal date is: 2026-10-23." }, { "run": "run1_oracle_replay_readonly", @@ -1189,29 +1219,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 48.938, + "t": 48.933, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", - "session": "evt", - "frame": "*#13**15*200##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway device type is: F454 / MyHomeServer1 / MH202 / F461 / H4890 / F450 / F459 / F460 / MH201." + "session": "cmd", + "frame": "*#13**15*200##" }, { "run": "run1_oracle_replay_readonly", - "t": 48.944, + "t": 48.933, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", "session": "cmd", - "frame": "*#13**15*200##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 48.944, + "t": 48.938, "step": "oracle_who13", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**15*200##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway device type is: F454 / MyHomeServer1 / MH202 / F461 / H4890 / F450 / F459 / F460 / MH201." }, { "run": "run1_oracle_replay_readonly", @@ -1241,17 +1273,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 50.149, - "step": "oracle_who13", - "dir": "rx", - "session": "evt", - "frame": "*#13**16*2*0*11##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's firmware version is: 2.0.11." - }, - { - "run": "run1_oracle_replay_readonly", - "t": 50.153, + "t": 50.145, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", "session": "cmd", @@ -1259,7 +1282,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 50.153, + "t": 50.145, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", "session": "cmd", @@ -1267,8 +1291,18 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 50.153, - "utc": "20:38:55", + "t": 50.149, + "step": "oracle_who13", + "dir": "rx", + "session": "evt", + "frame": "*#13**16*2*0*11##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's firmware version is: 2.0.11." + }, + { + "run": "run1_oracle_replay_readonly", + "t": 50.153, + "utc": "20:38:55", "step": "oracle_who13", "dir": "result", "frame": "*#13**16##", @@ -1293,29 +1327,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 51.359, + "t": 51.354, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", - "session": "evt", - "frame": "*#13**22*23*38*55*999*05*23*10*2026##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's internal datetime is: 2026-10-23 23:38:55." + "session": "cmd", + "frame": "*#13**22*23*38*55*999*05*23*10*2026##" }, { "run": "run1_oracle_replay_readonly", - "t": 51.381, + "t": 51.354, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", "session": "cmd", - "frame": "*#13**22*23*38*55*999*05*23*10*2026##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 51.381, + "t": 51.359, "step": "oracle_who13", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**22*23*38*55*999*05*23*10*2026##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal datetime is: 2026-10-23 23:38:55." }, { "run": "run1_oracle_replay_readonly", @@ -1344,29 +1380,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 52.588, + "t": 52.583, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", - "session": "evt", - "frame": "*#13**23*5*10*35##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's kernel version is: 5.10.35." + "session": "cmd", + "frame": "*#13**23*5*10*35##" }, { "run": "run1_oracle_replay_readonly", - "t": 52.592, + "t": 52.583, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", "session": "cmd", - "frame": "*#13**23*5*10*35##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 52.592, + "t": 52.588, "step": "oracle_who13", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**23*5*10*35##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's kernel version is: 5.10.35." }, { "run": "run1_oracle_replay_readonly", @@ -1395,29 +1433,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 53.797, + "t": 53.793, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", - "session": "evt", - "frame": "*#13**24*2*26*4##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's distribution version is: 2.26.4." + "session": "cmd", + "frame": "*#13**24*2*26*4##" }, { "run": "run1_oracle_replay_readonly", - "t": 53.825, + "t": 53.793, + "t_estimated": true, "step": "oracle_who13", "dir": "rx", "session": "cmd", - "frame": "*#13**24*2*26*4##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 53.825, + "t": 53.797, "step": "oracle_who13", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**24*2*26*4##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's distribution version is: 2.26.4." }, { "run": "run1_oracle_replay_readonly", @@ -1446,7 +1486,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 55.029, + "t": 55.025, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1475,7 +1516,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 56.235, + "t": 56.23, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1505,7 +1547,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 57.44, + "t": 57.436, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1534,7 +1577,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 58.645, + "t": 58.64, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1563,7 +1607,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 59.851, + "t": 59.845, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1592,7 +1637,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 61.062, + "t": 61.052, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1621,7 +1667,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 62.266, + "t": 62.263, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1650,7 +1697,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 63.47, + "t": 63.466, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1679,7 +1727,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 64.674, + "t": 64.671, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1708,7 +1757,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 65.877, + "t": 65.874, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1737,7 +1787,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 67.081, + "t": 67.078, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1766,7 +1817,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 68.286, + "t": 68.283, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1795,7 +1847,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 69.491, + "t": 69.487, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1824,7 +1877,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 70.695, + "t": 70.692, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1853,7 +1907,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 71.899, + "t": 71.896, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1882,7 +1937,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 73.103, + "t": 73.099, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1911,7 +1967,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 74.308, + "t": 74.304, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1940,7 +1997,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 75.512, + "t": 75.509, + "t_estimated": true, "step": "oracle_who16", "dir": "rx", "session": "cmd", @@ -1969,7 +2027,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 76.717, + "t": 76.713, + "t_estimated": true, "step": "oracle_who17", "dir": "rx", "session": "cmd", @@ -1998,7 +2057,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 77.921, + "t": 77.917, + "t_estimated": true, "step": "oracle_who17", "dir": "rx", "session": "cmd", @@ -2027,7 +2087,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 79.126, + "t": 79.121, + "t_estimated": true, "step": "oracle_who17", "dir": "rx", "session": "cmd", @@ -2056,7 +2117,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 80.33, + "t": 80.327, + "t_estimated": true, "step": "oracle_who17", "dir": "rx", "session": "cmd", @@ -2085,7 +2147,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 81.949, + "t": 81.549, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2114,7 +2177,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 83.934, + "t": 83.149, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2143,7 +2207,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 85.939, + "t": 85.135, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2172,7 +2237,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 87.944, + "t": 87.139, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2201,7 +2267,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 89.947, + "t": 89.145, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2230,7 +2297,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 91.953, + "t": 91.149, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2259,7 +2327,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 93.957, + "t": 93.17, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2288,7 +2357,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 95.164, + "t": 95.158, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2318,7 +2388,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 96.963, + "t": 96.365, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2347,7 +2418,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 101.972, + "t": 98.164, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2376,7 +2448,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 106.979, + "t": 103.172, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2405,7 +2478,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 112.482, + "t": 108.18, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2432,6 +2506,15 @@ "frame": "*#18*51*513#10##", "is_status_request": true }, + { + "run": "run1_oracle_replay_readonly", + "t": 113.683, + "t_estimated": true, + "step": "oracle_who18", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, { "run": "run1_oracle_replay_readonly", "t": 116.485, @@ -2452,14 +2535,6 @@ "ownd_class": "OWNGatewayCommand", "ownd_log": "Gateway broadcasting internal time: 23:40:00." }, - { - "run": "run1_oracle_replay_readonly", - "t": 117.49, - "step": "oracle_who18", - "dir": "rx", - "session": "cmd", - "frame": "*#*1##" - }, { "run": "run1_oracle_replay_readonly", "t": 117.49, @@ -2486,7 +2561,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 122.498, + "t": 118.69, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2515,7 +2591,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 127.501, + "t": 123.699, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2544,7 +2621,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 132.508, + "t": 128.701, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2573,7 +2651,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 137.518, + "t": 133.71, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2602,7 +2681,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 138.726, + "t": 138.719, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2631,7 +2711,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 144.531, + "t": 139.927, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2660,7 +2741,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 149.538, + "t": 145.732, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2689,7 +2771,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 151.544, + "t": 150.741, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2718,7 +2801,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 153.547, + "t": 152.746, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2747,7 +2831,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 155.552, + "t": 154.747, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2776,7 +2861,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 158.557, + "t": 156.754, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2805,7 +2891,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 163.565, + "t": 159.758, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2834,7 +2921,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 169.575, + "t": 164.766, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2863,7 +2951,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 173.582, + "t": 170.777, + "t_estimated": true, "step": "oracle_who18", "dir": "rx", "session": "cmd", @@ -2890,6 +2979,24 @@ "frame": "*#2*0##", "is_status_request": true }, + { + "run": "run1_oracle_replay_readonly", + "t": 174.783, + "t_estimated": true, + "step": "oracle_who2", + "dir": "rx", + "session": "cmd", + "frame": "*2*0*05##" + }, + { + "run": "run1_oracle_replay_readonly", + "t": 174.783, + "t_estimated": true, + "step": "oracle_who2", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, { "run": "run1_oracle_replay_readonly", "t": 174.88, @@ -2930,22 +3037,6 @@ "ownd_class": "OWNLightingEvent", "ownd_log": "Light 09 is switched off." }, - { - "run": "run1_oracle_replay_readonly", - "t": 176.051, - "step": "oracle_who2", - "dir": "rx", - "session": "cmd", - "frame": "*2*0*05##" - }, - { - "run": "run1_oracle_replay_readonly", - "t": 176.051, - "step": "oracle_who2", - "dir": "rx", - "session": "cmd", - "frame": "*#*1##" - }, { "run": "run1_oracle_replay_readonly", "t": 176.051, @@ -2976,7 +3067,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 178.33, + "t": 177.252, + "t_estimated": true, "step": "oracle_who2", "dir": "rx", "session": "cmd", @@ -3005,7 +3097,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 180.634, + "t": 179.53, + "t_estimated": true, "step": "oracle_who2", "dir": "rx", "session": "cmd", @@ -3034,7 +3127,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 182.913, + "t": 181.835, + "t_estimated": true, "step": "oracle_who2", "dir": "rx", "session": "cmd", @@ -3063,7 +3157,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 184.393, + "t": 184.114, + "t_estimated": true, "step": "oracle_who2", "dir": "rx", "session": "cmd", @@ -3092,7 +3187,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 186.682, + "t": 185.594, + "t_estimated": true, "step": "oracle_who2", "dir": "rx", "session": "cmd", @@ -3121,7 +3217,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 190.594, + "t": 187.884, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3150,7 +3247,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 194.602, + "t": 191.795, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3179,7 +3277,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 198.613, + "t": 195.803, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3208,7 +3307,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 202.631, + "t": 199.825, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3237,7 +3337,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 206.627, + "t": 203.832, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3266,7 +3367,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 210.635, + "t": 207.829, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3295,7 +3397,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 214.647, + "t": 211.84, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3324,7 +3427,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 218.651, + "t": 215.848, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3353,7 +3457,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 222.661, + "t": 219.852, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3382,7 +3487,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 226.669, + "t": 223.862, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3411,7 +3517,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 230.677, + "t": 227.87, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3440,7 +3547,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 234.686, + "t": 231.879, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3469,7 +3577,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 238.693, + "t": 235.886, + "t_estimated": true, "step": "oracle_who22", "dir": "rx", "session": "cmd", @@ -3498,7 +3607,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 240.843, + "t": 239.893, + "t_estimated": true, "step": "oracle_who25", "dir": "rx", "session": "cmd", @@ -3527,7 +3637,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 242.049, + "t": 242.045, + "t_estimated": true, "step": "oracle_who3", "dir": "rx", "session": "cmd", @@ -3543,11 +3654,7 @@ "ack": false, "reply_time_s": 0.004, "replies": [], - "events_after": [ - "*1*1*07##", - "*1*0*07##", - "*1*1*06##" - ] + "events_after": [] }, { "run": "run1_oracle_replay_readonly", @@ -3590,7 +3697,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 243.253, + "t": 243.25, + "t_estimated": true, "step": "oracle_who3", "dir": "rx", "session": "cmd", @@ -3606,9 +3714,7 @@ "ack": false, "reply_time_s": 0.003, "replies": [], - "events_after": [ - "*1*0*06##" - ] + "events_after": [] }, { "run": "run1_oracle_replay_readonly", @@ -3631,7 +3737,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 244.458, + "t": 244.454, + "t_estimated": true, "step": "oracle_who3", "dir": "rx", "session": "cmd", @@ -3660,7 +3767,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 245.666, + "t": 245.66, + "t_estimated": true, "step": "oracle_who3", "dir": "rx", "session": "cmd", @@ -3689,7 +3797,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 246.87, + "t": 246.866, + "t_estimated": true, "step": "oracle_who3", "dir": "rx", "session": "cmd", @@ -3718,7 +3827,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 248.077, + "t": 248.073, + "t_estimated": true, "step": "oracle_who3", "dir": "rx", "session": "cmd", @@ -3747,7 +3857,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 249.287, + "t": 249.279, + "t_estimated": true, "step": "oracle_who3", "dir": "rx", "session": "cmd", @@ -3776,7 +3887,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 250.491, + "t": 250.487, + "t_estimated": true, "step": "oracle_who3", "dir": "rx", "session": "cmd", @@ -3805,7 +3917,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 253.91, + "t": 251.692, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -3835,7 +3948,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 257.177, + "t": 255.111, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -3865,47 +3979,50 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 258.456, + "t": 258.377, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*2#1*20*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's actuator 1 is off." + "session": "cmd", + "frame": "*#4*2#1*20*0##" }, { "run": "run1_oracle_replay_readonly", - "t": 258.512, + "t": 258.377, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*2#2*20*5##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's fan is off." + "session": "cmd", + "frame": "*#4*2#2*20*5##" }, { "run": "run1_oracle_replay_readonly", - "t": 260.514, + "t": 258.377, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", - "frame": "*#4*2#1*20*0##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 260.514, + "t": 258.456, "step": "oracle_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*2#2*20*5##" + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." }, { "run": "run1_oracle_replay_readonly", - "t": 260.514, + "t": 258.512, "step": "oracle_who4", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's fan is off." }, { "run": "run1_oracle_replay_readonly", @@ -3922,8 +4039,7 @@ ], "events_after": [ "*#4*2#1*20*0##", - "*#4*2#2*20*5##", - "*#4*2*60*39##" + "*#4*2#2*20*5##" ], "note": "all_zone_actuators_answer_for_zone_2" }, @@ -3948,7 +4064,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 261.722, + "t": 261.715, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -3978,7 +4095,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 266.2, + "t": 262.922, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4007,7 +4125,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 269.472, + "t": 267.401, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4036,7 +4155,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 272.745, + "t": 270.674, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4065,7 +4185,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 276.019, + "t": 273.946, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4094,7 +4215,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 279.288, + "t": 277.219, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4123,7 +4245,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 282.559, + "t": 280.489, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4152,7 +4275,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 285.823, + "t": 283.76, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4181,7 +4305,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 289.112, + "t": 287.024, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4210,7 +4335,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 292.39, + "t": 290.313, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4239,7 +4365,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 295.664, + "t": 293.591, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4268,7 +4395,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 298.935, + "t": 296.865, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4297,7 +4425,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 302.232, + "t": 300.137, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4326,7 +4455,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 303.439, + "t": 303.433, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4355,7 +4485,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 306.737, + "t": 304.641, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4384,7 +4515,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 310.015, + "t": 307.938, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4413,7 +4545,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 313.303, + "t": 311.216, + "t_estimated": true, "step": "oracle_who4", "dir": "rx", "session": "cmd", @@ -4440,6 +4573,15 @@ "frame": "*#4*41*19##", "is_status_request": true }, + { + "run": "run1_oracle_replay_readonly", + "t": 314.507, + "t_estimated": true, + "step": "oracle_who4", + "dir": "rx", + "session": "cmd", + "frame": "*#*0##" + }, { "run": "run1_oracle_replay_readonly", "t": 316.173, @@ -4520,14 +4662,6 @@ "ownd_class": "OWNLightingEvent", "ownd_log": "Light 09 is switched off." }, - { - "run": "run1_oracle_replay_readonly", - "t": 320.332, - "step": "oracle_who4", - "dir": "rx", - "session": "cmd", - "frame": "*#*0##" - }, { "run": "run1_oracle_replay_readonly", "t": 320.332, @@ -4560,7 +4694,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 321.545, + "t": 321.532, + "t_estimated": true, "step": "oracle_who5", "dir": "rx", "session": "cmd", @@ -4589,7 +4724,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 322.75, + "t": 322.747, + "t_estimated": true, "step": "oracle_who5", "dir": "rx", "session": "cmd", @@ -4619,7 +4755,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 323.956, + "t": 323.952, + "t_estimated": true, "step": "oracle_who8", "dir": "rx", "session": "cmd", @@ -4635,9 +4772,7 @@ "ack": false, "reply_time_s": 0.004, "replies": [], - "events_after": [ - "*2*0*05##" - ] + "events_after": [] }, { "run": "run1_oracle_replay_readonly", @@ -4660,7 +4795,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 325.161, + "t": 325.157, + "t_estimated": true, "step": "oracle_who8", "dir": "rx", "session": "cmd", @@ -4676,13 +4812,7 @@ "ack": false, "reply_time_s": 0.004, "replies": [], - "events_after": [ - "*#4*2*0*0239##", - "*#4*2*12*0235*3##", - "*4*1*2##", - "*#4*2*14*0210*3##", - "*#4*2*13*00##" - ] + "events_after": [] }, { "run": "run1_oracle_replay_readonly", @@ -4745,7 +4875,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 326.366, + "t": 326.362, + "t_estimated": true, "step": "oracle_who8", "dir": "rx", "session": "cmd", @@ -4774,7 +4905,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 327.573, + "t": 327.567, + "t_estimated": true, "step": "oracle_who8", "dir": "rx", "session": "cmd", @@ -4790,9 +4922,7 @@ "ack": false, "reply_time_s": 0.006, "replies": [], - "events_after": [ - "*#4*2*60*39##" - ] + "events_after": [] }, { "run": "run1_oracle_replay_readonly", @@ -4815,7 +4945,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 328.778, + "t": 328.774, + "t_estimated": true, "step": "oracle_who8", "dir": "rx", "session": "cmd", @@ -4844,7 +4975,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 329.983, + "t": 329.979, + "t_estimated": true, "step": "oracle_who8", "dir": "rx", "session": "cmd", @@ -4873,7 +5005,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 331.191, + "t": 331.184, + "t_estimated": true, "step": "oracle_who9", "dir": "rx", "session": "cmd", @@ -4902,7 +5035,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 332.399, + "t": 332.391, + "t_estimated": true, "step": "oracle_who9", "dir": "rx", "session": "cmd", @@ -4931,29 +5065,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 333.676, + "t": 333.6, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*1*0*06##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 06 is switched off." + "session": "cmd", + "frame": "*1*0*06##" }, { "run": "run1_oracle_replay_readonly", - "t": 333.679, + "t": 333.6, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*1*0*06##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 333.679, + "t": 333.676, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." }, { "run": "run1_oracle_replay_readonly", @@ -4983,29 +5119,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 334.961, + "t": 334.88, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*1*0*07##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 07 is switched off." + "session": "cmd", + "frame": "*1*0*07##" }, { "run": "run1_oracle_replay_readonly", - "t": 334.965, + "t": 334.88, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*1*0*07##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 334.965, + "t": 334.961, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." }, { "run": "run1_oracle_replay_readonly", @@ -5035,7 +5173,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 338.174, + "t": 336.167, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -5065,7 +5204,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 340.382, + "t": 339.375, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -5094,29 +5234,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 341.7, + "t": 341.583, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*1*0*06##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 06 is switched off." + "session": "cmd", + "frame": "*1*0*06##" }, { "run": "run1_oracle_replay_readonly", - "t": 341.702, + "t": 341.583, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*1*0*06##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 341.702, + "t": 341.7, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." }, { "run": "run1_oracle_replay_readonly", @@ -5145,29 +5287,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 343.028, + "t": 342.902, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*1*0*06##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 06 is switched off." + "session": "cmd", + "frame": "*1*0*06##" }, { "run": "run1_oracle_replay_readonly", - "t": 343.03, + "t": 342.902, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*1*0*06##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 343.03, + "t": 343.028, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." }, { "run": "run1_oracle_replay_readonly", @@ -5196,7 +5340,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 344.236, + "t": 344.231, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -5226,21 +5371,22 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 345.524, + "t": 345.437, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#1*#1*15##", - "ownd_class": "OWNLightingCommand", - "ownd_log": "*#1*#1*15##" + "session": "cmd", + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 345.526, + "t": 345.524, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#1*#1*15##", + "ownd_class": "OWNLightingCommand", + "ownd_log": "*#1*#1*15##" }, { "run": "run1_oracle_replay_readonly", @@ -5268,29 +5414,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 346.805, + "t": 346.727, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*2*0*05##", - "ownd_class": "OWNAutomationEvent", - "ownd_log": "Cover 05 stopped." + "session": "cmd", + "frame": "*2*0*05##" }, { "run": "run1_oracle_replay_readonly", - "t": 346.809, + "t": 346.727, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*2*0*05##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 346.809, + "t": 346.805, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." }, { "run": "run1_oracle_replay_readonly", @@ -5320,7 +5468,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 349.102, + "t": 348.01, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -5350,7 +5499,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 350.312, + "t": 350.306, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -5380,101 +5530,107 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 352.097, + "t": 351.513, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*0*0239##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + "session": "cmd", + "frame": "*#4*2*0*0239##" }, { "run": "run1_oracle_replay_readonly", - "t": 352.403, + "t": 351.513, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*12*0235*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + "session": "cmd", + "frame": "*#4*2*12*0235*3##" }, { "run": "run1_oracle_replay_readonly", - "t": 352.405, + "t": 351.513, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*4*1*2##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's season is heating." + "session": "cmd", + "frame": "*4*1*2##" }, { "run": "run1_oracle_replay_readonly", - "t": 352.722, + "t": 351.513, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*14*0210*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's target temperature is set to 21.0°C." + "session": "cmd", + "frame": "*#4*2*14*0210*3##" }, { "run": "run1_oracle_replay_readonly", - "t": 352.815, + "t": 351.513, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*13*00##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local offset is set to 0°C." + "session": "cmd", + "frame": "*#4*2*13*00##" }, { "run": "run1_oracle_replay_readonly", - "t": 352.818, + "t": 351.513, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#4*2*0*0239##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 352.818, + "t": 352.097, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*12*0235*3##" + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." }, { "run": "run1_oracle_replay_readonly", - "t": 352.818, + "t": 352.403, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*4*1*2##" + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." }, { "run": "run1_oracle_replay_readonly", - "t": 352.818, + "t": 352.405, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*14*0210*3##" + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." }, { "run": "run1_oracle_replay_readonly", - "t": 352.818, + "t": 352.722, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*13*00##" + "session": "evt", + "frame": "*#4*2*14*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 21.0°C." }, { "run": "run1_oracle_replay_readonly", - "t": 352.818, + "t": 352.815, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." }, { "run": "run1_oracle_replay_readonly", @@ -5512,29 +5668,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 354.135, + "t": 354.019, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*0*0239##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + "session": "cmd", + "frame": "*#4*2*0*0239##" }, { "run": "run1_oracle_replay_readonly", - "t": 354.138, + "t": 354.019, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#4*2*0*0239##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 354.138, + "t": 354.135, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." }, { "run": "run1_oracle_replay_readonly", @@ -5563,47 +5721,50 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 355.447, + "t": 355.339, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*12*0235*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + "session": "cmd", + "frame": "*#4*2*12*0235*3##" }, { "run": "run1_oracle_replay_readonly", - "t": 355.45, + "t": 355.339, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*4*1*2##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's season is heating." + "session": "cmd", + "frame": "*4*1*2##" }, { "run": "run1_oracle_replay_readonly", - "t": 355.45, + "t": 355.339, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#4*2*12*0235*3##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 355.45, + "t": 355.447, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*4*1*2##" + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." }, { "run": "run1_oracle_replay_readonly", "t": 355.45, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." }, { "run": "run1_oracle_replay_readonly", @@ -5635,29 +5796,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 356.769, + "t": 356.651, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*13*00##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local offset is set to 0°C." + "session": "cmd", + "frame": "*#4*2*13*00##" }, { "run": "run1_oracle_replay_readonly", - "t": 356.771, + "t": 356.651, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#4*2*13*00##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 356.771, + "t": 356.769, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." }, { "run": "run1_oracle_replay_readonly", @@ -5686,29 +5849,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 358.062, + "t": 357.973, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*14*0210*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's target temperature is set to 21.0°C." + "session": "cmd", + "frame": "*#4*2*14*0210*3##" }, { "run": "run1_oracle_replay_readonly", - "t": 358.066, + "t": 357.973, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#4*2*14*0210*3##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 358.066, + "t": 358.062, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*14*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 21.0°C." }, { "run": "run1_oracle_replay_readonly", @@ -5738,29 +5903,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 359.375, + "t": 359.268, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*19*5*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's cooling fan is off; heating valve is off." + "session": "cmd", + "frame": "*#4*2*19*5*0##" }, { "run": "run1_oracle_replay_readonly", - "t": 359.378, + "t": 359.268, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#4*2*19*5*0##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 359.378, + "t": 359.375, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*19*5*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's cooling fan is off; heating valve is off." }, { "run": "run1_oracle_replay_readonly", @@ -5790,29 +5957,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 360.686, + "t": 360.579, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2#1*20*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's actuator 1 is off." + "session": "cmd", + "frame": "*#4*2#1*20*0##" }, { "run": "run1_oracle_replay_readonly", - "t": 360.69, + "t": 360.579, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#4*2#1*20*0##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 360.69, + "t": 360.686, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's actuator 1 is off." }, { "run": "run1_oracle_replay_readonly", @@ -5827,8 +5996,7 @@ "*#4*2#1*20*0##" ], "events_after": [ - "*#4*2#1*20*0##", - "*#4*2#2*20*5##" + "*#4*2#1*20*0##" ], "note": "zone_2_actuators_two_frames" }, @@ -5853,7 +6021,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 363.977, + "t": 361.894, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -5883,7 +6052,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 367.262, + "t": 365.179, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -5913,7 +6083,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 370.533, + "t": 368.462, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -5943,7 +6114,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 371.74, + "t": 371.735, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -5973,29 +6145,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 372.948, + "t": 372.941, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#13**10*192*0*2*92##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's IP address is: 192.0.2.92." - }, + "session": "cmd", + "frame": "*#13**10*192*0*2*92##" + }, { "run": "run1_oracle_replay_readonly", - "t": 372.952, + "t": 372.941, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#13**10*192*0*2*92##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 372.952, + "t": 372.948, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**10*192*0*2*92##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's IP address is: 192.0.2.92." }, { "run": "run1_oracle_replay_readonly", @@ -6025,29 +6199,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 374.159, + "t": 374.153, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#13**11*255*255*255*0##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's netmask is: 255.255.255.0." + "session": "cmd", + "frame": "*#13**11*255*255*255*0##" }, { "run": "run1_oracle_replay_readonly", - "t": 374.163, + "t": 374.153, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#13**11*255*255*255*0##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 374.163, + "t": 374.159, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**11*255*255*255*0##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's netmask is: 255.255.255.0." }, { "run": "run1_oracle_replay_readonly", @@ -6076,29 +6252,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 375.369, + "t": 375.363, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#13**12*0*3*80*0*16*35##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's MAC address is: 00:03:50:00:10:23." + "session": "cmd", + "frame": "*#13**12*0*3*80*0*16*35##" }, { "run": "run1_oracle_replay_readonly", - "t": 375.373, + "t": 375.363, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#13**12*0*3*80*0*16*35##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 375.373, + "t": 375.369, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**12*0*3*80*0*16*35##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's MAC address is: 00:03:50:00:10:23." }, { "run": "run1_oracle_replay_readonly", @@ -6128,7 +6306,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 376.579, + "t": 376.574, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -6157,7 +6336,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 377.786, + "t": 377.78, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -6186,29 +6366,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 378.994, + "t": 378.987, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#13**27*70#52#54#49##", - "ownd_class": "str", - "ownd_log": "" + "session": "cmd", + "frame": "*#13**27*70#52#54#49##" }, { "run": "run1_oracle_replay_readonly", - "t": 378.998, + "t": 378.987, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#13**27*70#52#54#49##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 378.998, + "t": 378.994, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**27*70#52#54#49##", + "ownd_class": "str", + "ownd_log": "" }, { "run": "run1_oracle_replay_readonly", @@ -6238,29 +6420,31 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 380.204, + "t": 380.199, + "t_estimated": true, "step": "plant_reads", "dir": "rx", - "session": "evt", - "frame": "*#13**19*0*0*38*54##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's uptime is: 0:38:54." + "session": "cmd", + "frame": "*#13**19*0*0*38*54##" }, { "run": "run1_oracle_replay_readonly", - "t": 380.208, + "t": 380.199, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", - "frame": "*#13**19*0*0*38*54##" + "frame": "*#*1##" }, { "run": "run1_oracle_replay_readonly", - "t": 380.208, + "t": 380.204, "step": "plant_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**19*0*0*38*54##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's uptime is: 0:38:54." }, { "run": "run1_oracle_replay_readonly", @@ -6289,7 +6473,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 381.415, + "t": 381.409, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -6318,7 +6503,8 @@ }, { "run": "run1_oracle_replay_readonly", - "t": 382.623, + "t": 382.617, + "t_estimated": true, "step": "plant_reads", "dir": "rx", "session": "cmd", @@ -6338,7 +6524,7 @@ }, { "run": "run2_reviewer_reads", - "t": 1.04, + "t": 384.663, "step": "reviewer_reads", "dir": "tx", "session": "cmd", @@ -6347,7 +6533,8 @@ }, { "run": "run2_reviewer_reads", - "t": 1.047, + "t": 384.663, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", "session": "cmd", @@ -6355,7 +6542,7 @@ }, { "run": "run2_reviewer_reads", - "t": 1.047, + "t": 384.67, "utc": "21:02:20", "step": "reviewer_reads", "dir": "result", @@ -6368,7 +6555,7 @@ }, { "run": "run2_reviewer_reads", - "t": 2.248, + "t": 385.871, "step": "reviewer_reads", "dir": "tx", "session": "cmd", @@ -6377,33 +6564,35 @@ }, { "run": "run2_reviewer_reads", - "t": 2.333, + "t": 385.871, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", - "session": "evt", - "frame": "*1*0*07##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 07 is switched off." + "session": "cmd", + "frame": "*1*0*07##" }, { "run": "run2_reviewer_reads", - "t": 2.336, + "t": 385.871, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", "session": "cmd", - "frame": "*1*0*07##" + "frame": "*#*1##" }, { "run": "run2_reviewer_reads", - "t": 2.336, + "t": 385.956, "step": "reviewer_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." }, { "run": "run2_reviewer_reads", - "t": 2.336, + "t": 385.959, "utc": "21:02:21", "step": "reviewer_reads", "dir": "result", @@ -6420,7 +6609,7 @@ }, { "run": "run2_reviewer_reads", - "t": 3.538, + "t": 387.161, "step": "reviewer_reads", "dir": "tx", "session": "cmd", @@ -6429,7 +6618,8 @@ }, { "run": "run2_reviewer_reads", - "t": 4.544, + "t": 387.161, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", "session": "cmd", @@ -6437,7 +6627,7 @@ }, { "run": "run2_reviewer_reads", - "t": 4.544, + "t": 388.167, "utc": "21:02:23", "step": "reviewer_reads", "dir": "result", @@ -6450,7 +6640,7 @@ }, { "run": "run2_reviewer_reads", - "t": 5.745, + "t": 389.368, "step": "reviewer_reads", "dir": "tx", "session": "cmd", @@ -6459,33 +6649,35 @@ }, { "run": "run2_reviewer_reads", - "t": 5.869, + "t": 389.368, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*60*39##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's main sensor is reporting a humidity of 39.0%." + "session": "cmd", + "frame": "*#4*2*60*39##" }, { "run": "run2_reviewer_reads", - "t": 7.873, + "t": 389.368, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", "session": "cmd", - "frame": "*#4*2*60*39##" + "frame": "*#*1##" }, { "run": "run2_reviewer_reads", - "t": 7.873, + "t": 389.492, "step": "reviewer_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*60*39##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a humidity of 39.0%." }, { "run": "run2_reviewer_reads", - "t": 7.873, + "t": 391.496, "utc": "21:02:26", "step": "reviewer_reads", "dir": "result", @@ -6502,7 +6694,7 @@ }, { "run": "run2_reviewer_reads", - "t": 9.074, + "t": 392.697, "step": "reviewer_reads", "dir": "tx", "session": "cmd", @@ -6511,33 +6703,35 @@ }, { "run": "run2_reviewer_reads", - "t": 9.214, + "t": 392.697, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", - "session": "evt", - "frame": "*#4*2*60*39##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's main sensor is reporting a humidity of 39.0%." + "session": "cmd", + "frame": "*#4*2*60*39##" }, { "run": "run2_reviewer_reads", - "t": 9.217, + "t": 392.697, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", "session": "cmd", - "frame": "*#4*2*60*39##" + "frame": "*#*1##" }, { "run": "run2_reviewer_reads", - "t": 9.217, + "t": 392.837, "step": "reviewer_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*60*39##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a humidity of 39.0%." }, { "run": "run2_reviewer_reads", - "t": 9.217, + "t": 392.84, "utc": "21:02:28", "step": "reviewer_reads", "dir": "result", @@ -6554,7 +6748,7 @@ }, { "run": "run2_reviewer_reads", - "t": 10.418, + "t": 394.041, "step": "reviewer_reads", "dir": "tx", "session": "cmd", @@ -6563,7 +6757,8 @@ }, { "run": "run2_reviewer_reads", - "t": 12.426, + "t": 394.041, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", "session": "cmd", @@ -6571,7 +6766,7 @@ }, { "run": "run2_reviewer_reads", - "t": 12.426, + "t": 396.049, "utc": "21:02:31", "step": "reviewer_reads", "dir": "result", @@ -6584,7 +6779,7 @@ }, { "run": "run2_reviewer_reads", - "t": 13.627, + "t": 397.25, "step": "reviewer_reads", "dir": "tx", "session": "cmd", @@ -6593,33 +6788,35 @@ }, { "run": "run2_reviewer_reads", - "t": 13.632, + "t": 397.25, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", - "session": "evt", - "frame": "*#13**0*00*02*31*999##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's internal time is: 00:02:31." + "session": "cmd", + "frame": "*#13**0*00*02*31*999##" }, { "run": "run2_reviewer_reads", - "t": 13.635, + "t": 397.25, + "t_estimated": true, "step": "reviewer_reads", "dir": "rx", "session": "cmd", - "frame": "*#13**0*00*02*31*999##" + "frame": "*#*1##" }, { "run": "run2_reviewer_reads", - "t": 13.635, + "t": 397.255, "step": "reviewer_reads", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**0*00*02*31*999##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal time is: 00:02:31." }, { "run": "run2_reviewer_reads", - "t": 13.635, + "t": 397.258, "utc": "21:02:32", "step": "reviewer_reads", "dir": "result", @@ -6636,7 +6833,7 @@ }, { "run": "run3_climate_setpoint_restore", - "t": 1.043, + "t": 399.301, "step": "setpoint_restore", "dir": "tx", "session": "cmd", @@ -6645,7 +6842,8 @@ }, { "run": "run3_climate_setpoint_restore", - "t": 1.121, + "t": 399.301, + "t_estimated": true, "step": "setpoint_restore", "dir": "rx", "session": "cmd", @@ -6653,7 +6851,7 @@ }, { "run": "run3_climate_setpoint_restore", - "t": 1.121, + "t": 399.379, "utc": "21:13:35", "step": "setpoint_restore", "dir": "result", @@ -6661,16 +6859,12 @@ "ack": true, "reply_time_s": 0.078, "replies": [], - "events_after": [ - "*#4*2*12*0235*3##", - "*4*1*2##", - "*#4*2*0*0239##" - ], + "events_after": [], "note": "setpoint_write_mode_3_keeps_season" }, { "run": "run3_climate_setpoint_restore", - "t": 1.232, + "t": 399.49, "step": "setpoint_restore", "dir": "rx", "session": "evt", @@ -6680,7 +6874,7 @@ }, { "run": "run3_climate_setpoint_restore", - "t": 1.235, + "t": 399.493, "step": "setpoint_restore", "dir": "rx", "session": "evt", @@ -6690,7 +6884,7 @@ }, { "run": "run3_climate_setpoint_restore", - "t": 1.267, + "t": 399.525, "step": "setpoint_restore", "dir": "rx", "session": "evt", @@ -6700,7 +6894,7 @@ }, { "run": "run3_climate_setpoint_restore", - "t": 3.121, + "t": 401.379, "step": "setpoint_restore", "dir": "tx", "session": "cmd", @@ -6709,105 +6903,111 @@ }, { "run": "run3_climate_setpoint_restore", - "t": 3.704, + "t": 401.379, + "t_estimated": true, "step": "setpoint_restore", "dir": "rx", - "session": "evt", - "frame": "*#4*2*0*0239##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + "session": "cmd", + "frame": "*#4*2*0*0239##" }, { "run": "run3_climate_setpoint_restore", - "t": 4.007, + "t": 401.379, + "t_estimated": true, "step": "setpoint_restore", "dir": "rx", - "session": "evt", - "frame": "*#4*2*12*0235*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + "session": "cmd", + "frame": "*#4*2*12*0235*3##" }, { "run": "run3_climate_setpoint_restore", - "t": 4.009, + "t": 401.379, + "t_estimated": true, "step": "setpoint_restore", "dir": "rx", - "session": "evt", - "frame": "*4*1*2##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's season is heating." + "session": "cmd", + "frame": "*4*1*2##" }, { "run": "run3_climate_setpoint_restore", - "t": 4.312, + "t": 401.379, + "t_estimated": true, "step": "setpoint_restore", "dir": "rx", - "session": "evt", - "frame": "*#4*2*14*0235*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's target temperature is set to 23.5°C." + "session": "cmd", + "frame": "*#4*2*14*0235*3##" }, { "run": "run3_climate_setpoint_restore", - "t": 4.396, + "t": 401.379, + "t_estimated": true, "step": "setpoint_restore", "dir": "rx", - "session": "evt", - "frame": "*#4*2*13*00##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local offset is set to 0°C." + "session": "cmd", + "frame": "*#4*2*13*00##" }, { "run": "run3_climate_setpoint_restore", - "t": 4.399, + "t": 401.379, + "t_estimated": true, "step": "setpoint_restore", "dir": "rx", "session": "cmd", - "frame": "*#4*2*0*0239##" + "frame": "*#*1##" }, { "run": "run3_climate_setpoint_restore", - "t": 4.399, + "t": 401.962, "step": "setpoint_restore", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*12*0235*3##" + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." }, { "run": "run3_climate_setpoint_restore", - "t": 4.399, + "t": 402.265, "step": "setpoint_restore", "dir": "rx", - "session": "cmd", - "frame": "*4*1*2##" + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." }, { "run": "run3_climate_setpoint_restore", - "t": 4.399, + "t": 402.267, "step": "setpoint_restore", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*14*0235*3##" + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." }, { "run": "run3_climate_setpoint_restore", - "t": 4.399, + "t": 402.57, "step": "setpoint_restore", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*13*00##" + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." }, { "run": "run3_climate_setpoint_restore", - "t": 4.399, + "t": 402.654, "step": "setpoint_restore", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." }, { "run": "run3_climate_setpoint_restore", - "t": 4.399, + "t": 402.657, "utc": "21:13:39", "step": "setpoint_restore", "dir": "result", @@ -6832,7 +7032,7 @@ }, { "run": "run4_final_state", - "t": 1.042, + "t": 404.699, "step": "final_state", "dir": "tx", "session": "cmd", @@ -6841,33 +7041,35 @@ }, { "run": "run4_final_state", - "t": 1.143, + "t": 404.699, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*1*0*06##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 06 is switched off." + "session": "cmd", + "frame": "*1*0*06##" }, { "run": "run4_final_state", - "t": 1.145, + "t": 404.699, + "t_estimated": true, "step": "final_state", "dir": "rx", "session": "cmd", - "frame": "*1*0*06##" + "frame": "*#*1##" }, { "run": "run4_final_state", - "t": 1.145, + "t": 404.8, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." }, { "run": "run4_final_state", - "t": 1.145, + "t": 404.802, "utc": "21:13:18", "step": "final_state", "dir": "result", @@ -6883,7 +7085,7 @@ }, { "run": "run4_final_state", - "t": 1.646, + "t": 405.303, "step": "final_state", "dir": "tx", "session": "cmd", @@ -6892,33 +7094,35 @@ }, { "run": "run4_final_state", - "t": 1.735, + "t": 405.303, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*1*0*07##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 07 is switched off." + "session": "cmd", + "frame": "*1*0*07##" }, { "run": "run4_final_state", - "t": 1.737, + "t": 405.303, + "t_estimated": true, "step": "final_state", "dir": "rx", "session": "cmd", - "frame": "*1*0*07##" + "frame": "*#*1##" }, { "run": "run4_final_state", - "t": 1.737, + "t": 405.392, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." }, { "run": "run4_final_state", - "t": 1.737, + "t": 405.394, "utc": "21:13:18", "step": "final_state", "dir": "result", @@ -6934,7 +7138,7 @@ }, { "run": "run4_final_state", - "t": 2.238, + "t": 405.895, "step": "final_state", "dir": "tx", "session": "cmd", @@ -6943,33 +7147,35 @@ }, { "run": "run4_final_state", - "t": 2.344, + "t": 405.895, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*2*0*05##", - "ownd_class": "OWNAutomationEvent", - "ownd_log": "Cover 05 stopped." + "session": "cmd", + "frame": "*2*0*05##" }, { "run": "run4_final_state", - "t": 2.346, + "t": 405.895, + "t_estimated": true, "step": "final_state", "dir": "rx", "session": "cmd", - "frame": "*2*0*05##" + "frame": "*#*1##" }, { "run": "run4_final_state", - "t": 2.346, + "t": 406.001, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." }, { "run": "run4_final_state", - "t": 2.346, + "t": 406.003, "utc": "21:13:19", "step": "final_state", "dir": "result", @@ -6985,7 +7191,7 @@ }, { "run": "run4_final_state", - "t": 2.847, + "t": 406.504, "step": "final_state", "dir": "tx", "session": "cmd", @@ -6994,105 +7200,111 @@ }, { "run": "run4_final_state", - "t": 3.427, + "t": 406.504, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*#4*2*0*0239##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." + "session": "cmd", + "frame": "*#4*2*0*0239##" }, { "run": "run4_final_state", - "t": 3.735, + "t": 406.504, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*#4*2*12*0210*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local target temperature is set to 21.0°C." + "session": "cmd", + "frame": "*#4*2*12*0210*3##" }, { "run": "run4_final_state", - "t": 3.739, + "t": 406.504, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*4*1*2##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's season is heating." + "session": "cmd", + "frame": "*4*1*2##" }, { "run": "run4_final_state", - "t": 4.035, + "t": 406.504, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*#4*2*14*0210*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's target temperature is set to 21.0°C." + "session": "cmd", + "frame": "*#4*2*14*0210*3##" }, { "run": "run4_final_state", - "t": 4.112, + "t": 406.504, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*#4*2*13*00##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local offset is set to 0°C." + "session": "cmd", + "frame": "*#4*2*13*00##" }, { "run": "run4_final_state", - "t": 4.114, + "t": 406.504, + "t_estimated": true, "step": "final_state", "dir": "rx", "session": "cmd", - "frame": "*#4*2*0*0239##" + "frame": "*#*1##" }, { "run": "run4_final_state", - "t": 4.114, + "t": 407.084, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*12*0210*3##" + "session": "evt", + "frame": "*#4*2*0*0239##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 23.9°C." }, { "run": "run4_final_state", - "t": 4.114, + "t": 407.392, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*4*1*2##" + "session": "evt", + "frame": "*#4*2*12*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 21.0°C." }, { "run": "run4_final_state", - "t": 4.114, + "t": 407.396, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*14*0210*3##" + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." }, { "run": "run4_final_state", - "t": 4.114, + "t": 407.692, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*13*00##" + "session": "evt", + "frame": "*#4*2*14*0210*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 21.0°C." }, { "run": "run4_final_state", - "t": 4.114, + "t": 407.769, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." }, { "run": "run4_final_state", - "t": 4.114, + "t": 407.771, "utc": "21:13:21", "step": "final_state", "dir": "result", @@ -7117,7 +7329,7 @@ }, { "run": "run4b_final_state_after_restore", - "t": 1.053, + "t": 409.824, "step": "final_state", "dir": "tx", "session": "cmd", @@ -7126,33 +7338,35 @@ }, { "run": "run4b_final_state_after_restore", - "t": 1.149, + "t": 409.824, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*1*0*06##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 06 is switched off." + "session": "cmd", + "frame": "*1*0*06##" }, { "run": "run4b_final_state_after_restore", - "t": 1.153, + "t": 409.824, + "t_estimated": true, "step": "final_state", "dir": "rx", "session": "cmd", - "frame": "*1*0*06##" + "frame": "*#*1##" }, { "run": "run4b_final_state_after_restore", - "t": 1.153, + "t": 409.92, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*06##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 06 is switched off." }, { "run": "run4b_final_state_after_restore", - "t": 1.153, + "t": 409.924, "utc": "23:03:04", "step": "final_state", "dir": "result", @@ -7168,7 +7382,7 @@ }, { "run": "run4b_final_state_after_restore", - "t": 1.654, + "t": 410.425, "step": "final_state", "dir": "tx", "session": "cmd", @@ -7177,33 +7391,35 @@ }, { "run": "run4b_final_state_after_restore", - "t": 1.741, + "t": 410.425, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*1*0*07##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 07 is switched off." + "session": "cmd", + "frame": "*1*0*07##" }, { "run": "run4b_final_state_after_restore", - "t": 1.745, + "t": 410.425, + "t_estimated": true, "step": "final_state", "dir": "rx", "session": "cmd", - "frame": "*1*0*07##" + "frame": "*#*1##" }, { "run": "run4b_final_state_after_restore", - "t": 1.745, + "t": 410.512, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*07##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 07 is switched off." }, { "run": "run4b_final_state_after_restore", - "t": 1.745, + "t": 410.516, "utc": "23:03:04", "step": "final_state", "dir": "result", @@ -7219,7 +7435,7 @@ }, { "run": "run4b_final_state_after_restore", - "t": 2.246, + "t": 411.017, "step": "final_state", "dir": "tx", "session": "cmd", @@ -7228,33 +7444,35 @@ }, { "run": "run4b_final_state_after_restore", - "t": 2.326, + "t": 411.017, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*2*0*05##", - "ownd_class": "OWNAutomationEvent", - "ownd_log": "Cover 05 stopped." + "session": "cmd", + "frame": "*2*0*05##" }, { "run": "run4b_final_state_after_restore", - "t": 2.328, + "t": 411.017, + "t_estimated": true, "step": "final_state", "dir": "rx", "session": "cmd", - "frame": "*2*0*05##" + "frame": "*#*1##" }, { "run": "run4b_final_state_after_restore", - "t": 2.328, + "t": 411.097, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*2*0*05##", + "ownd_class": "OWNAutomationEvent", + "ownd_log": "Cover 05 stopped." }, { "run": "run4b_final_state_after_restore", - "t": 2.328, + "t": 411.099, "utc": "23:03:05", "step": "final_state", "dir": "result", @@ -7270,7 +7488,7 @@ }, { "run": "run4b_final_state_after_restore", - "t": 2.831, + "t": 411.602, "step": "final_state", "dir": "tx", "session": "cmd", @@ -7279,105 +7497,111 @@ }, { "run": "run4b_final_state_after_restore", - "t": 3.452, + "t": 411.602, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*#4*2*0*0241##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." + "session": "cmd", + "frame": "*#4*2*0*0241##" }, { "run": "run4b_final_state_after_restore", - "t": 3.724, + "t": 411.602, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*#4*2*12*0235*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local target temperature is set to 23.5°C." + "session": "cmd", + "frame": "*#4*2*12*0235*3##" }, { "run": "run4b_final_state_after_restore", - "t": 3.727, + "t": 411.602, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*4*1*2##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's season is heating." + "session": "cmd", + "frame": "*4*1*2##" }, { "run": "run4b_final_state_after_restore", - "t": 4.034, + "t": 411.602, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*#4*2*14*0235*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's target temperature is set to 23.5°C." + "session": "cmd", + "frame": "*#4*2*14*0235*3##" }, { "run": "run4b_final_state_after_restore", - "t": 4.134, + "t": 411.602, + "t_estimated": true, "step": "final_state", "dir": "rx", - "session": "evt", - "frame": "*#4*2*13*00##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 2's local offset is set to 0°C." + "session": "cmd", + "frame": "*#4*2*13*00##" }, { "run": "run4b_final_state_after_restore", - "t": 4.14, + "t": 411.602, + "t_estimated": true, "step": "final_state", "dir": "rx", "session": "cmd", - "frame": "*#4*2*0*0241##" + "frame": "*#*1##" }, { "run": "run4b_final_state_after_restore", - "t": 4.14, + "t": 412.223, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*12*0235*3##" + "session": "evt", + "frame": "*#4*2*0*0241##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's main sensor is reporting a temperature of 24.1°C." }, { "run": "run4b_final_state_after_restore", - "t": 4.14, + "t": 412.495, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*4*1*2##" + "session": "evt", + "frame": "*#4*2*12*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local target temperature is set to 23.5°C." }, { "run": "run4b_final_state_after_restore", - "t": 4.14, + "t": 412.498, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*14*0235*3##" + "session": "evt", + "frame": "*4*1*2##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's season is heating." }, { "run": "run4b_final_state_after_restore", - "t": 4.14, + "t": 412.805, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#4*2*13*00##" + "session": "evt", + "frame": "*#4*2*14*0235*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's target temperature is set to 23.5°C." }, { "run": "run4b_final_state_after_restore", - "t": 4.14, + "t": 412.905, "step": "final_state", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*2*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 2's local offset is set to 0°C." }, { "run": "run4b_final_state_after_restore", - "t": 4.14, + "t": 412.911, "utc": "23:03:07", "step": "final_state", "dir": "result", @@ -7402,7 +7626,7 @@ }, { "run": "run5_injection_flags", - "t": 1.087, + "t": 414.998, "step": "injection_flags", "dir": "tx", "session": "cmd", @@ -7411,7 +7635,8 @@ }, { "run": "run5_injection_flags", - "t": 2.496, + "t": 414.998, + "t_estimated": true, "step": "injection_flags", "dir": "rx", "session": "cmd", @@ -7419,7 +7644,7 @@ }, { "run": "run5_injection_flags", - "t": 2.496, + "t": 416.407, "utc": "21:10:36", "step": "injection_flags", "dir": "result", @@ -7432,7 +7657,7 @@ }, { "run": "run5_injection_flags", - "t": 4.498, + "t": 418.409, "step": "injection_flags", "dir": "tx", "session": "cmd", @@ -7441,7 +7666,8 @@ }, { "run": "run5_injection_flags", - "t": 8.623, + "t": 418.409, + "t_estimated": true, "step": "injection_flags", "dir": "rx", "session": "cmd", @@ -7449,7 +7675,7 @@ }, { "run": "run5_injection_flags", - "t": 8.623, + "t": 422.534, "utc": "21:10:42", "step": "injection_flags", "dir": "result", @@ -7462,7 +7688,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 25.965, + "t": 449.499, "step": "listen", "dir": "rx", "session": "evt", @@ -7472,7 +7698,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 25.974, + "t": 449.508, "step": "listen", "dir": "rx", "session": "evt", @@ -7482,7 +7708,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 26.164, + "t": 449.698, "step": "listen", "dir": "rx", "session": "evt", @@ -7492,7 +7718,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 26.21, + "t": 449.744, "step": "listen", "dir": "rx", "session": "evt", @@ -7502,7 +7728,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 26.25, + "t": 449.784, "step": "listen", "dir": "rx", "session": "evt", @@ -7512,7 +7738,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 26.322, + "t": 449.856, "step": "listen", "dir": "rx", "session": "evt", @@ -7522,7 +7748,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 28.171, + "t": 451.705, "step": "listen", "dir": "rx", "session": "evt", @@ -7532,7 +7758,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 28.212, + "t": 451.746, "step": "listen", "dir": "rx", "session": "evt", @@ -7542,7 +7768,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 28.259, + "t": 451.793, "step": "listen", "dir": "rx", "session": "evt", @@ -7552,7 +7778,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 28.332, + "t": 451.866, "step": "listen", "dir": "rx", "session": "evt", @@ -7562,7 +7788,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 30.148, + "t": 453.682, "step": "listen", "dir": "rx", "session": "evt", @@ -7572,7 +7798,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 30.768, + "t": 454.302, "step": "listen", "dir": "rx", "session": "evt", @@ -7582,7 +7808,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 31.097, + "t": 454.631, "step": "listen", "dir": "rx", "session": "evt", @@ -7592,7 +7818,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 31.099, + "t": 454.633, "step": "listen", "dir": "rx", "session": "evt", @@ -7602,7 +7828,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 31.407, + "t": 454.941, "step": "listen", "dir": "rx", "session": "evt", @@ -7612,7 +7838,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 31.511, + "t": 455.045, "step": "listen", "dir": "rx", "session": "evt", @@ -7622,7 +7848,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 31.66, + "t": 455.194, "step": "listen", "dir": "rx", "session": "evt", @@ -7632,7 +7858,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 31.715, + "t": 455.249, "step": "listen", "dir": "rx", "session": "evt", @@ -7642,7 +7868,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 71.297, + "t": 494.831, "step": "listen", "dir": "rx", "session": "evt", @@ -7652,7 +7878,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 71.333, + "t": 494.867, "step": "listen", "dir": "rx", "session": "evt", @@ -7662,7 +7888,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 71.373, + "t": 494.907, "step": "listen", "dir": "rx", "session": "evt", @@ -7672,7 +7898,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 71.393, + "t": 494.927, "step": "listen", "dir": "rx", "session": "evt", @@ -7682,7 +7908,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 76.506, + "t": 500.04, "step": "listen", "dir": "rx", "session": "evt", @@ -7692,7 +7918,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 85.93, + "t": 509.464, "step": "listen", "dir": "rx", "session": "evt", @@ -7702,7 +7928,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 88.249, + "t": 511.783, "step": "listen", "dir": "rx", "session": "evt", @@ -7712,7 +7938,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 163.434, + "t": 586.968, "step": "listen", "dir": "rx", "session": "evt", @@ -7722,7 +7948,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 201.962, + "t": 625.496, "step": "listen", "dir": "rx", "session": "evt", @@ -7732,7 +7958,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 202.002, + "t": 625.536, "step": "listen", "dir": "rx", "session": "evt", @@ -7742,7 +7968,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 202.05, + "t": 625.584, "step": "listen", "dir": "rx", "session": "evt", @@ -7752,7 +7978,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 202.121, + "t": 625.655, "step": "listen", "dir": "rx", "session": "evt", @@ -7762,7 +7988,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 204.058, + "t": 627.592, "step": "listen", "dir": "rx", "session": "evt", @@ -7772,7 +7998,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 204.107, + "t": 627.641, "step": "listen", "dir": "rx", "session": "evt", @@ -7782,7 +8008,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 204.146, + "t": 627.68, "step": "listen", "dir": "rx", "session": "evt", @@ -7792,7 +8018,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 204.22, + "t": 627.754, "step": "listen", "dir": "rx", "session": "evt", @@ -7802,7 +8028,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 206.036, + "t": 629.57, "step": "listen", "dir": "rx", "session": "evt", @@ -7812,7 +8038,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 206.678, + "t": 630.212, "step": "listen", "dir": "rx", "session": "evt", @@ -7822,7 +8048,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 206.991, + "t": 630.525, "step": "listen", "dir": "rx", "session": "evt", @@ -7832,7 +8058,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 206.994, + "t": 630.528, "step": "listen", "dir": "rx", "session": "evt", @@ -7842,7 +8068,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 207.294, + "t": 630.828, "step": "listen", "dir": "rx", "session": "evt", @@ -7852,7 +8078,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 207.387, + "t": 630.921, "step": "listen", "dir": "rx", "session": "evt", @@ -7862,7 +8088,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 209.667, + "t": 633.201, "step": "listen", "dir": "rx", "session": "evt", @@ -7872,7 +8098,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 209.723, + "t": 633.257, "step": "listen", "dir": "rx", "session": "evt", @@ -7882,7 +8108,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 214.202, + "t": 637.736, "step": "listen", "dir": "rx", "session": "evt", @@ -7892,7 +8118,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 214.249, + "t": 637.783, "step": "listen", "dir": "rx", "session": "evt", @@ -7902,7 +8128,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 214.282, + "t": 637.816, "step": "listen", "dir": "rx", "session": "evt", @@ -7912,7 +8138,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 214.353, + "t": 637.887, "step": "listen", "dir": "rx", "session": "evt", @@ -7922,7 +8148,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 216.201, + "t": 639.735, "step": "listen", "dir": "rx", "session": "evt", @@ -7932,7 +8158,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 216.249, + "t": 639.783, "step": "listen", "dir": "rx", "session": "evt", @@ -7942,7 +8168,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 216.307, + "t": 639.841, "step": "listen", "dir": "rx", "session": "evt", @@ -7952,7 +8178,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 216.338, + "t": 639.872, "step": "listen", "dir": "rx", "session": "evt", @@ -7962,7 +8188,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 218.156, + "t": 641.69, "step": "listen", "dir": "rx", "session": "evt", @@ -7972,7 +8198,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 218.884, + "t": 642.418, "step": "listen", "dir": "rx", "session": "evt", @@ -7982,7 +8208,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 219.124, + "t": 642.658, "step": "listen", "dir": "rx", "session": "evt", @@ -7992,7 +8218,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 219.132, + "t": 642.666, "step": "listen", "dir": "rx", "session": "evt", @@ -8002,7 +8228,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 219.398, + "t": 642.932, "step": "listen", "dir": "rx", "session": "evt", @@ -8012,7 +8238,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 219.54, + "t": 643.074, "step": "listen", "dir": "rx", "session": "evt", @@ -8022,7 +8248,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 221.891, + "t": 645.425, "step": "listen", "dir": "rx", "session": "evt", @@ -8032,7 +8258,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 221.938, + "t": 645.472, "step": "listen", "dir": "rx", "session": "evt", @@ -8042,7 +8268,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 460.582, + "t": 884.116, "step": "listen", "dir": "rx", "session": "evt", @@ -8052,7 +8278,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 460.634, + "t": 884.168, "step": "listen", "dir": "rx", "session": "evt", @@ -8062,7 +8288,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 460.671, + "t": 884.205, "step": "listen", "dir": "rx", "session": "evt", @@ -8072,7 +8298,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 460.751, + "t": 884.285, "step": "listen", "dir": "rx", "session": "evt", @@ -8082,7 +8308,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 462.679, + "t": 886.213, "step": "listen", "dir": "rx", "session": "evt", @@ -8092,7 +8318,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 462.726, + "t": 886.26, "step": "listen", "dir": "rx", "session": "evt", @@ -8102,7 +8328,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 462.775, + "t": 886.309, "step": "listen", "dir": "rx", "session": "evt", @@ -8112,7 +8338,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 462.847, + "t": 886.381, "step": "listen", "dir": "rx", "session": "evt", @@ -8122,7 +8348,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 464.784, + "t": 888.318, "step": "listen", "dir": "rx", "session": "evt", @@ -8132,7 +8358,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 465.404, + "t": 888.938, "step": "listen", "dir": "rx", "session": "evt", @@ -8142,7 +8368,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 465.723, + "t": 889.257, "step": "listen", "dir": "rx", "session": "evt", @@ -8152,7 +8378,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 465.727, + "t": 889.261, "step": "listen", "dir": "rx", "session": "evt", @@ -8162,7 +8388,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 466.021, + "t": 889.555, "step": "listen", "dir": "rx", "session": "evt", @@ -8172,7 +8398,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 466.104, + "t": 889.638, "step": "listen", "dir": "rx", "session": "evt", @@ -8182,7 +8408,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 468.386, + "t": 891.92, "step": "listen", "dir": "rx", "session": "evt", @@ -8192,7 +8418,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 468.429, + "t": 891.963, "step": "listen", "dir": "rx", "session": "evt", @@ -8202,7 +8428,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 468.473, + "t": 892.007, "step": "listen", "dir": "rx", "session": "evt", @@ -8212,7 +8438,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 560.258, + "t": 983.792, "step": "listen", "dir": "rx", "session": "evt", @@ -8222,7 +8448,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 560.262, + "t": 983.796, "step": "listen", "dir": "rx", "session": "evt", @@ -8232,7 +8458,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 808.031, + "t": 1231.565, "step": "listen", "dir": "rx", "session": "evt", @@ -8242,7 +8468,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 808.074, + "t": 1231.608, "step": "listen", "dir": "rx", "session": "evt", @@ -8252,7 +8478,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 808.111, + "t": 1231.645, "step": "listen", "dir": "rx", "session": "evt", @@ -8262,7 +8488,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 808.152, + "t": 1231.686, "step": "listen", "dir": "rx", "session": "evt", @@ -8272,7 +8498,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 809.951, + "t": 1233.485, "step": "listen", "dir": "rx", "session": "evt", @@ -8282,7 +8508,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 809.995, + "t": 1233.529, "step": "listen", "dir": "rx", "session": "evt", @@ -8292,7 +8518,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 810.04, + "t": 1233.574, "step": "listen", "dir": "rx", "session": "evt", @@ -8302,7 +8528,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 810.112, + "t": 1233.646, "step": "listen", "dir": "rx", "session": "evt", @@ -8312,7 +8538,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 811.96, + "t": 1235.494, "step": "listen", "dir": "rx", "session": "evt", @@ -8322,7 +8548,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 812.588, + "t": 1236.122, "step": "listen", "dir": "rx", "session": "evt", @@ -8332,7 +8558,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 812.9, + "t": 1236.434, "step": "listen", "dir": "rx", "session": "evt", @@ -8342,7 +8568,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 812.903, + "t": 1236.437, "step": "listen", "dir": "rx", "session": "evt", @@ -8352,7 +8578,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 813.219, + "t": 1236.753, "step": "listen", "dir": "rx", "session": "evt", @@ -8362,7 +8588,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 813.296, + "t": 1236.83, "step": "listen", "dir": "rx", "session": "evt", @@ -8372,7 +8598,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 815.576, + "t": 1239.11, "step": "listen", "dir": "rx", "session": "evt", @@ -8382,7 +8608,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 815.62, + "t": 1239.154, "step": "listen", "dir": "rx", "session": "evt", @@ -8392,7 +8618,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 819.382, + "t": 1242.916, "step": "listen", "dir": "rx", "session": "evt", @@ -8402,7 +8628,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 819.407, + "t": 1242.941, "step": "listen", "dir": "rx", "session": "evt", @@ -8412,7 +8638,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 819.448, + "t": 1242.982, "step": "listen", "dir": "rx", "session": "evt", @@ -8422,7 +8648,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 819.479, + "t": 1243.013, "step": "listen", "dir": "rx", "session": "evt", @@ -8432,7 +8658,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 825.168, + "t": 1248.702, "step": "listen", "dir": "rx", "session": "evt", @@ -8442,7 +8668,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 829.063, + "t": 1252.597, "step": "listen", "dir": "rx", "session": "evt", @@ -8452,7 +8678,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 829.079, + "t": 1252.613, "step": "listen", "dir": "rx", "session": "evt", @@ -8462,7 +8688,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 829.128, + "t": 1252.662, "step": "listen", "dir": "rx", "session": "evt", @@ -8472,7 +8698,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 829.152, + "t": 1252.686, "step": "listen", "dir": "rx", "session": "evt", @@ -8482,7 +8708,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 832.806, + "t": 1256.34, "step": "listen", "dir": "rx", "session": "evt", @@ -8492,7 +8718,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 832.831, + "t": 1256.365, "step": "listen", "dir": "rx", "session": "evt", @@ -8502,7 +8728,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 835.158, + "t": 1258.692, "step": "listen", "dir": "rx", "session": "evt", @@ -8512,7 +8738,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 835.191, + "t": 1258.725, "step": "listen", "dir": "rx", "session": "evt", @@ -8522,7 +8748,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 835.223, + "t": 1258.757, "step": "listen", "dir": "rx", "session": "evt", @@ -8532,7 +8758,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 835.263, + "t": 1258.797, "step": "listen", "dir": "rx", "session": "evt", @@ -8542,7 +8768,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 841.111, + "t": 1264.645, "step": "listen", "dir": "rx", "session": "evt", @@ -8552,7 +8778,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 881.384, + "t": 1304.918, "step": "listen", "dir": "rx", "session": "evt", @@ -8562,7 +8788,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1153.503, + "t": 1577.037, "step": "listen", "dir": "rx", "session": "evt", @@ -8572,7 +8798,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1153.535, + "t": 1577.069, "step": "listen", "dir": "rx", "session": "evt", @@ -8582,7 +8808,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1160.117, + "t": 1583.651, "step": "listen", "dir": "rx", "session": "evt", @@ -8592,7 +8818,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1160.118, + "t": 1583.652, "step": "listen", "dir": "rx", "session": "evt", @@ -8602,7 +8828,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1611.985, + "t": 2035.519, "step": "listen", "dir": "rx", "session": "evt", @@ -8612,7 +8838,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1612.033, + "t": 2035.567, "step": "listen", "dir": "rx", "session": "evt", @@ -8622,7 +8848,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1612.083, + "t": 2035.617, "step": "listen", "dir": "rx", "session": "evt", @@ -8632,7 +8858,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1612.113, + "t": 2035.647, "step": "listen", "dir": "rx", "session": "evt", @@ -8642,7 +8868,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1612.17, + "t": 2035.704, "step": "listen", "dir": "rx", "session": "evt", @@ -8652,7 +8878,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1613.972, + "t": 2037.506, "step": "listen", "dir": "rx", "session": "evt", @@ -8662,7 +8888,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1614.019, + "t": 2037.553, "step": "listen", "dir": "rx", "session": "evt", @@ -8672,7 +8898,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1614.059, + "t": 2037.593, "step": "listen", "dir": "rx", "session": "evt", @@ -8682,7 +8908,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1614.14, + "t": 2037.674, "step": "listen", "dir": "rx", "session": "evt", @@ -8692,7 +8918,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1615.988, + "t": 2039.522, "step": "listen", "dir": "rx", "session": "evt", @@ -8702,7 +8928,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1616.624, + "t": 2040.158, "step": "listen", "dir": "rx", "session": "evt", @@ -8712,7 +8938,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1616.953, + "t": 2040.487, "step": "listen", "dir": "rx", "session": "evt", @@ -8722,7 +8948,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1616.955, + "t": 2040.489, "step": "listen", "dir": "rx", "session": "evt", @@ -8732,7 +8958,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1617.258, + "t": 2040.792, "step": "listen", "dir": "rx", "session": "evt", @@ -8742,7 +8968,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1617.349, + "t": 2040.883, "step": "listen", "dir": "rx", "session": "evt", @@ -8752,7 +8978,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1619.695, + "t": 2043.229, "step": "listen", "dir": "rx", "session": "evt", @@ -8762,7 +8988,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1619.737, + "t": 2043.271, "step": "listen", "dir": "rx", "session": "evt", @@ -8772,7 +8998,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1622.619, + "t": 2046.153, "step": "listen", "dir": "rx", "session": "evt", @@ -8782,7 +9008,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1624.734, + "t": 2048.268, "step": "listen", "dir": "rx", "session": "evt", @@ -8792,7 +9018,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1624.758, + "t": 2048.292, "step": "listen", "dir": "rx", "session": "evt", @@ -8802,7 +9028,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1624.815, + "t": 2048.349, "step": "listen", "dir": "rx", "session": "evt", @@ -8812,7 +9038,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1624.847, + "t": 2048.381, "step": "listen", "dir": "rx", "session": "evt", @@ -8822,7 +9048,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1630.61, + "t": 2054.144, "step": "listen", "dir": "rx", "session": "evt", @@ -8832,7 +9058,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1632.239, + "t": 2055.773, "step": "listen", "dir": "rx", "session": "evt", @@ -8842,7 +9068,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1632.273, + "t": 2055.807, "step": "listen", "dir": "rx", "session": "evt", @@ -8852,7 +9078,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1632.303, + "t": 2055.837, "step": "listen", "dir": "rx", "session": "evt", @@ -8862,7 +9088,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1632.32, + "t": 2055.854, "step": "listen", "dir": "rx", "session": "evt", @@ -8872,7 +9098,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1637.584, + "t": 2061.118, "step": "listen", "dir": "rx", "session": "evt", @@ -8882,7 +9108,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1738.85, + "t": 2162.384, "step": "listen", "dir": "rx", "session": "evt", @@ -8892,7 +9118,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1738.89, + "t": 2162.424, "step": "listen", "dir": "rx", "session": "evt", @@ -8902,7 +9128,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1738.93, + "t": 2162.464, "step": "listen", "dir": "rx", "session": "evt", @@ -8912,7 +9138,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1739.01, + "t": 2162.544, "step": "listen", "dir": "rx", "session": "evt", @@ -8922,7 +9148,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1740.859, + "t": 2164.393, "step": "listen", "dir": "rx", "session": "evt", @@ -8932,7 +9158,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1740.905, + "t": 2164.439, "step": "listen", "dir": "rx", "session": "evt", @@ -8942,7 +9168,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1740.953, + "t": 2164.487, "step": "listen", "dir": "rx", "session": "evt", @@ -8952,7 +9178,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1741.026, + "t": 2164.56, "step": "listen", "dir": "rx", "session": "evt", @@ -8962,7 +9188,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1742.859, + "t": 2166.393, "step": "listen", "dir": "rx", "session": "evt", @@ -8972,7 +9198,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1743.478, + "t": 2167.012, "step": "listen", "dir": "rx", "session": "evt", @@ -8982,7 +9208,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1743.782, + "t": 2167.316, "step": "listen", "dir": "rx", "session": "evt", @@ -8992,7 +9218,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1743.784, + "t": 2167.318, "step": "listen", "dir": "rx", "session": "evt", @@ -9002,7 +9228,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1744.086, + "t": 2167.62, "step": "listen", "dir": "rx", "session": "evt", @@ -9012,7 +9238,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1744.204, + "t": 2167.738, "step": "listen", "dir": "rx", "session": "evt", @@ -9022,7 +9248,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1746.499, + "t": 2170.033, "step": "listen", "dir": "rx", "session": "evt", @@ -9032,7 +9258,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1746.546, + "t": 2170.08, "step": "listen", "dir": "rx", "session": "evt", @@ -9042,7 +9268,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1749.435, + "t": 2172.969, "step": "listen", "dir": "rx", "session": "evt", @@ -9052,7 +9278,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1759.563, + "t": 2183.097, "step": "listen", "dir": "rx", "session": "evt", @@ -9062,7 +9288,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1759.566, + "t": 2183.1, "step": "listen", "dir": "rx", "session": "evt", @@ -9072,7 +9298,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1780.8, + "t": 2204.334, "step": "listen", "dir": "rx", "session": "evt", @@ -9082,7 +9308,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1780.842, + "t": 2204.376, "step": "listen", "dir": "rx", "session": "evt", @@ -9092,7 +9318,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1780.888, + "t": 2204.422, "step": "listen", "dir": "rx", "session": "evt", @@ -9102,7 +9328,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1780.913, + "t": 2204.447, "step": "listen", "dir": "rx", "session": "evt", @@ -9112,7 +9338,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1786.082, + "t": 2209.616, "step": "listen", "dir": "rx", "session": "evt", @@ -9122,7 +9348,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1790.497, + "t": 2214.031, "step": "listen", "dir": "rx", "session": "evt", @@ -9132,7 +9358,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1790.523, + "t": 2214.057, "step": "listen", "dir": "rx", "session": "evt", @@ -9142,7 +9368,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1790.565, + "t": 2214.099, "step": "listen", "dir": "rx", "session": "evt", @@ -9152,7 +9378,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1790.594, + "t": 2214.128, "step": "listen", "dir": "rx", "session": "evt", @@ -9162,7 +9388,7 @@ }, { "run": "run6_event_session_ha_fixed_integration", - "t": 1796.061, + "t": 2219.595, "step": "listen", "dir": "rx", "session": "evt", @@ -9172,7 +9398,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 2.922, + "t": 2223.517, "step": "listen", "dir": "rx", "session": "evt", @@ -9182,7 +9408,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 17.369, + "t": 2237.964, "step": "listen", "dir": "rx", "session": "evt", @@ -9192,7 +9418,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 19.2, + "t": 2239.795, "step": "listen", "dir": "rx", "session": "evt", @@ -9202,7 +9428,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 41.464, + "t": 2262.059, "step": "listen", "dir": "rx", "session": "evt", @@ -9212,7 +9438,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 41.49, + "t": 2262.085, "step": "listen", "dir": "rx", "session": "evt", @@ -9222,7 +9448,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 41.531, + "t": 2262.126, "step": "listen", "dir": "rx", "session": "evt", @@ -9232,7 +9458,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 41.561, + "t": 2262.156, "step": "listen", "dir": "rx", "session": "evt", @@ -9242,7 +9468,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 47.105, + "t": 2267.7, "step": "listen", "dir": "rx", "session": "evt", @@ -9252,7 +9478,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 68.215, + "t": 2288.81, "step": "listen", "dir": "rx", "session": "evt", @@ -9262,7 +9488,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 68.249, + "t": 2288.844, "step": "listen", "dir": "rx", "session": "evt", @@ -9272,7 +9498,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 68.273, + "t": 2288.868, "step": "listen", "dir": "rx", "session": "evt", @@ -9282,7 +9508,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 68.314, + "t": 2288.909, "step": "listen", "dir": "rx", "session": "evt", @@ -9292,7 +9518,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 70.76, + "t": 2291.355, "step": "listen", "dir": "rx", "session": "evt", @@ -9302,7 +9528,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 70.777, + "t": 2291.372, "step": "listen", "dir": "rx", "session": "evt", @@ -9312,7 +9538,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 83.37, + "t": 2303.965, "step": "listen", "dir": "rx", "session": "evt", @@ -9322,7 +9548,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 83.372, + "t": 2303.967, "step": "listen", "dir": "rx", "session": "evt", @@ -9332,7 +9558,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 83.41, + "t": 2304.005, "step": "listen", "dir": "rx", "session": "evt", @@ -9342,7 +9568,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 94.067, + "t": 2314.662, "step": "listen", "dir": "rx", "session": "evt", @@ -9352,7 +9578,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 94.069, + "t": 2314.664, "step": "listen", "dir": "rx", "session": "evt", @@ -9362,7 +9588,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 94.113, + "t": 2314.708, "step": "listen", "dir": "rx", "session": "evt", @@ -9372,7 +9598,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 107.296, + "t": 2327.891, "step": "listen", "dir": "rx", "session": "evt", @@ -9382,7 +9608,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 110.296, + "t": 2330.891, "step": "listen", "dir": "rx", "session": "evt", @@ -9392,7 +9618,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 371.087, + "t": 2591.682, "step": "listen", "dir": "rx", "session": "evt", @@ -9402,7 +9628,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 371.15, + "t": 2591.745, "step": "listen", "dir": "rx", "session": "evt", @@ -9412,7 +9638,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 371.199, + "t": 2591.794, "step": "listen", "dir": "rx", "session": "evt", @@ -9422,7 +9648,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 380.284, + "t": 2600.879, "step": "listen", "dir": "rx", "session": "evt", @@ -9432,7 +9658,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 380.309, + "t": 2600.904, "step": "listen", "dir": "rx", "session": "evt", @@ -9442,7 +9668,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 380.342, + "t": 2600.937, "step": "listen", "dir": "rx", "session": "evt", @@ -9452,7 +9678,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 380.381, + "t": 2600.976, "step": "listen", "dir": "rx", "session": "evt", @@ -9462,7 +9688,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 386.109, + "t": 2606.704, "step": "listen", "dir": "rx", "session": "evt", @@ -9472,7 +9698,7 @@ }, { "run": "run7_localha_bus_monitor", - "t": 605.147, + "t": 2825.742, "step": "listen", "dir": "rx", "session": "evt", @@ -9482,7 +9708,7 @@ }, { "run": "run8_flicker_repro", - "t": 1.046, + "t": 2827.788, "step": "flicker_repro", "dir": "tx", "session": "cmd", @@ -9491,7 +9717,8 @@ }, { "run": "run8_flicker_repro", - "t": 1.052, + "t": 2827.788, + "t_estimated": true, "step": "flicker_repro", "dir": "rx", "session": "cmd", @@ -9499,7 +9726,7 @@ }, { "run": "run8_flicker_repro", - "t": 1.052, + "t": 2827.794, "utc": "20:49:37", "step": "flicker_repro", "dir": "result", @@ -9512,7 +9739,7 @@ }, { "run": "run8_flicker_repro", - "t": 7.052, + "t": 2833.794, "step": "flicker_repro", "dir": "tx", "session": "cmd", @@ -9521,7 +9748,8 @@ }, { "run": "run8_flicker_repro", - "t": 7.056, + "t": 2833.794, + "t_estimated": true, "step": "flicker_repro", "dir": "rx", "session": "cmd", @@ -9529,7 +9757,7 @@ }, { "run": "run8_flicker_repro", - "t": 7.056, + "t": 2833.798, "utc": "20:49:43", "step": "flicker_repro", "dir": "result", @@ -9542,7 +9770,7 @@ }, { "run": "run8_flicker_repro", - "t": 13.057, + "t": 2839.799, "step": "flicker_repro", "dir": "tx", "session": "cmd", @@ -9551,7 +9779,8 @@ }, { "run": "run8_flicker_repro", - "t": 13.063, + "t": 2839.799, + "t_estimated": true, "step": "flicker_repro", "dir": "rx", "session": "cmd", @@ -9559,7 +9788,7 @@ }, { "run": "run8_flicker_repro", - "t": 13.063, + "t": 2839.805, "utc": "20:49:49", "step": "flicker_repro", "dir": "result", @@ -9572,7 +9801,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 1.04, + "t": 2841.845, "step": "flicker_repro", "dir": "tx", "session": "cmd", @@ -9581,7 +9810,8 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 2.89, + "t": 2841.845, + "t_estimated": true, "step": "flicker_repro", "dir": "rx", "session": "cmd", @@ -9589,7 +9819,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 2.89, + "t": 2843.695, "utc": "20:50:05", "step": "flicker_repro", "dir": "result", @@ -9602,7 +9832,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 4.091, + "t": 2844.896, "step": "flicker_repro", "dir": "tx", "session": "cmd", @@ -9611,7 +9841,8 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 5.9, + "t": 2844.896, + "t_estimated": true, "step": "flicker_repro", "dir": "rx", "session": "cmd", @@ -9619,7 +9850,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 5.9, + "t": 2846.705, "utc": "20:50:08", "step": "flicker_repro", "dir": "result", @@ -9631,7 +9862,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 7.101, + "t": 2847.906, "step": "flicker_repro", "dir": "tx", "session": "cmd", @@ -9640,7 +9871,8 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 8.906, + "t": 2847.906, + "t_estimated": true, "step": "flicker_repro", "dir": "rx", "session": "cmd", @@ -9648,7 +9880,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 8.906, + "t": 2849.711, "utc": "20:50:11", "step": "flicker_repro", "dir": "result", @@ -9660,7 +9892,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 10.107, + "t": 2850.912, "step": "flicker_repro", "dir": "tx", "session": "cmd", @@ -9669,7 +9901,8 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 10.112, + "t": 2850.912, + "t_estimated": true, "step": "flicker_repro", "dir": "rx", "session": "cmd", @@ -9677,7 +9910,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 10.112, + "t": 2850.917, "utc": "20:50:12", "step": "flicker_repro", "dir": "result", @@ -9689,7 +9922,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 11.313, + "t": 2852.118, "step": "flicker_repro", "dir": "tx", "session": "cmd", @@ -9698,7 +9931,8 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 11.317, + "t": 2852.118, + "t_estimated": true, "step": "flicker_repro", "dir": "rx", "session": "cmd", @@ -9706,7 +9940,7 @@ }, { "run": "run8b_flicker_repro_who22", - "t": 11.317, + "t": 2852.122, "utc": "20:50:14", "step": "flicker_repro", "dir": "result", diff --git a/tests/fixtures/traces/myhomeserver1_live_2026-10-24/README.md b/tests/fixtures/traces/myhomeserver1_live_2026-10-24/README.md index b428c36c0..85fff124a 100644 --- a/tests/fixtures/traces/myhomeserver1_live_2026-10-24/README.md +++ b/tests/fixtures/traces/myhomeserver1_live_2026-10-24/README.md @@ -26,7 +26,10 @@ Standard `MyHOME` derived trace archive, the same layout as `f461_live_2026-10-2 field table): `capture` (with `runs`), `gateway` (synthetic MAC `00:03:50:00:20:24`, also as the WHO 13 dimension 12 reply `*#13**12*0*3*80*0*32*36##`; documentation IP `192.0.2.9`; an `oracle_note`), `frames` (376 event-session `rx` frames) and `rows` (613 `tx` / `rx` / `result` entries; `result.replies` are the frames collected on the -command session, `result.events_after` the event-session frames seen before the next request). +command session, `result.events_after` only the event-session frames that arrived while the request was pending). +As there, command-session `rx` rows carry `t_estimated: true` and sit at their request's `t` (the session hands the +replies over as a batch with the ACK / NACK), and `t` is one monotonic axis over the three runs +(`capture.runs[].t_offset` gives each run's start). ## The runs diff --git a/tests/fixtures/traces/myhomeserver1_live_2026-10-24/myhome_trace_MyHomeServer1_live_2026-10-24.json b/tests/fixtures/traces/myhomeserver1_live_2026-10-24/myhome_trace_MyHomeServer1_live_2026-10-24.json index b5daf77a2..0600ad642 100644 --- a/tests/fixtures/traces/myhomeserver1_live_2026-10-24/myhome_trace_MyHomeServer1_live_2026-10-24.json +++ b/tests/fixtures/traces/myhomeserver1_live_2026-10-24/myhome_trace_MyHomeServer1_live_2026-10-24.json @@ -2,7 +2,7 @@ "capture": { "kind": "derived_trace_archive", "started_at": "2026-10-24T13:19:43+00:00", - "notes": "Live Legrand/BTicino MyHomeServer1 (firmware 3.87.13 / WHO 13 device type 200 / WHO 1013 67.15.5.0) multi-session capture of 2026-10-24 recorded with OWNd master on a large home plant: WHO 4 zones 35-70 (setpoints as dimension 7, temperatures, humidity on 17 zones, actuators Z#1 / Z#2 and zone-0 actuators 0#1..0#4), about 100 WHO 1 points including four-digit area-0 points 0010-0015 and four-digit 0111-0515, WHO 2 general status. Status reads only, no commands. Purpose: the same facts as the F461 capture of 2026-10-23 on a second gateway family (OWNd 137, 139, 140, 141, 142; MyHOME 791-794, 798). The firmware oracle emulates MyHomeServer1 2.82.06; this unit runs 3.87.13, and *#13**12## returns a real MAC here (scrubbed) where the emulated 2.82.06 returns zeros (oracle PR 59).", + "notes": "Live Legrand/BTicino MyHomeServer1 (firmware 3.87.13 / WHO 13 device type 200 / WHO 1013 67.15.5.0) multi-session capture of 2026-10-24 recorded with OWNd master on a large home plant: WHO 4 zones 35-70 (setpoints as dimension 7, temperatures, humidity on 17 zones, actuators Z#1 / Z#2 and zone-0 actuators 0#1..0#4), about 100 WHO 1 points including four-digit area-0 points 0010-0015 and four-digit 0111-0515, WHO 2 general status. Status reads only, no commands. Purpose: the same facts as the F461 capture of 2026-10-23 on a second gateway family (OWNd 137, 139, 140, 141, 142; MyHOME 791-794, 798). The firmware oracle emulates MyHomeServer1 2.82.06; this unit runs 3.87.13, and *#13**12## returns a real MAC here (scrubbed) where the emulated 2.82.06 returns zeros (oracle PR 59). Timing: t is one monotonic axis over all runs (capture.runs[].t_offset is each run's start; t - t_offset is the time since that run's first frame); command-session rx rows carry t_estimated = true because the session hands the replies over as a batch with the ACK / NACK, so they are placed at their request's t; result.events_after holds only the event-session frames that arrived while the request was pending (tx.t <= t <= result.t).", "window": { "first": "2026-10-24T13:19:43+00:00", "last": "2026-10-24T13:22:39+00:00", @@ -10,9 +10,9 @@ "rows": 613 }, "runs": [ - {"run": "run1_identify", "source": "identify.jsonl", "utc": "13:19:45-13:20:00", "rows": 148, "frames": 116, "purpose": "WHO 13 dimensions 15, 16, 0, 1, 22, 27, 12 and WHO 1013 dimension 1 on the home MyHomeServer1 (firmware 3.87.13); the event session shows the plant's own traffic meanwhile"}, - {"run": "run2_reads_thermo_sound_alarm_lights", "source": "reads1.jsonl", "utc": "13:20:30-13:21:19", "rows": 422, "frames": 255, "purpose": "status reads only: central-unit forms *#4*#0## / *#4*#0*14##, zone 35 status and dimensions 12 / 14 / 20, all-zone actuators *#4*#0*20##, humidity *#4*35*60## / *#4*0*60##, WHO 16 / WHO 5 forms, *#1*0## and *#2*0## general status"}, - {"run": "run3_reads_lights_addresses_humidity", "source": "reads2.jsonl", "utc": "13:22:09-13:22:39", "rows": 43, "frames": 5, "purpose": "*#4*0## (refused), *#4*39*60##, the WHO 1 address spellings 0014 / 14, 0010 / 10, 0001 / 01, 0004 / 04, and *#13**0## echoed on the event session"} + {"run": "run1_identify", "source": "identify.jsonl", "utc": "13:19:45-13:20:00", "t_offset": 0.0, "rows": 148, "frames": 116, "purpose": "WHO 13 dimensions 15, 16, 0, 1, 22, 27, 12 and WHO 1013 dimension 1 on the home MyHomeServer1 (firmware 3.87.13); the event session shows the plant's own traffic meanwhile"}, + {"run": "run2_reads_thermo_sound_alarm_lights", "source": "reads1.jsonl", "utc": "13:20:30-13:21:19", "t_offset": 15.563, "rows": 422, "frames": 255, "purpose": "status reads only: central-unit forms *#4*#0## / *#4*#0*14##, zone 35 status and dimensions 12 / 14 / 20, all-zone actuators *#4*#0*20##, humidity *#4*35*60## / *#4*0*60##, WHO 16 / WHO 5 forms, *#1*0## and *#2*0## general status"}, + {"run": "run3_reads_lights_addresses_humidity", "source": "reads2.jsonl", "utc": "13:22:09-13:22:39", "t_offset": 70.971, "rows": 43, "frames": 5, "purpose": "*#4*0## (refused), *#4*39*60##, the WHO 1 address spellings 0014 / 14, 0010 / 10, 0001 / 01, 0004 / 04, and *#13**0## echoed on the event session"} ] }, "gateway": { @@ -146,266 +146,266 @@ {"timestamp": 8.885, "direction": "rx", "raw": "*#4*67*0*0245##", "run": "run1_identify", "session": "evt"}, {"timestamp": 8.937, "direction": "rx", "raw": "*#4*52*0*0236##", "run": "run1_identify", "session": "evt"}, {"timestamp": 14.563, "direction": "rx", "raw": "*#13**#1*06*24*10*2026##", "run": "run1_identify", "session": "evt"}, - {"timestamp": 14.073, "direction": "rx", "raw": "*#4*35*0*0231##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 14.378, "direction": "rx", "raw": "*#4*35*12*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 14.379, "direction": "rx", "raw": "*4*1*35##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 14.651, "direction": "rx", "raw": "*#4*35*14*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 14.753, "direction": "rx", "raw": "*#4*35*13*00##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 18.937, "direction": "rx", "raw": "*#4*35*12*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 18.952, "direction": "rx", "raw": "*4*1*35##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 21.118, "direction": "rx", "raw": "*#4*35*14*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 23.325, "direction": "rx", "raw": "*#4*35#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.443, "direction": "rx", "raw": "*#4*39#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.476, "direction": "rx", "raw": "*#4*48#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.508, "direction": "rx", "raw": "*#4*35#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.549, "direction": "rx", "raw": "*#4*64#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.574, "direction": "rx", "raw": "*#4*40#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.614, "direction": "rx", "raw": "*#4*47#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.647, "direction": "rx", "raw": "*#4*53#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.691, "direction": "rx", "raw": "*#4*43#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.729, "direction": "rx", "raw": "*#4*60#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.755, "direction": "rx", "raw": "*#4*36#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.79, "direction": "rx", "raw": "*#4*65#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.825, "direction": "rx", "raw": "*#4*47#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.859, "direction": "rx", "raw": "*#4*66#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.911, "direction": "rx", "raw": "*#4*48#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.932, "direction": "rx", "raw": "*#4*67#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 25.981, "direction": "rx", "raw": "*#4*41#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.006, "direction": "rx", "raw": "*#4*70#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.051, "direction": "rx", "raw": "*#4*0#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.076, "direction": "rx", "raw": "*#4*57#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.112, "direction": "rx", "raw": "*#4*37#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.146, "direction": "rx", "raw": "*#4*58#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.184, "direction": "rx", "raw": "*#4*0#3*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.216, "direction": "rx", "raw": "*#4*60#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.254, "direction": "rx", "raw": "*#4*38#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.289, "direction": "rx", "raw": "*#4*68#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.326, "direction": "rx", "raw": "*#4*42#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.359, "direction": "rx", "raw": "*#4*49#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.402, "direction": "rx", "raw": "*#4*44#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.429, "direction": "rx", "raw": "*#4*51#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.469, "direction": "rx", "raw": "*#4*0#4*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.503, "direction": "rx", "raw": "*#4*61#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.544, "direction": "rx", "raw": "*#4*59#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.579, "direction": "rx", "raw": "*#4*70#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.631, "direction": "rx", "raw": "*#4*52#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.661, "direction": "rx", "raw": "*#4*62#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.698, "direction": "rx", "raw": "*#4*50#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.735, "direction": "rx", "raw": "*#4*0#2*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.768, "direction": "rx", "raw": "*#4*57#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.826, "direction": "rx", "raw": "*#4*63#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.858, "direction": "rx", "raw": "*#4*55#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.921, "direction": "rx", "raw": "*#4*45#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 26.948, "direction": "rx", "raw": "*#4*69#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 27.011, "direction": "rx", "raw": "*#4*46#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.011, "direction": "rx", "raw": "*#4*39*60*51##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.041, "direction": "rx", "raw": "*#4*53*60*60##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.09, "direction": "rx", "raw": "*#4*48*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.126, "direction": "rx", "raw": "*#4*69*60*52##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.19, "direction": "rx", "raw": "*#4*40*60*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.225, "direction": "rx", "raw": "*#4*42*60*52##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.276, "direction": "rx", "raw": "*#4*43*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.326, "direction": "rx", "raw": "*#4*60*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.371, "direction": "rx", "raw": "*#4*47*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.425, "direction": "rx", "raw": "*#4*57*60*59##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.474, "direction": "rx", "raw": "*#4*41*60*49##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.561, "direction": "rx", "raw": "*#4*61*60*53##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.6, "direction": "rx", "raw": "*#4*55*60*51##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.648, "direction": "rx", "raw": "*#4*70*60*69##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.703, "direction": "rx", "raw": "*#4*58*60*55##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.754, "direction": "rx", "raw": "*#4*68*60*59##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 32.823, "direction": "rx", "raw": "*#4*59*60*66##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.462, "direction": "rx", "raw": "*1*0*14##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0514##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0014##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0415##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0015##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*14##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.68, "direction": "rx", "raw": "*1*0*0315##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.711, "direction": "rx", "raw": "*1*0*0115##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.749, "direction": "rx", "raw": "*1*0*45##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.788, "direction": "rx", "raw": "*1*0*0513##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.821, "direction": "rx", "raw": "*1*0*33##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.858, "direction": "rx", "raw": "*1*0*0010##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.891, "direction": "rx", "raw": "*1*0*0314##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.929, "direction": "rx", "raw": "*1*0*17##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 40.961, "direction": "rx", "raw": "*1*0*34##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.006, "direction": "rx", "raw": "*1*0*21##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.039, "direction": "rx", "raw": "*1*0*0215##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.077, "direction": "rx", "raw": "*1*0*11##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.109, "direction": "rx", "raw": "*1*0*36##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.146, "direction": "rx", "raw": "*1*0*37##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.183, "direction": "rx", "raw": "*1*0*43##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.22, "direction": "rx", "raw": "*1*0*38##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.253, "direction": "rx", "raw": "*1*0*0012##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.287, "direction": "rx", "raw": "*1*0*0211##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.329, "direction": "rx", "raw": "*1*0*0515##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.367, "direction": "rx", "raw": "*1*0*0013##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.4, "direction": "rx", "raw": "*1*0*0512##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.441, "direction": "rx", "raw": "*1*0*0311##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.479, "direction": "rx", "raw": "*1*0*0312##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.511, "direction": "rx", "raw": "*1*0*21##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.547, "direction": "rx", "raw": "*1*0*0313##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.583, "direction": "rx", "raw": "*1*0*0111##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.617, "direction": "rx", "raw": "*1*0*0212##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.654, "direction": "rx", "raw": "*1*0*61##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.687, "direction": "rx", "raw": "*1*0*49##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.723, "direction": "rx", "raw": "*1*0*12##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.76, "direction": "rx", "raw": "*1*0*29##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.791, "direction": "rx", "raw": "*1*0*18##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.827, "direction": "rx", "raw": "*1*0*0310##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.86, "direction": "rx", "raw": "*1*0*0011##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.891, "direction": "rx", "raw": "*1*0*46##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.931, "direction": "rx", "raw": "*1*0*0510##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 41.961, "direction": "rx", "raw": "*1*0*0213##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.005, "direction": "rx", "raw": "*1*0*41##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.039, "direction": "rx", "raw": "*1*0*0511##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.072, "direction": "rx", "raw": "*1*0*44##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.111, "direction": "rx", "raw": "*1*0*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.148, "direction": "rx", "raw": "*1*0*42##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.185, "direction": "rx", "raw": "*1*0*0214##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.221, "direction": "rx", "raw": "*1*0*48##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.256, "direction": "rx", "raw": "*1*0*24##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.291, "direction": "rx", "raw": "*1*0*13##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.326, "direction": "rx", "raw": "*1*0*0210##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.361, "direction": "rx", "raw": "*1*0*64##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.396, "direction": "rx", "raw": "*1*0*0211##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.441, "direction": "rx", "raw": "*1*0*0315##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.481, "direction": "rx", "raw": "*1*0*0112##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.511, "direction": "rx", "raw": "*1*0*39##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.551, "direction": "rx", "raw": "*1*0*25##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.586, "direction": "rx", "raw": "*1*0*0212##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.624, "direction": "rx", "raw": "*1*0*65##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.658, "direction": "rx", "raw": "*1*0*45##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.691, "direction": "rx", "raw": "*1*0*16##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.727, "direction": "rx", "raw": "*1*0*46##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.767, "direction": "rx", "raw": "*1*0*0113##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.796, "direction": "rx", "raw": "*1*0*0213##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.833, "direction": "rx", "raw": "*1*0*62##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.867, "direction": "rx", "raw": "*1*0*0410##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.902, "direction": "rx", "raw": "*1*0*0514##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.935, "direction": "rx", "raw": "*1*0*0214##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 42.972, "direction": "rx", "raw": "*1*0*19##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.007, "direction": "rx", "raw": "*1*0*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.07, "direction": "rx", "raw": "*1*0*0413##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.096, "direction": "rx", "raw": "*1*0*31##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.135, "direction": "rx", "raw": "*1*0*26##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.17, "direction": "rx", "raw": "*1*0*0114##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.207, "direction": "rx", "raw": "*1*0*0515##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.24, "direction": "rx", "raw": "*1*0*0110##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.277, "direction": "rx", "raw": "*1*0*48##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.319, "direction": "rx", "raw": "*1*0*32##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.359, "direction": "rx", "raw": "*1*0*41##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.397, "direction": "rx", "raw": "*1*0*42##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.424, "direction": "rx", "raw": "*1*0*0411##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.461, "direction": "rx", "raw": "*1*0*63##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.505, "direction": "rx", "raw": "*1*0*27##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.549, "direction": "rx", "raw": "*1*0*11##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.586, "direction": "rx", "raw": "*1*0*66##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.629, "direction": "rx", "raw": "*1*0*0215##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.676, "direction": "rx", "raw": "*1*0*0512##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.719, "direction": "rx", "raw": "*1*0*28##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.767, "direction": "rx", "raw": "*1*0*31##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.808, "direction": "rx", "raw": "*1*0*32##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.837, "direction": "rx", "raw": "*1*0*12##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.87, "direction": "rx", "raw": "*1*0*25##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.908, "direction": "rx", "raw": "*1*0*13##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 43.941, "direction": "rx", "raw": "*1*0*26##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 44.003, "direction": "rx", "raw": "*1*0*68##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 44.032, "direction": "rx", "raw": "*1*0*27##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 44.094, "direction": "rx", "raw": "*1*0*69##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 44.12, "direction": "rx", "raw": "*1*0*28##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.211, "direction": "rx", "raw": "*1*0*17##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.242, "direction": "rx", "raw": "*1*0*0312##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.269, "direction": "rx", "raw": "*1*0*0514##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.312, "direction": "rx", "raw": "*1*0*0310##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.34, "direction": "rx", "raw": "*1*0*0010##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.369, "direction": "rx", "raw": "*1*0*0313##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.407, "direction": "rx", "raw": "*1*0*21##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.438, "direction": "rx", "raw": "*1*0*37##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.479, "direction": "rx", "raw": "*1*0*0014##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.521, "direction": "rx", "raw": "*1*0*0115##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.554, "direction": "rx", "raw": "*1*0*45##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.589, "direction": "rx", "raw": "*1*0*0513##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.622, "direction": "rx", "raw": "*1*0*46##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.659, "direction": "rx", "raw": "*1*0*0111##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.69, "direction": "rx", "raw": "*1*0*24##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.731, "direction": "rx", "raw": "*1*0*11##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.766, "direction": "rx", "raw": "*1*0*33##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.8, "direction": "rx", "raw": "*1*0*0415##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.835, "direction": "rx", "raw": "*1*0*38##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.871, "direction": "rx", "raw": "*1*0*61##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.905, "direction": "rx", "raw": "*1*0*0315##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.945, "direction": "rx", "raw": "*1*0*0015##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 50.979, "direction": "rx", "raw": "*1*0*34##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.015, "direction": "rx", "raw": "*1*0*12##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.051, "direction": "rx", "raw": "*1*0*43##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.095, "direction": "rx", "raw": "*1*0*13##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.126, "direction": "rx", "raw": "*1*0*39##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.161, "direction": "rx", "raw": "*1*0*18##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.2, "direction": "rx", "raw": "*1*0*0215##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.239, "direction": "rx", "raw": "*1*0*0012##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.275, "direction": "rx", "raw": "*1*0*29##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.31, "direction": "rx", "raw": "*1*0*19##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.345, "direction": "rx", "raw": "*1*0*0211##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.38, "direction": "rx", "raw": "*1*0*0212##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.418, "direction": "rx", "raw": "*1*0*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.455, "direction": "rx", "raw": "*1*0*0512##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.489, "direction": "rx", "raw": "*1*0*0011##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.52, "direction": "rx", "raw": "*1*0*0213##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.566, "direction": "rx", "raw": "*1*0*48##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.602, "direction": "rx", "raw": "*1*0*0110##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.635, "direction": "rx", "raw": "*1*0*0214##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.67, "direction": "rx", "raw": "*1*0*64##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.71, "direction": "rx", "raw": "*1*0*49##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.74, "direction": "rx", "raw": "*1*0*0510##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.775, "direction": "rx", "raw": "*1*0*0210##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.813, "direction": "rx", "raw": "*1*0*16##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.84, "direction": "rx", "raw": "*1*0*31##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.881, "direction": "rx", "raw": "*1*0*17##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.916, "direction": "rx", "raw": "*1*0*44##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.958, "direction": "rx", "raw": "*1*0*65##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 51.991, "direction": "rx", "raw": "*1*0*32##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.033, "direction": "rx", "raw": "*1*0*18##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.068, "direction": "rx", "raw": "*1*0*0314##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.1, "direction": "rx", "raw": "*1*0*14##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.136, "direction": "rx", "raw": "*1*0*0515##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.176, "direction": "rx", "raw": "*1*0*0014##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.208, "direction": "rx", "raw": "*1*0*0311##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.247, "direction": "rx", "raw": "*1*0*19##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.281, "direction": "rx", "raw": "*1*0*36##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.339, "direction": "rx", "raw": "*1*0*0013##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.37, "direction": "rx", "raw": "*1*0*41##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.4, "direction": "rx", "raw": "*1*0*42##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.44, "direction": "rx", "raw": "*1*0*0112##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.48, "direction": "rx", "raw": "*1*0*25##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.518, "direction": "rx", "raw": "*1*0*0511##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.552, "direction": "rx", "raw": "*1*0*66##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.591, "direction": "rx", "raw": "*1*0*0110##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.625, "direction": "rx", "raw": "*1*0*26##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.661, "direction": "rx", "raw": "*1*0*62##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.694, "direction": "rx", "raw": "*1*0*27##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.74, "direction": "rx", "raw": "*1*0*0015##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.771, "direction": "rx", "raw": "*1*0*0410##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.81, "direction": "rx", "raw": "*1*0*63##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.868, "direction": "rx", "raw": "*1*0*0113##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.893, "direction": "rx", "raw": "*1*0*28##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.942, "direction": "rx", "raw": "*1*0*64##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 52.97, "direction": "rx", "raw": "*1*0*0411##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 53.014, "direction": "rx", "raw": "*1*0*0114##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 53.069, "direction": "rx", "raw": "*1*0*0011##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 53.121, "direction": "rx", "raw": "*1*0*65##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 53.167, "direction": "rx", "raw": "*1*0*62##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 53.208, "direction": "rx", "raw": "*1*0*63##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 53.26, "direction": "rx", "raw": "*1*0*16##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 53.316, "direction": "rx", "raw": "*1*0*0413##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 53.37, "direction": "rx", "raw": "*1*0*68##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 53.429, "direction": "rx", "raw": "*1*0*69##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, - {"timestamp": 7.264, "direction": "rx", "raw": "*#4*39*60*51##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, - {"timestamp": 9.383, "direction": "rx", "raw": "*1*0*0014##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, - {"timestamp": 11.483, "direction": "rx", "raw": "*1*0*14##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, - {"timestamp": 13.573, "direction": "rx", "raw": "*1*0*0010##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, - {"timestamp": 31.665, "direction": "rx", "raw": "*#13**0*16*22*38*999##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"} + {"timestamp": 29.636, "direction": "rx", "raw": "*#4*35*0*0231##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 29.941, "direction": "rx", "raw": "*#4*35*12*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 29.942, "direction": "rx", "raw": "*4*1*35##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 30.214, "direction": "rx", "raw": "*#4*35*14*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 30.316, "direction": "rx", "raw": "*#4*35*13*00##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 34.5, "direction": "rx", "raw": "*#4*35*12*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 34.515, "direction": "rx", "raw": "*4*1*35##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 36.681, "direction": "rx", "raw": "*#4*35*14*0200*3##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 38.888, "direction": "rx", "raw": "*#4*35#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.006, "direction": "rx", "raw": "*#4*39#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.039, "direction": "rx", "raw": "*#4*48#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.071, "direction": "rx", "raw": "*#4*35#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.112, "direction": "rx", "raw": "*#4*64#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.137, "direction": "rx", "raw": "*#4*40#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.177, "direction": "rx", "raw": "*#4*47#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.21, "direction": "rx", "raw": "*#4*53#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.254, "direction": "rx", "raw": "*#4*43#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.292, "direction": "rx", "raw": "*#4*60#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.318, "direction": "rx", "raw": "*#4*36#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.353, "direction": "rx", "raw": "*#4*65#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.388, "direction": "rx", "raw": "*#4*47#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.422, "direction": "rx", "raw": "*#4*66#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.474, "direction": "rx", "raw": "*#4*48#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.495, "direction": "rx", "raw": "*#4*67#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.544, "direction": "rx", "raw": "*#4*41#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.569, "direction": "rx", "raw": "*#4*70#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.614, "direction": "rx", "raw": "*#4*0#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.639, "direction": "rx", "raw": "*#4*57#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.675, "direction": "rx", "raw": "*#4*37#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.709, "direction": "rx", "raw": "*#4*58#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.747, "direction": "rx", "raw": "*#4*0#3*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.779, "direction": "rx", "raw": "*#4*60#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.817, "direction": "rx", "raw": "*#4*38#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.852, "direction": "rx", "raw": "*#4*68#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.889, "direction": "rx", "raw": "*#4*42#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.922, "direction": "rx", "raw": "*#4*49#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.965, "direction": "rx", "raw": "*#4*44#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 41.992, "direction": "rx", "raw": "*#4*51#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.032, "direction": "rx", "raw": "*#4*0#4*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.066, "direction": "rx", "raw": "*#4*61#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.107, "direction": "rx", "raw": "*#4*59#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.142, "direction": "rx", "raw": "*#4*70#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.194, "direction": "rx", "raw": "*#4*52#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.224, "direction": "rx", "raw": "*#4*62#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.261, "direction": "rx", "raw": "*#4*50#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.298, "direction": "rx", "raw": "*#4*0#2*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.331, "direction": "rx", "raw": "*#4*57#2*20*5##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.389, "direction": "rx", "raw": "*#4*63#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.421, "direction": "rx", "raw": "*#4*55#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.484, "direction": "rx", "raw": "*#4*45#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.511, "direction": "rx", "raw": "*#4*69#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 42.574, "direction": "rx", "raw": "*#4*46#1*20*0##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.574, "direction": "rx", "raw": "*#4*39*60*51##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.604, "direction": "rx", "raw": "*#4*53*60*60##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.653, "direction": "rx", "raw": "*#4*48*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.689, "direction": "rx", "raw": "*#4*69*60*52##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.753, "direction": "rx", "raw": "*#4*40*60*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.788, "direction": "rx", "raw": "*#4*42*60*52##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.839, "direction": "rx", "raw": "*#4*43*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.889, "direction": "rx", "raw": "*#4*60*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.934, "direction": "rx", "raw": "*#4*47*60*54##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 47.988, "direction": "rx", "raw": "*#4*57*60*59##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 48.037, "direction": "rx", "raw": "*#4*41*60*49##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 48.124, "direction": "rx", "raw": "*#4*61*60*53##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 48.163, "direction": "rx", "raw": "*#4*55*60*51##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 48.211, "direction": "rx", "raw": "*#4*70*60*69##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 48.266, "direction": "rx", "raw": "*#4*58*60*55##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 48.317, "direction": "rx", "raw": "*#4*68*60*59##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 48.386, "direction": "rx", "raw": "*#4*59*60*66##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.025, "direction": "rx", "raw": "*1*0*14##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.243, "direction": "rx", "raw": "*1*0*0514##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.243, "direction": "rx", "raw": "*1*0*0014##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.243, "direction": "rx", "raw": "*1*0*0415##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.243, "direction": "rx", "raw": "*1*0*0015##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.243, "direction": "rx", "raw": "*1*0*14##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.243, "direction": "rx", "raw": "*1*0*0315##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.274, "direction": "rx", "raw": "*1*0*0115##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.312, "direction": "rx", "raw": "*1*0*45##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.351, "direction": "rx", "raw": "*1*0*0513##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.384, "direction": "rx", "raw": "*1*0*33##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.421, "direction": "rx", "raw": "*1*0*0010##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.454, "direction": "rx", "raw": "*1*0*0314##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.492, "direction": "rx", "raw": "*1*0*17##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.524, "direction": "rx", "raw": "*1*0*34##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.569, "direction": "rx", "raw": "*1*0*21##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.602, "direction": "rx", "raw": "*1*0*0215##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.64, "direction": "rx", "raw": "*1*0*11##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.672, "direction": "rx", "raw": "*1*0*36##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.709, "direction": "rx", "raw": "*1*0*37##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.746, "direction": "rx", "raw": "*1*0*43##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.783, "direction": "rx", "raw": "*1*0*38##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.816, "direction": "rx", "raw": "*1*0*0012##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.85, "direction": "rx", "raw": "*1*0*0211##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.892, "direction": "rx", "raw": "*1*0*0515##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.93, "direction": "rx", "raw": "*1*0*0013##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 56.963, "direction": "rx", "raw": "*1*0*0512##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.004, "direction": "rx", "raw": "*1*0*0311##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.042, "direction": "rx", "raw": "*1*0*0312##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.074, "direction": "rx", "raw": "*1*0*21##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.11, "direction": "rx", "raw": "*1*0*0313##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.146, "direction": "rx", "raw": "*1*0*0111##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.18, "direction": "rx", "raw": "*1*0*0212##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.217, "direction": "rx", "raw": "*1*0*61##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.25, "direction": "rx", "raw": "*1*0*49##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.286, "direction": "rx", "raw": "*1*0*12##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.323, "direction": "rx", "raw": "*1*0*29##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.354, "direction": "rx", "raw": "*1*0*18##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.39, "direction": "rx", "raw": "*1*0*0310##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.423, "direction": "rx", "raw": "*1*0*0011##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.454, "direction": "rx", "raw": "*1*0*46##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.494, "direction": "rx", "raw": "*1*0*0510##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.524, "direction": "rx", "raw": "*1*0*0213##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.568, "direction": "rx", "raw": "*1*0*41##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.602, "direction": "rx", "raw": "*1*0*0511##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.635, "direction": "rx", "raw": "*1*0*44##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.674, "direction": "rx", "raw": "*1*0*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.711, "direction": "rx", "raw": "*1*0*42##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.748, "direction": "rx", "raw": "*1*0*0214##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.784, "direction": "rx", "raw": "*1*0*48##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.819, "direction": "rx", "raw": "*1*0*24##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.854, "direction": "rx", "raw": "*1*0*13##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.889, "direction": "rx", "raw": "*1*0*0210##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.924, "direction": "rx", "raw": "*1*0*64##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 57.959, "direction": "rx", "raw": "*1*0*0211##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.004, "direction": "rx", "raw": "*1*0*0315##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.044, "direction": "rx", "raw": "*1*0*0112##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.074, "direction": "rx", "raw": "*1*0*39##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.114, "direction": "rx", "raw": "*1*0*25##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.149, "direction": "rx", "raw": "*1*0*0212##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.187, "direction": "rx", "raw": "*1*0*65##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.221, "direction": "rx", "raw": "*1*0*45##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.254, "direction": "rx", "raw": "*1*0*16##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.29, "direction": "rx", "raw": "*1*0*46##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.33, "direction": "rx", "raw": "*1*0*0113##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.359, "direction": "rx", "raw": "*1*0*0213##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.396, "direction": "rx", "raw": "*1*0*62##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.43, "direction": "rx", "raw": "*1*0*0410##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.465, "direction": "rx", "raw": "*1*0*0514##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.498, "direction": "rx", "raw": "*1*0*0214##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.535, "direction": "rx", "raw": "*1*0*19##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.57, "direction": "rx", "raw": "*1*0*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.633, "direction": "rx", "raw": "*1*0*0413##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.659, "direction": "rx", "raw": "*1*0*31##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.698, "direction": "rx", "raw": "*1*0*26##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.733, "direction": "rx", "raw": "*1*0*0114##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.77, "direction": "rx", "raw": "*1*0*0515##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.803, "direction": "rx", "raw": "*1*0*0110##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.84, "direction": "rx", "raw": "*1*0*48##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.882, "direction": "rx", "raw": "*1*0*32##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.922, "direction": "rx", "raw": "*1*0*41##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.96, "direction": "rx", "raw": "*1*0*42##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 58.987, "direction": "rx", "raw": "*1*0*0411##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.024, "direction": "rx", "raw": "*1*0*63##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.068, "direction": "rx", "raw": "*1*0*27##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.112, "direction": "rx", "raw": "*1*0*11##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.149, "direction": "rx", "raw": "*1*0*66##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.192, "direction": "rx", "raw": "*1*0*0215##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.239, "direction": "rx", "raw": "*1*0*0512##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.282, "direction": "rx", "raw": "*1*0*28##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.33, "direction": "rx", "raw": "*1*0*31##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.371, "direction": "rx", "raw": "*1*0*32##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.4, "direction": "rx", "raw": "*1*0*12##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.433, "direction": "rx", "raw": "*1*0*25##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.471, "direction": "rx", "raw": "*1*0*13##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.504, "direction": "rx", "raw": "*1*0*26##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.566, "direction": "rx", "raw": "*1*0*68##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.595, "direction": "rx", "raw": "*1*0*27##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.657, "direction": "rx", "raw": "*1*0*69##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 59.683, "direction": "rx", "raw": "*1*0*28##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 65.774, "direction": "rx", "raw": "*1*0*17##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 65.805, "direction": "rx", "raw": "*1*0*0312##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 65.832, "direction": "rx", "raw": "*1*0*0514##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 65.875, "direction": "rx", "raw": "*1*0*0310##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 65.903, "direction": "rx", "raw": "*1*0*0010##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 65.932, "direction": "rx", "raw": "*1*0*0313##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 65.97, "direction": "rx", "raw": "*1*0*21##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.001, "direction": "rx", "raw": "*1*0*37##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.042, "direction": "rx", "raw": "*1*0*0014##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.084, "direction": "rx", "raw": "*1*0*0115##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.117, "direction": "rx", "raw": "*1*0*45##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.152, "direction": "rx", "raw": "*1*0*0513##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.185, "direction": "rx", "raw": "*1*0*46##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.222, "direction": "rx", "raw": "*1*0*0111##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.253, "direction": "rx", "raw": "*1*0*24##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.294, "direction": "rx", "raw": "*1*0*11##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.329, "direction": "rx", "raw": "*1*0*33##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.363, "direction": "rx", "raw": "*1*0*0415##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.398, "direction": "rx", "raw": "*1*0*38##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.434, "direction": "rx", "raw": "*1*0*61##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.468, "direction": "rx", "raw": "*1*0*0315##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.508, "direction": "rx", "raw": "*1*0*0015##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.542, "direction": "rx", "raw": "*1*0*34##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.578, "direction": "rx", "raw": "*1*0*12##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.614, "direction": "rx", "raw": "*1*0*43##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.658, "direction": "rx", "raw": "*1*0*13##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.689, "direction": "rx", "raw": "*1*0*39##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.724, "direction": "rx", "raw": "*1*0*18##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.763, "direction": "rx", "raw": "*1*0*0215##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.802, "direction": "rx", "raw": "*1*0*0012##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.838, "direction": "rx", "raw": "*1*0*29##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.873, "direction": "rx", "raw": "*1*0*19##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.908, "direction": "rx", "raw": "*1*0*0211##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.943, "direction": "rx", "raw": "*1*0*0212##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 66.981, "direction": "rx", "raw": "*1*0*47##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.018, "direction": "rx", "raw": "*1*0*0512##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.052, "direction": "rx", "raw": "*1*0*0011##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.083, "direction": "rx", "raw": "*1*0*0213##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.129, "direction": "rx", "raw": "*1*0*48##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.165, "direction": "rx", "raw": "*1*0*0110##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.198, "direction": "rx", "raw": "*1*0*0214##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.233, "direction": "rx", "raw": "*1*0*64##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.273, "direction": "rx", "raw": "*1*0*49##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.303, "direction": "rx", "raw": "*1*0*0510##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.338, "direction": "rx", "raw": "*1*0*0210##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.376, "direction": "rx", "raw": "*1*0*16##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.403, "direction": "rx", "raw": "*1*0*31##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.444, "direction": "rx", "raw": "*1*0*17##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.479, "direction": "rx", "raw": "*1*0*44##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.521, "direction": "rx", "raw": "*1*0*65##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.554, "direction": "rx", "raw": "*1*0*32##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.596, "direction": "rx", "raw": "*1*0*18##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.631, "direction": "rx", "raw": "*1*0*0314##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.663, "direction": "rx", "raw": "*1*0*14##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.699, "direction": "rx", "raw": "*1*0*0515##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.739, "direction": "rx", "raw": "*1*0*0014##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.771, "direction": "rx", "raw": "*1*0*0311##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.81, "direction": "rx", "raw": "*1*0*19##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.844, "direction": "rx", "raw": "*1*0*36##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.902, "direction": "rx", "raw": "*1*0*0013##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.933, "direction": "rx", "raw": "*1*0*41##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 67.963, "direction": "rx", "raw": "*1*0*42##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.003, "direction": "rx", "raw": "*1*0*0112##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.043, "direction": "rx", "raw": "*1*0*25##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.081, "direction": "rx", "raw": "*1*0*0511##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.115, "direction": "rx", "raw": "*1*0*66##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.154, "direction": "rx", "raw": "*1*0*0110##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.188, "direction": "rx", "raw": "*1*0*26##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.224, "direction": "rx", "raw": "*1*0*62##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.257, "direction": "rx", "raw": "*1*0*27##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.303, "direction": "rx", "raw": "*1*0*0015##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.334, "direction": "rx", "raw": "*1*0*0410##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.373, "direction": "rx", "raw": "*1*0*63##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.431, "direction": "rx", "raw": "*1*0*0113##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.456, "direction": "rx", "raw": "*1*0*28##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.505, "direction": "rx", "raw": "*1*0*64##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.533, "direction": "rx", "raw": "*1*0*0411##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.577, "direction": "rx", "raw": "*1*0*0114##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.632, "direction": "rx", "raw": "*1*0*0011##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.684, "direction": "rx", "raw": "*1*0*65##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.73, "direction": "rx", "raw": "*1*0*62##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.771, "direction": "rx", "raw": "*1*0*63##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.823, "direction": "rx", "raw": "*1*0*16##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.879, "direction": "rx", "raw": "*1*0*0413##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.933, "direction": "rx", "raw": "*1*0*68##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 68.992, "direction": "rx", "raw": "*1*0*69##", "run": "run2_reads_thermo_sound_alarm_lights", "session": "evt"}, + {"timestamp": 78.235, "direction": "rx", "raw": "*#4*39*60*51##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, + {"timestamp": 80.354, "direction": "rx", "raw": "*1*0*0014##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, + {"timestamp": 82.454, "direction": "rx", "raw": "*1*0*14##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, + {"timestamp": 84.544, "direction": "rx", "raw": "*1*0*0010##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"}, + {"timestamp": 102.636, "direction": "rx", "raw": "*#13**0*16*22*38*999##", "run": "run3_reads_lights_addresses_humidity", "session": "evt"} ], "rows": [ { @@ -489,29 +489,31 @@ }, { "run": "run1_identify", - "t": 1.087, + "t": 1.046, + "t_estimated": true, "step": "identify", "dir": "rx", - "session": "evt", - "frame": "*#13**15*200##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway device type is: F454 / MyHomeServer1 / MH202 / F461 / H4890 / F450 / F459 / F460 / MH201." + "session": "cmd", + "frame": "*#13**15*200##" }, { "run": "run1_identify", - "t": 1.089, + "t": 1.046, + "t_estimated": true, "step": "identify", "dir": "rx", "session": "cmd", - "frame": "*#13**15*200##" + "frame": "*#*1##" }, { "run": "run1_identify", - "t": 1.089, + "t": 1.087, "step": "identify", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**15*200##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway device type is: F454 / MyHomeServer1 / MH202 / F461 / H4890 / F450 / F459 / F460 / MH201." }, { "run": "run1_identify", @@ -526,11 +528,7 @@ "*#13**15*200##" ], "events_after": [ - "*#13**15*200##", - "*#1013**1*67*15*5*0##", - "*#4*68*5*0##", - "*#4*69*5*0##", - "*#4*70*5*0##" + "*#13**15*200##" ], "note": "who13_device_type_200" }, @@ -585,29 +583,31 @@ }, { "run": "run1_identify", - "t": 2.111, + "t": 2.091, + "t_estimated": true, "step": "identify", "dir": "rx", - "session": "evt", - "frame": "*#13**16*3*87*13##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's firmware version is: 3.87.13." + "session": "cmd", + "frame": "*#13**16*3*87*13##" }, { "run": "run1_identify", - "t": 2.121, + "t": 2.091, + "t_estimated": true, "step": "identify", "dir": "rx", "session": "cmd", - "frame": "*#13**16*3*87*13##" + "frame": "*#*1##" }, { "run": "run1_identify", - "t": 2.121, + "t": 2.111, "step": "identify", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**16*3*87*13##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's firmware version is: 3.87.13." }, { "run": "run1_identify", @@ -622,17 +622,7 @@ "*#13**16*3*87*13##" ], "events_after": [ - "*#13**16*3*87*13##", - "*#4*35*7*1*1*0200##", - "*#4*35*0*0231##", - "*#4*36*7*1*1*0225##", - "*#4*36*0*0235##", - "*#4*37*7*1*1*0130##", - "*#4*37*0*0206##", - "*#4*38*7*1*1*0225##", - "*#4*38*0*0245##", - "*#4*39*7*1*1*0220##", - "*#4*39*0*0226##" + "*#13**16*3*87*13##" ], "note": "who13_firmware_3_87_13" }, @@ -747,29 +737,31 @@ }, { "run": "run1_identify", - "t": 3.2, + "t": 3.121, + "t_estimated": true, "step": "identify", "dir": "rx", - "session": "evt", - "frame": "*#13**0*16*19*49*999##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's internal time is: 16:19:49." + "session": "cmd", + "frame": "*#13**0*16*19*49*999##" }, { "run": "run1_identify", - "t": 3.215, + "t": 3.121, + "t_estimated": true, "step": "identify", "dir": "rx", "session": "cmd", - "frame": "*#13**0*16*19*49*999##" + "frame": "*#*1##" }, { "run": "run1_identify", - "t": 3.215, + "t": 3.2, "step": "identify", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**0*16*19*49*999##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal time is: 16:19:49." }, { "run": "run1_identify", @@ -784,19 +776,7 @@ "*#13**0*16*19*49*999##" ], "events_after": [ - "*#13**0*16*19*49*999##", - "*#4*40*7*1*1*0225##", - "*#4*41*7*1*1*0130##", - "*#4*41*0*0216##", - "*#4*40*0*0230##", - "*#4*44*7*1*1*0230##", - "*#4*45*7*1*1*0230##", - "*#4*44*0*0243##", - "*#4*42*7*1*1*0230##", - "*#4*42*0*0231##", - "*#4*46*7*1*1*0230##", - "*#4*48*7*1*1*0230##", - "*#4*46*0*0235##" + "*#13**0*16*19*49*999##" ], "note": "who13_time_echoed_on_evt" }, @@ -931,29 +911,31 @@ }, { "run": "run1_identify", - "t": 4.268, + "t": 4.216, + "t_estimated": true, "step": "identify", "dir": "rx", - "session": "evt", - "frame": "*#13**1*06*24*10*2026##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's internal date is: 2026-10-24." + "session": "cmd", + "frame": "*#13**1*06*24*10*2026##" }, { "run": "run1_identify", - "t": 4.283, + "t": 4.216, + "t_estimated": true, "step": "identify", "dir": "rx", "session": "cmd", - "frame": "*#13**1*06*24*10*2026##" + "frame": "*#*1##" }, { "run": "run1_identify", - "t": 4.283, + "t": 4.268, "step": "identify", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**1*06*24*10*2026##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal date is: 2026-10-24." }, { "run": "run1_identify", @@ -968,16 +950,7 @@ "*#13**1*06*24*10*2026##" ], "events_after": [ - "*#13**1*06*24*10*2026##", - "*#4*48*0*0233##", - "*#4*47*7*1*1*0230##", - "*#4*45*0*0242##", - "*#4*47*0*0236##", - "*#4*51*7*1*1*0230##", - "*#4*59*7*1*1*0230##", - "*#4*50*7*1*1*0225##", - "*#4*55*7*1*1*0225##", - "*#4*49*7*1*1*0230##" + "*#13**1*06*24*10*2026##" ] }, { @@ -1081,29 +1054,31 @@ }, { "run": "run1_identify", - "t": 5.401, + "t": 5.284, + "t_estimated": true, "step": "identify", "dir": "rx", - "session": "evt", - "frame": "*#13**22*16*19*51*999*06*24*10*2026##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's internal datetime is: 2026-10-24 16:19:51." + "session": "cmd", + "frame": "*#13**22*16*19*51*999*06*24*10*2026##" }, { "run": "run1_identify", - "t": 5.432, + "t": 5.284, + "t_estimated": true, "step": "identify", "dir": "rx", "session": "cmd", - "frame": "*#13**22*16*19*51*999*06*24*10*2026##" + "frame": "*#*1##" }, { "run": "run1_identify", - "t": 5.432, + "t": 5.401, "step": "identify", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**22*16*19*51*999*06*24*10*2026##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal datetime is: 2026-10-24 16:19:51." }, { "run": "run1_identify", @@ -1118,27 +1093,7 @@ "*#13**22*16*19*51*999*06*24*10*2026##" ], "events_after": [ - "*#13**22*16*19*51*999*06*24*10*2026##", - "*#4*61*7*1*1*0225##", - "*#4*62*7*1*1*0230##", - "*#4*61*0*0237##", - "*#4*63*7*1*1*0230##", - "*#4*62*0*0241##", - "*#4*53*7*1*1*0225##", - "*#4*60*7*1*1*0230##", - "*#4*55*0*0238##", - "*#4*53*0*0229##", - "*#4*57*7*1*1*0230##", - "*#4*65*7*1*1*0230##", - "*#4*63*0*0232##", - "*#4*69*7*1*1*0225##", - "*#4*57*0*0231##", - "*#4*69*0*0237##", - "*#4*49*0*0254##", - "*#4*66*7*1*1*0230##", - "*#4*66*0*0248##", - "*#4*65*0*0235##", - "*#4*59*0*0236##" + "*#13**22*16*19*51*999*06*24*10*2026##" ], "note": "who13_datetime_timezone_999" }, @@ -1353,29 +1308,31 @@ }, { "run": "run1_identify", - "t": 6.454, + "t": 6.433, + "t_estimated": true, "step": "identify", "dir": "rx", - "session": "evt", - "frame": "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##", - "ownd_class": "str", - "ownd_log": "" + "session": "cmd", + "frame": "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##" }, { "run": "run1_identify", - "t": 6.484, + "t": 6.433, + "t_estimated": true, "step": "identify", "dir": "rx", "session": "cmd", - "frame": "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##" + "frame": "*#*1##" }, { "run": "run1_identify", - "t": 6.484, + "t": 6.454, "step": "identify", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##", + "ownd_class": "str", + "ownd_log": "" }, { "run": "run1_identify", @@ -1390,19 +1347,7 @@ "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##" ], "events_after": [ - "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##", - "*#4*70*7*1*1*0230##", - "*#4*50*0*0233##", - "*#4*57*7*1*1*0230##", - "*#4*53*7*1*1*0225##", - "*#4*70*0*0231##", - "*#4*67*7*1*1*0230##", - "*#4*64*7*1*1*0230##", - "*#4*62*7*1*1*0230##", - "*#4*51*0*0243##", - "*#4*67*0*0245##", - "*#4*53*0*0229##", - "*#4*57*0*0231##" + "*#13**27*77#121#72#111#109#101#83#101#114#118#101#114#49##" ], "note": "who13_dim27_model_name_MyHomeServer1_no_ownd_decoder" }, @@ -1537,29 +1482,31 @@ }, { "run": "run1_identify", - "t": 7.52, + "t": 7.486, + "t_estimated": true, "step": "identify", "dir": "rx", - "session": "evt", - "frame": "*#13**12*0*3*80*0*32*36##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's MAC address is: 00:03:50:00:20:24." + "session": "cmd", + "frame": "*#13**12*0*3*80*0*32*36##" }, { "run": "run1_identify", - "t": 7.524, + "t": 7.486, + "t_estimated": true, "step": "identify", "dir": "rx", "session": "cmd", - "frame": "*#13**12*0*3*80*0*32*36##" + "frame": "*#*1##" }, { "run": "run1_identify", - "t": 7.524, + "t": 7.52, "step": "identify", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**12*0*3*80*0*32*36##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's MAC address is: 00:03:50:00:20:24." }, { "run": "run1_identify", @@ -1574,30 +1521,7 @@ "*#13**12*0*3*80*0*32*36##" ], "events_after": [ - "*#13**12*0*3*80*0*32*36##", - "*#4*68*7*1*1*0230##", - "*#4*69*7*1*1*0225##", - "*#4*66*7*1*1*0230##", - "*#4*68*0*0231##", - "*#4*68*7*1*1*0230##", - "*#4*62*0*0241##", - "*#4*58*7*1*1*0230##", - "*#4*52*7*1*1*0225##", - "*#4*58*0*0234##", - "*#4*60*0*0240##", - "*#4*61*7*1*1*0225##", - "*#4*65*7*1*1*0230##", - "*#4*66*0*0248##", - "*#4*70*7*1*1*0230##", - "*#4*61*0*0237##", - "*#4*69*0*0237##", - "*#4*60*7*1*1*0230##", - "*#4*64*0*0233##", - "*#4*52*0*0236##", - "*#4*60*0*0240##", - "*#4*64*7*1*1*0230##", - "*#4*58*7*1*1*0230##", - "*#4*70*0*0231##" + "*#13**12*0*3*80*0*32*36##" ], "note": "who13_mac_answered_real_value_scrubbed" }, @@ -1842,39 +1766,41 @@ }, { "run": "run1_identify", - "t": 8.531, + "t": 8.524, + "t_estimated": true, "step": "identify", "dir": "rx", - "session": "evt", - "frame": "*#4*64*0*0233##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 64's main sensor is reporting a temperature of 23.3°C." + "session": "cmd", + "frame": "*#1013**1*67*15*5*0##" }, { "run": "run1_identify", - "t": 8.559, + "t": 8.524, + "t_estimated": true, "step": "identify", "dir": "rx", - "session": "evt", - "frame": "*#1013**1*67*15*5*0##", - "ownd_class": "OWNGatewayDiagnosticEvent", - "ownd_log": "Gateway diagnostic object model is: MyHomeServer1 (67)." + "session": "cmd", + "frame": "*#*1##" }, { "run": "run1_identify", - "t": 8.562, + "t": 8.531, "step": "identify", "dir": "rx", - "session": "cmd", - "frame": "*#1013**1*67*15*5*0##" + "session": "evt", + "frame": "*#4*64*0*0233##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 64's main sensor is reporting a temperature of 23.3°C." }, { "run": "run1_identify", - "t": 8.562, + "t": 8.559, "step": "identify", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#1013**1*67*15*5*0##", + "ownd_class": "OWNGatewayDiagnosticEvent", + "ownd_log": "Gateway diagnostic object model is: MyHomeServer1 (67)." }, { "run": "run1_identify", @@ -1890,16 +1816,7 @@ ], "events_after": [ "*#4*64*0*0233##", - "*#1013**1*67*15*5*0##", - "*#4*67*7*1*1*0230##", - "*#4*58*0*0234##", - "*#4*52*7*1*1*0225##", - "*#4*65*0*0235##", - "*#4*63*7*1*1*0230##", - "*#4*63*0*0232##", - "*#4*68*0*0231##", - "*#4*67*0*0245##", - "*#4*52*0*0236##" + "*#1013**1*67*15*5*0##" ], "note": "who1013_object_model_67_15_5_0" }, @@ -2005,7 +1922,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 1.042, + "t": 16.605, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -2014,7 +1931,8 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 5.243, + "t": 16.605, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", @@ -2022,7 +1940,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 5.243, + "t": 20.806, "utc": "13:20:30", "step": "read_who4", "dir": "result", @@ -2035,7 +1953,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 7.244, + "t": 22.807, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -2044,7 +1962,8 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 11.463, + "t": 22.807, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", @@ -2052,7 +1971,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 11.463, + "t": 27.026, "utc": "13:20:36", "step": "read_who4", "dir": "result", @@ -2065,7 +1984,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 13.465, + "t": 29.028, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -2074,105 +1993,111 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.073, + "t": 29.028, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*35*0*0231##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's main sensor is reporting a temperature of 23.1°C." + "session": "cmd", + "frame": "*#4*35*0*0231##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.378, + "t": 29.028, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*35*12*0200*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's local target temperature is set to 20.0°C." + "session": "cmd", + "frame": "*#4*35*12*0200*3##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.379, + "t": 29.028, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*4*1*35##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's season is heating." + "session": "cmd", + "frame": "*4*1*35##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.651, + "t": 29.028, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*35*14*0200*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's target temperature is set to 20.0°C." + "session": "cmd", + "frame": "*#4*35*14*0200*3##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.753, + "t": 29.028, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*35*13*00##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's local offset is set to 0°C." + "session": "cmd", + "frame": "*#4*35*13*00##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.772, + "t": 29.028, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", - "frame": "*#4*35*0*0231##" + "frame": "*#*1##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.772, + "t": 29.636, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*35*12*0200*3##" + "session": "evt", + "frame": "*#4*35*0*0231##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's main sensor is reporting a temperature of 23.1°C." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.772, + "t": 29.941, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*4*1*35##" + "session": "evt", + "frame": "*#4*35*12*0200*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's local target temperature is set to 20.0°C." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.772, + "t": 29.942, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*35*14*0200*3##" + "session": "evt", + "frame": "*4*1*35##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's season is heating." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.772, + "t": 30.214, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*35*13*00##" + "session": "evt", + "frame": "*#4*35*14*0200*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's target temperature is set to 20.0°C." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.772, + "t": 30.316, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*35*13*00##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's local offset is set to 0°C." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 14.772, + "t": 30.335, "utc": "13:20:40", "step": "read_who4", "dir": "result", @@ -2197,7 +2122,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 18.773, + "t": 34.336, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -2206,51 +2131,54 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 18.937, + "t": 34.336, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*35*12*0200*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's local target temperature is set to 20.0°C." + "session": "cmd", + "frame": "*#4*35*12*0200*3##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 18.952, + "t": 34.336, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*4*1*35##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's season is heating." + "session": "cmd", + "frame": "*4*1*35##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 18.974, + "t": 34.336, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", - "frame": "*#4*35*12*0200*3##" + "frame": "*#*1##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 18.974, + "t": 34.5, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*4*1*35##" + "session": "evt", + "frame": "*#4*35*12*0200*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's local target temperature is set to 20.0°C." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 18.974, + "t": 34.515, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*4*1*35##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's season is heating." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 18.974, + "t": 34.537, "utc": "13:20:44", "step": "read_who4", "dir": "result", @@ -2269,7 +2197,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 20.975, + "t": 36.538, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -2278,33 +2206,35 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 21.118, + "t": 36.538, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*35*14*0200*3##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's target temperature is set to 20.0°C." + "session": "cmd", + "frame": "*#4*35*14*0200*3##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 21.139, + "t": 36.538, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", - "frame": "*#4*35*14*0200*3##" + "frame": "*#*1##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 21.139, + "t": 36.681, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*35*14*0200*3##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's target temperature is set to 20.0°C." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 21.139, + "t": 36.702, "utc": "13:20:46", "step": "read_who4", "dir": "result", @@ -2321,7 +2251,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 23.139, + "t": 38.702, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -2330,33 +2260,35 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 23.325, + "t": 38.702, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*35#1*20*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's actuator 1 is off." + "session": "cmd", + "frame": "*#4*35#1*20*0##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 23.328, + "t": 38.702, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", - "frame": "*#4*35#1*20*0##" + "frame": "*#*1##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 23.328, + "t": 38.888, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*35#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's actuator 1 is off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 23.328, + "t": 38.891, "utc": "13:20:48", "step": "read_who4", "dir": "result", @@ -2373,7 +2305,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.329, + "t": 40.892, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -2382,159 +2314,168 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.443, + "t": 40.892, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*39#1*20*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 39's actuator 1 is off." + "session": "cmd", + "frame": "*#4*39#1*20*0##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.476, + "t": 40.892, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*48#2*20*5##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 48's fan is off." + "session": "cmd", + "frame": "*#4*48#2*20*5##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.508, + "t": 40.892, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*35#1*20*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 35's actuator 1 is off." + "session": "cmd", + "frame": "*#4*35#1*20*0##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.549, + "t": 40.892, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*64#1*20*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 64's actuator 1 is off." + "session": "cmd", + "frame": "*#4*64#1*20*0##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.574, + "t": 40.892, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*40#1*20*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 40's actuator 1 is off." + "session": "cmd", + "frame": "*#4*40#1*20*0##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.614, + "t": 40.892, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*47#2*20*5##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 47's fan is off." + "session": "cmd", + "frame": "*#4*47#2*20*5##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.647, + "t": 40.892, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*53#1*20*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 53's actuator 1 is off." + "session": "cmd", + "frame": "*#4*53#1*20*0##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.691, + "t": 40.892, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*43#1*20*0##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 43's actuator 1 is off." + "session": "cmd", + "frame": "*#4*43#1*20*0##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 40.892, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", - "frame": "*#4*39#1*20*0##" + "frame": "*#*1##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 41.006, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*48#2*20*5##" + "session": "evt", + "frame": "*#4*39#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 39's actuator 1 is off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 41.039, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*35#1*20*0##" + "session": "evt", + "frame": "*#4*48#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 48's fan is off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 41.071, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*64#1*20*0##" + "session": "evt", + "frame": "*#4*35#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 35's actuator 1 is off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 41.112, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*40#1*20*0##" + "session": "evt", + "frame": "*#4*64#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 64's actuator 1 is off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 41.137, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*47#2*20*5##" + "session": "evt", + "frame": "*#4*40#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 40's actuator 1 is off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 41.177, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*53#1*20*0##" + "session": "evt", + "frame": "*#4*47#2*20*5##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 47's fan is off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 41.21, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*43#1*20*0##" + "session": "evt", + "frame": "*#4*53#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 53's actuator 1 is off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 41.254, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*43#1*20*0##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 43's actuator 1 is off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.723, + "t": 41.286, "utc": "13:20:51", "step": "read_who4", "dir": "result", @@ -2559,48 +2500,13 @@ "*#4*40#1*20*0##", "*#4*47#2*20*5##", "*#4*53#1*20*0##", - "*#4*43#1*20*0##", - "*#4*60#2*20*5##", - "*#4*36#1*20*0##", - "*#4*65#1*20*0##", - "*#4*47#1*20*0##", - "*#4*66#1*20*0##", - "*#4*48#1*20*0##", - "*#4*67#1*20*0##", - "*#4*41#1*20*0##", - "*#4*70#2*20*5##", - "*#4*0#1*20*0##", - "*#4*57#1*20*0##", - "*#4*37#1*20*0##", - "*#4*58#1*20*0##", - "*#4*0#3*20*0##", - "*#4*60#1*20*0##", - "*#4*38#1*20*0##", - "*#4*68#1*20*0##", - "*#4*42#1*20*0##", - "*#4*49#1*20*0##", - "*#4*44#1*20*0##", - "*#4*51#1*20*0##", - "*#4*0#4*20*0##", - "*#4*61#1*20*0##", - "*#4*59#1*20*0##", - "*#4*70#1*20*0##", - "*#4*52#1*20*0##", - "*#4*62#1*20*0##", - "*#4*50#1*20*0##", - "*#4*0#2*20*0##", - "*#4*57#2*20*5##", - "*#4*63#1*20*0##", - "*#4*55#1*20*0##", - "*#4*45#1*20*0##", - "*#4*69#1*20*0##", - "*#4*46#1*20*0##" + "*#4*43#1*20*0##" ], "note": "all_zone_actuators_44_frames_including_zone_0" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.729, + "t": 41.292, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2610,7 +2516,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.755, + "t": 41.318, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2620,7 +2526,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.79, + "t": 41.353, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2630,7 +2536,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.825, + "t": 41.388, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2640,7 +2546,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.859, + "t": 41.422, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2650,7 +2556,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.911, + "t": 41.474, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2660,7 +2566,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.932, + "t": 41.495, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2670,7 +2576,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 25.981, + "t": 41.544, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2680,7 +2586,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.006, + "t": 41.569, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2690,7 +2596,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.051, + "t": 41.614, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2700,7 +2606,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.076, + "t": 41.639, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2710,7 +2616,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.112, + "t": 41.675, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2720,7 +2626,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.146, + "t": 41.709, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2730,7 +2636,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.184, + "t": 41.747, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2740,7 +2646,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.216, + "t": 41.779, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2750,7 +2656,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.254, + "t": 41.817, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2760,7 +2666,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.289, + "t": 41.852, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2770,7 +2676,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.326, + "t": 41.889, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2780,7 +2686,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.359, + "t": 41.922, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2790,7 +2696,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.402, + "t": 41.965, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2800,7 +2706,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.429, + "t": 41.992, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2810,7 +2716,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.469, + "t": 42.032, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2820,7 +2726,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.503, + "t": 42.066, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2830,7 +2736,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.544, + "t": 42.107, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2840,7 +2746,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.579, + "t": 42.142, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2850,7 +2756,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.631, + "t": 42.194, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2860,7 +2766,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.661, + "t": 42.224, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2870,7 +2776,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.698, + "t": 42.261, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2880,7 +2786,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.735, + "t": 42.298, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2890,7 +2796,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.768, + "t": 42.331, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2900,7 +2806,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.826, + "t": 42.389, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2910,7 +2816,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.858, + "t": 42.421, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2920,7 +2826,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.921, + "t": 42.484, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2930,7 +2836,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 26.948, + "t": 42.511, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2940,7 +2846,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 27.011, + "t": 42.574, "step": "read_who4", "dir": "rx", "session": "evt", @@ -2950,7 +2856,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 27.723, + "t": 43.286, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -2959,7 +2865,8 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 29.851, + "t": 43.286, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", @@ -2967,7 +2874,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 29.851, + "t": 45.414, "utc": "13:20:55", "step": "read_who4", "dir": "result", @@ -2980,7 +2887,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 31.852, + "t": 47.415, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -2989,159 +2896,168 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.011, + "t": 47.415, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*39*60*51##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 39's main sensor is reporting a humidity of 51.0%." + "session": "cmd", + "frame": "*#4*39*60*51##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.041, + "t": 47.415, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*53*60*60##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 53's main sensor is reporting a humidity of 60.0%." + "session": "cmd", + "frame": "*#4*53*60*60##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.09, + "t": 47.415, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*48*60*54##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 48's main sensor is reporting a humidity of 54.0%." + "session": "cmd", + "frame": "*#4*48*60*54##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.126, + "t": 47.415, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*69*60*52##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 69's main sensor is reporting a humidity of 52.0%." + "session": "cmd", + "frame": "*#4*69*60*52##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.19, + "t": 47.415, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*40*60*47##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 40's main sensor is reporting a humidity of 47.0%." + "session": "cmd", + "frame": "*#4*40*60*47##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.225, + "t": 47.415, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*42*60*52##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 42's main sensor is reporting a humidity of 52.0%." + "session": "cmd", + "frame": "*#4*42*60*52##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.276, + "t": 47.415, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*43*60*54##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 43's main sensor is reporting a humidity of 54.0%." + "session": "cmd", + "frame": "*#4*43*60*54##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.326, + "t": 47.415, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*60*60*54##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 60's main sensor is reporting a humidity of 54.0%." + "session": "cmd", + "frame": "*#4*60*60*54##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.415, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", - "frame": "*#4*39*60*51##" + "frame": "*#*1##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.574, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*53*60*60##" + "session": "evt", + "frame": "*#4*39*60*51##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 39's main sensor is reporting a humidity of 51.0%." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.604, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*48*60*54##" + "session": "evt", + "frame": "*#4*53*60*60##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 53's main sensor is reporting a humidity of 60.0%." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.653, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*69*60*52##" + "session": "evt", + "frame": "*#4*48*60*54##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 48's main sensor is reporting a humidity of 54.0%." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.689, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*40*60*47##" + "session": "evt", + "frame": "*#4*69*60*52##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 69's main sensor is reporting a humidity of 52.0%." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.753, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*42*60*52##" + "session": "evt", + "frame": "*#4*40*60*47##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 40's main sensor is reporting a humidity of 47.0%." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.788, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*43*60*54##" + "session": "evt", + "frame": "*#4*42*60*52##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 42's main sensor is reporting a humidity of 52.0%." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.839, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#4*60*60*54##" + "session": "evt", + "frame": "*#4*43*60*54##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 43's main sensor is reporting a humidity of 54.0%." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.889, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*60*60*54##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 60's main sensor is reporting a humidity of 54.0%." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.351, + "t": 47.914, "utc": "13:20:57", "step": "read_who4", "dir": "result", @@ -3166,22 +3082,13 @@ "*#4*40*60*47##", "*#4*42*60*52##", "*#4*43*60*54##", - "*#4*60*60*54##", - "*#4*47*60*54##", - "*#4*57*60*59##", - "*#4*41*60*49##", - "*#4*61*60*53##", - "*#4*55*60*51##", - "*#4*70*60*69##", - "*#4*58*60*55##", - "*#4*68*60*59##", - "*#4*59*60*66##" + "*#4*60*60*54##" ], "note": "general_humidity_17_zones" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.371, + "t": 47.934, "step": "read_who4", "dir": "rx", "session": "evt", @@ -3191,7 +3098,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.425, + "t": 47.988, "step": "read_who4", "dir": "rx", "session": "evt", @@ -3201,7 +3108,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.474, + "t": 48.037, "step": "read_who4", "dir": "rx", "session": "evt", @@ -3211,7 +3118,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.561, + "t": 48.124, "step": "read_who4", "dir": "rx", "session": "evt", @@ -3221,7 +3128,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.6, + "t": 48.163, "step": "read_who4", "dir": "rx", "session": "evt", @@ -3231,7 +3138,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.648, + "t": 48.211, "step": "read_who4", "dir": "rx", "session": "evt", @@ -3241,7 +3148,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.703, + "t": 48.266, "step": "read_who4", "dir": "rx", "session": "evt", @@ -3251,7 +3158,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.754, + "t": 48.317, "step": "read_who4", "dir": "rx", "session": "evt", @@ -3261,7 +3168,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 32.823, + "t": 48.386, "step": "read_who4", "dir": "rx", "session": "evt", @@ -3271,7 +3178,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 34.353, + "t": 49.916, "step": "read_who16", "dir": "tx", "session": "cmd", @@ -3280,7 +3187,8 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 34.356, + "t": 49.916, + "t_estimated": true, "step": "read_who16", "dir": "rx", "session": "cmd", @@ -3288,7 +3196,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 34.356, + "t": 49.919, "utc": "13:20:59", "step": "read_who16", "dir": "result", @@ -3301,7 +3209,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 36.356, + "t": 51.919, "step": "read_who16", "dir": "tx", "session": "cmd", @@ -3310,7 +3218,8 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 36.359, + "t": 51.919, + "t_estimated": true, "step": "read_who16", "dir": "rx", "session": "cmd", @@ -3318,7 +3227,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 36.359, + "t": 51.922, "utc": "13:21:01", "step": "read_who16", "dir": "result", @@ -3331,7 +3240,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 38.361, + "t": 53.924, "step": "read_who5", "dir": "tx", "session": "cmd", @@ -3340,7 +3249,8 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 38.366, + "t": 53.924, + "t_estimated": true, "step": "read_who5", "dir": "rx", "session": "cmd", @@ -3348,7 +3258,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 38.366, + "t": 53.929, "utc": "13:21:03", "step": "read_who5", "dir": "result", @@ -3361,7 +3271,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.368, + "t": 55.931, "step": "read_who1", "dir": "tx", "session": "cmd", @@ -3370,1815 +3280,1916 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.462, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*14##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 14 is switched off." + "session": "cmd", + "frame": "*1*0*14##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.68, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0514##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0514 is switched off." + "session": "cmd", + "frame": "*1*0*0514##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.68, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0014##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0014 is switched off." + "session": "cmd", + "frame": "*1*0*0014##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.68, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0415##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0415 is switched off." + "session": "cmd", + "frame": "*1*0*0415##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.68, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0015##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0015 is switched off." + "session": "cmd", + "frame": "*1*0*0015##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.68, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*14##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 14 is switched off." + "session": "cmd", + "frame": "*1*0*14##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.68, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0315##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0315 is switched off." + "session": "cmd", + "frame": "*1*0*0315##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.711, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0115##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0115 is switched off." + "session": "cmd", + "frame": "*1*0*0115##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.749, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*45##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 45 is switched off." + "session": "cmd", + "frame": "*1*0*45##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.788, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0513##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0513 is switched off." + "session": "cmd", + "frame": "*1*0*0513##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.821, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*33##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 33 is switched off." + "session": "cmd", + "frame": "*1*0*33##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.858, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0010##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0010 is switched off." + "session": "cmd", + "frame": "*1*0*0010##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.891, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0314##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0314 is switched off." + "session": "cmd", + "frame": "*1*0*0314##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.929, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*17##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 17 is switched off." + "session": "cmd", + "frame": "*1*0*17##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 40.961, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*34##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 34 is switched off." + "session": "cmd", + "frame": "*1*0*34##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.006, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*21##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 21 is switched off." + "session": "cmd", + "frame": "*1*0*21##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.039, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0215##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0215 is switched off." + "session": "cmd", + "frame": "*1*0*0215##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.077, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*11##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 11 is switched off." + "session": "cmd", + "frame": "*1*0*11##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.109, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*36##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 36 is switched off." + "session": "cmd", + "frame": "*1*0*36##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.146, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*37##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 37 is switched off." + "session": "cmd", + "frame": "*1*0*37##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.183, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*43##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 43 is switched off." + "session": "cmd", + "frame": "*1*0*43##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.22, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*38##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 38 is switched off." + "session": "cmd", + "frame": "*1*0*38##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.253, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0012##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0012 is switched off." + "session": "cmd", + "frame": "*1*0*0012##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.287, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0211##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0211 is switched off." + "session": "cmd", + "frame": "*1*0*0211##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.329, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0515##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0515 is switched off." + "session": "cmd", + "frame": "*1*0*0515##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.367, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0013##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0013 is switched off." + "session": "cmd", + "frame": "*1*0*0013##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.4, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0512##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0512 is switched off." + "session": "cmd", + "frame": "*1*0*0512##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.441, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0311##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0311 is switched off." + "session": "cmd", + "frame": "*1*0*0311##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.479, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0312##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0312 is switched off." + "session": "cmd", + "frame": "*1*0*0312##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.511, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*21##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 21 is switched off." + "session": "cmd", + "frame": "*1*0*21##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.547, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0313##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0313 is switched off." + "session": "cmd", + "frame": "*1*0*0313##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.583, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0111##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0111 is switched off." + "session": "cmd", + "frame": "*1*0*0111##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.617, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0212##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0212 is switched off." + "session": "cmd", + "frame": "*1*0*0212##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.654, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*61##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 61 is switched off." + "session": "cmd", + "frame": "*1*0*61##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.687, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*49##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 49 is switched off." + "session": "cmd", + "frame": "*1*0*49##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.723, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*12##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 12 is switched off." + "session": "cmd", + "frame": "*1*0*12##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.76, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*29##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 29 is switched off." + "session": "cmd", + "frame": "*1*0*29##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.791, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*18##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 18 is switched off." + "session": "cmd", + "frame": "*1*0*18##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.827, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0310##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0310 is switched off." + "session": "cmd", + "frame": "*1*0*0310##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.86, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0011##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0011 is switched off." + "session": "cmd", + "frame": "*1*0*0011##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.891, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*46##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 46 is switched off." + "session": "cmd", + "frame": "*1*0*46##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.931, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0510##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0510 is switched off." + "session": "cmd", + "frame": "*1*0*0510##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 41.961, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0213##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0213 is switched off." + "session": "cmd", + "frame": "*1*0*0213##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.005, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*41##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 41 is switched off." + "session": "cmd", + "frame": "*1*0*41##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.039, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0511##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0511 is switched off." + "session": "cmd", + "frame": "*1*0*0511##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.072, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*44##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 44 is switched off." + "session": "cmd", + "frame": "*1*0*44##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.111, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*47##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 47 is switched off." + "session": "cmd", + "frame": "*1*0*47##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.148, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*42##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 42 is switched off." + "session": "cmd", + "frame": "*1*0*42##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.185, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0214##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0214 is switched off." + "session": "cmd", + "frame": "*1*0*0214##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.221, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*48##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 48 is switched off." + "session": "cmd", + "frame": "*1*0*48##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.256, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*24##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 24 is switched off." + "session": "cmd", + "frame": "*1*0*24##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.291, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*13##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 13 is switched off." + "session": "cmd", + "frame": "*1*0*13##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.326, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0210##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0210 is switched off." + "session": "cmd", + "frame": "*1*0*0210##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.361, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*64##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 64 is switched off." + "session": "cmd", + "frame": "*1*0*64##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.396, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0211##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0211 is switched off." + "session": "cmd", + "frame": "*1*0*0211##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.441, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0315##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0315 is switched off." + "session": "cmd", + "frame": "*1*0*0315##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.481, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0112##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0112 is switched off." + "session": "cmd", + "frame": "*1*0*0112##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.511, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*39##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 39 is switched off." + "session": "cmd", + "frame": "*1*0*39##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.551, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*25##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 25 is switched off." + "session": "cmd", + "frame": "*1*0*25##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.586, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0212##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0212 is switched off." + "session": "cmd", + "frame": "*1*0*0212##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.624, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*65##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 65 is switched off." + "session": "cmd", + "frame": "*1*0*65##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.658, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*45##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 45 is switched off." + "session": "cmd", + "frame": "*1*0*45##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.691, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*16##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 16 is switched off." + "session": "cmd", + "frame": "*1*0*16##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.727, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*46##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 46 is switched off." + "session": "cmd", + "frame": "*1*0*46##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.767, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0113##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0113 is switched off." + "session": "cmd", + "frame": "*1*0*0113##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.796, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0213##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0213 is switched off." + "session": "cmd", + "frame": "*1*0*0213##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.833, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*62##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 62 is switched off." + "session": "cmd", + "frame": "*1*0*62##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.867, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0410##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0410 is switched off." + "session": "cmd", + "frame": "*1*0*0410##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.902, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0514##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0514 is switched off." + "session": "cmd", + "frame": "*1*0*0514##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.935, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0214##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0214 is switched off." + "session": "cmd", + "frame": "*1*0*0214##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 42.972, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*19##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 19 is switched off." + "session": "cmd", + "frame": "*1*0*19##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.007, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*47##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 47 is switched off." + "session": "cmd", + "frame": "*1*0*47##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.07, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0413##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0413 is switched off." + "session": "cmd", + "frame": "*1*0*0413##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.096, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*31##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 31 is switched off." + "session": "cmd", + "frame": "*1*0*31##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.135, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*26##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 26 is switched off." + "session": "cmd", + "frame": "*1*0*26##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.17, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0114##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0114 is switched off." + "session": "cmd", + "frame": "*1*0*0114##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.207, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0515##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0515 is switched off." + "session": "cmd", + "frame": "*1*0*0515##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.24, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0110##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0110 is switched off." + "session": "cmd", + "frame": "*1*0*0110##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.277, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*48##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 48 is switched off." + "session": "cmd", + "frame": "*1*0*48##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.319, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*32##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 32 is switched off." + "session": "cmd", + "frame": "*1*0*32##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.359, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*41##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 41 is switched off." + "session": "cmd", + "frame": "*1*0*41##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.397, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*42##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 42 is switched off." + "session": "cmd", + "frame": "*1*0*42##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.424, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0411##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0411 is switched off." + "session": "cmd", + "frame": "*1*0*0411##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.461, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*63##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 63 is switched off." + "session": "cmd", + "frame": "*1*0*63##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.505, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*27##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 27 is switched off." + "session": "cmd", + "frame": "*1*0*27##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.549, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*11##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 11 is switched off." + "session": "cmd", + "frame": "*1*0*11##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.586, - "step": "read_who1", - "dir": "rx", - "session": "evt", - "frame": "*1*0*66##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 66 is switched off." + "t": 55.931, + "t_estimated": true, + "step": "read_who1", + "dir": "rx", + "session": "cmd", + "frame": "*1*0*66##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.629, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0215##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0215 is switched off." + "session": "cmd", + "frame": "*1*0*0215##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.676, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0512##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0512 is switched off." + "session": "cmd", + "frame": "*1*0*0512##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.719, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*28##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 28 is switched off." + "session": "cmd", + "frame": "*1*0*28##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.767, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*31##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 31 is switched off." + "session": "cmd", + "frame": "*1*0*31##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.808, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*32##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 32 is switched off." + "session": "cmd", + "frame": "*1*0*32##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.837, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*12##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 12 is switched off." + "session": "cmd", + "frame": "*1*0*12##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.87, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*25##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 25 is switched off." + "session": "cmd", + "frame": "*1*0*25##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.908, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*13##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 13 is switched off." + "session": "cmd", + "frame": "*1*0*13##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 43.941, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*26##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 26 is switched off." + "session": "cmd", + "frame": "*1*0*26##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 44.003, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*68##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 68 is switched off." + "session": "cmd", + "frame": "*1*0*68##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 44.032, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*27##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 27 is switched off." + "session": "cmd", + "frame": "*1*0*27##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 44.094, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*69##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 69 is switched off." + "session": "cmd", + "frame": "*1*0*69##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 44.12, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*28##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 28 is switched off." + "session": "cmd", + "frame": "*1*0*28##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 55.931, + "t_estimated": true, "step": "read_who1", "dir": "rx", "session": "cmd", - "frame": "*1*0*14##" + "frame": "*#*1##" }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.025, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0514##" + "session": "evt", + "frame": "*1*0*14##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 14 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.243, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0014##" + "session": "evt", + "frame": "*1*0*0514##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0514 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.243, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0415##" + "session": "evt", + "frame": "*1*0*0014##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0014 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.243, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0015##" + "session": "evt", + "frame": "*1*0*0415##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0415 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.243, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*14##" + "session": "evt", + "frame": "*1*0*0015##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0015 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.243, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0315##" + "session": "evt", + "frame": "*1*0*14##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 14 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.243, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0115##" + "session": "evt", + "frame": "*1*0*0315##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0315 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.274, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*45##" + "session": "evt", + "frame": "*1*0*0115##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0115 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.312, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0513##" + "session": "evt", + "frame": "*1*0*45##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 45 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.351, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*33##" + "session": "evt", + "frame": "*1*0*0513##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0513 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.384, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0010##" + "session": "evt", + "frame": "*1*0*33##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 33 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.421, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0314##" + "session": "evt", + "frame": "*1*0*0010##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0010 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.454, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*17##" + "session": "evt", + "frame": "*1*0*0314##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0314 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.492, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*34##" + "session": "evt", + "frame": "*1*0*17##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 17 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.524, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*21##" + "session": "evt", + "frame": "*1*0*34##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 34 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.569, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0215##" + "session": "evt", + "frame": "*1*0*21##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 21 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.602, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*11##" + "session": "evt", + "frame": "*1*0*0215##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0215 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.64, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*36##" + "session": "evt", + "frame": "*1*0*11##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 11 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.672, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*37##" + "session": "evt", + "frame": "*1*0*36##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 36 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.709, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*43##" + "session": "evt", + "frame": "*1*0*37##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 37 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.746, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*38##" + "session": "evt", + "frame": "*1*0*43##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 43 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.783, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0012##" + "session": "evt", + "frame": "*1*0*38##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 38 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.816, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0211##" + "session": "evt", + "frame": "*1*0*0012##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0012 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.85, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0515##" + "session": "evt", + "frame": "*1*0*0211##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0211 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.892, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0013##" + "session": "evt", + "frame": "*1*0*0515##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0515 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.93, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0512##" + "session": "evt", + "frame": "*1*0*0013##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0013 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 56.963, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0311##" + "session": "evt", + "frame": "*1*0*0512##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0512 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.004, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0312##" + "session": "evt", + "frame": "*1*0*0311##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0311 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.042, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*21##" + "session": "evt", + "frame": "*1*0*0312##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0312 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.074, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0313##" + "session": "evt", + "frame": "*1*0*21##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 21 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.11, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0111##" + "session": "evt", + "frame": "*1*0*0313##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0313 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.146, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0212##" + "session": "evt", + "frame": "*1*0*0111##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0111 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.18, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*61##" + "session": "evt", + "frame": "*1*0*0212##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0212 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.217, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*49##" + "session": "evt", + "frame": "*1*0*61##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 61 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.25, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*12##" + "session": "evt", + "frame": "*1*0*49##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 49 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.286, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*29##" + "session": "evt", + "frame": "*1*0*12##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 12 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.323, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*18##" + "session": "evt", + "frame": "*1*0*29##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 29 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.354, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0310##" + "session": "evt", + "frame": "*1*0*18##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 18 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.39, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0011##" + "session": "evt", + "frame": "*1*0*0310##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0310 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.423, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*46##" + "session": "evt", + "frame": "*1*0*0011##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0011 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.454, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0510##" + "session": "evt", + "frame": "*1*0*46##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 46 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.494, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0213##" + "session": "evt", + "frame": "*1*0*0510##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0510 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.524, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*41##" + "session": "evt", + "frame": "*1*0*0213##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0213 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.568, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0511##" + "session": "evt", + "frame": "*1*0*41##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 41 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.602, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*44##" + "session": "evt", + "frame": "*1*0*0511##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0511 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.635, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*47##" + "session": "evt", + "frame": "*1*0*44##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 44 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.674, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*42##" + "session": "evt", + "frame": "*1*0*47##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 47 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.711, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0214##" + "session": "evt", + "frame": "*1*0*42##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 42 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.748, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*48##" + "session": "evt", + "frame": "*1*0*0214##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0214 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.784, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*24##" + "session": "evt", + "frame": "*1*0*48##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 48 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.819, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*13##" + "session": "evt", + "frame": "*1*0*24##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 24 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.854, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0210##" + "session": "evt", + "frame": "*1*0*13##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 13 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.889, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*64##" + "session": "evt", + "frame": "*1*0*0210##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0210 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.924, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0211##" + "session": "evt", + "frame": "*1*0*64##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 64 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 57.959, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0315##" + "session": "evt", + "frame": "*1*0*0211##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0211 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.004, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0112##" + "session": "evt", + "frame": "*1*0*0315##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0315 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.044, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*39##" + "session": "evt", + "frame": "*1*0*0112##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0112 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.074, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*25##" + "session": "evt", + "frame": "*1*0*39##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 39 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.114, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0212##" + "session": "evt", + "frame": "*1*0*25##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 25 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.149, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*65##" + "session": "evt", + "frame": "*1*0*0212##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0212 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.187, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*45##" + "session": "evt", + "frame": "*1*0*65##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 65 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.221, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*16##" + "session": "evt", + "frame": "*1*0*45##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 45 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.254, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*46##" + "session": "evt", + "frame": "*1*0*16##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 16 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.29, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0113##" + "session": "evt", + "frame": "*1*0*46##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 46 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.33, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0213##" + "session": "evt", + "frame": "*1*0*0113##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0113 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.359, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*62##" + "session": "evt", + "frame": "*1*0*0213##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0213 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.396, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0410##" + "session": "evt", + "frame": "*1*0*62##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 62 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.43, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0514##" + "session": "evt", + "frame": "*1*0*0410##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0410 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.465, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0214##" + "session": "evt", + "frame": "*1*0*0514##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0514 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.498, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*19##" + "session": "evt", + "frame": "*1*0*0214##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0214 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.535, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*47##" + "session": "evt", + "frame": "*1*0*19##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 19 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.57, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0413##" + "session": "evt", + "frame": "*1*0*47##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 47 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.633, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*31##" + "session": "evt", + "frame": "*1*0*0413##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0413 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.659, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*26##" + "session": "evt", + "frame": "*1*0*31##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 31 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.698, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0114##" + "session": "evt", + "frame": "*1*0*26##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 26 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.733, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0515##" + "session": "evt", + "frame": "*1*0*0114##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0114 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.77, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0110##" + "session": "evt", + "frame": "*1*0*0515##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0515 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.803, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*48##" + "session": "evt", + "frame": "*1*0*0110##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0110 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.84, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*32##" + "session": "evt", + "frame": "*1*0*48##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 48 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.882, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*41##" + "session": "evt", + "frame": "*1*0*32##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 32 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.922, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*42##" + "session": "evt", + "frame": "*1*0*41##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 41 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.96, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0411##" + "session": "evt", + "frame": "*1*0*42##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 42 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 58.987, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*63##" + "session": "evt", + "frame": "*1*0*0411##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0411 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.024, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*27##" + "session": "evt", + "frame": "*1*0*63##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 63 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.068, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*11##" + "session": "evt", + "frame": "*1*0*27##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 27 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.112, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*66##" + "session": "evt", + "frame": "*1*0*11##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 11 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.149, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0215##" + "session": "evt", + "frame": "*1*0*66##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 66 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.192, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*0512##" + "session": "evt", + "frame": "*1*0*0215##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0215 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.239, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*28##" + "session": "evt", + "frame": "*1*0*0512##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0512 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.282, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*31##" + "session": "evt", + "frame": "*1*0*28##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 28 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.33, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*32##" + "session": "evt", + "frame": "*1*0*31##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 31 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.371, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*12##" + "session": "evt", + "frame": "*1*0*32##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 32 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.4, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*25##" + "session": "evt", + "frame": "*1*0*12##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 12 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.433, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*13##" + "session": "evt", + "frame": "*1*0*25##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 25 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.471, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*26##" + "session": "evt", + "frame": "*1*0*13##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 13 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.504, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*68##" + "session": "evt", + "frame": "*1*0*26##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 26 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.566, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*27##" + "session": "evt", + "frame": "*1*0*68##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 68 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.595, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*69##" + "session": "evt", + "frame": "*1*0*27##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 27 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.657, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*1*0*28##" + "session": "evt", + "frame": "*1*0*69##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 69 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 59.683, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*28##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 28 is switched off." }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 45.106, + "t": 60.669, "utc": "13:21:10", "step": "read_who1", "dir": "result", @@ -5393,7 +5404,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.107, + "t": 65.67, "step": "read_who2", "dir": "tx", "session": "cmd", @@ -5402,7 +5413,16 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.211, + "t": 65.67, + "t_estimated": true, + "step": "read_who2", + "dir": "rx", + "session": "cmd", + "frame": "*#*1##" + }, + { + "run": "run2_reads_thermo_sound_alarm_lights", + "t": 65.774, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5412,7 +5432,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.242, + "t": 65.805, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5422,7 +5442,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.269, + "t": 65.832, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5432,7 +5452,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.312, + "t": 65.875, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5442,7 +5462,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.34, + "t": 65.903, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5452,7 +5472,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.369, + "t": 65.932, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5462,7 +5482,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.407, + "t": 65.97, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5472,7 +5492,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.438, + "t": 66.001, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5482,7 +5502,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.479, + "t": 66.042, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5492,7 +5512,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.521, + "t": 66.084, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5502,7 +5522,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.554, + "t": 66.117, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5512,7 +5532,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.589, + "t": 66.152, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5522,7 +5542,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.622, + "t": 66.185, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5532,7 +5552,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.659, + "t": 66.222, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5542,7 +5562,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.69, + "t": 66.253, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5552,7 +5572,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.731, + "t": 66.294, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5562,7 +5582,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.766, + "t": 66.329, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5572,7 +5592,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.8, + "t": 66.363, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5582,7 +5602,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.835, + "t": 66.398, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5592,7 +5612,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.871, + "t": 66.434, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5602,7 +5622,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.905, + "t": 66.468, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5612,7 +5632,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.945, + "t": 66.508, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5622,7 +5642,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 50.979, + "t": 66.542, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5632,7 +5652,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.015, + "t": 66.578, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5642,7 +5662,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.051, + "t": 66.614, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5652,7 +5672,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.095, + "t": 66.658, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5662,7 +5682,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.126, + "t": 66.689, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5672,7 +5692,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.161, + "t": 66.724, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5682,7 +5702,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.2, + "t": 66.763, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5692,7 +5712,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.239, + "t": 66.802, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5702,7 +5722,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.275, + "t": 66.838, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5712,7 +5732,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.31, + "t": 66.873, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5722,7 +5742,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.345, + "t": 66.908, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5732,7 +5752,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.38, + "t": 66.943, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5742,7 +5762,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.418, + "t": 66.981, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5752,7 +5772,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.455, + "t": 67.018, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5762,7 +5782,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.489, + "t": 67.052, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5772,7 +5792,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.52, + "t": 67.083, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5782,7 +5802,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.566, + "t": 67.129, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5792,7 +5812,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.602, + "t": 67.165, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5802,7 +5822,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.635, + "t": 67.198, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5812,7 +5832,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.67, + "t": 67.233, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5822,7 +5842,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.71, + "t": 67.273, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5832,7 +5852,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.74, + "t": 67.303, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5842,7 +5862,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.775, + "t": 67.338, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5852,7 +5872,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.813, + "t": 67.376, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5862,7 +5882,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.84, + "t": 67.403, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5872,7 +5892,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.881, + "t": 67.444, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5882,7 +5902,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.916, + "t": 67.479, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5892,7 +5912,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.958, + "t": 67.521, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5902,7 +5922,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 51.991, + "t": 67.554, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5912,7 +5932,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.033, + "t": 67.596, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5922,7 +5942,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.068, + "t": 67.631, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5932,7 +5952,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.1, + "t": 67.663, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5942,7 +5962,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.136, + "t": 67.699, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5952,7 +5972,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.176, + "t": 67.739, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5962,7 +5982,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.208, + "t": 67.771, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5972,7 +5992,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.247, + "t": 67.81, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5982,7 +6002,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.281, + "t": 67.844, "step": "read_who2", "dir": "rx", "session": "evt", @@ -5992,7 +6012,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.339, + "t": 67.902, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6002,7 +6022,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.37, + "t": 67.933, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6012,7 +6032,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.4, + "t": 67.963, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6022,7 +6042,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.44, + "t": 68.003, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6032,7 +6052,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.48, + "t": 68.043, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6042,7 +6062,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.518, + "t": 68.081, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6052,7 +6072,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.552, + "t": 68.115, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6062,7 +6082,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.591, + "t": 68.154, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6072,7 +6092,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.625, + "t": 68.188, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6082,7 +6102,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.661, + "t": 68.224, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6092,7 +6112,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.694, + "t": 68.257, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6102,7 +6122,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.74, + "t": 68.303, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6112,7 +6132,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.771, + "t": 68.334, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6122,7 +6142,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.81, + "t": 68.373, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6132,7 +6152,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.868, + "t": 68.431, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6142,7 +6162,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.893, + "t": 68.456, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6152,7 +6172,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.942, + "t": 68.505, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6162,7 +6182,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 52.97, + "t": 68.533, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6172,7 +6192,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 53.014, + "t": 68.577, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6182,7 +6202,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 53.069, + "t": 68.632, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6192,7 +6212,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 53.121, + "t": 68.684, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6202,7 +6222,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 53.167, + "t": 68.73, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6212,7 +6232,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 53.208, + "t": 68.771, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6222,7 +6242,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 53.26, + "t": 68.823, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6232,7 +6252,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 53.316, + "t": 68.879, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6242,7 +6262,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 53.37, + "t": 68.933, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6252,7 +6272,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 53.429, + "t": 68.992, "step": "read_who2", "dir": "rx", "session": "evt", @@ -6262,15 +6282,7 @@ }, { "run": "run2_reads_thermo_sound_alarm_lights", - "t": 54.408, - "step": "read_who2", - "dir": "rx", - "session": "cmd", - "frame": "*#*1##" - }, - { - "run": "run2_reads_thermo_sound_alarm_lights", - "t": 54.408, + "t": 69.971, "utc": "13:21:19", "step": "read_who2", "dir": "result", @@ -6370,7 +6382,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 1.037, + "t": 72.008, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -6379,7 +6391,8 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 1.088, + "t": 72.008, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", @@ -6387,7 +6400,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 1.088, + "t": 72.059, "utc": "13:22:09", "step": "read_who4", "dir": "result", @@ -6400,7 +6413,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 7.09, + "t": 78.061, "step": "read_who4", "dir": "tx", "session": "cmd", @@ -6409,33 +6422,35 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 7.264, + "t": 78.061, + "t_estimated": true, "step": "read_who4", "dir": "rx", - "session": "evt", - "frame": "*#4*39*60*51##", - "ownd_class": "OWNHeatingEvent", - "ownd_log": "Zone 39's main sensor is reporting a humidity of 51.0%." + "session": "cmd", + "frame": "*#4*39*60*51##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 7.294, + "t": 78.061, + "t_estimated": true, "step": "read_who4", "dir": "rx", "session": "cmd", - "frame": "*#4*39*60*51##" + "frame": "*#*1##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 7.294, + "t": 78.235, "step": "read_who4", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#4*39*60*51##", + "ownd_class": "OWNHeatingEvent", + "ownd_log": "Zone 39's main sensor is reporting a humidity of 51.0%." }, { "run": "run3_reads_lights_addresses_humidity", - "t": 7.294, + "t": 78.265, "utc": "13:22:15", "step": "read_who4", "dir": "result", @@ -6452,7 +6467,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 9.296, + "t": 80.267, "step": "read_who1", "dir": "tx", "session": "cmd", @@ -6461,33 +6476,35 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 9.383, + "t": 80.267, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0014##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0014 is switched off." + "session": "cmd", + "frame": "*1*0*0014##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 9.386, + "t": 80.267, + "t_estimated": true, "step": "read_who1", "dir": "rx", "session": "cmd", - "frame": "*1*0*0014##" + "frame": "*#*1##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 9.386, + "t": 80.354, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*0014##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0014 is switched off." }, { "run": "run3_reads_lights_addresses_humidity", - "t": 9.386, + "t": 80.357, "utc": "13:22:17", "step": "read_who1", "dir": "result", @@ -6504,7 +6521,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 11.386, + "t": 82.357, "step": "read_who1", "dir": "tx", "session": "cmd", @@ -6513,33 +6530,35 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 11.483, + "t": 82.357, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*14##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 14 is switched off." + "session": "cmd", + "frame": "*1*0*14##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 11.485, + "t": 82.357, + "t_estimated": true, "step": "read_who1", "dir": "rx", "session": "cmd", - "frame": "*1*0*14##" + "frame": "*#*1##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 11.485, + "t": 82.454, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*14##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 14 is switched off." }, { "run": "run3_reads_lights_addresses_humidity", - "t": 11.485, + "t": 82.456, "utc": "13:22:19", "step": "read_who1", "dir": "result", @@ -6556,7 +6575,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 13.487, + "t": 84.458, "step": "read_who1", "dir": "tx", "session": "cmd", @@ -6565,33 +6584,35 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 13.573, + "t": 84.458, + "t_estimated": true, "step": "read_who1", "dir": "rx", - "session": "evt", - "frame": "*1*0*0010##", - "ownd_class": "OWNLightingEvent", - "ownd_log": "Light 0010 is switched off." + "session": "cmd", + "frame": "*1*0*0010##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 13.576, + "t": 84.458, + "t_estimated": true, "step": "read_who1", "dir": "rx", "session": "cmd", - "frame": "*1*0*0010##" + "frame": "*#*1##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 13.576, + "t": 84.544, "step": "read_who1", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*1*0*0010##", + "ownd_class": "OWNLightingEvent", + "ownd_log": "Light 0010 is switched off." }, { "run": "run3_reads_lights_addresses_humidity", - "t": 13.576, + "t": 84.547, "utc": "13:22:21", "step": "read_who1", "dir": "result", @@ -6608,7 +6629,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 15.577, + "t": 86.548, "step": "read_who1", "dir": "tx", "session": "cmd", @@ -6617,7 +6638,8 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 17.586, + "t": 86.548, + "t_estimated": true, "step": "read_who1", "dir": "rx", "session": "cmd", @@ -6625,7 +6647,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 17.586, + "t": 88.557, "utc": "13:22:25", "step": "read_who1", "dir": "result", @@ -6638,7 +6660,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 19.587, + "t": 90.558, "step": "read_who1", "dir": "tx", "session": "cmd", @@ -6647,7 +6669,8 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 19.595, + "t": 90.558, + "t_estimated": true, "step": "read_who1", "dir": "rx", "session": "cmd", @@ -6655,7 +6678,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 19.595, + "t": 90.566, "utc": "13:22:27", "step": "read_who1", "dir": "result", @@ -6668,7 +6691,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 21.596, + "t": 92.567, "step": "read_who1", "dir": "tx", "session": "cmd", @@ -6677,7 +6700,8 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 23.606, + "t": 92.567, + "t_estimated": true, "step": "read_who1", "dir": "rx", "session": "cmd", @@ -6685,7 +6709,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 23.606, + "t": 94.577, "utc": "13:22:31", "step": "read_who1", "dir": "result", @@ -6698,7 +6722,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 25.606, + "t": 96.577, "step": "read_who1", "dir": "tx", "session": "cmd", @@ -6707,7 +6731,8 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 25.62, + "t": 96.577, + "t_estimated": true, "step": "read_who1", "dir": "rx", "session": "cmd", @@ -6715,7 +6740,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 25.62, + "t": 96.591, "utc": "13:22:33", "step": "read_who1", "dir": "result", @@ -6728,7 +6753,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 27.622, + "t": 98.593, "step": "read_who1", "dir": "tx", "session": "cmd", @@ -6737,7 +6762,8 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 29.644, + "t": 98.593, + "t_estimated": true, "step": "read_who1", "dir": "rx", "session": "cmd", @@ -6745,7 +6771,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 29.644, + "t": 100.615, "utc": "13:22:37", "step": "read_who1", "dir": "result", @@ -6758,7 +6784,7 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 31.646, + "t": 102.617, "step": "read_who13", "dir": "tx", "session": "cmd", @@ -6767,33 +6793,35 @@ }, { "run": "run3_reads_lights_addresses_humidity", - "t": 31.665, + "t": 102.617, + "t_estimated": true, "step": "read_who13", "dir": "rx", - "session": "evt", - "frame": "*#13**0*16*22*38*999##", - "ownd_class": "OWNGatewayEvent", - "ownd_log": "Gateway's internal time is: 16:22:38." + "session": "cmd", + "frame": "*#13**0*16*22*38*999##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 31.669, + "t": 102.617, + "t_estimated": true, "step": "read_who13", "dir": "rx", "session": "cmd", - "frame": "*#13**0*16*22*38*999##" + "frame": "*#*1##" }, { "run": "run3_reads_lights_addresses_humidity", - "t": 31.669, + "t": 102.636, "step": "read_who13", "dir": "rx", - "session": "cmd", - "frame": "*#*1##" + "session": "evt", + "frame": "*#13**0*16*22*38*999##", + "ownd_class": "OWNGatewayEvent", + "ownd_log": "Gateway's internal time is: 16:22:38." }, { "run": "run3_reads_lights_addresses_humidity", - "t": 31.669, + "t": 102.64, "utc": "13:22:39", "step": "read_who13", "dir": "result", diff --git a/tests/test_f461_live_2026_10_23_trace.py b/tests/test_f461_live_2026_10_23_trace.py index ed1436c8d..cc5504e4b 100644 --- a/tests/test_f461_live_2026_10_23_trace.py +++ b/tests/test_f461_live_2026_10_23_trace.py @@ -106,6 +106,19 @@ def _evt(rows: list[dict], run: str) -> list[dict]: return [r for r in rows if r["run"] == run and r["dir"] == "rx" and r["session"] == "evt"] +def _evt_between(rows: list[dict], run: str, frame: str) -> list[str]: + """Event-session frames from the request ``frame`` of ``run`` until the next request of that run.""" + run_rows = [r for r in rows if r["run"] == run] + start = next(i for i, r in enumerate(run_rows) if r["dir"] == "tx" and r["frame"] == frame) + out: list[str] = [] + for r in run_rows[start + 1 :]: + if r["dir"] == "tx": + break + if r["dir"] == "rx" and r["session"] == "evt": + out.append(r["frame"]) + return out + + def _gateway() -> MagicMock: gw = MagicMock() gw.mac = MAC @@ -219,6 +232,10 @@ def test_schema_runs_and_synthetic_identity(trace_payload: dict, rows: list[dict } assert trace_payload["capture"]["kind"] == "derived_trace_archive" assert [r["run"] for r in trace_payload["capture"]["runs"]] == list(ALL_RUNS) + assert [r["t_offset"] for r in trace_payload["capture"]["runs"]][0] == 0.0 + ts = [f["timestamp"] for f in frames] + assert ts == sorted(ts), "one monotonic time axis across the runs" + assert all(a["t"] <= b["t"] for a, b in zip(rows, rows[1:], strict=False)) assert trace_payload["capture"]["window"] == { "first": "2026-10-23T20:38:04+00:00", "last": "2026-10-23T23:03:07+00:00", @@ -262,12 +279,19 @@ def test_result_rows_are_consistent_with_their_tx_and_cmd_rx_rows(rows: list[dic for i, r in enumerate(run_rows): if r["dir"] != "result": continue - tx = next(x for x in reversed(run_rows[:i]) if x["dir"] == "tx") + tx_i = next(j for j in range(i - 1, -1, -1) if run_rows[j]["dir"] == "tx") + tx = run_rows[tx_i] assert tx["frame"] == r["frame"] assert tx["t"] <= r["t"] assert abs((r["t"] - tx["t"]) - r["reply_time_s"]) < 0.002 - cmd_rx = [x["frame"] for x in run_rows[:i] if x["dir"] == "rx" and x["session"] == "cmd" and x["t"] == r["t"]] - assert cmd_rx == [*r["replies"], "*#*1##" if r["ack"] else "*#*0##"] + # the command-session replies sit right after their request, at its t, flagged as estimated + cmd_rx = [x for x in run_rows[tx_i + 1 : i] if x["dir"] == "rx" and x["session"] == "cmd"] + assert [x["frame"] for x in cmd_rx] == [*r["replies"], "*#*1##" if r["ack"] else "*#*0##"] + assert all(x["t"] == tx["t"] and x["t_estimated"] is True for x in cmd_rx) + assert run_rows[tx_i + 1 : tx_i + 1 + len(cmd_rx)] == cmd_rx + # events_after holds exactly the event-session frames that arrived while the request was pending + pending = [x["frame"] for x in run_rows[tx_i + 1 : i] if x["dir"] == "rx" and x["session"] == "evt" and x["t"] <= r["t"]] + assert r["events_after"] == pending assert all(r["ack"] is False and r["replies"] == [] for r in _results(rows) if not r["ack"]) @@ -310,7 +334,7 @@ def test_who13_time_request_is_echoed_on_the_event_session(rows: list[dict]) -> assert res["events_after"] == res["replies"] echo = [r for r in _evt(rows, run) if r["frame"] == res["replies"][0]] assert len(echo) == 1 and echo[0]["ownd_class"] == "OWNGatewayEvent" - # the spontaneous MAC and object-model frames open the event session (run6, t = 26 s) + # the spontaneous MAC and object-model frames open the event session (first two event rows of run6) first_two = [r["frame"] for r in _evt(rows, RUN6)[:2]] assert first_two == [MAC_FRAME, "*#1013**1*134*15*5*0##"] # every WHO 13 clock echo on the event session carries an empty time-zone field on this F461 @@ -389,7 +413,8 @@ def test_setpoint_write_mode_3_restores_the_setpoint_in_force(rows: list[dict]) """*#4*2*#14*0235*3## is ACKed, dimension 12 follows at once, dimension 14 catches up, the season stays.""" write = _result(rows, RUN3, "*#4*2*#14*0235*3##") assert write["ack"] is True and write["reply_time_s"] < 0.2 - assert write["events_after"] == ["*#4*2*12*0235*3##", "*4*1*2##", "*#4*2*0*0239##"] + assert write["events_after"] == [], "the ACK comes before the thermostat reports" + assert _evt_between(rows, RUN3, "*#4*2*#14*0235*3##") == ["*#4*2*12*0235*3##", "*4*1*2##", "*#4*2*0*0239##"] evt = [r["frame"] for r in _evt(rows, RUN3)] assert evt.index("*#4*2*12*0235*3##") < evt.index("*#4*2*14*0235*3##") after = _result(rows, RUN3, "*#4*2##") @@ -410,7 +435,8 @@ def test_actuator_status_dimension_20_per_zone_and_all_zones(rows: list[dict]) - zone = _result(rows, RUN1, "*#4*2*20##") assert zone["ack"] is True and zone["reply_time_s"] < 0.2 assert zone["replies"] == ["*#4*2#1*20*0##"] - assert zone["events_after"] == ["*#4*2#1*20*0##", "*#4*2#2*20*5##"] + assert zone["events_after"] == ["*#4*2#1*20*0##"], "actuator 1 arrives before the ACK" + assert _evt_between(rows, RUN1, "*#4*2*20##") == ["*#4*2#1*20*0##", "*#4*2#2*20*5##"], "actuator 2 right after it" all_zones = _result(rows, RUN1, "*#4*#0*20##") assert all_zones["ack"] is True and 2.0 < all_zones["reply_time_s"] < 2.3 assert all_zones["replies"] == ["*#4*2#1*20*0##", "*#4*2#2*20*5##"] @@ -432,10 +458,10 @@ def test_actuator_frames_follow_every_zone_poll_while_the_fixed_integration_ran( for t in polls: following = [r["frame"] for r in evt if t < r["t"] <= t + 3.5] assert {"*#4*2#1*20*0##", "*#4*2#2*20*5##"} <= set(following), t - # the manual *#4*2*20## of the local Home Assistant session (run7, t = 371 s) + # the manual *#4*2*20## of the local Home Assistant session (run7) manual = [r["frame"] for r in _evt(rows, RUN7) if r["frame"].startswith("*#4*2#")] assert manual == ["*#4*2#1*20*0##", "*#4*2#2*20*5##", "*#4*2#2*20*5##"] - # a '#'-prefixed dimension 20 write echo was seen once (t = 1153 s) and parses as a command + # a '#'-prefixed dimension 20 write echo was seen once in run6 and parses as a command hashed = [r["frame"] for r in evt if r["frame"] == "*#4*2#1*#20*0##"] assert len(hashed) == 1 and OWNMessage.parse(hashed[0]) is not None @@ -546,8 +572,8 @@ def test_cover_05_dimension_reads(rows: list[dict]) -> None: def test_light_pulse_during_run1_was_not_reproduced(rows: list[dict]) -> None: """A 100 ms pulse of 07 and 06 arrived during a locally refused read; re-sending the same reads showed nothing.""" pulse = _result(rows, RUN1, "*#3*#1##") - assert pulse["ack"] is False and pulse["reply_time_s"] < 0.01 - assert pulse["events_after"] == ["*1*1*07##", "*1*0*07##", "*1*1*06##"] + assert pulse["ack"] is False and pulse["reply_time_s"] < 0.01 and pulse["events_after"] == [] + assert _evt_between(rows, RUN1, "*#3*#1##") == ["*1*1*07##", "*1*0*07##", "*1*1*06##"] for run in (RUN8, RUN8B): for res in _results(rows, run): assert res["ack"] is False and res["events_after"] == [], res diff --git a/tests/test_myhomeserver1_live_2026_10_24_trace.py b/tests/test_myhomeserver1_live_2026_10_24_trace.py index db375f055..05ad609e4 100644 --- a/tests/test_myhomeserver1_live_2026_10_24_trace.py +++ b/tests/test_myhomeserver1_live_2026_10_24_trace.py @@ -62,6 +62,19 @@ def _evt(rows: list[dict], run: str) -> list[dict]: return [r for r in rows if r["run"] == run and r["dir"] == "rx" and r["session"] == "evt"] +def _evt_between(rows: list[dict], run: str, frame: str) -> list[str]: + """Event-session frames from the request ``frame`` of ``run`` until the next request of that run.""" + run_rows = [r for r in rows if r["run"] == run] + start = next(i for i, r in enumerate(run_rows) if r["dir"] == "tx" and r["frame"] == frame) + out: list[str] = [] + for r in run_rows[start + 1 :]: + if r["dir"] == "tx": + break + if r["dir"] == "rx" and r["session"] == "evt": + out.append(r["frame"]) + return out + + # --------------------------------------------------------------- schema, privacy, parsing @@ -80,6 +93,8 @@ def test_schema_runs_and_synthetic_identity(trace_payload: dict, rows: list[dict assert "2.82.06" in gw["oracle_note"] assert trace_payload["capture"]["kind"] == "derived_trace_archive" assert [r["run"] for r in trace_payload["capture"]["runs"]] == [RUN1, RUN2, RUN3] + ts = [f["timestamp"] for f in frames] + assert ts == sorted(ts) and all(a["t"] <= b["t"] for a, b in zip(rows, rows[1:], strict=False)) assert trace_payload["capture"]["window"]["frames"] == len(frames) == 376 assert trace_payload["capture"]["window"]["rows"] == len(rows) == 613 assert all(f["direction"] == "rx" and f["session"] == "evt" for f in frames) @@ -114,11 +129,19 @@ def test_result_rows_are_consistent_with_their_tx_and_cmd_rx_rows(rows: list[dic for i, r in enumerate(run_rows): if r["dir"] != "result": continue - tx = next(x for x in reversed(run_rows[:i]) if x["dir"] == "tx") - assert tx["frame"] == r["frame"] and tx["t"] <= r["t"] + tx_i = next(j for j in range(i - 1, -1, -1) if run_rows[j]["dir"] == "tx") + tx = run_rows[tx_i] + assert tx["frame"] == r["frame"] + assert tx["t"] <= r["t"] assert abs((r["t"] - tx["t"]) - r["reply_time_s"]) < 0.002 - cmd_rx = [x["frame"] for x in run_rows[:i] if x["dir"] == "rx" and x["session"] == "cmd" and x["t"] == r["t"]] - assert cmd_rx == [*r["replies"], "*#*1##" if r["ack"] else "*#*0##"] + # the command-session replies sit right after their request, at its t, flagged as estimated + cmd_rx = [x for x in run_rows[tx_i + 1 : i] if x["dir"] == "rx" and x["session"] == "cmd"] + assert [x["frame"] for x in cmd_rx] == [*r["replies"], "*#*1##" if r["ack"] else "*#*0##"] + assert all(x["t"] == tx["t"] and x["t_estimated"] is True for x in cmd_rx) + assert run_rows[tx_i + 1 : tx_i + 1 + len(cmd_rx)] == cmd_rx + # events_after holds exactly the event-session frames that arrived while the request was pending + pending = [x["frame"] for x in run_rows[tx_i + 1 : i] if x["dir"] == "rx" and x["session"] == "evt" and x["t"] <= r["t"]] + assert r["events_after"] == pending # --------------------------------------------------------------- WHO 13 / 1013 identification @@ -197,8 +220,9 @@ def test_actuator_status_per_zone_and_all_zones(rows: list[dict]) -> None: assert zone["replies"] == ["*#4*35#1*20*0##"] and zone["events_after"] == ["*#4*35#1*20*0##"] all_zones = _result(rows, RUN2, "*#4*#0*20##") assert all_zones["ack"] is True and all_zones["reply_time_s"] < 0.5 - assert len(all_zones["replies"]) == 8 and set(all_zones["replies"]) <= set(all_zones["events_after"]) - actuators = all_zones["events_after"] + actuators = _evt_between(rows, RUN2, "*#4*#0*20##") + assert len(all_zones["replies"]) == 8 and set(all_zones["replies"]) <= set(actuators) + assert all_zones["events_after"] and all_zones["events_after"] == actuators[: len(all_zones["events_after"])] assert len(actuators) == 43 and len(set(actuators)) == 43 assert all(re.fullmatch(r"\*#4\*\d+#[1-4]\*20\*[05]##", f) for f in actuators) assert {f for f in actuators if f.startswith("*#4*0#")} == { @@ -221,7 +245,8 @@ def test_humidity_per_zone_only_where_a_probe_exists_and_general_sweep(rows: lis assert none["ack"] is False and 2.0 < none["reply_time_s"] < 2.3 and none["events_after"] == [] sweep = _result(rows, RUN2, "*#4*0*60##") assert sweep["ack"] is True and sweep["reply_time_s"] < 0.6 - humid = sweep["events_after"] + humid = _evt_between(rows, RUN2, "*#4*0*60##") + assert sweep["events_after"] == humid[: len(sweep["events_after"])] assert len(humid) == 17 and len(set(humid)) == 17 assert all(re.fullmatch(r"\*#4\*\d+\*60\*\d+##", f) for f in humid) assert sorted(int(f.split("*")[2]) for f in humid) == [39, 40, 41, 42, 43, 47, 48, 53, 55, 57, 58, 59, 60, 61, 68, 69, 70] diff --git a/tests/test_trace_oracle_validation.py b/tests/test_trace_oracle_validation.py index 5101da91b..9ac37a28d 100644 --- a/tests/test_trace_oracle_validation.py +++ b/tests/test_trace_oracle_validation.py @@ -47,6 +47,124 @@ }) +# Requests sent to a physical gateway in a MyHOME capture for which the firmware oracle +# (results/mcp_index.json at 53f9514, mirrored in tests/golden/firmware_oracle.json) has no +# stimulus at all - not even a canonical form of it - so tier 1 cannot ask for a verdict. +# Each entry names the capture and what the live gateway answered, so the list documents +# the gap instead of hiding it. An entry must be present in the corpus and absent from the +# oracle; once the oracle grows a verdict for a frame, the entry must go (test below). +PHYSICAL_ONLY_TX_FRAMES: dict[str, str] = { + # --- F461 2.0.11, f461_live_2026-10-15 (lights 01 / 04, zone 2) + "*#0*0##": "F461 2026-10-15: NACK (no scenario module)", + "*#1*01*#2*0*0*5##": "F461 2026-10-15: ACK (dimension 2 write on a relay, ignored)", + "*#1*01*2##": "F461 2026-10-15: ACK *#1*01*2*0*0*0##", + "*#1*04*#2*0*0*5##": "F461 2026-10-15: ACK (dimension 2 write on a relay, ignored)", + "*#1*04*2##": "F461 2026-10-15: ACK *#1*04*2*0*0*0##", + "*#1001*0##": "F461 2026-10-15: NACK", + "*#1004*2##": "F461 2026-10-15: NACK", + "*#13**13##": "F461 2026-10-15: NACK", + "*#13**17##": "F461 2026-10-15: ACK *#13**17*4*2*0##", + "*#13*0*0##": "F461 2026-10-15: NACK (WHERE 0 is not a gateway address)", + "*#15*0##": "F461 2026-10-15: NACK (no CEN handler)", + "*#18*0##": "F461 2026-10-15: NACK", + "*#22*0##": "F461 2026-10-15: NACK", + "*#4*#0*22##": "F461 2026-10-15: NACK, then the gateway rebooted (dimension 22 crash)", + "*#4*2*#30*25*12*2026##": "F461 2026-10-15: ACK (holiday end date write, no effect)", + "*#4*2*#31*10*30##": "F461 2026-10-15: ACK (holiday end time write, no effect)", + "*#4*2*#32*02*00##": "F461 2026-10-15: ACK (timed manual write, no effect)", + "*#4*2*1##": "F461 2026-10-15: NACK", + "*#4*2*13#1##": "F461 2026-10-15: NACK in run1, ACK *#4*2*13*00## in run3", + "*#4*2*15##": "F461 2026-10-15: NACK (no external probe)", + "*#4*2*15#1##": "F461 2026-10-15: NACK (no external probe)", + "*#4*2*17##": "F461 2026-10-15: NACK", + "*#4*2*2##": "F461 2026-10-15: NACK in run1, ACK *#4*2*2*0350## in run3", + "*#4*2*21##": "F461 2026-10-15: NACK", + "*#4*2*22##": "F461 2026-10-15: NACK in 12 ms, then the gateway rebooted (dimension 22 crash)", + "*#4*2*29##": "F461 2026-10-15: NACK", + "*#4*2*3##": "F461 2026-10-15: NACK in run1, ACK *#4*2*3*0070## in run3", + "*#4*2*30##": "F461 2026-10-15: NACK", + "*#4*2*31##": "F461 2026-10-15: NACK", + "*#4*2*32##": "F461 2026-10-15: NACK", + "*#4*2*4##": "F461 2026-10-15: NACK in run1, ACK *#4*2*4*0## in run3", + "*#4*2*6##": "F461 2026-10-15: NACK in run1, ACK *#4*2*6*0## in run3", + "*#4*2*8##": "F461 2026-10-15: NACK", + "*#6*0##": "F461 2026-10-15: NACK (no video door entry)", + "*1*11*01##": "F461 2026-10-15: ACK (timer 1 min on relay 01)", + "*1*11*04##": "F461 2026-10-15: ACK (timer 1 min on relay 04)", + "*1*20*01##": "F461 2026-10-15: ACK (blinking 0.5 s on relay 01)", + "*1*20*04##": "F461 2026-10-15: ACK (blinking 0.5 s on relay 04)", + "*1*30*01##": "F461 2026-10-15: ACK (step up on relay 01)", + "*1*30*04##": "F461 2026-10-15: ACK (step up on relay 04)", + "*1*31*01##": "F461 2026-10-15: ACK (step down on relay 01)", + "*1*31*04##": "F461 2026-10-15: ACK (step down on relay 04)", + "*1*5*01##": "F461 2026-10-15: ACK (dimmer 50 % on a relay, ignored)", + "*1*5*04##": "F461 2026-10-15: ACK (dimmer 50 % on a relay, ignored)", + "*4*302*#0##": "F461 2026-10-15: ACK (central-unit form, no central unit, no effect)", + "*4*302*#2##": "F461 2026-10-15: ACK (central-unit form, no effect on the standalone zone)", + "*4*312#0210#1*#2##": "F461 2026-10-15: ACK (central-unit form, no effect)", + # --- F461 2.0.11, f461_live_2026-10-15 and f461_live_2026-10-18 and f461_live_2026-10-23 + "*#1*#1##": "F461 2026-10-15 / 10-18 / 10-23: ACK, members *1*0*06## *1*0*07## (10-18), no data (10-23)", + "*#13**10##": "F461 2026-10-15 / 10-23: ACK *#13**10*192*0*2*92## (documentation IP)", + "*#13**11##": "F461 2026-10-15 / 10-23: ACK *#13**11*255*255*255*0##", + "*#13**12##": "F461 2026-10-15 / 10-23, MyHomeServer1 3.87.13 2026-10-24: ACK with the MAC (synthetic in the fixtures)", + "*#13**19##": "F461 2026-10-15 / 10-23: ACK *#13**19*0*0*38*54## (uptime)", + "*#4*2*60##": "F461 2026-10-15: NACK in run1, ACK *#4*2*60*34## later; 2026-10-23: ACK *#4*2*60*39## in 143 ms", + "*1*0*#1##": "F461 2026-10-15 / 10-18: ACK (group 1 off)", + "*1*0*0##": "F461 2026-10-15 / 10-18: ACK (general off)", + "*1*1*#1##": "F461 2026-10-15 / 10-18: ACK (group 1 on)", + # --- F461 2.0.11, f461_live_2026-10-18 (PR #750 expose verification) + "*#1*08*1*150*0##": "F461 2026-10-18: NACK in 55 ms (dimension 1 without # is a read on an empty point)", + "*#13**#0*22*51*00*999##": "F461 2026-10-18: ACK (clock set, broadcast on evt)", + "*#13**0*22*51*00*999##": "F461 2026-10-18: ACK *#13**0*22*51*02*999## (parsed as a time read)", + "*#18*51*113*450##": "F461 2026-10-18: ACK in 1.27 s (report form accepted)", + "*#18*51*51*12345##": "F461 2026-10-18: ACK in 1.40 s (report form accepted)", + "*#18*51*54*320##": "F461 2026-10-18: ACK in 1.40 s (report form accepted)", + "*#2*25*10*10*50*0*0##": "F461 2026-10-18: NACK in 55 ms", + "*#4*000*0*0215##": "F461 2026-10-18: NACK after 2.07 s (parsed as a dimension 0 read, no probe)", + "*#4*102*0*0215##": "F461 2026-10-18: NACK after 2.12 s (parsed as a dimension 0 read, no probe)", + "*#4*2*0*0999##": "F461 2026-10-18: ACK *#4*2*0*0249## (parsed as a dimension 0 read)", + "*#4*50*#0*0215##": "F461 2026-10-18: ACK in 155 ms (temperature write to a virtual probe)", + "*#4*50*0*0215##": "F461 2026-10-18: NACK after 2.13 s (parsed as a dimension 0 read, no probe)", + "*1*5*08##": "F461 2026-10-18: NACK after 2.06 s (no actuator at 08)", + # --- F461 2.0.11, f461_who14_live_2026-10-18 + "*#14*0##": "F461 2026-10-18: NACK in 52 ms (WHO 14 has no status request)", + "*#14*05##": "F461 2026-10-18: NACK in 50 ms (WHO 14 has no status request)", + "*#14*06##": "F461 2026-10-18 / 10-23: NACK in 5-51 ms (WHO 14 has no status request)", + "*#14*07##": "F461 2026-10-18: NACK in 51 ms (WHO 14 has no status request)", + "*14*2*07##": "F461 2026-10-18: NACK in 53 ms", + # --- F461 2.0.11, issue_667 (myhome_trace_F461_impulse_intercom_2026-10-19) + "*1*18*06##": "F461 2026-10-19: ACK (impulse on relay 06)", + "*1*18*07##": "F461 2026-10-19: ACK (impulse on relay 07)", + "*6*0*4000##": "F461 2026-10-19: NACK in 54 ms (no video door entry)", + "*6*10*1##": "F461 2026-10-19: NACK in 52 ms (no video door entry)", + "*6*10*4000##": "F461 2026-10-19: NACK in 59 ms (no video door entry)", + "*6*10*4001#2##": "F461 2026-10-19: NACK in 54 ms (no video door entry)", + "*6*22*1##": "F461 2026-10-19: NACK in 52 ms (no video door entry)", + "*6*6*1##": "F461 2026-10-19: NACK in 56 ms (no video door entry)", + "*6*6*4100##": "F461 2026-10-19: NACK in 60 ms (no video door entry)", + "*6*9##": "F461 2026-10-19: NACK in 55 ms (no video door entry)", + "*6*9**##": "F461 2026-10-19: NACK in 59 ms (no video door entry)", + "*8*1#1#4#20*11##": "F461 2026-10-19: NACK in 51 ms (no door entry system)", + "*8*1#1#4*74##": "F461 2026-10-19: NACK in 49 ms (no door entry system)", + "*8*9#1#4*73##": "F461 2026-10-19: NACK in 59 ms (no door entry system)", + # --- F461 2.0.11, f461_live_2026-10-23 (behind OWNd #136-#142 / MyHOME #791-#798) + "*#1*#1*15##": "F461 2026-10-23: ACK in 89 ms, *#1*#1*15## echoed on evt (group aggregate dimension)", + "*#1*06*15##": "F461 2026-10-23: NACK in 5 ms (dimension 15 is group-only)", + "*#13**2##": "F461 2026-10-23: NACK in 6 ms", + "*#13**25##": "F461 2026-10-23: NACK in 5 ms", + "*#13**26##": "F461 2026-10-23: NACK in 6 ms", + "*#13**27##": "F461 2026-10-23: ACK *#13**27*70#52#54#49## (F461); MyHomeServer1 2026-10-24: ACK (MyHomeServer1)", + "*#13**3##": "F461 2026-10-23: NACK in 6 ms", + "*#18*51*113*100##": "F461 2026-10-23: ACK in 1.41 s (report form accepted, not echoed)", + "*#2*05*11##": "F461 2026-10-23: NACK in 6 ms (no position reporting on an F411/2)", + "*#4*#0*0*0215##": "F461 2026-10-23: NACK after 4.13 s (central-unit report form, no central unit)", + "*#4*0*60##": "F461 2026-10-23: ACK *#4*2*60*39## after 2.13 s; MyHomeServer1 2026-10-24: ACK, 17 zones in 0.5 s", + # --- MyHomeServer1 3.87.13, myhomeserver1_live_2026-10-24 (the oracle emulates 2.82.06) + "*#4*35*60##": "MyHomeServer1 2026-10-24: NACK after 2.13 s (no humidity probe in zone 35)", + "*#4*39*60##": "MyHomeServer1 2026-10-24: ACK *#4*39*60*51## in 204 ms", +} + + def _load_oracle() -> dict[str, Any]: if not ORACLE_JSON_PATH.is_file(): pytest.skip("tests/golden/firmware_oracle.json fixture not found") @@ -283,6 +401,18 @@ def _iter_all_trace_records() -> list[tuple[str, str | None, str, str]]: if raw and direction in ("tx", "rx"): records.append((json_path.stem, gw_model, str(direction), str(raw))) + # derived_trace_archive files keep the event-session frames in `frames` and the + # whole session log (tx on the command session, rx on both sessions) in `rows` + archive_rows = payload.get("rows") + if isinstance(archive_rows, list): + for row in archive_rows: + if not isinstance(row, dict): + continue + direction = row.get("dir") + raw = row.get("frame") + if raw and direction in ("tx", "rx"): + records.append((json_path.stem, gw_model, str(direction), str(raw))) + if ENCYCLOPEDIA_EVIDENCE_DIR.is_dir(): for sub in sorted(ENCYCLOPEDIA_EVIDENCE_DIR.iterdir()): manifest_path = sub / "manifest.json" @@ -321,7 +451,7 @@ def test_tier1_trace_tx_canonical_oracle_coverage(): for frame in sorted(deterministic_tx): canonical = canonicalize_trace_tx_frame(frame) - if canonical not in ALL_VERDICTS: + if canonical not in ALL_VERDICTS and frame not in PHYSICAL_ONLY_TX_FRAMES: unmapped.append((frame, canonical)) assert not unmapped, ( @@ -330,6 +460,20 @@ def test_tier1_trace_tx_canonical_oracle_coverage(): ) +def test_tier1_physical_only_frames_are_in_the_corpus_and_not_in_the_oracle(): + """PHYSICAL_ONLY_TX_FRAMES documents a real gap: every entry was sent to a physical gateway + in a capture and has no oracle stimulus; an entry the oracle now covers must be removed.""" + tx_frames = {raw for _src, _gw, direction, raw in ALL_TRACE_RECORDS if direction == "tx"} + stale = sorted(f for f in PHYSICAL_ONLY_TX_FRAMES if f not in tx_frames) + assert not stale, f"not in any capture any more: {stale}" + covered = sorted( + f for f in PHYSICAL_ONLY_TX_FRAMES + if f in ALL_VERDICTS or canonicalize_trace_tx_frame(f) in ALL_VERDICTS + ) + assert not covered, f"the oracle now has a verdict, remove from PHYSICAL_ONLY_TX_FRAMES: {covered}" + assert all(note.strip() for note in PHYSICAL_ONLY_TX_FRAMES.values()) + + @pytest.mark.parametrize( ("query_frame", "product", "expected_emitted_prefix"), [ @@ -515,8 +659,9 @@ def test_tier4_all_trace_rx_frames_parse_cleanly_in_ownd(): # Known malformed synthetic frame in f500_tuner fixture (missing leading '#' on WHO 22 dim 6); # OWNMessage.parse must return None cleanly without raising. known_unparseable_rx = {"*22*2#1*6*2##"} - # Authentic frames whose decoder is not in the pinned OWNd yet: they must not raise, and - # they may parse to None until the decoder lands (then they parse like any other frame). + # Authentic frames whose decoder is not in the pinned OWNd yet: they must not raise and + # they parse to None; once the pin carries the decoder the assertion below fails so the + # entry is removed and the frame is checked like any other. # - *#13**27*70#52#54#49##: WHO 13 dimension 27 model name ("F461" as ASCII codes) answered # by a live F461 2.0.11 (tests/fixtures/traces/f461_live_2026-10-23); decoder in OWNd#139. # - *#13**27*77#121#...#49##: the same dimension, "MyHomeServer1", from a live MyHomeServer1 @@ -534,7 +679,9 @@ def test_tier4_all_trace_rx_frames_parse_cleanly_in_ownd(): if parsed is not None: failures.append(f"Expected None for malformed frame {frame}, got {parsed!r}") elif frame in pending_decoder_rx: - continue + assert parsed is None, ( + f"remove {frame} from pending_decoder_rx: the OWNd pin now decodes it ({parsed!r})" + ) elif parsed is None: failures.append(f"OWNMessage.parse returned None for trace rx frame: {frame}") except Exception as exc: # noqa: BLE001