LilyGo T-Display P4 (ESP32-P4 + factory ESP-AT C6) reaches POC: LoRa mesh, Wi-Fi companion (TCP:5000), GPS, SD, battery gauge, chat persistence, and now: - Web VNC/REMOTE/terminal via a first-byte router on the single ESP-AT listener (HTTP verbs -> WS server, '<' frames -> phone companion; both live at once). C6Server gains a _begun gate so never-listening instances stay inert. - VNC freeze fixed: bounded one-CIPSEND-chunk drains under the WS client mutex (a whole-band blocking write starved the main loop), fast-drop of stalled mirror clients, SEND-OK wait 8s->4s. - Wi-Fi robustness: CWJAP? miss-streak tolerance, CIPSERVER liveness verify + re-arm (a re-association silently killed the listener until reboot). - Time sync: HTTP-Date fallback when SNTP is blocked; ClockFloorRTC gains a MAX_PLAUSIBLE_EPOCH guard (all boards) after a garbage-future hardware RTC read (2043) latched the ratchet. - Brightness: RM69A10 DCS 0x51 driven live (CC slider + persisted pref). - Sound: ES8311 + NS4150B notification chimes (P4Audio, esp-bsp-derived register sequence on Wire1), full HAS_UI_SOUND surface + CC Screen/Sound sliders; ccVolumeReleaseCb's hardcoded tanBeep -> uiSoundPreview. - tdisplay_p4/: IDF project (build.sh, c6_at AT-over-SDIO driver, sdkconfigs, fetch-deps.sh vendoring, .gitignore for local payloads). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
25 lines
2.0 KiB
YAML
25 lines
2.0 KiB
YAML
dependencies:
|
|
idf: ">=5.5.1"
|
|
# ── Wi-Fi/BLE over the C6 is NOT supported on this board (2026-07-14 investigation) ─────────────
|
|
# The T-Display P4's FACTORY C6 runs ESP-AT firmware (SDIO), NOT an esp-hosted slave — exactly what
|
|
# Meck-P4's real firmware talks to (Cpp_Bus_Driver::Esp_At, not esp_hosted_connect_to_slave). Our
|
|
# whole Wi-Fi/BLE stack is Arduino WiFi over esp-hosted/esp_wifi_remote, so the C6's SDIO stream is
|
|
# misframed ("len>max ... Drop") and the P4 reset-loops — this happens at BOTH esp_hosted 2.12.9 and
|
|
# 2.0.17 (verified), because it's a firmware-TYPE mismatch, not a version one. Making Wi-Fi work would
|
|
# need either (a) re-flashing the C6 with an esp-hosted slave image (the C6 is SDIO-only — no user
|
|
# flash path, unshippable) or (b) re-architecting Wi-Fi around the AT interface (large). So the C6 is
|
|
# left OFF and TDP4_C6_READY=0; the P4 ships LoRa + UI only. Keep arduino-esp32 at the standard 3.3.10.
|
|
badgeteam/badge-bsp: "^0.9.9"
|
|
nicolaielectronics/tanmatsu-wifi: "^1.1.2"
|
|
nicolaielectronics/tanmatsu-lora: "^0.3.0" # SX1262 LoRa over the C6 — TanmatsuLoraRadio bridge
|
|
# NB: tanmatsu-wifi drags in the nicolaielectronics/esp-hosted-tanmatsu FORK (also pulled via
|
|
# badge-bsp), whose auto-init constructor grabs the C6 SDIO bus before app_main and blocks our AT
|
|
# driver. We can't just remove the dep (it's transitive), so build.sh neutralizes that fork's
|
|
# constructor too (alongside espressif/esp_hosted's). The P4's Wi-Fi is AT-over-SDIO via c6_at.
|
|
# arduino-esp32 as an IDF component so the shared wadamesh src/ (Arduino API) compiles.
|
|
espressif/arduino-esp32: "3.3.10"
|
|
# BLE companion over the C6: esp-nimble-cpp is the IDF-host NimBLE C++ wrapper (works with esp-hosted's
|
|
# remote BLE controller, unlike NimBLE-Arduino's bundled host). The Tanmatsu's vendored SerialBLEInterface
|
|
# copy is ported to this 2.x API. C6 controller comes up via hostedInitBLE().
|
|
h2zero/esp-nimble-cpp: "^2.3.0"
|