Skip to content

feat(board): add ESP32-S3 SparkBot board configuration#76

Merged
wujiangang merged 1 commit into
espressif:masterfrom
ymzhang0319:feat/board-esp-sparkbot
May 26, 2026
Merged

feat(board): add ESP32-S3 SparkBot board configuration#76
wujiangang merged 1 commit into
espressif:masterfrom
ymzhang0319:feat/board-esp-sparkbot

Conversation

@ymzhang0319

Copy link
Copy Markdown
Contributor

Depends on espressif/esp-gmf#48. End-to-end camera functionality requires the DVP XCLK pre-init fix in that PR; without it, the OV3660 sensor on SparkBot cannot be detected via SCCB on upstream esp_board_manager 0.5.10. Once that PR lands and a new esp_board_manager version is published, I'll bump dependencies.lock here in a follow-up commit.

Summary

  • Add esp_sparkbot board under application/edge_agent/boards/espressif/esp_sparkbot/.
  • 1.3" ST7789 SPI LCD, I2S audio (internal ADC in, DAC out), BMI270 IMU, OV3660 DVP camera.
  • Add to .gitlab/ci/build.yml matrix.

Test Plan

Validated locally with ESP-IDF v5.5.4 and the upstream fix applied:

  • YAML parses; Board Manager lists esp_sparkbot; clean idf.py build (2.67 MB, 36% headroom).
  • On hardware: ov3660: Detected Camera sensor PID=0x3660, /dev/video2 opens from Lua, camera.capture() writes ~30 KB JPEG.

Notes

  • Targets current SparkBot units (OV3660). Older batches use OV2640 at SCCB 0x30, XCLK 16 MHz — documented in README.
  • PWDN and RESET are tied on the sensor module (-1 in yaml).
  • Motor / chassis control (DRV8833) not in scope; will submit as follow-up after camera lands.

@CLAassistant

CLAassistant commented May 13, 2026

Copy link
Copy Markdown

CLA assistant check
All committers have signed the CLA.

@laride

laride commented May 15, 2026

Copy link
Copy Markdown
Collaborator

Thanks for the PR!

Could you please revert the changes to .gitlab/ci/build.yml and rebase this PR onto the latest master branch?

Thanks!

@laride

laride commented May 15, 2026

Copy link
Copy Markdown
Collaborator

We discussed this with the ESP Board Manager maintainers. They would like to reproduce the issue first and look for a cleaner/more elegant solution for the problem your Board Manager PR is trying to address.

BTW, ESP Board Manager now has its own dedicated repository:
https://github.com/espressif/esp-board-manager

@ymzhang0319 ymzhang0319 force-pushed the feat/board-esp-sparkbot branch from 666dfe5 to a249593 Compare May 18, 2026 02:07
@ymzhang0319

Copy link
Copy Markdown
Contributor Author

Done — reverted the .gitlab/ci/build.yml change and rebased onto the latest master. PTAL, thanks!

@laride

laride commented May 26, 2026

Copy link
Copy Markdown
Collaborator

sha=a2495936ba5500cf8a2908d504c5ba319ff06da3

@laride

laride commented May 26, 2026

Copy link
Copy Markdown
Collaborator

The added development board support seems to be independent from the ESP Board Manager or esp_video issue.

Therefore, we will proceed with merging this PR first, and handle the Board Manager / esp_video issue separately.

Thank you for your contribution!

Add esp_sparkbot board definition for edge_agent: ST7789 SPI LCD,
internal-ADC + I2S DAC audio, BMI270 IMU, and OV3660 DVP camera (SCCB
0x3C, XCLK 20 MHz, YUV422 YUYV 640x480 @ 10fps). README covers hardware
overview, GPIO map, and build/flash steps.
@laride laride force-pushed the feat/board-esp-sparkbot branch from a249593 to 32c4999 Compare May 26, 2026 13:12
@laride

laride commented May 26, 2026

Copy link
Copy Markdown
Collaborator

sha=32c4999f1d1564a55da19557dab0642d6e2d78ef

@wujiangang wujiangang merged commit 32c4999 into espressif:master May 26, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants