RIOT icon indicating copy to clipboard operation
RIOT copied to clipboard

boards/esp32s3-seeedstudio: Seeedstudio xiao esp32s3 board support

Open IsikcanYilmaz opened this issue 1 year ago • 4 comments

Contribution description

Support for the tiny, barebones board "Seeed Studio Xiao ESP32S3"

Mostly based on the esp32s3-pros3 board

Testing procedure

  • I have not yet tested the SPI/I2C/ADC, as my main goal has been to get my board up and running as soon as possible. I assume the pin definitions etc. are correct due to their similarities to the pros3 board, and what's noted in the vendor's webpage
  • I'm making this PR following the advice on the contributions document 😄(Verify your concept early!) pardon if it's got obvious mistakes that werent obvious to me

IsikcanYilmaz avatar Nov 11 '24 13:11 IsikcanYilmaz

For the naming, I'd go with esp32s3-seeedstudio-xiao, acknowledging that esp somehow has it's own naming scheme going on, but allowing for future esp32s3 boards by seeedstudio.

According to https://github.com/RIOT-OS/RIOT/blob/master/doc/memos/rdm0003.md, I'd rather go with seeedstudio-xiao-esp32s3 (I know board naming has been a mess, but at least there is some common scheme now with RDM0003).

mguetschow avatar Nov 12 '24 08:11 mguetschow

sorry folks, maybe this PR was more premature than i thought.

IsikcanYilmaz avatar Nov 12 '24 08:11 IsikcanYilmaz

Murdock results

:x: FAILED

5ded8079bad430e0f31fe5f3ebe2e4c95ddc13cd boards/esp32s3-seeedstudio: seeedstudio xiao esp32s3 board support. mostly copied from esp32s3-pros3 board files.

Success Failures Total Runtime
91 0 555 31s

Artifacts

riot-ci avatar Nov 12 '24 12:11 riot-ci

sorry folks, maybe this PR was more premature than i thought.

No worries, nothing wrong with getting feedback early

benpicco avatar Nov 21 '24 14:11 benpicco

The Xiao-ESP32S3 arrived today and I gave it a quick test with some tests:

The tests/periph/adc test shows the correct values when the pins are pulled up or down. As with the Xiao-ESP32C3, sometimes some data is lost, but that's most likely not caused by this PR.

/home/cbuec/RIOTstuff/riot-esp32c3/RIOT/dist/tools/pyterm/pyterm -p "/dev/ttyACM0" -b "115200" -ln "/tmp/pyterm-cbuec" -rn "2025-03-13_22.47.51-tests_adc-esp32s3-seeedstudio"
2025-03-13 22:47:51,782 # Connect to serial port /dev/ttyACM0
Welcome to pyterm!
Type '/exit' to exit.
2025-03-13 22:47:52,789 # ADC_LINE(0): 20  81  325 1296    -1    -1
2025-03-13 22:47:52,789 # ADC_LINE(1): 20  80  323 1299    -1    -1
2025-03-13 22:47:52,790 # ADC_LINE(2): 20  80  323 1296    -1    -1
2025-03-13 22:47:52,790 # ADC_LINE(3): 20  81  323 1303    -1    -1
2025-03-13 22:47:52,790 # ADC_LINE(4): 20  80  323 1299    -1    -1
2025-03-13 22:47:52,791 # ADC_LINE(5): 20  80  325 1301    -1    -1
2025-03-13 22:47:52,791 # ADC_LINE(6): 20  81  325 1299    -1    -1
2025-03-13 22:47:52,791 # ADC_LINE(7): 20  80  325 1299    -1    -1
2025-03-13 22:47:52,791 # ADC_LINE(8): 20  81  325 1293    -1    -1
2025-03-13 22:47:52,791 #
2025-03-13 22:47:53,717 # ADC_LINE(0): 20  80  323 1293    -1    -1
2025-03-13 22:47:53,718 # ADC_LINE(1): 20  81  323 1293    -1    -1
2025-03-13 22:47:53,719 # ADC_LINE(2): 20  80  325 1293    -1    -1
2025-03-13 22:47:53,719 # ADC_LINE(3): 20  80  324 12    -1
2025-03-13 22:47:53,719 # ADC_LINE(4): 20  81  324 1296    -1    -1
2025-03-13 22:47:53,720 # ADC_LINE(5): 20  80  324 1303    -1    -1
2025-03-13 22:47:53,721 # ADC_LINE(6): 20  81  322 1295    -1    -1
2025-03-13 22:47:53,721 # ADC_LINE(7): 20  81  322 1293    -1    -1
2025-03-13 22:47:53,722 # ADC_LINE(8): 20  81  324 1292    -1    -1

