LILYGO T-Watch S3 Plus

Version Iteration:
| Version | Update date | Update description |
|---|---|---|
| T-Watch-S3-Plus_V1.0 | 2024-01-01 | Initial version, added GPS functionality |
Purchase Links
| Product | SOC | FLASH | PSRAM | Link |
|---|---|---|---|---|
| T-Watch S3 Plus | ESP32-S3 | 16M | 8M (Octal SPI) | Link |
Table of Contents
Description
The T-Watch S3 Plus is an enhanced version based on the T-Watch S3, adding GPS functionality. It is a versatile smart wearable device that integrates high-performance hardware and wireless communication technologies, suitable for sports health monitoring, remote interaction, and audio scenarios. Its core configuration includes a 1.54-inch 240x240 high-definition LCD display, paired with a BMA423 axis sensor and a capacitive touch module, enabling precise motion tracking and responsive touch operations. It features a built-in Max98357A audio amplifier and a PDM microphone, supporting high-quality audio output and voice command input. Currently, the T-Watch S3 Plus has two LoRa versions, SX1262 and SX1280. Combined with the GPS module, it achieves precise positioning and long-range, low-power wireless communication, making it suitable for IoT and smart wearable scenarios.
Preview
Physical Image

Pin Diagram
Modules
MCU
- Chip: ESP32-S3
- PSRAM: 8M
- FLASH: 16M
- Other Notes: For more information, please visit the Espressif Official ESP32-S3 Datasheet
Display
- Size: 1.54-inch LCD
- Resolution: 240ร240px
- Display Type: LCD
- Bus Communication Protocol: SPI
Touch
- Type: Capacitive Touchscreen
- Bus Communication Protocol: I2C
Sensors
- Axis Sensor: BMA423 (I2C)
- Motor Driver: DRV2605 (I2C)
Audio
- Audio Output: Max98357A (I2S)
- Audio Input: PDM Microphone
Communication Modules
- LoRa: SX1262/SX1280, supports 433~923MHz frequency bands
- GPS: Integrated GPS module
- Wi-Fi: 802.11 b/g/n
- Bluetooth: BLE 5.0
Power Management
- Chip: AXP2101 Highly Integrated Power Management Unit
Overview
โจ Hardware-Features
| Features | Params |
|---|---|
| SOC | Espressif ESP32-S3 |
| Flash | 16MB(QSPI) |
| PSRAM | 8MB (QSPI) |
| GNSS | UBlox MIA-M10Q |
| LoRa | Semtech SX1262 |
| Accelerometer sensor | Bosch BMA423 |
| Real-Time Clock | NXP PCF8563 |
| Power Manage | X-Powers AXP2101 |
| Haptic driver | Ti DRV2605 |
| PDM Microphone | SPM1423HM4H-B |
| PCM Class D Amplifier | Analog MAX98357A (3.2W Class D) |
| Capacitive Touch | FT6336U |
| Infrared transmitter | IR12-21C |
โจ Display-Features
| Features | Params |
|---|---|
| Resolution | 240 x 240 |
| Display Size | 1.3 Inch |
| Luminance on surface | 450 cd/mยฒ |
| Driver IC | ST7789V3 (SPI) |
| Contrast ratio | 800:1 |
| Display Colors | 262K |
| View Direction | All (IPS) |
| Operating Temperature | -20๏ฝ70ยฐC |
๐ Pins Map
| Name | GPIO NUM | Free |
|---|---|---|
| SDA | 10 | โ |
| SCL | 11 | โ |
| Touchpad(FT6336U) SDA | 39 | โ |
| Touchpad(FT6336U) SCL | 40 | โ |
| Touchpad(FT6336U) Interrupt | 16 | โ |
| Touchpad(FT6336U) RESET | Not Connected | โ |
| RTC(PCF8563) SDA | Share with I2C bus | โ |
| RTC(PCF8563) SCL | Share with I2C bus | โ |
| RTC(PCF8563) Interrupt | 17 | โ |
| Sensor(BMA423) Interrupt | 14 | โ |
| Sensor(BMA423) SDA | Share with I2C bus | โ |
| Sensor(BMA423) SCL | Share with I2C bus | โ |
| PCM Amplifier(MAX98357A) BCLK | 48 | โ |
| PCM Amplifier(MAX98357A) WCLK | 15 | โ |
| PCM Amplifier(MAX98357A) DOUT | 46 | โ |
| GNSS(MIA-M10Q) TX | 42 | โ |
| GNSS(MIA-M10Q) RX | 41 | โ |
| GNSS(MIA-M10Q) PPS | Not Connected | โ |
| LoRa(SX1262 or SX1280) SCK | 3 | โ |
| LoRa(SX1262 or SX1280) MISO | 4 | โ |
| LoRa(SX1262 or SX1280) MOSI | 1 | โ |
| LoRa(SX1262 or SX1280) RESET | 8 | โ |
| LoRa(SX1262 or SX1280) BUSY | 7 | โ |
| LoRa(SX1262 or SX1280) CS | 5 | โ |
| LoRa(SX1262 or SX1280) Interrupt | 9 | โ |
| Display CS | 12 | โ |
| Display MOSI | 13 | โ |
| Display MISO | Not Connected | โ |
| Display SCK | 18 | โ |
| Display DC | 38 | โ |
| Display RESET | Not Connected | โ |
| Display Backlight | 45 | โ |
| Charger(AXP2101) SDA | Share with I2C bus | โ |
| Charger(AXP2101) SCL | Share with I2C bus | โ |
| Charger(AXP2101) Interrupt | 21 | โ |
| Haptic Driver(DRV2605) SDA | Share with I2C bus | โ |
| Haptic Driver(DRV2605) SCL | Share with I2C bus | โ |
| PDM Microphone(SPM1423HM4H) SCK | 44 | โ |
| PDM Microphone(SPM1423HM4H) DATA | 47 | โ |
| Infrared transmitter | 2 | โ |
๐ง๐ผโ๐ง I2C Devices Address
| Devices | 7-Bit Address | Share Bus |
|---|---|---|
| Touch Panel FT6336U | 0x38 | โ Use Wire1 |
| Accelerometer sensor BMA423 | 0x19 | โ ๏ธ |
| Power Manager AXP2101 | 0x34 | โ ๏ธ |
| Real-Time Clock PCF8563 | 0x51 | โ ๏ธ |
| Haptic driver DRV2605 | 0x5A | โ ๏ธ |
โก PowerManage Channel
| Channel | Peripherals |
|---|---|
| DC1 | ESP32-S3 |
| DC2 | Unused |
| DC3 | Unused |
| DC4 | Unused |
| DC5 | Unused |
| LDO1(VRTC) | Unused |
| ALDO1 | Unused |
| ALDO2 | Display Backlight |
| ALDO3 | Display and Touch |
| ALDO4 | LoRa |
| BLDO1 | GNSS |
| BLDO2 | DRV2605 Enable |
| DLDO1 | Unused |
| CPUSLDO | Unused |
| VBACKUP | RTC Button Battery |
- BLDO1 as GPS power supply (with BOOT and RST buttons in the back shell)
- DC3 was originally used as a GPS power source (there were no BOOT and RST buttons on the back cover)
โก Electrical parameters
| Features | Details |
|---|---|
| ๐USB-C Input Voltage | 3.9V-6V |
| โกCharge Current | 0-1024mA ((Programmable)) |
| ๐Battery Voltage | 3.7V |
| ๐Battery capacity | 1500mA ((5.55Wh)) |
[!IMPORTANT]
โ ๏ธ It is recommended to use a charging current below 130mA. Excessive charging current can damage the battery.
If not in use for an extended period, turn the battery switch to OFF.
โก Power consumption reference
| Mode | Wake-Up Mode | Current |
|---|---|---|
| Light-Sleep | PowerButton + BootButton + TouchPanel | 2.38mA |
| Light-Sleep | PowerButton + BootButton | N.A |
| DeepSleep | PowerButton + BootButton (Backup power on) | 530uA |
| DeepSleep | PowerButton + BootButton (Backup power off) | 460uA |
| DeepSleep | TouchPanel | 1.08mA |
| DeepSleep | Timer (Backup power on) | 510uA |
| DeepSleep | Timer (Backup power off) | 460uA |
| Power OFF | Only keep the backup power | 50uA |
- T-Watch-S3-Plus does not have a touch reset pin connected, so if you set the touch screen to sleep, the touch will not work.
Resource
Quick Start
Example Support
| Example | PlatformIO/Arduino | ESP-IDF | Description |
|---|---|---|---|
| Factory | โ | Factory Example | |
| (More examples please refer to the GitHub repository) |
PlatformIO
- Install Visual Studio Code, choose the version for your system.
- Open the "Extensions" in the sidebar of Visual Studio Code (or use Ctrl+Shift+X), search for the "PlatformIO IDE" extension and install it.
- While the extension is installing, you can go to GitHub to download the project code. You can download the main branch code by clicking the green "<> Code" button, or download the "Releases" version from the sidebar.
- After the extension is installed, open the sidebar's Explorer (or use Ctrl+Shift+E), click "Open Folder", find the project code folder you just downloaded (the entire folder), click "Add". The project files will then be added to your workspace.
- Open the "platformio.ini" file in the project folder (PlatformIO should automatically open the "platformio.ini" for the added folder). Under the "[platformio]" section, uncomment the line to select the example program you want to upload (identified by "default_envs = xxx"). Then click the "โ" in the bottom left corner to compile. If the compilation is successful, connect the microcontroller to your computer and click the "โ" in the bottom left corner to upload.
Arduino
- Install Arduino IDE
- Install Arduino ESP32 V3.3.0-alpha1 or later or latest
- Tips : Arduino manager URL: https://espressif.github.io/arduino-esp32/package_esp32_dev_index.json
- Download LilyGoLib Library
- Open
Arduino IDE->Sketch->Include Library->Add .ZIP Library->Select the library compressed package downloaded in step 3 - Install LilyGoLib-ThirdParty
- Copy all directories in LilyGoLib-ThirdParty to ArduinoIDE libraries directory, if there is no
librariesdirectory, please create it. - Please note that instead of copying the
LilyGoLib-ThirdPartydirectory, copy the folders in theLilyGoLib-ThirdPartydirectory to libraries - How to find the location of your own libraries on your computer, please see here
- Windows:
C:\Users\{username}\Documents\Arduino - macOS:
/Users/{username}/Documents/Arduino - Linux:
/home/{username}/Arduino
- Windows:
- Copy all directories in LilyGoLib-ThirdParty to ArduinoIDE libraries directory, if there is no
Please note that the libraries in LilyGoLib-ThirdParty are not necessarily the latest versions. Please do not upgrade the versions of the dependent libraries before confirming that the hardware is running normally.
ArduinoIDE will prompt that there is a new version of the library to upgrade every time it is opened.
Please confirm that it is running normally before trying to update to the latest version. If you encounter problems, please roll back to the version of the dependent library that runs normally. The current list of dependent library versions can be viewed here
File->Examples->LilyGOLib->helloworldTools->Board->esp32,Please select from the table below
| Arduino IDE Setting | Value |
|---|---|
| Board | LilyGo T-Watch-S3 |
| Port | Your port |
| USB CDC On Boot | Enabled |
| CPU Frequency | 240MHZ(WiFi) |
| Core Debug Level | None |
| USB DFU On Boot | Disable |
| Erase All Flash Before Sketch Upload | Disable |
| Events Run On | Core 1 |
| JTAG Adapter | Disable |
| Arduino Runs On | Core 1 |
| USB Firmware MSC On Boot | Disable |
| Partition Scheme | 16M Flash(3M APP/9.9MB FATFS) |
| Board Revision | Radio-SX1262 |
| Upload Mode | UART0/Hardware CDC |
| Upload Speed | 921600 |
| USB Mode | CDC and JTAG |
| USB Mode | CDC and JTAG |
- Board Revision options, please select according to the actual RF type purchased. The current options are:
- Radio-SX1262(Sub 1G LoRa)
- Radio-SX1280(2.4G LoRa)
- Radio-CC1101(Sub 1G (G)MSK, 2(G)FSK, 4(G)FSK, ASK, OOK)
- Radio-LR1121(Sub 1G + 2.4G LoRa)
- Radio-SI4432(Sub 1G ISM)
- Select
Port - Click
upload, Wait for compilation and writing to complete - If you cannot upload sketch or the USB device keeps popping up on the computer, please manually put the device into download mode. How to enter download mode, please see the here
- If there is no message output from the serial port, please check whether USB CDC ON Boot is set to Enabled.
- Board Revision changes according to the actual RF module model. The current default version is SX1262
- This library depends on the latest arduino-esp32 version. If it is lower than V3.3.0-alpha1, an error will be reported.
T-Watch-S3-Plus Enter Download Mode
Download mode is only required when the program is not allowed to upload the sketch. This step is not required under normal circumstances.
๐ค T-Watch-S3-Plus the BOOT button and RST button have been reserved on the edge of the shell. Please follow the steps below to put the device into download mode.
- Connect the board via the USB-C cable
- Press and hold the BOOT button , While still pressing the BOOT button
- Release the RST button
- Release the BOOT button
- The USB port should be fixed and will not flash again. You can click Upload.
- Press the RST button to exit download mode
If the new code is successfully written, but the device does not light up or has other problems, please use our factory test code to test whether the peripherals can work properly. Please jump here to download the firmware and write it for testing.
Development Platforms
FAQ
Q. What is the main difference between the T-Watch S3 Plus and the T-Watch S3?
A. The T-Watch S3 Plus adds GPS functionality to the T-Watch S3, while other hardware configurations remain largely the same.Q. How to turn on and off?
A. Press and hold the POWER button for 2 seconds to turn on. Press and hold for 6 seconds to turn off. The BOOT button is an internal button used to enter download mode.Q. Which LoRa frequency bands are supported?
A. Currently available in SX1262 and SX1280 versions, supporting 433MHz~923MHz frequency bands. Please choose the appropriate version according to the regulations in your region.Q. How to develop watch applications?
A. It is recommended to use the TTGO_TWatch_Library, which provides rich watch UI components and sensor drivers for rapid application development.Q. What is the battery life like?
A. Battery life depends on usage scenarios. Under normal usage, it can last for several days. Please refer to actual test data for specific duration.
Projects
Resources
- ESP32-S3 Datasheet
- BMA423 Datasheet
- AXP2101 Datasheet
- (More resources please refer to the GitHub repository)