511ea9804c009f04527abb36eeebb486acaf9673
The all-in-one 13.3" module mis-maps colors when data is sent via hardware SPI: epd_fill(COLOR_RED) renders YELLOW; epd_fill(COLOR_WHITE) renders BLUE; image data collapses to a single hue. Tried 4 MHz, 1 MHz, and 100 kHz hardware SPI — all produced wrong colors. The test-display-13e6 smoke test uses bit-banged SPI via direct GPIO toggles and renders all 6 colors faithfully. Porting that exact approach into the production driver fixes setup-screen rendering: WeVisto banner, harbor backdrop, both QR codes, and the orientation tile graphics all appear correctly. Cost: ~5 s extra per full-frame push at ~400 kHz effective rate (down from <1 s on the broken hardware SPI). For setup screens that's acceptable; for photo cycles it adds ~10 s to a draw, well below the ~15 s panel refresh itself. Also simplified ghost_clear back to a single white pre-pass — the earlier multi-stage cycles (3-pass, 7-pass) were attempting to fight what we thought was particle ghosting but turned out to be data corruption. One white pre-pass is now sufficient given the data path is correct. Bumps PANEL_FW_VERSION to v1.0.7. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Description
pictureFrame ESP32 firmware — PlatformIO / Arduino
Releases
1
Languages
C++
61.1%
Python
31.4%
C
7.5%