Getting Started with Seeed Studio Round Display for XIAO
Introduction
Seeed Studio Round Display for XIAO is an expansion board compatible with all XIAO development boards. It features a fully covered touch screen on one side, designed as a 39mm disc. It contains onboard RTC, charge chip, TF card slot within its compact size, perfect for interactive displays in smart home, wearables and more.
REV | Description | DATE | BY |
---|---|---|---|
v1.0 | Initial Version | 2023/1/29 | Linus.Liao |
v1.1 | 1.Change Li Battery Charge IC 2.Add a switch to A0 and D6 | 2023/4/7 | Linus.Liao |
Specification
Item | Detail |
---|---|
Power Supply | USB Type-C: 5V @35 mA Battery Charge: 3.7V @37mA |
Charge current | ~ 485 mA |
Expandable memory | TF Card Slot for up to 32GB FAT |
Screen | 1.28-inch touch screen 240×240 resolution 65K colors |
Other External Equipment | JST 1.25 connector |
Dimension | 39mm x 39mm |
Features
- Capacitive Touch Screen Expansion Board: Display with 1.28-inch round, 240×240 resolution, 65K colors, providing clear and colorful images exhibition
- High Compatibility: Highly compatible with all XIAO series products, easily integrated into your current projects
- Rich Peripheral: Feature onboard RTC, battery charge chip, TF card slot, JST 1.25 connector, all within its compact size
- Watch-sized Design: Come with 39 mm circular design, suitable for wearable and space-limited projects
- Plug and Play: All pins are led out, no soldering is needed
Hardware Overview
Before we start, we can refer to the following pictures to understand the pin design of the Round Display to facilitate our understanding of the function of the Round Display.
Getting Started
Hardware Preparation
If you want to take advantage of the full capabilities of the Round Display and have a great experience, we highly recommend that you purchase our XIAO series as the motherboard for the Round Display.
Seeed Studio XIAO SAMD21 | Seeed Studio XIAO RP2040 | Seeed Studio XIAO nRF52840 (Sense) | Seeed Studio XIAO ESP32C3 | Seeed Studio XIAO ESP32S3 (Sense) |
---|---|---|---|---|
The row of pins on the back of Round Display is designed for XIAO series. If you have XIAO on hand, you don't need to prepare any additional cables, just align the pins of XIAO and plug them directly into Round Display.
Please note that when connecting the XIAO, the Type-C connector of the XIAO should be facing the outside of the Round Display. If you accidentally reversed polarity, don't worry too much, the Round Display has a power protection circuit that won't be easily damaged, but we don't recommend you to stay in the reverse connection for a long time.
The recommended orientation for Round Display is: when you face Round Display, the XIAO's Type-C connector faces to the right, so that the on/off button of Round Display is in the lower left corner.
Software Preparation
To use the Round Display, we need to program the XIAO series. The recommended programming tool is the Arduino IDE, and you need to configure the Arduino environment for the XIAO and add the on-board package.
If this is your first time using Arduino, we highly recommend you to refer to Getting Started with Arduino.
Step 1. Download and Install the stable version of Arduino IDE according to your operating system.
Step 2. Launch the Arduino application.
Step 3. Configure the Arduino IDE for the XIAO you are using.
If you want to use Seeed Studio XIAO SAMD21 for the later routines, please refer to this tutorial to finish adding.
If you want to use Seeed Studio XIAO RP2040 for the later routines, please refer to this tutorial to finish adding.
If you want to use Seeed Studio XIAO nRF52840 for the later routines, please refer to this tutorial to finish adding.
If you want to use Seeed Studio XIAO ESP32C3 for the later routines, please refer to this tutorial to finish adding.
If you want to use Seeed Studio XIAO ESP32S3 for the later routines, please refer to this tutorial to finish adding.
ESP32 development board package not compatible with TFT library when ESP32 development board package update to version 3.0.X,so we recommend you use ESP32 deveopment board package version 2.0.X to use XIAO Round Display.
Besides, ESP32C6 is not support version 2.0.X package, so we not recommend you use XIAO ESP32C6 with XIAO Round Display.
Step 4. Add the library of Round Display to Arduino.
First, you need to search and download the latest version TFT_eSPI and LVGL libraries in the Arduino IDE.
If you want to use the RTC function on the expansion board, then you also need to search and install the I2C BM8563 RTC library.
The TFT_eSPI library compatible with Round Display has been submitted for merge request, so when the next version is released, you can search and download TFT_eSPI in Arduino IDE to use it normally. Until then, if you need to use the TFT_eSPI library for Round Display, please download it from here.
If you have previously installed the TFT_eSPI library, please remove the original library and install the new one.
Then, we also need to download and import the configuration library for Round Display.
Since you have downloaded the zip Library, open your Arduino IDE, click on Sketch > Include Library > Add .ZIP Library. Choose the zip file you just downloaded,and if the library install correct, you will see Library added to your libraries in the notice window. Which means the library is installed successfully.
Then, you need to take the lv_conf.h
file and cut it to the root directory of the Arduino library.
Note that the lv_conf.h
file here is from Seeed_Arduino_RoundDisplay, not from the LVGL library.
On Windows, the root directory of the Arduino library is:
C:\Users\${UserName}\Documents\Arduino\libraries
Step 5. (Optional) Configure the usage environment
Round Display currently adapts two different library-based displays, one TFT_eSPI and the other Arduino GFX. For the XIAO SAMD21 and XIAO nRF52840, there are not enough memory to run the TFT library, and the Arduino GFX will have significantly better performance.
If you need to use the TFT_eSPI library, then proceed to step 5. If you are using the Arduino GFX, then you can skip this step.
For the content of Round Display, our tutorial will focus on the use of TFT_eSPI.
Please find the TFT_eSPI folder in the root directory of the Arduino library, and then modify the User_Setup_Select.h
file in the TFT_eSPI directory.
C:\Users\${UserName}\Documents\Arduino\libraries\TFT_eSPI\User_Setup_Select.h
If you want to use the TFT_eSPI library for display driving, you must comment out the line #include <User_Setup.h>
and uncomment the line #include <User_Setups/Setup66_Seeed_XIAO_RoundDisplay.h>
in the User_Setup_Select.h
file.
Arduino Library Overview
As we can probably tell from the above tutorial, Round Display mainly uses LVGL, TFT_eSPI and Arduino GFX libraries. For the sake of space, we will introduce the use of LVGL and TFT_eSPI libraries separately with the example of drawing a dial.
You can learn about the interface and use of the TFT_eSPI library by clicking here.
You can learn about the interface and use of the LVGL library by clicking here.
You can learn about the interface and use of the Arduino GFX library by clicking here.
Light up your Round Display
Once the hardware and software are ready, we start uploading our first example program. This sample program can be used to check if the Round Display's RTC clock, SD card and touch functions are working properly.
You can find this sample program in the Arduino IDE under File -> Examples -> Seeed Arduino Round display -> HardwareTest.
Just select the XIAO you are using and the port number where the XIAO is located, compile and upload it.
Make sure the Round Display switch is toggled to the ON position.
If the program runs smoothly, you will see the following effect.
This sample program will test all the functional items of the expansion board, including the RTC function. If you do not have the I2C BM8563 RTC library installed, then an error may be reported, you can comment out the function lv_hardware_test()
, then the functional detection of the SD card will also be turned off.
Calibration Firmware Update
If you find that the touch is sometimes unresponsive, you can follow the steps below to update the calibration firmware for the screen.
- Download codes from this link
- Put them in the same directory and run this firmware.
- Open serial monitor and you will see successful message like this image below, which means update successfully and you can upload your program to try it!
Troubleshooting
Q1: Why doesn't the display show anything after I upload the program?
A: Please check that the Round Display switch is turned on. If you are using the XIAO ESP32C3, you may also need to press Reset after uploading the program to make it work.
Q2: If I want to connect Seeed Studio XIAO ESP32S3 Sense to this extension screen, will there be a conflict with two TF card slots?
A: This does not create a conflict. The different SD card slots are controlled via chip select, if you want to use the microSD card slot on Sense, the chip select pin should be 21, if you want to use the microSD card slot on Round Display, the chip select pin should be D2.
We have examples of using both hardware and microSD cards in the S3 Sense camera tutorial.
Q3: Why does my XIAO RP2040 get a very strange C++ error when using the code for HardwareTest with Round Display?
A: This may be caused by you not selecting the appropriate compile option for the XIAO RP2040. Please refer to the diagram below to set and re-upload the program.
Q4: I have followed the tutorial and still can't get the TFT or LVGL program to compile properly, what should I do?
Updates to the TFT library and the LVGL library may cause the procedures in the tutorial to fail. We recommend that you use our tested and stable versions of the libraries, which you can use without even having to change the configuration in them yourself.
Resources
- [PDF] Charge IC datasheet
- [PDF] ETA3410 datasheet
- [PDF] RTC PCF8563 datasheet
- [PDF] 1.28'' a-Si TFT Liquid Crystal Display datasheet
- [PDF] Seeed Studio Round Display for XIAO SCH
- [PDF] Seeed Studio Round Display for XIAO SCH v1.1
- [PDF] GJX0128A4-15HY Datasheet
- [ZIP] Seeed Studio Round Display for XIAO SCH&PCB
- [ZIP] Seeed Studio Round Display for XIAO SCH&PCB v1.1
- [3DM] The 3D model of the Round Display for XIAO
- [STL] The 3D model diagram of the shell for Round Display
- [STL] Seeed Studio XIAO ESP32 S3 Sense Case With Round Screen
Tech Support & Product Discussion
Thank you for choosing our products! We are here to provide you with different support to ensure that your experience with our products is as smooth as possible. We offer several communication channels to cater to different preferences and needs.