Public Access
Send only the changed dots of a frame to the Nano
Frames were sent as F0 plus one s command per yellow dot (thousands of characters). During scrolling that overran the Nano's serial buffer, and half-received frames redrew the whole screen. showBitmap() now sends two B commands over the changed rectangle (dots off, dots on), or one B command for a full frame, and the pacing counts the characters sent. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
89001ddbc6
commit
47ef65ee7d
8 files changed
+262
-25
No files matched your search
@@ -147,7 +147,10 @@ See README.md for the overview.
|
||||
old hardcoded clock (also the default and the HA "Clock" option).
|
||||
- Moving pages: `renderPage()` returns when the page changes next (scroll step, second);
|
||||
`FlipdotFrames` sends those frames as `D1` (no effect) and paces them by the estimated
|
||||
flip time, because the Nano has no acknowledgement. Character 127 is the degree sign in
|
||||
receive and flip time, because the Nano has no acknowledgement. Full screen frames go
|
||||
through `BROSE9323::showBitmap()`: only the changed dots, as two `B` commands over the
|
||||
changed rectangle (`lib/BROSE9323/frame_commands.h`, tested with the Nano parser in
|
||||
`test_nano`). Don't send frames pixel by pixel (`s` commands are 7 characters per dot). Character 127 is the degree sign in
|
||||
page texts and fonts (UTF-8 ° in JSON).
|
||||
- Fonts use the "FDF1" format of `logic/font.h`; the web page writes the same format.
|
||||
`logic/builtin_fonts.cpp` is generated: change `tools/make_builtin_fonts.py` and rerun it.
|
||||
|
||||
Reference in new issue
Block a user