Skip to content

Introduction

The open-source xiaozhi-esp32 project on GitHub unlocks new possibilities. By leveraging ESP32-S3's capabilities and integrating APIs from models like DeepSeek, it enables localized AI voice chat. We compiled with English firmware, UNIHIKER K10 transforms into a responsive smart terminal supporting multi-turn dialogue, wake-word detection, and real-time translation.
This synergy of hardware and open-source innovation lowers barriers for AI development.
With intuitive interfaces and efficient edge computing, developers can prototype voice assistants, educational tools, or smart home solutions effortlessly. The future of edge AI starts here.
xiaozhi-esp32 is an open-source ESPIDF project, since the configuration process of ESPIDF is a bit tedious, we have compiled an English version of the xiaozhi firmware for you to flash directly.

Xiaozhi Video tutorial
πŸ‘†Click above picture to watch video tutorial on Youtube.

Firmware/Software

Download
XiaoZhi firmware: Google Drive Download(V2.1.0)
Flash Download Tool(Only support windows): Click to download
ESP LaunchPad(Web Tool For Windows/MacOS/GNU Linux): Click to visit

Flash Firmware on Windows

  • Click to open the Flash Download Tool, then choose the ESP32-S3.
    image.png

  • Select the firmware and fill up the address with 0x00, then click on √. image.png

  • Press and hold the BOOT button on the back of K10, connect the board to the computer and select the corresponding port in the software.

  • First click "ERASE" to clear the flsh, and then click "START" to flash the firmware after ERASE step is successful.
  • Press the RST reset button on the K10 board after the flash is completed.

Flash Firmware on Mac/GNU Linux

  • Visit ESP LAUNCHPAD
  • Press and hold the BOOT button on the back of K10, connect the board to your Mac/PC then release BOOT button.
  • Click "connect" to choose the port.
    image.png

  • Enter the "DIY" page and choose the .bin firmware which downloaded from Google Drive.

  • Change the Flash Address into 0x00
  • Click "Program" to flash firmware. image.png

Config the Wi-Fi and language model

After successfully flash the firmware, press the RST button on the back of K10. The K10 will first enter the Wi-Fi configuration mode.
image.png

Now use your PC or phone the connect the hotspot of xiaozhi. Then config the Wi-Fi SSID and password to let xiaozhi connect to the Internet. The K10 could only connect the 2.4GHz Wi-Fi.
image.png

Once the Wi-Fi is successfully connected, the K10 will reboot in 3 second. And the a six-digit device code will show up on the screen of K10.
image.png

Then you can go the xiaozhi configuration site to config the language model and speaker. Xiaozhi config site

Click on the console:
image.png

Register a xiaozhi account using your mobile phone number.
image.png

After enter the console, then add device and enter the device code now on the K10 display.
image.png

So far, xiaozhi has been successfully deployed on UNIHIKER K10. You can enter the Configure Role screen to change xiaozhi's role. We recommend using the following settings to call the Deepseek model and limit the language to English. But to remember to restart xiaozhi everytime you config the speaker role.
image.png

Wake up your AI friend and do some small talk

You can now use "Javis" or "Hi, Telly" to wake up Xiaozhi and talk to it.

The two on-board buttons of the K10 function as follows: A: Short press - interrupt/wake up, long press 1s - volume up. B: Short press - interrupt/wake up, long press 1s - volume down

Have fun with UNIHIKER K10 and xiaozhi.

xiaozhi-esp32: https://github.com/78/xiaozhi-esp32
Original project author: @78
UNIHIKER K10 Feature Contributor: @HonestQiao

Wake up your AI friend and do some small talk

Starting from version 2.x, xiaozhi firmware supports custom themes and wake-up words without requiring a full source code compilation. After binding your xiaozhi device to the xiaozhi.me website, you can click β€œCustomize” to configure your settings.
image.png

First, confirm that your hardware setup is an ESP32-S3 with a screen resolution of 240Γ—320. Then click β€œNext”.
image.png

On the next step, you can configure the wake word, font, Xiaozhi's expressions, and background image. The wake word can utilize the β€œPreset Wake Word” officially supported by ESP32, or be fully customized to your own wake word. After completing all settings, please proceed by clicking "Next".
image.png

Finally, you can preview the results. Once you've confirmed everything is correct, click "Generate assets.bin".
image.png

Now connect your K10 to your computer and click "Flash to Device Online". After the flashing process completes, press the RST button on the back of the UNIHIKER K10 to start using your fully customized xiaozhi.
image.png