whatisgithub

What is aiavatarstackchan?

uezo/aiavatarstackchan — explained in plain English

Analysis updated 2026-05-18

27C++Audience · developerComplexity · 4/5Setup · hard

In one sentence

AIAvatarStackChan turns an M5Stack StackChan robot into a voice-interactive AI companion with facial expressions, head movement, and camera vision.

Mindmap

mindmap
  root((AIAvatarStackChan))
    What it does
      Voice conversation
      Facial expressions
      Head movement
      Camera vision
    Tech stack
      C++ firmware
      Python server
      WebSocket
      M5Stack hardware
    Use cases
      Robot companion
      Custom hooks
      OpenClaw integration
    Audience
      Hardware hobbyists
      AI developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a physical robot companion that talks, listens, and reacts with facial expressions.

USE CASE 2

Have the robot take a photo and describe or respond to what it sees.

USE CASE 3

Swap in different speech-to-text, language model, or text-to-speech services as they improve.

USE CASE 4

Add custom behavior hooks that trigger on speech detection, tool calls, or response completion.

What is it built with?

C++PythonWebSocketM5StackVOICEVOX

How does it compare?

uezo/aiavatarstackchanmaxlaurence/slippi-androidphantomplimattock/wuthering-waves-hack-undetected-2026
Stars272727
LanguageC++C++C++
Setup difficultyhardhardhard
Complexity4/54/51/5
Audiencedevelopergeneralgeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires StackChan hardware, a separate Python server, and optionally VOICEVOX for Japanese voice output.

The README does not state a license, so usage rights are unclear.

So what is it?

AIAvatarStackChan is a framework for turning a StackChan (a small physical robot built on the M5Stack hardware platform) into a voice-interactive AI companion. The robot can hold conversations, display facial expressions, move its head, take photos, and respond to being touched. The project combines firmware that runs on the robot itself with a Python server that handles the AI processing. The setup has two parts. A Python server runs on a computer or server and handles speech-to-text, language model inference, and text-to-speech. These components are all swappable, so you can connect different AI services as they evolve. The firmware side runs on the StackChan hardware and handles audio capture, display, servo control, and communication with the server over WebSocket. You configure Wi-Fi credentials and the server address in a JSON file placed on the robot's SD card. Once running, the robot listens for your voice and sends audio to the server for processing. It shows a cartoon face with multiple expressions, automatic blinking, and lip sync animation that follows the speech output. If you say something like "look at this", the robot snaps a photo with its camera and sends the image to the server so the AI can respond to what it sees. Petting the top of the device triggers a reaction. You can also configure push-to-talk for noisier environments. The framework includes a hooks system so you can add custom behavior at key moments, such as when speech is detected, when the server accepts input, when a tool call runs, or when the robot finishes responding. An optional integration with an agent system called OpenClaw lets the robot take real-world actions beyond just conversation. English and Japanese configurations are both included. Japanese voice output requires the VOICEVOX speech synthesis engine running locally alongside the Python server.

Copy-paste prompts

Prompt 1
How do I configure Wi-Fi and server settings on the StackChan SD card for AIAvatarStackChan?
Prompt 2
Explain how the Python server and StackChan firmware communicate over WebSocket in this project.
Prompt 3
Write a custom hook that runs when AIAvatarStackChan detects speech input.
Prompt 4
How do I set up VOICEVOX for Japanese voice output alongside the AIAvatarStackChan server?

Frequently asked questions

What is aiavatarstackchan?

AIAvatarStackChan turns an M5Stack StackChan robot into a voice-interactive AI companion with facial expressions, head movement, and camera vision.

What language is aiavatarstackchan written in?

Mainly C++. The stack also includes C++, Python, WebSocket.

What license does aiavatarstackchan use?

The README does not state a license, so usage rights are unclear.

How hard is aiavatarstackchan to set up?

Setup difficulty is rated hard, with roughly 1h+ to a first successful run.

Who is aiavatarstackchan for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.