feat: add Seeed reTerminal E1004 (13.3" T133A01 Spectra 6) support#103
Draft
TehesFR wants to merge 1 commit into
Draft
feat: add Seeed reTerminal E1004 (13.3" T133A01 Spectra 6) support#103TehesFR wants to merge 1 commit into
TehesFR wants to merge 1 commit into
Conversation
Adds an esp32-s3-E1004 env and runtime support for the dual-controller T133A01/EL133UF1 1200x1600 Spectra 6 panel (panel_ic_type 0x0042). The panel is driven through bb_epaper's EP133A_SPECTRA_1200x1600 (pinned to the bitbank2/bb_epaper#32 commit until it is merged upstream). Full frames are collected in a 937.5 KB 4bpp PSRAM framebuffer and sent with bbepWritePlane(), which splits the frame across the two chip selects; the row-streaming write paths cannot address the second controller. CS2 comes from the display block's spare cs_pin_2 field (default GPIO2) and is parked/driven with the other panel lines across power state changes. All E1004-specific code is gated on the BBEP_T133A01 define, so envs building against upstream bb_epaper are unchanged.
Author
|
cc @jonasniesner |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds an
esp32-s3-E1004env and runtime support for the Seeed reTerminal E1004 (13.3" T133A01 Spectra 6, 1200x1600, dual-controller: one CS per panel half).Depends on bitbank2/bb_epaper#32 — the env pins
lib_depsto that PR's commit; other envs keep upstream bb_epaper. All E1004 code is compiled out without the fork'sBBEP_T133A01define and runtime-gated one1004_panel_used(), so nothing changes for existing devices. The pin can be switched to upstream once #32 merges.How it works
bbepWritePlane().bbepInitIO()runs the full dual-chip init for this panel; the generic wakeup + re-init is skipped. CS2 comes from the display block'sreserved_pin_2(cs_pin_2in the toolbox schema), default GPIO2.bbepRefresh()is synchronous for the T133A01 (~30 s);waitforrefresh()treats an already-idle panel as completed. Fast refresh is forced to FULL (the fast fallback re-init wipes the frame).bbepWritePlane()failures NACK with 0x74.OPENDISPLAY_ZLIB_WINDOW_BITS=15(py-opendisplay/HA compress with standard 32K-window zlib; the default 512-byte window rejects the compressed START).Device config
Validation (real hardware)
Boot screen, and Home Assistant end to end (compressed 0x70: 960,000 bytes in 193 chunks, 10.2 s, then FULL refresh and 0x73).

esp32-s3-N32R8-extuartandesp32-s3-N16R8still build against upstream bb_epaper.Limitations
rotationmust be 0 (hosts/renderers rotate; the validated dual-CS write path is native-orientation only).iFlags & BBEP_SPLIT_BUFFERwould cover other dual-controller panels (e.g. EP81_SPECTRA), not testable here.