Skip to main content

ESP32-S3-LCD-1.47B Working with Arduino

This chapter includes the following sections. Please read as needed:

Arduino Getting Started​

New to Arduino ESP32 development and looking for a quick start? We have prepared a comprehensive Getting Started Tutorial for you.

Note: This tutorial uses the ESP32-S3-Zero as a reference example, and all hardware code is based on its pinout. Before you start, we recommend checking the pinout of your development board to ensure the pin configuration is correct.

Setting Up the Development Environment​

1. Install and Configure the Arduino IDE​

Please refer to the tutorial Install and Configure Arduino IDE to download and install the Arduino IDE and add ESP32 support.

Board Installation Instructions for ESP32-S3-LCD-1.47B

Board NameBoard Installation RequirementVersion Requirement
esp32 by Espressif Systems"Offline Installation" / "Online Installation"≥3.0.2

Install Libraries​

  • When installing Arduino libraries, there are typically two options: Online Installation and Offline Installation. If the library installation requires offline installation, you must use the provided library files.
  • For most libraries, users can easily search for and install them via the Arduino IDE's online Library Manager. However, some open-source or custom libraries are not synchronized to the Arduino Library Manager, so they cannot be found through online search. In this case, you can only install these libraries manually offline.
  • For a library installation tutorial, see the library installation section in the Install and Configure Arduino IDE.
  • The ESP32-S3-LCD-1.47B library files are stored in the example program. Click here to go to: ESP32-S3-LCD-1.47B Example.

Library installation instructions for ESP32-S3-LCD-1.47B

Library NameDescriptionVersionLibrary Installation Requirement
LVGLGraphics libraryv8.3.10Offline installation
PNGdecDecodes PNG image formatv1.0.2Offline installation
info

For more LVGL learning and usage, refer to the LVGL Official Documentation.

Example​

Demo-flow-01

ESP32-S3-LCD-1.47B Example Programs

ExampleBasic DescriptionDependency Library
LVGL_ArduinoTests onboard device functionsLVGL
LCD_ImageDisplays PNG files in the TF card root directory at intervalsPNGdec

Arduino Project Settings​

ESP32-S3-LCD-1

LVGL_Arduino​

Hardware Connection

  • Connect the board to the computer.

Code Analysis

  1. setup()
  • Flash_test(): Tests and prints the device's flash size information.
  • SD_Init(): Initializes the TF card.
  • LCD_Init(): Initializes the display.
  • Set_Backlight(90): Sets the backlight brightness to 90.
  • Lvgl_Init(): Initializes the LVGL graphics library.
  • Lvgl_Example1(): Calls a specific LVGL example function.
  • Wireless_Test2(): Calls a function for wireless communication testing.
  1. loop()
  • Timer_Loop(): Handles timer‑related tasks.
  • RGB_Lamp_Loop(2): Updates the RGB LED color at fixed intervals.

Expected Behavior

  • LCD screen display

    ESP32-S3-LCD-1

info

For more LVGL learning and usage, refer to the LVGL Official Documentation.

LCD_Image​

TF Card Preparation

  • Add the image examples provided by Waveshare to the TF card.

    ESP32-S3-LCD-1

    ESP32-S3-LCD-1

Hardware Connection

  • Insert the TF card containing example images into the device.
  • Connect the board to the computer.

Code Analysis

  1. setup()
  • Flash_test(): Tests and prints the device's flash size information.
  • SD_Init(): Initializes the TF card.
  • LCD_Init(): Initializes the display.
  • Set_Backlight(90): Sets the backlight brightness to 90.
  1. loop()
  • Image_Next_Loop("/", ".png", 300): Displays PNG files in the TF card root directory in sequence at fixed intervals.
  • RGB_Lamp_Loop(2): Updates the RGB LED color at fixed intervals.

Expected Behavior

  • The LCD displays PNG files in the TF card root directory in sequence at fixed intervals.

    ESP32-S3-LCD-1ESP32-S3-LCD-1ESP32-S3-LCD-1