The ESP32-S3 TFT Feather is a compact development board built around the ESP32-S3 microcontroller. It is specifically designed for IoT applications, offering robust processing power, integrated Wi-Fi and Bluetooth connectivity, and a built-in TFT display for visual output. This board is ideal for projects that require a combination of wireless communication, efficient processing, and a user-friendly interface.
Pin Name | Type | Description |
---|---|---|
VIN | Power Input | Input voltage (3.7-6V) for powering the board via LiPo battery or external source. |
3V3 | Power Output | Regulated 3.3V output for powering external components. |
GND | Ground | Ground connection. |
GPIO0 | Digital I/O | General-purpose I/O pin, also used for boot mode selection. |
GPIO1 | Digital I/O | General-purpose I/O pin. |
GPIO2 | Digital I/O | General-purpose I/O pin. |
GPIO3 | Digital I/O | General-purpose I/O pin. |
GPIO4 | Digital I/O | General-purpose I/O pin. |
GPIO5 | Digital I/O | General-purpose I/O pin. |
SDA | I2C Data | I2C data line for communication with peripherals. |
SCL | I2C Clock | I2C clock line for communication with peripherals. |
MOSI | SPI Data Out | SPI Master Out Slave In (data output for SPI communication). |
MISO | SPI Data In | SPI Master In Slave Out (data input for SPI communication). |
SCK | SPI Clock | SPI clock line for communication. |
TFT_CS | Digital Output | Chip select for the TFT display. |
TFT_DC | Digital Output | Data/command control for the TFT display. |
TFT_RST | Digital Output | Reset pin for the TFT display. |
Below is an example of how to display text on the TFT screen using the Adafruit GFX library:
#include <Adafruit_GFX.h> // Core graphics library
#include <Adafruit_ST7789.h> // Driver for the TFT display
#include <SPI.h>
// Define TFT display pins
#define TFT_CS 10 // Chip select pin
#define TFT_DC 9 // Data/command pin
#define TFT_RST 8 // Reset pin
// Initialize the TFT display
Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);
void setup() {
// Initialize serial communication for debugging
Serial.begin(115200);
Serial.println("Initializing TFT...");
// Initialize the TFT display
tft.init(240, 135); // Initialize with width and height
tft.setRotation(1); // Set display rotation
tft.fillScreen(ST77XX_BLACK); // Clear the screen with black color
// Display text on the screen
tft.setTextColor(ST77XX_WHITE); // Set text color to white
tft.setTextSize(2); // Set text size
tft.setCursor(10, 10); // Set cursor position
tft.println("Hello, ESP32-S3!"); // Print text to the screen
}
void loop() {
// Nothing to do here
}
The board does not power on:
Unable to upload code:
TFT display shows a blank screen:
Wi-Fi or Bluetooth not working: