Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use Waveshare 1.69 TFT: Examples, Pinouts, and Specs

Image of Waveshare 1.69 TFT
Cirkit Designer LogoDesign with Waveshare 1.69 TFT in Cirkit Designer

Introduction

The Waveshare 1.69 TFT (Manufacturer Part ID: 1690) is a compact, high-resolution display module designed for embedded systems and DIY electronics projects. With a 1.69-inch diagonal size, this TFT display offers vibrant colors and excellent clarity, making it ideal for applications requiring a small yet visually appealing display. Its compact design ensures easy integration into a variety of projects, including IoT devices, handheld gadgets, and user interfaces.

Explore Projects Built with Waveshare 1.69 TFT

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
ESP32-Powered 1.3 inch TFT Display Module for Visual Data Output
Image of ESP32+ST7789: A project utilizing Waveshare 1.69 TFT in a practical application
This circuit connects an ESP32 microcontroller to a 1.3 inch TFT display module (ST7789). The ESP32 provides power and control signals to the display, enabling it to show graphical data.
Cirkit Designer LogoOpen Project in Cirkit Designer
STM32F103C8T6-Based Spectral Sensor with ST7735S Display and Pushbutton Control
Image of ColorSensor: A project utilizing Waveshare 1.69 TFT in a practical application
This circuit features an STM32F103C8T6 microcontroller interfaced with a China ST7735S 160x128 display and two spectral sensors (Adafruit AS7262 and AS7261). It also includes two pushbuttons for user input, with the microcontroller managing the display and sensor data processing.
Cirkit Designer LogoOpen Project in Cirkit Designer
RTL8720DN-Based Interactive Button-Controlled TFT Display
Image of coba-coba: A project utilizing Waveshare 1.69 TFT in a practical application
This circuit features an RTL8720DN microcontroller interfaced with a China ST7735S 160x128 TFT LCD display and four pushbuttons. The microcontroller reads the states of the pushbuttons and displays their statuses on the TFT LCD, providing a visual feedback system for button presses.
Cirkit Designer LogoOpen Project in Cirkit Designer
Arduino Nano Controlled TFT Display with Multiple Pushbuttons
Image of rey: A project utilizing Waveshare 1.69 TFT in a practical application
This circuit features an Arduino Nano microcontroller connected to a ST7735 128x128 1.44 TFT I2C Color display and multiple pushbuttons. The display is interfaced with the Arduino via digital pins for control signals and SPI pins for data transfer. The pushbuttons are connected to various digital and analog input pins on the Arduino, likely intended for user input to control the display or other functions within the code.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with Waveshare 1.69 TFT

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of ESP32+ST7789: A project utilizing Waveshare 1.69 TFT in a practical application
ESP32-Powered 1.3 inch TFT Display Module for Visual Data Output
This circuit connects an ESP32 microcontroller to a 1.3 inch TFT display module (ST7789). The ESP32 provides power and control signals to the display, enabling it to show graphical data.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of ColorSensor: A project utilizing Waveshare 1.69 TFT in a practical application
STM32F103C8T6-Based Spectral Sensor with ST7735S Display and Pushbutton Control
This circuit features an STM32F103C8T6 microcontroller interfaced with a China ST7735S 160x128 display and two spectral sensors (Adafruit AS7262 and AS7261). It also includes two pushbuttons for user input, with the microcontroller managing the display and sensor data processing.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of coba-coba: A project utilizing Waveshare 1.69 TFT in a practical application
RTL8720DN-Based Interactive Button-Controlled TFT Display
This circuit features an RTL8720DN microcontroller interfaced with a China ST7735S 160x128 TFT LCD display and four pushbuttons. The microcontroller reads the states of the pushbuttons and displays their statuses on the TFT LCD, providing a visual feedback system for button presses.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of rey: A project utilizing Waveshare 1.69 TFT in a practical application
Arduino Nano Controlled TFT Display with Multiple Pushbuttons
This circuit features an Arduino Nano microcontroller connected to a ST7735 128x128 1.44 TFT I2C Color display and multiple pushbuttons. The display is interfaced with the Arduino via digital pins for control signals and SPI pins for data transfer. The pushbuttons are connected to various digital and analog input pins on the Arduino, likely intended for user input to control the display or other functions within the code.
Cirkit Designer LogoOpen Project in Cirkit Designer

Common Applications and Use Cases

  • IoT devices with graphical interfaces
  • Wearable electronics
  • Portable monitoring systems
  • Embedded systems requiring compact displays
  • DIY projects and prototyping

Technical Specifications

Below are the key technical details of the Waveshare 1.69 TFT display module:

