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

@@ -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.
### 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.