Files
planar-EL512.256-H/platformio.ini
T
mangavalkandClaude Opus 5.5 963590cdfe Add ESPHome display component; ring-buffer driver shared with PlatformIO
Driver (components/el512/el512_panel.*, ESP-IDF only):
- DMA ring of 8 x 4 lines (17 KB) refilled from the I2S EOF interrupt
  (IRAM) instead of a 142 KB full-frame stream; ~107 KB heap freed.
- 256-entry lookup table encodes 8 pixels per step.
- Back buffer + displayed buffer, swapped at the start of a frame.
- PlatformIO builds it via lib_extra_dirs (EL512Core); lib/EL512 keeps
  the Adafruit GFX front end.

ESPHome external component (platform: el512):
- DisplayBuffer with optional ENABLE / _LOWPWR pins, set_enabled(),
  set_low_power(), helper functions for page lambdas.
- still_alive_page: plays the Portal end-credits show, then returns to
  the previous page.

Still Alive engine moved to components/el512/still_alive.* with a built-in
5x7 font (from Adafruit GFX, BSD); the PlatformIO demo uses the same code.
The importer writes components/el512/still_alive_data.h and stops at 200 s
(--until-ms), matching the hand-trimmed data.

esphome/el512-panel.yaml: 8 pages (clock, forecast, agenda, dashboard,
now playing, Plex, solar, Still Alive), page select, rotation, display
and low-power switches, message text. home_assistant/packages/el512_panel.yaml:
helper template sensors for forecast, agenda, now playing and Plex streams.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-18 20:20:13 +02:00

28 lines
671 B
INI

; Planar EL512.256-H electroluminescent panel driver for ESP32 (ESP-WROOM-32)
; https://docs.platformio.org/page/projectconf.html
[platformio]
default_envs = still_alive
[env]
platform = espressif32@6.10.0
board = esp32dev
framework = arduino
monitor_speed = 115200
upload_port = COM20
monitor_port = COM20
lib_extra_dirs = components ; EL512Core: the shared driver in components/el512
lib_deps =
adafruit/Adafruit GFX Library
EL512Core
build_flags =
-Wall
; Test images: cycles through 12 labelled test patterns.
[env:esp32dev]
build_src_filter = +<test_images/>
; Portal-style end-credits console.
[env:still_alive]
build_src_filter = +<still_alive/>