LILYGO T-Watch S3 Plus

  • T-Watch
  • ESP32-S3
  • Smartwatch
  • GPS
  • LoRa

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
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

T-Watch-S3-Plus

Pin Diagram

summary

Modules

MCU

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 GNSS
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

  1. Install Visual Studio Code, choose the version for your system.
  2. Open the "Extensions" in the sidebar of Visual Studio Code (or use Ctrl+Shift+X), search for the "PlatformIO IDE" extension and install it.
  3. 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.
  4. 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.
  5. 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

  1. Install Arduino IDE
  2. Install Arduino ESP32 V3.3.0-alpha1 or later or latest
  1. Download LilyGoLib Library
  2. Open Arduino IDE -> Sketch -> Include Library -> Add .ZIP Library -> Select the library compressed package downloaded in step 3
  3. Install LilyGoLib-ThirdParty
    • Copy all directories in LilyGoLib-ThirdParty to ArduinoIDE libraries directory, if there is no libraries directory, please create it.
    • Please note that instead of copying the LilyGoLib-ThirdParty directory, copy the folders in the LilyGoLib-ThirdParty directory 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

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

  1. File -> Examples -> LilyGOLib -> helloworld
  2. Tools -> 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
  1. 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)
  2. Select Port
  3. Click upload , Wait for compilation and writing to complete
  4. 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.

  1. Connect the board via the USB-C cable
  2. Press and hold the BOOT button , While still pressing the BOOT button
  3. Release the RST button
  4. Release the BOOT button
  5. The USB port should be fixed and will not flash again. You can click Upload.
  6. 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

  1. ESP-IDF
  2. Arduino IDE
  3. Platform IO
  4. Micropython

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

Dependent Libraries