mirror of
https://github.com/markqvist/RNode_Firmware.git
synced 2026-04-27 22:35:36 +00:00
Switched from full-frame to partial rendering — only dirty rectangles are rendered and flushed. Static watch face flushes in ~750us vs ~18ms (24x faster). PSRAM usage drops from 824KB to 197KB for draw buffers. Remote debug protocol over serial (prefix "RWS" + command byte): S — Screenshot (wakes display, forces full redraw, captures) T — Touch injection (x, y, duration) N — Navigate to tile by column/row M — Frame metrics (JSON: flush/render times, memory) I — Invalidate (force full redraw) Python tool (scripts/screenshot.py) supports all commands: screenshot, metrics, touch, swipe, navigate, invalidate Screenshot now works correctly with partial rendering by keeping the capture flag active across all flush strips and forcing a full invalidation before capture. Frame timing instrumentation added to flush callback and render loop for performance profiling. |
||
|---|---|---|
| .. | ||
| screenshot.py | ||