Skip to content

Xinyuan-LilyGO/T-Display-S3-Pro

Repository files navigation

🌟 T-Display-S3-Pro 🌟

PlatformIO CI

News

  • Cool back cover design from @moononournation , Design files can be found here

  • The early version of T-Display-S3-Pro V1.0 uses PWM for backlight adjustment. The V1.1 upgrade uses backlight constant current drive. The drive method is different. Please see the example for specific usage.

  • How to distinguish versions?

    • If USBC is marked with V1.1, it is the current version. If not, it is V1.0.
  • T-Display-S3-Pro uses the SY6970 power path switching chip. In order to maintain stable power supply when the battery is not connected, the charging function must be turned off. Devices connected to the battery do not need to be turned off. How to turn off charge please refer here

  • New T-Display-S3-Pro-MVSRBoard backplane was launched on September 13, 2024, with external speakers, microphones, RTC clocks, and vibration functions.

1️⃣Product

Product(PinMap) SOC Flash PSRAM Resolution
T-Display-S3-Pro ESP32-S3R8 16MB 8MB(OPI) 222x480
T-Display-S3-Pro-MVSRBoard

2️⃣Examples

T-Display-S3-Pro examples
├── examples/Arduino_GFX_HelloWorld           # Arduino_GFX example
├── examples/Arduino_GFX_LvglBenchmark        # Arduino_GFX example
├── examples/Arduino_GFX_PDQgraphicstest      # Arduino_GFX example
├── examples/CameraShield                     # Camera example
├── examples/CapacitiveTouch                  # Capacitive Touch example
├── examples/LTR553ALS_Sensor                 # Light & Proximity Sensor example
├── examples/TFT_eSPI_Simple                  # TFT_eSPI example
├── examples/USB_HID_Example                  # USB Host HID & OTG example
├── examples/UnitTest                         # Hardware unit testing example
├── examples/PMU_Example                      # Power management settings and battery information detection example
├── examples/AdjustBacklight                  # Backlight adjustment example
├── examples/Cellphone                        # With camera that can take pictures, to view the photos in the album (sd card required)
└── examples/factory                          # Factory example

If use the 'examples/Cellphone' examples,
be careful not block the top of the "S3-Pro" screen, if it is blocked, the screen will sleep.

T-Display-S3-Pro-MVSRBoard examples
├── examples/DMIC_ReadData           
├── examples/DMIC_SD                     
├── examples/IIC_Scan_2               
├── examples/PCF85063                  
├── examples/PCF85063_Scheduled_INT           
├── examples/PCF85063_Timer_INT             
├── examples/USB_Host_Camera_Screen             
├── examples/Vibration_Motor             
├── examples/Wifi_Music             
└── examples/Original_Test                          # Factory example

T-Display-S3-Pro-MVSRBoard firmware
└── firmware/T-Display-S3-Pro-MVSRBoard/[T-Display-S3-Pro-MVSRBoard_V1.0][Original_Test]_firmware_V1.0.1.bin                          # Factory example

3️⃣ PlatformIO Quick Start (Recommended)

  1. Install Visual Studio Code and Python
  2. Search for the PlatformIO plugin in the VisualStudioCode extension and install it.
  3. After the installation is complete, you need to restart VisualStudioCode
  4. After restarting VisualStudioCode, select File in the upper left corner of VisualStudioCode -> Open Folder -> select the T-Display-S3-Pro directory
  5. Wait for the installation of third-party dependent libraries to complete
  6. Click on the platformio.ini file, and in the platformio column
  7. Uncomment one of the lines default_envs = xxxx to make sure only one line works
  8. Click the (✔) symbol in the lower left corner to compile
  9. Connect the board to the computer USB
  10. Click (→) to upload firmware
  11. Click (plug symbol) to monitor serial output
  12. If it cannot be written, or the USB device keeps flashing, please check the FAQ below

4️⃣ Arduino IDE Quick Start

  1. Install Arduino IDE
  2. Install Arduino ESP32 V 2.0.5 or above and below V3.0
  3. Download T-Display-S3-Pro to Decktop
  4. Copy all folders in lib folder to Arduino library folder (e.g. C:\Users\YourName\Documents\Arduino\libraries)
  5. Open ArduinoIDE ,Tools , Look at the picture to choose setting
  6. Open T-Display-S3-Pro -> examples -> any examples -> any eaxmples.ino
  7. Select Port
  8. Click upload , Wait for compilation and writing to complete
  9. If it cannot be written, or the USB device keeps flashing, please check the FAQ below

5️⃣ ESP32 basic examples

6️⃣ FAQ

  1. The board uses USB as the JTAG upload port. When printing serial port information on USB_CDC_ON_BOOT configuration needs to be turned on. If the port cannot be found when uploading the program or the USB has been used for other functions, the port does not appear. Please enter the upload mode manually.

    1. Connect the board via the USB cable
    2. Press and hold the BOOT button , While still pressing the BOOT button, press RST
    3. Release the RST
    4. Release the BOOT button
    5. Upload sketch
  2. If the above is invalid, burn the binary file to check whether the hardware is normal

  3. The OTG external power supply function requires turning on the PMU OTG enablement. If the USB input is connected and the OTG is set to output, the battery will not be charged.

  4. Turning the physical switch to OFF will completely disconnect the battery from the motherboard. When charging is required, turn the switch to ON.

  5. When the battery is not connected and the USB is plugged in, the board's LED status indicator light will flash. You can use PMU.disableStatLed(); to turn off the indicator light, but this means that if the battery is connected for charging, the LED light will also be disabled. If you need to enable the charging status indicator, please call PMU.enableStatLed();

  6. Device shuts down suddenly?

  • When the battery is connected, the device will not shut down suddenly. Sudden shutdown will only occur when the device is not connected to the battery. The solution is to turn off the charging function of SY6970. How to turn off charge please refer here

7️⃣ Depends on required libraries