|
TinyGPU
|
"2.8" ESP32-S3 Display" - ILI9341 SPI TFT + FT6336G capacitive touch (I2C, shares its bus with the board's ES8311 audio codec). (FBBA0125-002) - also named ESP32-S3 Hosyond Display More...
#include <LCDBoardsESP32.h>


Public Member Functions | |
| bool | begin () override |
| size_t | width () const override |
| Panel width in pixels. | |
| size_t | height () const override |
| Panel height in pixels. | |
| ILI9341Driver< RGB565 > & | display () override |
| The board's display driver. | |
| TouchDriver * | touch () override |
| The board's touch controller. | |
| const I2SPins & | i2s () const override |
| The board's I2S/PA pin assignment. | |
| const LEDPins & | led () const override |
| The board's LED pin assignment. | |
| int8_t | backlightPin () const override |
| The board's backlight GPIO pin. | |
Public Member Functions inherited from LCDBoard | |
| virtual | ~LCDBoard ()=default |
| virtual bool | begin ()=0 |
| virtual size_t | width () const =0 |
| Panel width in pixels. | |
| virtual size_t | height () const =0 |
| Panel height in pixels. | |
| virtual DisplayDriver< RGB565 > & | display ()=0 |
| The board's display driver. | |
| virtual TouchDriver * | touch ()=0 |
| The board's touch controller, or nullptr if none is wired up. | |
| virtual const I2SPins & | i2s () const =0 |
| The board's I2S/PA pin assignment. | |
| virtual const LEDPins & | led () const =0 |
| The board's LED pin assignment. | |
| virtual int8_t | backlightPin () const |
| template<typename I2SConfig > | |
| void | setI2SPins (I2SConfig &cfg) |
"2.8" ESP32-S3 Display" - ILI9341 SPI TFT + FT6336G capacitive touch (I2C, shares its bus with the board's ES8311 audio codec). (FBBA0125-002) - also named ESP32-S3 Hosyond Display
Display: ILI9341, 240x320, SPI - CS=10 DC=46 SCK=12 MOSI=11 MISO=13 BL=45; RST is tied to the board's EN line (no dedicated reset pin). Needs inversion on (set in begin()) or colors render wrong on real hardware; byte order stays at the driver default. ILI9341Driver::setInvertColor() re-applies the last value at the end of every begin(), so it survives a later, redundant begin() (e.g. from DeviceOutput::begin()) even though each begin() resets the panel's inversion register via SWRESET. Touch: FT6336G (register-compatible with TouchDriverFT6236), I2C - SDA=16 SCL=15 RST=18, physical IRQ=17. IRQ is left unwired (-1, forcing register polling) since its idle polarity was never confirmed on real hardware. I2S (ES8311 codec): MCLK=4 BCK=5 WS=7 DOUT=8 DIN=6. Speaker amp (FM8002E) enable: IO1, active low. LED: single WS2812-compatible RGB LED on IO42.
#include "AudioTools.h" #include "AudioTools/AudioLibs/AudioBoardStream.h" #include "AudioBoards/ESP32S3HosyondDisplay.h" // arduino-audio-driver
audio_tools::AudioBoardStream out(audio_driver::ESP32S3HosyondDisplay); auto cfg = out.defaultConfig(TX_MODE); out.begin(cfg); out.setVolume(0.5f);
Without arduino-audio-driver, i2s()/setI2SPins() give the raw MCLK/BCK/WS/DOUT/DIN pins for a plain I2SStream, but the caller must then handle the ES8311's I2C init and drive the PA-enable pin (i2s().paEnable, active low per paEnableActiveLow) itself.
|
inlineoverridevirtual |
The board's backlight GPIO pin.
Reimplemented from LCDBoard.
|
inlineoverridevirtual |
|
inlineoverridevirtual |
The board's display driver.
Implements LCDBoard.
|
inlineoverridevirtual |
Panel height in pixels.
Implements LCDBoard.
|
inlineoverridevirtual |
The board's I2S/PA pin assignment.
Implements LCDBoard.
|
inlineoverridevirtual |
The board's LED pin assignment.
Implements LCDBoard.
|
inlineoverridevirtual |
The board's touch controller.
Implements LCDBoard.
|
inlineoverridevirtual |
Panel width in pixels.
Implements LCDBoard.