Waveshare ESP32-S3-Touch-LCD-1.69 · 240×280, 16 МБ Flash / 8 МБ PSRAM

Waveshare · ESP32-S3-Touch-LCD-1.69; на исходном фото маркировка V2

Компактная ESP32-S3 с сенсорным IPS-экраном, IMU, RTC и зарядкой аккумулятора.

Автор: SLDV LAB

Опубликовано · Обновлено

СложностьСредне
Проекты с компонентом

О МОДУЛЕ

Что делает ESP32-S3-Touch-LCD-1.69; на исходном фото маркировка V2

Плата объединяет ESP32-S3, цветной экран и ёмкостный ввод. Для носимых прототипов полезны датчик движения, часы реального времени, зуммер и цепь зарядки односекционного литиевого аккумулятора. Графический интерфейс работает в прошивке микроконтроллера; среду и память подбирают под выбранные библиотеки.

Модель определяется по надписи ESP32-S3-Touch-LCD-1.69 на PCB. На предоставленном фото видна наклейка V2. Это не позволяет установить точную подревизию V2.1; для управления питанием, зуммером и прерыванием RTC нужно сверить свою плату с подходящей схемой. Демонстрационный интерфейс на фотографии не является заявлением о предустановленной версии прошивки.

У Waveshare есть отдельная ESP32-S3-LCD-1.69 без сенсора. Её фото и сведения о других ESP32 нельзя переносить в эту карточку. Текущая документация называет сенсор CST816T; в старом Wiki встречается CST816D. Поэтому фактический суффикс микросхемы конкретной партии по этому фото не подтверждён; драйвер относится к семейству CST816.

Характеристики

Микроконтроллер
ESP32-S3R8; 2 × Xtensa LX7
Частота до
240 МГц
Flash
16 МБ
PSRAM
8 МБ
Внутренняя SRAM
512 КБ
Экран
IPS LCD 1,69″; 240×280; скруглённые углы; 262K цветов панели
Контроллер LCD
ST7789V2; 4-проводный SPI; в примере RGB565
Сенсор
Ёмкостный; CST816T по текущим документам; семейство CST816, I²C 0x15
Датчик движения
QMI8658C, 6 осей; I²C 0x6B
Часы реального времени
PCF85063ATL; I²C 0x51
Радиосвязь
2,4 ГГц Wi-Fi 802.11 b/g/n; Bluetooth 5 LE
Зарядка аккумулятора
ETA6098; 1S Li-ion/LiPo 3,7 В, окончание заряда 4,2 В; по опубликованным схемам около 2 А, совместимость элемента проверять
Исполнение
На исходном фото V2; точная подревизия PCB не подтверждена
Выводы расширения
GPIO2/3/17/18; I²C GPIO10/11; UART0 GPIO43/44; 3V3/GND/5V
Интерфейс
SPI, I²C, UART, Wi-Fi, Bluetooth
Питание модуля
Для первого запуска: USB-C 5 В. Логика GPIO 3,3 В; 5 В на сигнальные контакты не подавать. BAT предназначен для одного Li-ion/LiPo элемента 3,7 В номинально с окончанием заряда 4,2 В. В обеих опубликованных схемах указан R25=82 кОм, что по datasheet ETA6098 соответствует примерно 2 А быстрого заряда. До подключения проверить фактическую ревизию и установленный резистор, полярность разъёма, разрешённый ток заряда и защиту аккумулятора. Маленькая wearable LiPo не становится совместимой лишь потому, что на ней написано 3,7 В. По наклейке V2 нельзя гарантировать ток конкретной партии; при отсутствии этих проверок использовать только USB без аккумулятора. Отдельный RTC-разъём имеет цепь заряда: использовать только подходящий перезаряжаемый элемент по документации, не обычную CR-батарейку.

ПРАКТИКА

Подключение

Схема подключения
Контакт модуляКонтакт платыНазначение
USB-CUSB хостаПитание и прошивка; для примера подключить только USB-кабель данных.
Встроенный LCD: DC / CS / CLK / DINGPIO4 / GPIO5 / GPIO6 / GPIO7ST7789V2; уже соединён на PCB, внешние провода не нужны.
Встроенный LCD: RST / BLGPIO8 / GPIO15Подсветка в примере включается высоким уровнем.
Встроенный сенсор: SDA / SCLGPIO11 / GPIO10Общая I²C с IMU и RTC; адрес сенсора 0x15.
Встроенный сенсор: RST / INTGPIO13 / GPIO14Не использовать как свободные внешние GPIO.
Контакт SCL / SDAGPIO10 / GPIO11Внешняя I²C делит шину с адресами 0x15, 0x51 и 0x6B; избегать конфликтов.
Контакт TX / RXGPIO43 / GPIO44UART0, логика 3,3 В; TX соединяют с RX второго устройства.
Контакты 18 / 17 / 3 / 2GPIO18 / GPIO17 / GPIO3 / GPIO2Выводы расширения; GPIO3 — strapping pin, внешняя нагрузка не должна менять загрузочный уровень.
RTC INT / зуммер / SYS_OUT / SYS_ENV2.1: GPIO39 / GPIO42 / GPIO40 / GPIO41Только для схемы V2.1. Исходная схема: GPIO41 / GPIO33 / GPIO36 / GPIO35; не применять вслепую по наклейке V2.

