Mini-TV · 2.8" build · SPI

MINI-TV 2.8 — wiring

The bigger 2.8" ILI9341 240×320 SPI touch panel (V1.1) driven by the ESP32-S3, with a dedicated external microSD reader on its own SPI bus and the MAX98357A I2S amp for audio. Tap a row to tick it off as you wire; pick the colour of the wire you actually used from the middle dropdown. Ticks & colours are saved on this device.

ESP32-S3
N16R8
2.8" ILI9341
SPI · 240×320 · XPT2046 touch
microSD
external SPI reader
MAX98357A
I2S amp
Pins verified0 / 0

Tap a row to toggle · pick each wire's colour in the middle · saved on this device

Big change from the 2.4" build: that panel was 8-bit parallel; this one is SPI (far fewer wires). The display + touch share one SPI bus (SCK/MOSI/MISO, separate chip-selects); the microSD gets its own SPI bus on the external reader for reliability. All 3.3 V logic; the boards' onboard regulators accept 5 V on VCC.

Display · power & backlight

VCC5V
GNDGND
LEDbacklight — 3V3 = always on (or a GPIO to dim)3V3

Display · SPI (ILI9341)

CSLCD chip-selectGPIO 10
DCdata / command (a.k.a. RS)GPIO 9
RESETGPIO 14
SCKSPI clock (shared)GPIO 12
SDI (MOSI)data in (shared)GPIO 11
SDO (MISO)data out (shared)GPIO 13

Touch · XPT2046 (own dedicated pins — no wire sharing)

The XPT2046 is slow, so it runs on its own software-SPI — every touch pin goes to its own ESP32-S3 GPIO. No splitting wires with the display bus.

T_CLKGPIO 15
T_DINGPIO 16
T_DOGPIO 17
T_CStouch chip-selectGPIO 18
T_IRQoptional — pen interruptGPIO 8

External microSD reader · own SPI bus

Use the external reader (its own regulator + level-shifter = reliable). Leave the 2.8" board's onboard SD pads (SD_SCK/SD_MISO/SD_MOSI/SD_CS) unconnected.

VCC5V
GNDGND
SCKGPIO 5
MOSIGPIO 6
MISOGPIO 7
CSGPIO 4

Audio · MAX98357A (I2S — unchanged from 2.4")

VIN5V
GNDGND
BCLKGPIO 42
LRCGPIO 41
DINGPIO 40
GAINleave unconnected → 9 dB defaultn/c
SDmode select — leave unconnected → (L+R)/2 monon/c
Speakerstraight off the amp's two padsamp ±

USB-C breakout · power + PC card access (S3 native USB)

Wire the data lines to the S3's native USB (GPIO 20 = D+, GPIO 19 = D−) so the ESP can present the microSD to a PC as a USB drive (mass-storage mode) — load/manage shows without pulling the card. VBUS powers the whole build.

VBUS (+)5 V power in5V
GNDGND
D+USB data +GPIO 20
D−USB data −GPIO 19
USB-C notes. The D+/D− go to the S3's fixed native-USB pins (D+ = GPIO 20, D− = GPIO 19) — this becomes a case-mounted USB port that both powers the build and lets a PC read/write the SD in a firmware "USB drive" mode (the player pauses; the card can't be shared with playback at the same time). Power: this 4-pad breakout has no CC resistors, so VBUS gives 5 V reliably from a USB-A→C cable; for a C→C charger add 2× 5.1 kΩ from CC1/CC2 to GND. Don't plug this and the dev-board's own USB port in together (both are the same native USB).
Don't use GPIO 35 / 36 / 37 (octal PSRAM). GPIO 16/17/38 stay on audio. These display/touch/SD pins are a suggested clean layout — any free GPIO works on the S3 (flexible SPI), just match the firmware's pin defines.

Firmware · mini_tv_28_manual.ino

The 2.8″ player built on a hand-written ILI9341 SPI driver (it bypasses LovyanGFX's broken SPI pushImage) — plays MJPEG clips from the external microSD. Board: ESP32S3 Dev Module · PSRAM disabled · Flash 16MB · USB CDC On Boot. Libraries: SD · JPEGDEC (SPI is built in).

MINI-TV 2.8 — visual wiring mock-up (every connection)

WIRING DIAGRAM · MINI-TV 2.8″ Full ESP32-S3 pinout · every used pin wired to its own dedicated GPIO (no shared/split wires) 5V power GND Display SPI Touch (own pins) Audio I2S microSD SPI USB D+/D− speaker Greyed pins on the ESP32-S3 are unused · power/GND wires shown dimmed 19 --> ESP32-S3-WROOM ESP32-S3 N16R8 · dual USB-C 3V33V3RST 4567 151617188 346 91011121314 5VGND GND434412 424140 3938373635 045484721 2019GND5V microSD reader (external) GNDVCCMISOMOSISCKCS 2.8″ ILI9341 SPI + XPT2046 touch VCCGNDCSRESET DCSDI(MOSI)SCKLED SDO(MISO)T_CLKT_CST_DIN T_DOT_IRQ onboard SD (unused) MAX98357A · I2S amp LRCBCLKDIN GAIN (n/c)SD (n/c) GNDVin SPEAKER USB-C USB-C · power + PC card VBUSD−D+GND