The tests/sys/shell test works as well:

/home/cbuec/RIOTstuff/riot-esp32c3/RIOT/dist/tools/pyterm/pyterm -p "/dev/ttyACM0" -b "115200" -ln "/tmp/pyterm-cbuec" -rn "2025-03-13_22.49.58-tests_shell-esp32s3-seeedstudio"
2025-03-13 22:49:58,914 # Connect to serial port /dev/ttyACM0
Welcome to pyterm!
Type '/exit' to exit.
help
2025-03-13 22:50:04,378 # help
2025-03-13 22:50:04,379 # Command              Description
2025-03-13 22:50:04,380 # -------------------------------
2025-03-13 22:50:04,381 # bufsize              Get the shell's buffer size
2025-03-13 22:50:04,382 # start_test           starts a test
2025-03-13 22:50:04,382 # end_test             ends a test
2025-03-13 22:50:04,382 # echo                 prints the input command
2025-03-13 22:50:04,383 # empty                print nothing on command
2025-03-13 22:50:04,383 # periodic             periodically print command
2025-03-13 22:50:04,384 # xfa_test1            xfa test command 1
2025-03-13 22:50:04,384 # xfa_test2            xfa test command 2
2025-03-13 22:50:04,385 # app_metadata         Returns application metadata
2025-03-13 22:50:04,385 # pm                   interact with layered PM subsystem
2025-03-13 22:50:04,385 # ps                   Prints information about running threads.
2025-03-13 22:50:04,386 # version              Prints current RIOT_VERSION
2025-03-13 22:50:04,386 # bootloader           Reboot to bootloader
2025-03-13 22:50:04,386 # reboot               Reboot the node
> periodic
2025-03-13 22:50:10,355 # periodic
> 2025-03-13 22:50:10,856 # test
b2025-03-13 22:50:11,356 # test
2025-03-13 22:50:12,447 # test
2025-03-13 22:50:12,948 # test
2025-03-13 22:50:13,447 # test
> ps
2025-03-13 22:50:19,212 # ps
2025-03-13 22:50:19,213 #       pid | name                 | state    Q | pri
2025-03-13 22:50:19,215 #         1 | esp_timer            | sleeping _ |   2
2025-03-13 22:50:19,216 #         2 | idle                 | pending  Q |  15
2025-03-13 22:50:19,216 #         3 | main                 | running  Q |   7
> bootloader
2025-03-13 22:50:25,337 # bootloader
2025-03-13 22:50:25,338 # ESP-ROM:esp32s3-20210327
2025-03-13 22:50:25,338 # Build:Mar 27 2021
2025-03-13 22:50:25,339 # rst:0x3 (RTC_SW_SYS_RST),boot:0x0 (DOWNLOAD(USB/UART0))
2025-03-13 22:50:25,339 # Saved PC:0x42003db7
2025-03-13 22:50:25,340 # waiting for download

crasbe avatar Mar 13 '25 21:03 crasbe

As with the Xiao-ESP32C3, sometimes some data is lost, but that's most likely not caused by this PR.

Indeed, this was caused by USBipd. On my Linux ThinkPad, the data looks absolutely fine.

crasbe avatar Mar 14 '25 15:03 crasbe

Replaced by #21829.

crasbe avatar Oct 29 '25 22:10 crasbe