Skip to content

boards/waveshare-esp32s3-touch-lcd-128: add board support#22231

Open
tuyahia wants to merge 7 commits into
RIOT-OS:masterfrom
tuyahia:boards/waveshare-round-esp32s3
Open

boards/waveshare-esp32s3-touch-lcd-128: add board support#22231
tuyahia wants to merge 7 commits into
RIOT-OS:masterfrom
tuyahia:boards/waveshare-round-esp32s3

Conversation

@tuyahia
Copy link
Copy Markdown
Contributor

@tuyahia tuyahia commented Apr 30, 2026

Contribution description

This PR adds support for the Waveshare ESP32-S3-Touch-LCD-1.28 board.

Testing procedure

The main features of the board can be tested using the driver tests e.g. drivers/tests/gc9a01, drivers/tests/qmi8658, drivers/tests/cst816s.

Issues/PRs references

Declaration of AI-Tools / LLMs usage:

AI-Tools / LLMs that were used are:

  • Claude Opus for generating the first version of the doc.md which was then reviewed and fixed by me.

@github-actions github-actions Bot added Area: doc Area: Documentation Area: boards Area: Board ports Area: Kconfig Area: Kconfig integration labels Apr 30, 2026
@tuyahia
Copy link
Copy Markdown
Contributor Author

tuyahia commented Apr 30, 2026

@crasbe :D

@crasbe crasbe added Type: new feature The issue requests / The PR implemements a new feature for RIOT CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR labels Apr 30, 2026
@riot-ci
Copy link
Copy Markdown

riot-ci commented Apr 30, 2026

Murdock results

✔️ PASSED

4c4c0cd boards/waveshare-esp32s3-touch-lcd-128: fix renaming artifacts

Success Failures Total Runtime
571 0 571 04m:38s

Artifacts

Comment thread boards/waveshare-esp32s3-touch-lcd-128/board.c
Comment thread boards/waveshare-round-esp32s3/include/board.h Outdated
Comment thread boards/waveshare-esp32s3-touch-lcd-128/doc.md Outdated
@AnnsAnns
Copy link
Copy Markdown
Member

Thank you for porting another board to RIOT. The more the merrier!

Co-authored-by: Ann🐸 <git@annsann.eu>
Copy link
Copy Markdown
Contributor

@crasbe crasbe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we have to find a different name for the board. Waveshare actually has a lot of round boards based on the ESP32-S3...

Following our general naming convention ( https://github.com/RIOT-OS/RIOT/blob/master/doc/memos/rdm0003.md ) something like waveshare-esp32s3-touch-lcd-128 would be a possibility. Quite a handful, but it would follow their name Waveshare ESP32-S3-Touch-LCD-1.28 while keeping it somewhat consistent with other "ESP32-S3" boards that are abbreviated esp32s3-....

I would not advocate calling it esp32s3-waveshare-touch-lcd-128 to be consistent with the other esp32 boards though.

Comment thread boards/waveshare-round-esp32s3/include/board.h Outdated
Comment thread boards/waveshare-round-esp32s3/include/periph_conf.h Outdated
Comment thread boards/waveshare-round-esp32s3/include/board.h Outdated
Comment thread boards/waveshare-round-esp32s3/include/periph_conf.h Outdated
Comment thread boards/waveshare-round-esp32s3/include/board.h Outdated
Comment thread boards/waveshare-round-esp32s3/include/periph_conf.h Outdated
@@ -0,0 +1,131 @@
<!--
SPDX-FileCopyrightText: 2026 Technische Universität Hamburg
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file looks quite as if it it is based on one of Gunars files too 🤔

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I followed the structure of Gunar's files for consistency with existing board docs.
Happy to add attribution if that’s expected in this case.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can't really tell how much was rewritten and how much was retained 🤷‍♂️

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Adding it to be safe.

Comment thread boards/waveshare-round-esp32s3/doc.md Outdated
Co-authored-by: crasbe <crasbe@gmail.com>
@tuyahia
Copy link
Copy Markdown
Contributor Author

tuyahia commented May 6, 2026

I think we have to find a different name for the board. Waveshare actually has a lot of round boards based on the ESP32-S3...

Good point. I think I will rename it to waveshare-esp32s3-touch-lcd-128

@tuyahia
Copy link
Copy Markdown
Contributor Author

tuyahia commented May 6, 2026

Good point. I think I will rename it to waveshare-esp32s3-touch-lcd-128

Renamed and tested on the hardware.

@crasbe crasbe changed the title boards/waveshare-round-esp32s3: add board support boards/waveshare-esp32s3-touch-lcd-128: add board support May 6, 2026
Copy link
Copy Markdown
Contributor

@crasbe crasbe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To circumnavigate some potential issues with the upcoming board documentation migration/integration into Starlight in #22257, I added some preventative change comments.

The changes are:

  • manually built Table of Contents are not supported anymore
  • Manually set section references are not supported anymore
  • Images have to use the HTML tag
  • Newlines have to be written with <br> instead of \n
  • The backticks are preferred over the squiggly line for Code sections

@LasseRosenow did I miss anything?

From my side, that would be the last comments before we can merge this :)

Comment thread boards/waveshare-esp32s3-touch-lcd-128/doc.md Outdated
Comment thread boards/waveshare-esp32s3-touch-lcd-128/doc.md Outdated
Comment thread boards/waveshare-esp32s3-touch-lcd-128/doc.md Outdated
Comment thread boards/waveshare-esp32s3-touch-lcd-128/doc.md Outdated
Comment thread boards/waveshare-esp32s3-touch-lcd-128/doc.md Outdated
# SPDX-License-Identifier: LGPL-2.1-only

config BOARD
default "waveshare-esp32s3-touch-lcd-128" if BOARD_WAVESHARE_ROUND_ESP32S3
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the BOARD_WAVESHARE_ROUND_ESP32S3 also has to be changed, doesn't it?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's right.

Comment thread boards/waveshare-esp32s3-touch-lcd-128/board.c Outdated
Comment thread boards/waveshare-esp32s3-touch-lcd-128/include/board.h Outdated
Comment thread boards/waveshare-esp32s3-touch-lcd-128/include/periph_conf.h Outdated
Comment thread boards/waveshare-esp32s3-touch-lcd-128/include/gpio_params.h Outdated
@tuyahia
Copy link
Copy Markdown
Contributor Author

tuyahia commented May 14, 2026

@crasbe Thank you for the thorough review and suggestions!

@LasseRosenow
Copy link
Copy Markdown
Member

LasseRosenow commented May 14, 2026

  • Images have to use the HTML tag

Not totally correct. This ![Markdown Logo](https://www.example.com/example.png) syntax is also allowed, but whenever you want to specify a specific width you need to use the HTML version.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area: boards Area: Board ports Area: doc Area: Documentation Area: Kconfig Area: Kconfig integration CI: ready for build If set, CI server will compile all applications for all available boards for the labeled PR Type: new feature The issue requests / The PR implemements a new feature for RIOT

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants