Skip to content

WhaleBot

An ESP32-S3-based omnidirectional AI robot car with voice interaction, powered by Coze and Baidu speech technology.

  • Wheeled
  • Open source
  • Work in progress
  • Works with AI
  • arduino
  • 3D printable

Suggested by Robotheca, created by @datawhalechina (opens in a new tab), from github.com/datawhalechina/whale-bot (opens in a new tab). Pinned to commit 2d075ea (opens in a new tab).

Photo and 3D model

WhaleBot, photo from its repository
Photo:@datawhalechina (opens in a new tab)MITsource file (opens in a new tab)

3D preview converted from github.com/datawhalechina/whale-bot at 2d075ea, under MIT. View the original files from GitHub (7.6 MB) (opens in a new tab)

What it can do

Written by Robotheca from the project's documents.

  • Moves in any direction using four Mecanum wheels
  • Listens and responds to voice commands via Baidu speech technology
  • Speaks using text-to-speech through MAX98357A amplifier
  • Integrates with Coze large language model for AI conversation
  • Displays information on a serial touchscreen
  • Performs AI-powered tasks like answering questions and following instructions

Works with AI

Found by Robotheca in the project's files at commit 2d075ea, its robot.yaml and Robotheca's notes on its documents. Never guessed; Robotheca doesn't run the code.

Bill of materials

This repository has no parts list Robotheca can read yet.

Build guide

The creator's steps, each with its instructions.

  1. 1Assemble hardware components
  2. 2Install ESP32-S3 firmware

The guide appears here as you scroll.

Guide by @datawhalechina (README.md), under MIT. The English translation is by Robotheca, shared under the same license.

Wiring and electronics

Notes written by Robotheca from the project's documents.

Main parts

  • ESP32-S3-DevKitC (N16R8) main controller
  • Two TB6612FNG motor drivers
  • Four N20 12V 300RPM geared motors with Mecanum wheels
  • INMP441 MEMS microphone for audio input
  • MAX98357A digital amplifier for audio output
  • 12V lithium battery power supply
  • TPS5430 buck converter for voltage regulation
  • Serial touchscreen for user interaction

Connections

  • ESP32-S3 connected to two TB6612FNG motor drivers via GPIO pins for motor control
  • INMP441 microphone wired to ESP32-S3 I2S or I2C interface
  • MAX98357A amplifier connected to ESP32-S3 I2S audio output
  • Touchscreen connected to ESP32-S3 via UART serial interface
  • TB6612FNG drivers powered from 12V battery through TPS5430 buck converter
  • Motors connected to TB6612FNG driver outputs