🤖 AI Chatbot Xiaozhi (2): Flash Firmware without ESP-IDF development environment
Share
Recently, there is a very low-cost AI chatbot called Xiaozhi has emerged on the Internet from China. It is completely open-source with detailed tutorials for tech enthusiasts to follow. I played with it and found it quite fascinating. It opened up a brand-new opportunity for people to explore the world of popular AI models, such as Large Language Models (LLM), like ChatGPT and DeepSeek.
However, due to language limitation, it is currently only popular in China. I would like to make it more accessible to International enthusiasts, especially those in Canada and United States.
Using the original tutorial as a reference and incorporating my own experience, I have drafted this English version tutorial to help English-speaking individuals benefit from this intriguing AI chatbot.
This article discusses the method of flashing firmware to ESP32-S3 without the ESP-IDF development environment by utilizing the flash download tool in Windows system.
Prerequisite
This tutorial only covers Windows system. The Linux and MAC OS tutorial will need to setup ESP-IDF development environment or use the Web downloading tool. I will tutorial them in other blogs.
- Computer and OS: 1 x PC with Windows 7, Windows 8, Windows 10 or Windows 11.
- Download flash_download_tool.zip.
- Local download link:Â flash_download_tool.zip.
- External Espressif official download link: flash_download_tool.zip.
- Extract the downloaded tool in a folder, such as D:\fairkid\flash_download_tool.
After extracting the file, run the tool by double-click D:\fairkid\flash_download_tool\flash_download_tool_3.9.7.exe. On your first time running this software, Windows system will pop up a security warning. It is normal. Click the button to accept the warning.
Download Firmware
The firmware you want to download should match your hardware. I list some pre-built firmware in the table below. Select the correct firmware for your hardware. In the listed firmware, the wakeup word is 'Alexa'. Note that the BOOT button on the ESP32S3 dev board is also used to wakeup the chatbot. If you need me to build a firmware for your hardware, please leave your comments at the end of this blog.
Hardware Properties | Firmware |
|
v1.4.6_bread-compact-wifi-n16r8-oled12832_en.bin [download] |
|
v1.4.6_bread-compact-wifi-n16r8-oled12864_en.bin [download] |
|
v1.4.6_bread-compact-wifi-n8r8-oled12864_en.bin [download] |
|
v1.4.6_lichuang-c3-dev_en.bin [download] |
Firmware Flashing
- Connect your PC to the ESP32S3 CPU module with a USB type-C cable. As follows:
- Find the serial port number in device manger. To find your device manager, search Windows by typing device manager, shown as follows:
- Find the Ports (COM&LPT), in my case, it is COM7, as follows:
- Open the flash download tool, select ESP32-S3 from ChipType, Develop from Workmode, UART from LoadMode, as follows:
- Select the firmware file from the first line, check the firmware and enter the address 0x0. Select the COM port obtained from step 3. Click buttong START to start the flashing, as follows:
Wait for it to finish, as follows:
- Power off the system by unplug the USB cable and then plugin to power it up again.
- Done!
FAQ
- After flashing the firmware, nothing displayed on the screen and speaker does not speak: check the firmware selected is correct. Follow the firmware table listed above.
- The speaker speaks but the screen is flicking: check the wire connection for the screen, or change the screen to another one. Sometimes the OLED screen is deficient.
- The screen displays normally, but the speaker does not speak anything: check the wire connected to the speaker, or change the audio amplifier module. It happends that the audio amplifier module is deficient.
Previous Step
Explore the hardware building tutorial: 🤖 AI Chatbot Xiaozhi (1): Bread Board DIY Hardware List and Tutorial.
Next Step
Explore how to create account on xiaozhi.me website: 🤖 AI Chatbot Xiaozhi (3): Register Account on xiaozhi.me and Setup your first AI Agent.
If you have further questions, please leave your comments below this article.
1 comment
I’ve successfully flashed the firmware to my ESP32-S3, but the XiaoZhi chatbot still isn’t working. I’ve also double-checked all the components and their connections on the breadboard, and everything seems fine. Could you please offer some guidance? Thank you.