LILYGO T-Deck

版本迭代:
| Version | Update date | Update description |
|---|---|---|
- T-Deck-Plus 已经将 Grove 接口上的Pin分配为GPS模块使用,所以T-Deck-Plus的 Grove 接口无法使用
- T-Deck 于 20240726 日更新 TFT_eSPI ST7789 初始化序列, 目前变更没有推送TFT_eSPI上游分支,使用时候如果发现屏幕显示不正确,请检查此处是否和仓库内的初始化序列一致
购买链接
| Product | SOC | FLASH | PSRAM | Link |
|---|---|---|---|---|
| T-Deck | ESP32-S3FN16R8 | 16MB | 8MB | LILYGO Mall |
目录
描述
LILYGO T-Deck 是一款高度集成的多功能嵌入式开发平台,基于 ESP32-S3 主控芯片设计,融合了 2.8 英寸 320x240 分辨率 ST7789 显示屏、轨迹球导航模块(含方向键与 BOOT 按键)、物理键盘接口(通过 I²C 通信)、TF 卡存储扩展、LoRa 无线通信模块(支持 SCK/MISO/MOSI 及控制引脚),以及 ES7210 麦克风阵列(用于音频输入)。其引脚布局兼顾了显示驱动(DC/BL/SPI)、触摸控制、传感器交互(SDA/SCL/INT)、电源管理(BAT ADC)及模块化扩展(SPI/I²C/UART),可快速实现物联网终端、便携式交互设备或低功耗无线通信项目的开发。
预览
实物图

