ESP32 Serial Communication

Note: The voice interaction module needs to be burned with factory firmware. If the voice chip has not been flashed with firmware after receiving it, it does not need to be burned

1. Experimental preparation

2. Wiring diagram

ESP32Voice interaction module
35RX
36TX
GNDGND
5V5V

image-20250226183946143

3. Program download

image-20250226182332960

Download URL:

image-20250226182441683

Unzip to get flash_download_tool, double-click to open.

As shown in the figure below, select serial port to burn ESP32-S3. Click OK to open the burning tool.

image-20250226182446454

Select the firmware to be burned to ESP32S3 in ‘SPIDownload’. The correspondence between the file and the address is shown in the following table. Then select the connected COM port and keep the other configurations as default.

File nameFirmware addressNotes
bootloader.bin0x0000Boot file
partition-table.bin0x8000Partition table file
microROS_Robot.bin0x10000Function file

Select the bin file in the corresponding file directory of the source code,

image-20250226184144867

Select the corresponding port, click the Start button, and the tool will automatically start burning the firmware.

Note: If the firmware does not start burning automatically, please press and hold the boot0 key, then press the reset key, release the boot0 key, and manually enter the burning mode.

image-20250226184226886

4.Achievement effect

image-20250226185554522

image-20250226185608422

The first and second bytes AA FF represent the frame header of the protocol, the third byte FF represents the broadcast function, and the fourth is the ID of the broadcast content. Here you can see "I am ready" is hexadecimal 67, so in the program, send 0x67 to register 0x03 to broadcast the corresponding content. The fifth byte is the end frame.

image-20250226185621148

image-20250226185659735

image-20250226185754543

image-20250226141429180

The first and second bytes AA FF represent the frame header of the protocol, the third byte represents the ID of the ten function words of the chip, and the fourth is the command word ID. Here you can see "close light" is hexadecimal 0A, so decimal will return 10. The fifth byte is the end frame.