Parameter Value
Display Type TFT LCD
Screen Size 1.69 inches (diagonal)
Resolution 240 x 280 pixels
Interface SPI (Serial Peripheral Interface)
Operating Voltage 3.3V
Backlight LED
Viewing Angle Wide
Dimensions 30.5mm x 35.5mm
Operating Temperature -20°C to 70°C

Pin Configuration and Descriptions

The Waveshare 1.69 TFT module features a standard SPI interface with the following pinout:

Pin Name Description
1 GND Ground connection
2 VCC Power supply (3.3V)
3 SCL Serial Clock Line (SPI clock input)
4 SDA Serial Data Line (SPI data input)
5 RES Reset pin (active low)
6 DC Data/Command control pin (High for data, Low for command)
7 CS Chip Select (active low)
8 BL Backlight control (connect to VCC for always-on backlight or PWM for dimming)

Usage Instructions

How to Use the Component in a Circuit

  1. Power Supply: Connect the VCC pin to a 3.3V power source and the GND pin to ground.
  2. SPI Interface: Connect the SCL, SDA, RES, DC, and CS pins to the corresponding SPI pins on your microcontroller.
  3. Backlight Control: For a constant backlight, connect the BL pin to VCC. For adjustable brightness, connect it to a PWM-capable pin on your microcontroller.
  4. Initialization: Use an appropriate library (e.g., Adafruit GFX or Waveshare's library) to initialize and control the display.

Important Considerations and Best Practices

  • Voltage Levels: Ensure all signal lines operate at 3.3V logic levels. Use level shifters if your microcontroller operates at 5V.
  • SPI Speed: Configure the SPI clock speed according to the display's specifications to avoid communication errors.
  • Reset Pin: Always initialize the display by toggling the RES pin during startup.
  • Backlight Power: Avoid directly connecting the BL pin to a high-current source without a resistor or PWM control.

Example Code for Arduino UNO

Below is an example of how to use the Waveshare 1.69 TFT with an Arduino UNO. Note that a level shifter is required for 5V logic compatibility.

#include <Adafruit_GFX.h>    // Include the Adafruit GFX library
#include <Adafruit_ST7789.h> // Include the Adafruit library for ST7789 driver
#include <SPI.h>             // Include the SPI library

// Define pin connections
#define TFT_CS    10  // Chip Select pin
#define TFT_RST   9   // Reset pin
#define TFT_DC    8   // Data/Command pin

// Create an instance of the display
Adafruit_ST7789 tft = Adafruit_ST7789(TFT_CS, TFT_DC, TFT_RST);

void setup() {
  // Initialize serial communication for debugging
  Serial.begin(9600);
  Serial.println("Initializing display...");

  // Initialize the display with a 240x280 resolution
  tft.init(240, 280);

  // Set the rotation (0-3 for different orientations)
  tft.setRotation(1);

  // Fill the screen with a solid color
  tft.fillScreen(ST77XX_BLACK);

  // Display a message
  tft.setTextColor(ST77XX_WHITE);
  tft.setTextSize(2);
  tft.setCursor(10, 10);
  tft.println("Hello, Waveshare!");
}

void loop() {
  // Add your code here to update the display
}

Troubleshooting and FAQs

Common Issues and Solutions

  1. No Display Output:

    • Verify all connections, especially the SPI pins.
    • Ensure the VCC and GND pins are properly connected.
    • Check if the RES pin is toggled during initialization.
  2. Flickering or Distorted Display:

    • Reduce the SPI clock speed in your code.
    • Ensure proper grounding to avoid noise interference.
  3. Backlight Not Working:

    • Confirm the BL pin is connected to VCC or a PWM pin.
    • Check for loose or incorrect connections.
  4. Display Not Responding to Commands:

    • Verify the CS pin is correctly connected and toggled in the code.
    • Ensure the correct library and driver (e.g., ST7789) are being used.

FAQs

Q: Can I use this display with a 5V microcontroller?
A: Yes, but you must use level shifters to convert the 5V logic signals to 3.3V.

Q: Is the backlight brightness adjustable?
A: Yes, connect the BL pin to a PWM-capable pin on your microcontroller for dimming control.

Q: What library should I use for this display?
A: The Adafruit GFX and Adafruit ST7789 libraries are recommended for easy integration.

Q: Can I use this display with Raspberry Pi?
A: Yes, the display is compatible with Raspberry Pi. Use the SPI interface and appropriate libraries for setup.

By following this documentation, you can successfully integrate the Waveshare 1.69 TFT into your projects and troubleshoot common issues effectively.