Document Paper Pro v6 color renderer

This commit is contained in:
aeroreyna
2026-07-16 20:54:25 -04:00
parent f1ce04713c
commit 8fe5b592f3
@@ -47,6 +47,7 @@ Initial SSH-based proof of concept works.
- Device-side sidecar installed on Paper Pro: `/etc/systemd/system/remarkable-sidecar.service` enabled/running; script `/home/root/remarkable-sidecar/remarkable_sidecar.sh`; daily text logs `/home/root/remarkable-sidecar/logs/YYYY-MM-DD.txt`; state snapshots `/home/root/remarkable-sidecar/state/`. It logs `online`, 60s `heartbeat`, best-effort `offline`, and `document_change` by comparing xochitl file mtimes every 20s. BusyBox `nc` lacks UDP, so ARM64 helper `/home/root/remarkable-sidecar/bin/udp_broadcast` was built with the reMarkable SDK on iMac and broadcasts to `192.168.68.255:49321`. - Device-side sidecar installed on Paper Pro: `/etc/systemd/system/remarkable-sidecar.service` enabled/running; script `/home/root/remarkable-sidecar/remarkable_sidecar.sh`; daily text logs `/home/root/remarkable-sidecar/logs/YYYY-MM-DD.txt`; state snapshots `/home/root/remarkable-sidecar/state/`. It logs `online`, 60s `heartbeat`, best-effort `offline`, and `document_change` by comparing xochitl file mtimes every 20s. BusyBox `nc` lacks UDP, so ARM64 helper `/home/root/remarkable-sidecar/bin/udp_broadcast` was built with the reMarkable SDK on iMac and broadcasts to `192.168.68.255:49321`.
- Pi UDP listener installed on `aeropi5`: `~/remarkable-logger/remarkable_udp_listener.py` as user service `remarkable-udp-listener.service`, logging UDP JSONL to `~/remarkable-logger/udp/YYYY-MM-DD.jsonl` and latest IP to `~/remarkable-logger/latest_device.json`. Pi poller `remarkable_logger.py` was patched to use `latest_device.json` when `REMARKABLE_HOST` is not set, so DHCP/IP changes are caught by tablet broadcast. Duplicate UDP packets from Pi eth0+wlan0 are deduped within 2s. - Pi UDP listener installed on `aeropi5`: `~/remarkable-logger/remarkable_udp_listener.py` as user service `remarkable-udp-listener.service`, logging UDP JSONL to `~/remarkable-logger/udp/YYYY-MM-DD.jsonl` and latest IP to `~/remarkable-logger/latest_device.json`. Pi poller `remarkable_logger.py` was patched to use `latest_device.json` when `REMARKABLE_HOST` is not set, so DHCP/IP changes are caught by tablet broadcast. Duplicate UDP packets from Pi eth0+wlan0 are deduped within 2s.
- Sidecar verification after user highlighted a book and edited `Today's Goals`: Pi poller detected `ai-2027.pdf` at `2026-07-16T23:40:38Z` and `Today's Goals` at `2026-07-16T23:41:11Z`. Device sidecar initially only logged heartbeats because Paper Pro lacks `comm`; script was patched to use BusyBox `awk` set-difference. After restart/recovery it emitted `document_change` UDP/text lines for `ai-2027.pdf`, `Today's Goals`, and a later `Quick sheets` change. - Sidecar verification after user highlighted a book and edited `Today's Goals`: Pi poller detected `ai-2027.pdf` at `2026-07-16T23:40:38Z` and `Today's Goals` at `2026-07-16T23:41:11Z`. Device sidecar initially only logged heartbeats because Paper Pro lacks `comm`; script was patched to use BusyBox `awk` set-difference. After restart/recovery it emitted `document_change` UDP/text lines for `ai-2027.pdf`, `Today's Goals`, and a later `Quick sheets` change.
- v6 `.rm` rendering spike: `rmrl` renders older/PDF-backed docs but fails on Paper Pro v6 pages with `UnsupportedVersion`. PyPI `rmscene` parses v6 `Line` items. Shader/highlighter colors are in `Line.color_rgba=(r,g,b,a)` while normal ink usually has `color_rgba=None` plus pen/color enums. Installed lightweight renderer `/home/adolforeyna/remarkable-logger/tools/render_rm_v6_color.py` with venv `/home/adolforeyna/remarkable-logger/.venv-render`; verified against Quick sheets page 66 and Journal2026 changed page.
Hermes can: Hermes can:
- Connect to the reMarkable via SSH alias `remarkable`. - Connect to the reMarkable via SSH alias `remarkable`.