This commit is contained in:
Aiden
2026-05-13 16:44:59 +10:00
parent 27cc85e1c1
commit cef4d098e3
5 changed files with 158 additions and 0 deletions

View File

@@ -0,0 +1,25 @@
Button test on COM5 at 38400 8N1
Listening for 15.0s; respond_to_cam_power=False, respond_to_call=True, mirror_call=False
16:42:29.970 RX 006 bytes 00 00 00 00 80 DA
16:42:29.970 DETECT heartbeat x1
16:42:30.608 RX 001 bytes 00
16:42:30.638 RX 005 bytes 00 15 80 00 CF
16:42:30.719 TX button response frame 006 00 00 15 80 00 CF
16:42:30.770 TX button response frame 006 00 00 15 00 00 4F
16:42:30.800 RX 006 bytes 07 80 45 20 D0 68
16:42:30.800 DETECT watch-frame 07 80 45 20 D0 68 x1
16:42:31.472 RX 006 bytes 00 00 00 00 80 DA
16:42:31.472 DETECT heartbeat x1
16:42:31.718 RX 006 bytes 00 00 00 00 80 DA
16:42:31.718 DETECT heartbeat x1
16:42:31.960 RX 001 bytes 00
16:42:31.991 RX 005 bytes 00 00 00 80 DA
16:42:32.209 RX 001 bytes 00
16:42:32.240 RX 005 bytes 00 00 00 80 DA
16:42:32.484 RX 006 bytes 00 00 00 00 80 DA
16:42:32.484 DETECT heartbeat x1
16:42:32.727 RX 006 bytes 00 00 00 00 80 DA
16:42:32.727 DETECT heartbeat x1
16:42:33.366 RX 006 bytes 00 00 00 00 80 DA
16:42:33.366 DETECT heartbeat x1
Stopped.

View File

@@ -0,0 +1,25 @@
Button test on COM5 at 38400 8N1
Listening for 15.0s; respond_to_cam_power=False, respond_to_call=True, mirror_call=False
16:41:41.685 RX 001 bytes 00
16:41:41.716 RX 005 bytes 00 00 00 80 DA
16:41:42.263 RX 006 bytes 00 00 15 80 00 CF
16:41:42.263 DETECT call-on x1
16:41:42.315 TX button response frame 006 00 00 15 80 00 CF
16:41:42.337 TX button response frame 006 00 00 15 00 00 4F
16:41:42.367 RX 006 bytes 07 80 45 20 D0 68
16:41:42.367 DETECT watch-frame 07 80 45 20 D0 68 x1
16:41:42.978 RX 001 bytes 00
16:41:43.008 RX 005 bytes 00 00 00 80 DA
16:41:43.254 RX 006 bytes 00 00 00 00 80 DA
16:41:43.254 DETECT heartbeat x1
16:41:43.497 RX 006 bytes 00 00 00 00 80 DA
16:41:43.497 DETECT heartbeat x1
16:41:43.739 RX 001 bytes 00
16:41:43.769 RX 005 bytes 00 00 00 80 DA
16:41:43.982 RX 001 bytes 00
16:41:44.012 RX 005 bytes 00 00 00 80 DA
16:41:44.256 RX 006 bytes 00 00 00 00 80 DA
16:41:44.256 DETECT heartbeat x1
16:41:44.895 RX 006 bytes 00 00 00 00 80 DA
16:41:44.895 DETECT heartbeat x1
Stopped.

View File

@@ -0,0 +1,25 @@
Button test on COM5 at 38400 8N1
Listening for 15.0s; respond_to_cam_power=False, respond_to_call=True, mirror_call=False
16:41:57.149 RX 001 bytes 00
16:41:57.180 RX 005 bytes 00 00 00 80 DA
16:41:57.699 RX 006 bytes 00 00 15 80 00 CF
16:41:57.699 DETECT call-on x1
16:41:57.750 TX button response frame 006 00 00 15 80 00 CF
16:41:57.801 TX button response frame 006 00 00 15 00 00 4F
16:41:57.832 RX 006 bytes 07 80 45 20 D0 68
16:41:57.832 DETECT watch-frame 07 80 45 20 D0 68 x1
16:41:58.443 RX 001 bytes 00
16:41:58.474 RX 005 bytes 00 00 00 80 DA
16:41:58.719 RX 006 bytes 00 00 00 00 80 DA
16:41:58.719 DETECT heartbeat x1
16:41:58.964 RX 006 bytes 00 00 00 00 80 DA
16:41:58.964 DETECT heartbeat x1
16:41:59.208 RX 001 bytes 00
16:41:59.239 RX 005 bytes 00 00 00 80 DA
16:41:59.450 RX 001 bytes 00
16:41:59.481 RX 005 bytes 00 00 00 80 DA
16:41:59.727 RX 006 bytes 00 00 00 00 80 DA
16:41:59.727 DETECT heartbeat x1
16:42:00.369 RX 006 bytes 00 00 00 00 80 DA
16:42:00.369 DETECT heartbeat x1
Stopped.

View File

