LILYGO T-Display User Guide
Version 1.1
Copyright © 2021
About This Guide
This document is intended to help users set up the basic software development environment for developing applications using hardware based on the T-Display. Through a simple example, this document illustrates how to use Arduino, including the menu based configuration wizard, compiling the Arduino and firmware download to the ESP32 module.
Release Notes
Date | Version | Release notes |
2021.06 | V1.0 | First release. |
2021.12 | V1.1 | Second release. |
Introduction
1.1. T-Display
T-Display is a development board. It can work independently. It consists of ESP32 MCU supporting Wi-Fi + BT+ BLE communication protocol and a screen. The screen is 1.14 inch IPS LCD ST7789V.
For applications ranging from low-power sensor networks to the most demanding tasks. The MCU of this board is the ESP32-D0WDQ6 chip.
ESP32 integrates Wi-Fi (2.4 GHz band) and Bluetooth 4.2 solutions on a single chip, along with dual high performance cores and many other versatile peripherals. Powered by 40 nm technology, ESP32 provides a robust, highly integrated platform to meet the continuous demands for efficient power usage, compact design, security, high performance, and reliability.
Xinyuan provides the basic hardware and software resources that empowers application developers to build their ideas around the ESP32 series hardware. The software development framework provided by Xinyuan is intended for rapidly developing Internet-of-Things (IoT) applications, with Wi-Fi, Bluetooth, flexible power management and other advanced system features.
The RF frequency range is :BT 2.402 GHz to 2.480 GHz/WIFI 2.412GHz to 2.462GHz. The maximum RF transmit power is 20.31dBm.
The T-Display manufacturer is Shenzhen Xin Yuan Electronic Technology Co., Ltd.
1.2. Arduino
A set of cross-platform applications written in Java. The Arduino Software IDE is derived from the Processing programming language and the integrated development environment of the Wiring program. Users can develop applications in Windows/Linux/MacOS based on Arduino. It is recommended to use Windows 10. Windows OS has been used as an example in this document for illustration purposes.
1.3. Preparation
To develop applications for ESP32 you need:
- PC loaded with either Windows, Linux or Mac operating system
- Toolchain to build the Application for ESP32
- Arduino that essentially contains API for ESP32 and scripts to operate the Toolchain
- CH9102 serial port driver
- The ESP32 board itself and a USB cable to connect it to the PC
Get Started
2.1. Download the Arduino Software
The quickest how to install the Arduino Software (IDE) on Windows machines
2.1.1. Quick Start Guide
The website provides a quick start tutorial:
- Windows: https://www.arduino.cc/en/Guide/Windows
- Linux: https://www.arduino.cc/en/Guide/Linux
- Mac OS X: https://www.arduino.cc/en/Guide/MacOSX
2.1.2. Installation steps for Windows platform Arduino
A screenshot shows the Arduino IDE download page with options for different operating systems. The main download section highlights "Windows Installer" and "Windows ZIP file for non admin install". Other options include Mac OS X, Linux, Release Notes, and Source Code.
Enter the download interface, select Windows installer to install directly.
2.2. Install the Arduino Software
A screenshot shows the Arduino Setup: Installation Options window. It allows users to select components to install, including "Install Arduino software", "Install USB driver", "Create Start Menu shortcut", "Create Desktop shortcut", and "Associate .ino files". The required space is 392.7MB.
A second screenshot shows the Arduino Setup: Installing window, indicating the progress of extracting "c++.exe".
Wait for installation.
Configure
3.1. Download Git
Download the installation package Git.exe.
A screenshot of the Git downloads page is displayed, showing download options for Windows, Mac OS X, and Linux. It also mentions the Pro Git book and GUI clients.
If you already have Git installed, you can get the latest development version via Git itself:
git clone https://github.com/git/git
You can also always browse the current contents of the git repository using the web interface.
3.2. Pre-build configuration
Click Arduino icon, then right click and select "Open folder where".
Select hardware.
Mouse Right click.
Click Git Bash Here.
3.3. Cloning a remote repository
$ mkdir espressif
$ cd espressif
$ git clone --recursive https://github.com/espressif/arduino-esp32.git esp32
Connect
You are almost there. To be able to proceed further, connect ESP32 board to PC, check under what serial port the board is visible and verify if serial communication works.
Test Demo
Select File >> Example >> WiFi >> WiFiScan
A screenshot shows the Arduino IDE menu with "File", "Edit", "Sketch", and "Tools" options. Under "File", there is a "Examples" submenu with various libraries and examples, including "WiFiScan".
The output window shows scan results indicating detected Wi-Fi networks.
Upload Sketch
6.1. Select Board
Navigate to Tools >> Board >> ESP32 Dev Module.
A screenshot shows the Arduino IDE "Tools" menu. Under "Board", a list of ESP32 development boards is displayed, with "ESP32 Dev Module" highlighted and an arrow pointing to it.
6.2. Upload
Sketch << Upload
Serial Monitor
Tools << Serial Monitor
A screenshot shows the Arduino IDE Serial Monitor window. It displays output from a Wi-Fi scan, listing detected networks and signal strength. The serial port is COM4, and the baud rate is 115200.
SSC Command Reference
Here lists some common Wi-Fi commands for you to test the module.
7.1. op
Description
op commands are used to set and query the Wi-Fi mode of the system.
Example
op -Q
op -S -o wmode
Parameter
Parameter | Description |
-Q | Query Wi-Fi mode. |
-S | Set Wi-Fi mode. |
wmode | There are 3 Wi-Fi modes: • mode = 1: STA mode • mode = 2: AP mode • mode = 3: STA+AP mode |
7.2. sta
Description
sta commands are used to scan the STA network interface, connect or disconnect AP, and query the connecting status of STA network interface.
Example
sta -S [-s ssid] [-b bssid] [-n channel] [-h]
sta -Q
sta -C [-s ssid] [-p password]
sta -D
Parameter
Parameter | Description |
-S scan | Scan Access Points. |
-s ssid | Scan or connect Access Points with the ssid. |
-b bssid | Scan the Access Points with the bssid. |
-n channel | Scan the channel. |
-h | Show scan results with hidden ssid Access Points. |
-D | Show STA connect stutus. |
7.3. ap
Description
ap commands are used to set the parameter of AP network interface.
Example
ap -S [-s ssid] [-p password] [-t encrypt] [-n channel] [-h] [-m max_sta]
ap -Q
ap -L
Parameter
Parameter | Description |
-S | Set AP mode. |
-s ssid | Set AP ssid. |
-p password | Set AP password. |
-t encrypt | Set AP encrypt mode. |
-h | Hide ssid. |
-m max_sta | Set AP max connections. |
-L | Show AP parameters. |
7.4. mac
Description
mac commands are used to query the MAC address of the network interface.
Example
mac -Q [-o mode]
Parameter
Parameter | Description |
-Q | Show MAC address. |
-o mode | mode = 1: MAC address in STA mode. mode = 2: MAC address in AP mode. |
7.5. dhcp
Description
dhcp commands are used to enable or disable dhcp server/client.
Example
dchp -S [-o mode]
dhcp -E [-o mode]
dhcp -Q [-o mode]
Parameter
Parameter | Description |
-S | Start DHCP (Client/Server). |
-E | End DHCP (Client/Server). |
-Q | show DHCP status. |
-o mode | mode = 1: DHCP client of STA interface. mode = 2: DHCP server of AP interface. mode = 3: both. |
7.6. ip
Description
ip command are used to set and query the IP address of the network interface.
Example
ip -Q [-o mode]
ip -S [-i ip] [-o mode] [-m mask] [-g gateway]
Parameter
Parameter | Description |
-Q | Show IP address. |
-o mode | mode = 1: IP address of interface STA. mode = 2: IP address of interface AP. mode = 3: both |
-S | Set IP address. |
-i ip | IP address. |
-m mask | Subnet address mask. |
-g gateway | Default gateway. |
7.7. reboot
Description
reboot command is used to reboot the board.
Example
reboot
7.8. ram
Description
ram command is used to query the size of the remaining heap in the system.
Example
ram
FCC Caution
Any Changes or modifications not expressly approved by the party responsible for compliance could void the user's authority to operate the equipment.
This device complies with part 15 of the FCC Rules. Operation is subject to the following two conditions: (1) This device may not cause harmful interference, and (2) this device must accept any interference received, including interference that may cause undesired operation.
IMPORTANT NOTE:
Note: This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant to part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential installation. This equipment generates, uses and can radiate radio frequency energy and, if not installed and used in accordance with the instructions, may cause harmful interference to radio communications. However, there is no guarantee that interference will not occur in a particular installation. If this equipment does cause harmful interference to radio or television reception, which can be determined by turning the equipment off and on, the user is encouraged to try to correct the interference by one or more of the following measures:
- Reorient or relocate the receiving antenna.
- Increase the separation between the equipment and receiver.
- Connect the equipment into an outlet on a circuit different from that to which the receiver is connected.
- Consult the dealer or an experienced radio/TV technician for help.
FCC Radiation Exposure Statement:
This equipment complies with FCC radiation exposure limits set forth for an uncontrolled environment. This equipment should be installed and operated with minimum distance 20cm between the radiator& your body.