引脚图
模块
MCU
- 芯片:ESP32-S3FN16R8 Dual-core LX7 microprocessor
- PSRAM:8MB
- FLASH:16MB
- 无线:Wi-Fi 802.11 b/g/n; Bluetooth 5.0 (LE)
- 其他说明:更多资料请访问乐鑫官方ESP32-S3数据手册
通信模块
- LoRa:SX1262芯片,支持433MHz~915MHz频段(可选)
- GPS:MIA-M10Q GNSS模块
- 无线:2.4GHz Wi-Fi & Bluetooth 5.0 (LE)
显示与输入
- 屏幕:2.8英寸 ST7789 LCD
- 分辨率:320×240像素
- 控制方式:轨迹球导航模块(替代触摸屏)
- 键盘:物理键盘接口(I²C通信)
音频系统
- 麦克风:MSM381A3729H9CP麦克风阵列
- 音频芯片:ES7210音频编解码器
电源管理
- 电池:2000mAh锂聚合物电池
- 开关:支持电源开关
- USB供电:Type-C接口
概述
T-Deck版本没有触摸屏,使用轨迹球导航模块代替。
| 组件 | 描述 |
|---|---|
| MCU | ESP32-S3FN16R8 Dual-core LX7 microprocessor |
| FLASH | 16MB |
| PSRAM | 8MB |
| LoRa | SX1262 (433MHz~915MHz可选) |
| GPS | MIA-M10Q GNSS模块 |
| 屏幕 | 2.8英寸 ST7789 LCD (320×240) |
| 控制方式 | 轨迹球导航模块 |
| 输入 | 物理键盘(I²C接口) |
| 音频 | ES7210音频编解码器 |
| 麦克风 | MSM381A3729H9CP麦克风阵列 |
| 电池 | 2000mAh锂聚合物电池 |
| 存储 | TF卡扩展 |
| 无线 | 2.4 GHz Wi-Fi & Bluetooth 5 (LE) |
| USB | 1 × Type-C接口 |
| IO扩展 | 2mm间距 6pin扩展接口 |
| 扩展接口 | GPS扩展接口 + 2 × JST GH 1.25mm + 1 × 4pin扩展接口 |
| 按键 | 1 x RST按键 + 1 x BOOT按键(轨迹球) |
| 开关 | 电源开关 |
| 定位孔 | 2mm定位孔 |
| 尺寸 | 10×6.8×1.1 cm |
快速开始
示例支持
examples
├─Keyboard_ESP32C3 # ESP32C3 keyboard I2C slave
├─Keyboard_T_Deck_Master # T-Deck read from keyboard
├─Microphone # Noise detection
├─Touchpad # Read touch coordinates
├─GPSShield # GPS Shield example
└─UnitTest # Factory hardware unit testing
- 如果启用麦克风,那么板子中间的按钮,GPIO0则不可用.
- 如果遇到不能上传草图,那么你需要将轨迹球中间按压下去,然后插入USB,这是芯片处于下载模式,此时再点击上传草图.
- ESP32C3的编程烧录接口在RST按键一侧的6Pin排针那里,顺序从RST按键上方开始数,分别为3V3,GND,RST,BOOT,RX,TX
PlatformIO
- 安装VisualStudioCode 和 Python
- 在
VisualStudioCode扩展中搜索PlatformIO插件并安装. - 安装完成后需要将
VisualStudioCode重新启动 - 重新开启
VisualStudioCode后,选择VisualStudioCode左上角的文件->打开文件夹->选择T-Deck目录 - 点击
platformio.ini文件,在platformio栏目中取消需要使用的示例行,请确保仅仅一行有效 - 点击左下角的(✔)符号编译
- 将板子与电脑USB进行连接
- 点击(→)上传固件
- 点击 (插头符号) 监视串行输出
ArduinoIDE
- 安装 ArduinoIDE
- 将
T-Deck/lib目录内的所有文件夹拷贝到<C:\Users\UserName\Documents\Arduino\libraries>,如果没有libraries目录,请新建,请注意,不是拷贝lib目录,而是拷贝lib目录里面的文件夹 - 打开ArduinoIDE -> Tools
- Board -> ESP32S3 Dev Module
- USB CDC On Boot -> Enable # 注意,在不连接USB的时候你需要将Enable改为Disable,这样USB CDC 不会阻止板子的启动
- CPU Frequency -> 240MHz
- USB DFU On Boot -> Disable
- Flash Mode -> QIO 80MHz
- Flash Size -> 16MB(128Mb)
- USB Firmware MSC On Boot -> Disable
- PSRAM -> OPI PSRAM
- Partition Scheme -> 16M Flash(3MB APP/9.9MB FATFS)
- USB Mode -> Hardware CDC and JIAG
- Upload Mode -> UART0/Hardware CDC
- Upload Speed -> 921600
- 插入USB到PC,点击上传<如果无法顺利上传,请保持按压BOOT按键,然后单击RST,然后再点击上传,上传完成时需要点击RST退出下载模式>
- . 在"工具"菜单中选择正确的设置,如下表所示。
开发平台
引脚总览
//! The board peripheral power control pin needs to be set to HIGH when using the peripheral
#define BOARD_POWERON 10
#define BOARD_I2S_WS 5
#define BOARD_I2S_BCK 7
#define BOARD_I2S_DOUT 6
#define BOARD_I2C_SDA 18
#define BOARD_I2C_SCL 8
#define BOARD_BAT_ADC 4
#define BOARD_TOUCH_INT 16
#define BOARD_KEYBOARD_INT 46
#define BOARD_SDCARD_CS 39
#define BOARD_TFT_CS 12
#define RADIO_CS_PIN 9
#define BOARD_TFT_DC 11
#define BOARD_TFT_BACKLIGHT 42
#define BOARD_SPI_MOSI 41
#define BOARD_SPI_MISO 38
#define BOARD_SPI_SCK 40
#define BOARD_TBOX_G02 2
#define BOARD_TBOX_G01 3
#define BOARD_TBOX_G04 1
#define BOARD_TBOX_G03 15
#define BOARD_ES7210_MCLK 48
#define BOARD_ES7210_LRCK 21
#define BOARD_ES7210_SCK 47
#define BOARD_ES7210_DIN 14
#define RADIO_BUSY_PIN 13
#define RADIO_RST_PIN 17
#define RADIO_DIO1_PIN 45
#define BOARD_BOOT_PIN 0
#define BOARD_BL_PIN 42
#define BOARD_GPS_TX_PIN 43
#define BOARD_GPS_RX_PIN 44
#ifndef RADIO_FREQ
#ifdef JAPAN_MIC
#define RADIO_FREQ 920.0
#else
#define RADIO_FREQ 868.0
#endif
#endif
#ifndef RADIO_BANDWIDTH
#define RADIO_BANDWIDTH 125.0
#endif
#ifndef RADIO_SF
#define RADIO_SF 10
#endif
#ifndef RADIO_CR
#define RADIO_CR 6
#endif
#ifndef RADIO_TX_POWER
#define RADIO_TX_POWER 22
#endif
#define DEFAULT_OPA 100
相关测试
常见问题
Q. 看了以上教程我还是不会搭建编程环境怎么办?
A. 如果看了以上教程还不懂如何搭建环境的可以参考LilyGo-Document文档说明来搭建。Q. 为什么打开Arduino IDE时他会提醒我是否要升级库文件?我应该升级还是不升级?
A. 选择不升级库文件,不同版本的库文件可能不会相互兼容所以不建议升级库文件。Q. T-Deck是否有触摸屏功能?
A. T-Deck版本没有触摸屏,使用轨迹球导航模块代替触摸操作。Q. 为什么我的板子一直烧录失败呢?
A. 请按住"BOOT"按键重新下载程序。