@@ -0,0 +1,29 @@
Button test on COM5 at 38400 8N1
Listening for 15.0s; respond_to_cam_power=False, respond_to_call=True, mirror_call=False
16:42:12.009 RX 006 bytes 00 00 00 00 80 DA
16:42:12.009 DETECT heartbeat x1
16:42:12.709 RX 006 bytes 00 00 00 00 80 DA
16:42:12.709 DETECT heartbeat x1
16:42:12.862 RX 006 bytes 00 00 15 80 00 CF
16:42:12.862 DETECT call-on x1
16:42:12.913 TX button response frame 006 00 00 15 80 00 CF
16:42:12.994 TX button response frame 006 00 00 15 00 00 4F
16:42:13.024 RX 006 bytes 07 80 45 20 D0 68
16:42:13.024 DETECT watch-frame 07 80 45 20 D0 68 x1
16:42:13.699 RX 001 bytes 00
16:42:13.730 RX 005 bytes 00 00 00 80 DA
16:42:13.942 RX 001 bytes 00
16:42:13.973 RX 005 bytes 00 00 00 80 DA
16:42:14.218 RX 006 bytes 00 00 00 00 80 DA
16:42:14.218 DETECT heartbeat x1
16:42:14.462 RX 006 bytes 00 00 00 00 80 DA
16:42:14.462 DETECT heartbeat x1
16:42:14.707 RX 001 bytes 00
16:42:14.738 RX 005 bytes 00 00 00 80 DA
16:42:14.952 RX 001 bytes 00
16:42:14.983 RX 005 bytes 00 00 00 80 DA
16:42:15.594 RX 001 bytes 00
16:42:15.625 RX 005 bytes 00 00 00 80 DA
16:42:16.297 RX 001 bytes 00
16:42:16.328 RX 005 bytes 00 00 00 80 DA
Stopped.

View File

@@ -3086,3 +3086,57 @@ python scripts/serial_button_response_test.py --port COM5 --duration 15 --prompt
``` ```
For each run, power-cycle first and use the same roughly 2 second CALL hold. For each run, power-cycle first and use the same roughly 2 second CALL hold.
### 2026-05-13 CALL Inter-Frame Gap Result
Captures:
- `captures/rcp-buttons-call-frame-gap-20ms.txt`
- `captures/rcp-buttons-call-frame-gap-50ms.txt`
- `captures/rcp-buttons-call-frame-gap-80ms.txt`
- `captures/rcp-buttons-call-delay-80ms-frame-gap-50ms.txt`
Observed result:
| Initial delay | Gap between host CALL echoes | Result |
| --- | --- | --- |
| 50 ms | 20 ms | `07 80 45 20 D0 68` |
| 50 ms | 50 ms | `07 80 45 20 D0 68` |
| 50 ms | 80 ms | `07 80 45 20 D0 68` |
| 80 ms | 50 ms | `07 80 45 20 D0 68` |
Interpretation:
- `07 80 45 20 D0 68` is now reproducible.
- The key change was adding a gap between the host's CALL-high echo and
CALL-low echo. Earlier tests sent the two response frames back-to-back.
- The exact gap is not especially narrow; 20 ms, 50 ms, and 80 ms all worked in
this run set.
- The RCP likely needs to process the high echo as one event before receiving
the low echo. Sending high and low in one tight burst can land outside that
event path.
- The `0x45` response is still not known to activate the panel, but it is a
real, reproducible event-response path.
Next step: answer the reproducible `0x45` response in the same run.
Test F1: host-shaped generic `0x45` ACK.
```powershell
python scripts/serial_button_response_test.py --port COM5 --duration 15 --prompt --respond-to-call --respond-once --response-delay 0.05 --response-frame-interval 0.05 --response-frame "00 00 15 80 00 CF" --response-frame "00 00 15 00 00 4F" --watch-frame "07 80 45 20 D0 68" --followup-on-watch-frame --followup-frame "00 00 45 00 80 9F" --log captures/rcp-buttons-call-45-followup-generic-ack.txt
```
Test F2: host-shaped echo of the RCP `0x45` payload.
```powershell
python scripts/serial_button_response_test.py --port COM5 --duration 15 --prompt --respond-to-call --respond-once --response-delay 0.05 --response-frame-interval 0.05 --response-frame "00 00 15 80 00 CF" --response-frame "00 00 15 00 00 4F" --watch-frame "07 80 45 20 D0 68" --followup-on-watch-frame --followup-frame "00 00 45 20 D0 EF" --log captures/rcp-buttons-call-45-followup-payload-echo.txt
```
Test F3: exact echo of the RCP `0x45` response frame.
```powershell
python scripts/serial_button_response_test.py --port COM5 --duration 15 --prompt --respond-to-call --respond-once --response-delay 0.05 --response-frame-interval 0.05 --response-frame "00 00 15 80 00 CF" --response-frame "00 00 15 00 00 4F" --watch-frame "07 80 45 20 D0 68" --followup-on-watch-frame --followup-frame "07 80 45 20 D0 68" --log captures/rcp-buttons-call-45-followup-exact-echo.txt
```
For each follow-up test, note whether the LCD changes, whether more serial data
appears after the follow-up, and whether the panel returns to heartbeat only.