Add Adafruit TFT Experiment (rev A)
There will be a revision but get the basics in for now.
This successfully displays on a TL040HDS20-B1502A screen with:
```
import board
from framebufferio import FramebufferDisplay
from dotclockframebuffer import DotClockFramebuffer
from displayio import release_displays
tft_pins = board.TFT
tft_timings = {
"frequency": 6_500_000,
"width": 720,
"height": 720,
"hsync_pulse_width": 20,
"hsync_front_porch": 40,
"hsync_back_porch": 40,
"vsync_pulse_width": 10,
"vsync_front_porch": 40,
"vsync_back_porch": 40,
"hsync_idle_low": False,
"vsync_idle_low": False,
"de_idle_high": False,
"pclk_active_high": False,
"pclk_idle_high": False,
}
release_displays()
fb = DotClockFramebuffer(**tft_pins, **tft_timings)
disp = FramebufferDisplay(fb)
```
2023-08-30 16:02:39 -04:00
|
|
|
CONFIG_ESP32S3_SPIRAM_SUPPORT=y
|
|
|
|
#
|
|
|
|
# SPI RAM config
|
|
|
|
#
|
|
|
|
# CONFIG_SPIRAM_MODE_QUAD is not set
|
|
|
|
CONFIG_SPIRAM_MODE_OCT=y
|
|
|
|
CONFIG_SPIRAM_TYPE_AUTO=y
|
|
|
|
# end of SPI RAM config
|
|
|
|
|
|
|
|
CONFIG_DEFAULT_PSRAM_CLK_IO=30
|
|
|
|
#
|
|
|
|
# PSRAM Clock and CS IO for ESP32S3
|
|
|
|
#
|
|
|
|
CONFIG_DEFAULT_PSRAM_CS_IO=26
|
|
|
|
# end of PSRAM Clock and CS IO for ESP32S3
|
|
|
|
|
|
|
|
# CONFIG_SPIRAM_FETCH_INSTRUCTIONS is not set
|
|
|
|
# CONFIG_SPIRAM_RODATA is not set
|
|
|
|
CONFIG_SPIRAM_SPEED_80M=y
|
|
|
|
# CONFIG_SPIRAM_SPEED_40M is not set
|
|
|
|
CONFIG_SPIRAM=y
|
|
|
|
CONFIG_SPIRAM_BOOT_INIT=y
|
|
|
|
# CONFIG_SPIRAM_IGNORE_NOTFOUND is not set
|
|
|
|
CONFIG_SPIRAM_USE_MEMMAP=y
|
|
|
|
# CONFIG_SPIRAM_USE_CAPS_ALLOC is not set
|
|
|
|
# CONFIG_SPIRAM_USE_MALLOC is not set
|
|
|
|
CONFIG_SPIRAM_MEMTEST=y
|
|
|
|
#
|
|
|
|
# LWIP
|
|
|
|
#
|
2023-09-11 14:46:08 -04:00
|
|
|
CONFIG_LWIP_LOCAL_HOSTNAME="qualia"
|
Add Adafruit TFT Experiment (rev A)
There will be a revision but get the basics in for now.
This successfully displays on a TL040HDS20-B1502A screen with:
```
import board
from framebufferio import FramebufferDisplay
from dotclockframebuffer import DotClockFramebuffer
from displayio import release_displays
tft_pins = board.TFT
tft_timings = {
"frequency": 6_500_000,
"width": 720,
"height": 720,
"hsync_pulse_width": 20,
"hsync_front_porch": 40,
"hsync_back_porch": 40,
"vsync_pulse_width": 10,
"vsync_front_porch": 40,
"vsync_back_porch": 40,
"hsync_idle_low": False,
"vsync_idle_low": False,
"de_idle_high": False,
"pclk_active_high": False,
"pclk_idle_high": False,
}
release_displays()
fb = DotClockFramebuffer(**tft_pins, **tft_timings)
disp = FramebufferDisplay(fb)
```
2023-08-30 16:02:39 -04:00
|
|
|
# end of LWIP
|
|
|
|
#
|
|
|
|
# CONFIG_ESP_CONSOLE_NONE is not set
|
|
|
|
CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200
|
|
|
|
CONFIG_ESP_CONSOLE_UART_CUSTOM_NUM_0=y
|
|
|
|
CONFIG_ESP_CONSOLE_UART_CUSTOM=y
|
|
|
|
CONFIG_ESP_CONSOLE_UART_NUM=0
|
|
|
|
CONFIG_ESP_CONSOLE_UART_RX_GPIO=44
|
|
|
|
CONFIG_ESP_CONSOLE_UART_TX_GPIO=43
|
|
|
|
CONFIG_ESP_CONSOLE_UART=y
|