Подходит для ESP32, Arduino. Выберите контакты по документации своей платы.

ВАШ ПРОЕКТ · ВАШ ДАТЧИК

Интегрируйте модуль с ChatGPT

Скопируйте запрос в ChatGPT. Укажите свою плату и среду разработки — получите подключение и код для своего проекта.

Помоги интегрировать Waveshare ESP32-S3-Touch-LCD-1.69 в мой проект. Сначала уточни задачу, реальную маркировку и ревизию PCB, среду и источники питания. Не переносить распиновку с ESP32-S3-LCD-1.69 без сенсора. Для LCD использовать GPIO4/5/6/7/8/15, для CST816 I²C SDA11/SCL10 и RST13/INT14. Сверить CST816T/D и версию библиотеки. Отдельно проверить ревизионные GPIO питания, RTC и зуммера. Перед аккумуляторным питанием сверить фактический зарядный ток с допустимым током и защитой элемента: опубликованные схемы с R25=82 кОм задают около 2 А, а не безопасный ток для любой маленькой LiPo. Дать зависимости, подключение, минимальную программу, обработку ошибки дисплея, порядок проверки питания и интерфейсов. Не утверждать аппаратные испытания без их выполнения.

Библиотеки

Установите библиотеку для своей среды и откройте пример из её документации.

Что именно прописать

Плата
ESP32-S3-Touch-LCD-1.69

Если точного пункта нет, сверить профиль ESP32S3 Dev Module с текущими инструкциями производителя.

Память
Flash 16 MB; PSRAM 8 MB

Выбирать профиль с OPI PSRAM, соответствующий ESP32-S3R8; размер разделов Flash сверить с прошивкой.

Среда примера
Arduino-ESP32 3.x; GFX Library for Arduino 1.6.5

Параметры конструктора сверены с актуальным примером Waveshare; пример здесь не компилировался.

USB CDC On Boot
Enabled

Нужно для Serial по штатному USB; использовать кабель данных.

LCD
ST7789V2; 240×280; rotation 0; IPS true

Окно панели: offsets 0,20,0,20; физическая память контроллера больше видимой области.

SPI LCD
DC=4; CS=5; CLK=6; MOSI=7; RST=8; BL=15

MISO у LCD не используется.

I²C
SDA=11; SCL=10; touch=0x15; RTC=0x51; IMU=0x6B

Код ниже проверяет только LCD; для сенсора взять официальный 02_Drawing_board с Arduino_DriveBus.

V2.1 служебные GPIO
RTC_INT=39; BUZZER=42; SYS_OUT=40; SYS_EN=41

Не использовать для старой ревизии. Минимальный USB-пример эти цепи не переключает.

Статический текст на встроенном LCD, питание от USB

cpp
#include <Arduino.h>
#include <Arduino_GFX_Library.h>

Arduino_ESP32SPI lcdBus(4, 5, 6, 7);
Arduino_ST7789 screen(&lcdBus, 8, 0, true, 240, 280, 0, 20, 0, 20);

void setup() {
  Serial.begin(115200);
  delay(1200);
  pinMode(15, OUTPUT);
  digitalWrite(15, LOW);
  if (!screen.begin()) {
    Serial.println("LCD initialization failed");
    while (true) delay(1000);
  }
  screen.fillScreen(0x0000);
  screen.setTextColor(0xFFFF);
  screen.setTextSize(2);
  screen.setCursor(16, 32);
  screen.println("SLDV LAB");
  screen.setTextSize(1);
  screen.println("ESP32-S3 Touch 1.69");
  digitalWrite(15, HIGH);
}

void loop() {
  delay(1000);
}

Полный минимальный скетч для указанной платы. Инициализация и смещения сверены с примером Waveshare 01_HelloWorld и библиотекой Arduino GFX. Питание от USB; сенсор, аккумулятор и служебные GPIO не настраиваются. На аппаратуре не запускался, компиляция не выполнялась. При пустом экране сначала проверить цель сборки, питание и настройки LCD; при сбое begin подсветка остаётся выключенной.

Проекты с этим компонентом

Все проекты

Связанные проекты пока не опубликованы.

Связанные материалы и компоненты