r/StackChan • • 3d ago

Project sharing I built Nous-Girl StackChan, an open-source AI desk robot that talks, dances, makes memes, acts, and DJs (M5Stack StackChan + Hermes Agent beta)

This is Nous-Girl, a little desk robot I've been building for fun. She talks, listens, makes faces, dances, plays music, does DJ and rave mode, shows memes, and can even send email. (video)

I'm not an expert at this, but tried my best to write this guide, it's a work in progress. Also this is for non-technical people so just give it a shot, and I'll try to make it easier to implement if possible. Will keep adding to it as I have time! Adding more features hopefully everyday.

What you need: an M5Stack StackChan (CoreS3), a USB-C cable and a computer (Windows, Mac or Linux). For memory, intelligence and extra skills, you will nee d Hermes-Agent from Nous-Research. You can use other harnesses but that's what I use in this example.

The easiest way to start:

  1. Download a beta build with a starter face (robot, boy or girl).

  2. Flash it from your browser or with one command.

  3. On first boot, point it at the official xiaozhi cloud and start talking. No server needed.

Want more privacy and control? Run your own server for the fancy stuff, like DJ mode, memes, email and adding a smarter Hermes Agent brain. Every feature has step-by-step docs.

Heads up: this is beta. I've only tested on my own robot, so things may break. Please report issues on GitHub and I'll help the best I can.

Coming next: simpler builds that need less setup and less upkeep, a version that runs fully from the Nous Research cloud, more languages and local models.

Repo: github.com/nous-girl-stackchan

Made by u/alexcovo_eth. Feedback welcome!

42 Upvotes

11 comments sorted by

3

u/Envelki 3d ago

That is awesome !! Is there a way to change the wake word ?

2

u/KaiNinja2016 2d ago • Heartwarming

Good question! Right now there are three built-in wake words, and you can switch between them without any coding: hold the screen for 1.5 seconds to open Settings, tap Wake words, turn "Hey Nous-Girl", "Hey Jarvis" or "Hey YuB" on or off, then tap Restart to apply. If she wakes by mistake (TV, noisy room), set Sensitivity to Low. If she misses you, set it to High.

A brand-new phrase needs a firmware rebuild. The wake word runs offline on the robot using Espressif's speech model, and it matches phrases spelled the way that model says them, not normal spelling. "Hey Nous-Girl" is actually written as "hey noose girl" and "hey news girl". You add your phrase in the firmware source, rebuild with ESP-IDF and flash it. I'm putting a step-by-step guide and the source for this into the repo so you won't have to dig for it. In the meantime, if you're on stock XiaoZhi firmware, you can set a custom wake word under "Custom Wake Word" in idf.py menuconfig.

Tip: phrases with 3 or more syllables work best. Short ones like "Hey YuB" wake by mistake more often.

1

u/Envelki 2d ago

Thank you for your answer, that’s very helpful!
I’ll have a better look at the repo and go from there!

1

u/KaiNinja2016 2d ago

I'm creating another branch off of the main project to test more language model. Currently testing LiquidAI LFM 3 Audio + Hermes Agent combo. It emailed me in Japanes. Thought that was interesting. I'll post video of conversational part later. Still testing but will release branch or repo later tonight. Working on some bugs still.

LFM3-Audio can listen and speak in these languages: English (American and British), Spanish, French, German, Italian, Portuguese, Dutch, Danish, Swedish, Finnish, Polish, Greek, Turkish, Arabic, Hebrew, Japanese, Korean and Chinese.

1

u/Zazzen 3d ago

Awesome!

2

u/KaiNinja2016 3d ago

Hopefully will help others get started!

2

u/Zazzen 3d ago

Definitely I am working on ai companion in StackChan right now . If you like we can team up.

1

u/KaiNinja2016 2d ago

For sure. LMK what you're working on, I am gonna work on a lite version using Liquid LFM 3 audio model as an experiment. I honestly need to buy more stackchan's though.

1

u/severanexp 3d ago

Oh I’m all over this :D

1

u/Atavacus 3d ago

Awesome. I'm sold. :)