Stack-Chan Minimal puts a conversational AI pipeline into an M5Stack AtomS3R robot small enough to serve as a desk companion or carry-around demo, but its real value is the division of labor: the ESP32-S3 device handles the face, microphone, speaker, Wi‑Fi, and optional movement, while a Windows PC, Android phone, or other host runs speech recognition, the language model, and text-to-speech locally.
The project’s current Hackster presentation frames this as “Tiny Body, Local AI Soul,” and the public GitHub repository backs up the core claim. Stack-Chan Minimal can send audio to whisper.cpp, query local OpenAI-compatible servers including llama.cpp, LM Studio, and Ollama, then pass the reply to piper-plus or an optional VOICEVOX-compatible text-to-speech setup. For Windows enthusiasts already experimenting with LM Studio or Ollama, the robot is effectively a Wi‑Fi voice-and-face terminal rather than an attempt to cram a model into a microcontroller.
There is a timing wrinkle in the launch framing. Hackster published the new project write-up on August 7, 2026, but ProtoPedia’s public project record shows Stack-Chan Minimal was first published on April 24, 2026 and updated on May 6. This is therefore a newly surfaced guide and showcase for an existing Maker project, not the first public release of the underlying design.
M5Stack’s AtomS3R-AI Chatbot kit supplies an ESP32-S3 running at 240 MHz with 8 MB of flash and 8 MB of PSRAM, a 128×128 IPS display, 2.4 GHz Wi‑Fi, and an Atomic Voice Base with a MEMS microphone, 1 W speaker, and ES8311 audio codec. Those are solid building blocks for a responsive physical interface, but they are nowhere near sufficient to host the class of speech and language models Stack-Chan Minimal is designed to use.
The project does not pretend otherwise. Its firmware repository explicitly excludes AI model files, model servers, text-to-speech engines, voices, and associated libraries. Users have to install and run those services separately, then configure the robot to reach them across the local network.
That split is the project’s practical contribution. A conventional desktop local-AI installation tends to end at a browser tab, command prompt, or generic voice-assistant shell. Stack-Chan Minimal turns the same Windows-hosted services into an appliance-like endpoint with a face, an audio I/O path, and a compact physical presence. If a user later replaces a small local model with a larger one, switches from Ollama to LM Studio, or changes voices, the robot hardware stays put.
M5Stack already promotes the AtomS3R kit for OpenAI Voice Assistant and XiaoZhi Voice Assistant firmware, so the hardware itself is not a novel AI platform. Stack-Chan Minimal’s differentiator is its open, replaceable server-side stack rather than a vendor-selected assistant backend.
The project’s firmware supplies a Wi‑Fi configuration portal rather than requiring users to bake network details into the source. It also uses PlatformIO and an Arduino-based environment, so this is a reproducible embedded project rather than a one-off exhibition prop. The repository includes firmware, documentation, and 3D-printable enclosure files under Apache License 2.0.
But the modular design also means there is no single installer and no promised baseline of latency, quality, hardware requirements, or model behavior. A Windows PC running an efficient small model may make the character feel responsive; a machine that struggles with local transcription or inference will make a conversation feel like a sequence of separate network jobs. The firmware itself is built around exactly that sequence: record audio, send it to the speech server, wait for the LLM response, then generate and play the speech output.
The code currently limits the retained chat history to two question-and-answer pairs and instructs the model to provide short responses. Those are sensible constraints for a device with a small display, 1 W speaker, and an interaction model where waiting several seconds for a long answer would feel unnatural. They also make Stack-Chan Minimal more of a local conversational front end than a full persistent assistant.
A review of the published firmware shows that the local LLM and service URLs are assembled as ordinary HTTP addresses, while the device runs a web server on port 80 for configuration, text chat, model settings, sensor controls, and a broader control API. The code exposes endpoints for actions, publishing, service calls, audio blobs, and emergency-stop controls, but does not show authentication checks on those routes.
The Wi‑Fi recovery portal is more concerning for a device intended to be easy to reproduce. When it cannot connect to a saved network, the current source starts an access point named in the form
That design is understandable for a Maker demo: it removes friction when setting up a robot at a workshop or public event. It is not a secure onboarding design for a device that could be deployed on a shared office, campus, apartment, or maker-space network. Anyone within radio range could join the unprotected setup network while it is active, and the plain-HTTP management and service traffic provide no transport encryption on the local LAN.
Users should treat Stack-Chan Minimal as trusted-LAN hardware. Put the robot and its AI host on an isolated IoT VLAN or a dedicated home lab network; do not expose its ports through router forwarding; and avoid storing or discussing sensitive information through it. The project can keep model inference off a cloud service, but that is different from protecting the traffic, configuration, and control plane between the robot and the local host.
Here, the author’s own warning is unusually direct and should be taken literally. The MAX30100 values are described as demonstration and education references, not medical measurements; the project is not a medical device and must not guide diagnosis, treatment, monitoring, or healthcare decisions. The repository adds that the SpO2-like value is uncalibrated and can vary with finger placement, ambient light, motion, and sensor-to-sensor differences.
The code review turns up another hardware tradeoff: the optional servo build uses the same Grove-port GPIO pins assigned to the external I2C sensor connection, so servo motion and an I2C sensor are not simply independent plug-ins on the default wiring. That is exactly the sort of constraint that tends to disappear in a polished demo but matters when reproducing the project. Builders should decide whether their version is primarily a moving character or a sensor experiment before committing to the enclosure and wiring.
That makes the project more durable than a robot tied to one hosted API or one frozen model package. It also shifts the responsibility for model selection, host maintenance, voice licenses, network security, and reliability squarely onto the builder. The firmware’s support for whisper.cpp, llama.cpp, LM Studio, Ollama, piper-plus, and optional VOICEVOX compatibility is an invitation to experiment, not a guarantee that every combination will work equally well.
For a Windows local-AI setup, that is precisely the appeal: Stack-Chan Minimal can give a PC-hosted assistant a tangible interface without replacing the tools and models already running on the machine. Just build it as a lab device, not as a secured consumer appliance.
There is a timing wrinkle in the launch framing. Hackster published the new project write-up on August 7, 2026, but ProtoPedia’s public project record shows Stack-Chan Minimal was first published on April 24, 2026 and updated on May 6. This is therefore a newly surfaced guide and showcase for an existing Maker project, not the first public release of the underlying design.
The AtomS3R is a terminal, not the AI computer
M5Stack’s AtomS3R-AI Chatbot kit supplies an ESP32-S3 running at 240 MHz with 8 MB of flash and 8 MB of PSRAM, a 128×128 IPS display, 2.4 GHz Wi‑Fi, and an Atomic Voice Base with a MEMS microphone, 1 W speaker, and ES8311 audio codec. Those are solid building blocks for a responsive physical interface, but they are nowhere near sufficient to host the class of speech and language models Stack-Chan Minimal is designed to use.The project does not pretend otherwise. Its firmware repository explicitly excludes AI model files, model servers, text-to-speech engines, voices, and associated libraries. Users have to install and run those services separately, then configure the robot to reach them across the local network.
That split is the project’s practical contribution. A conventional desktop local-AI installation tends to end at a browser tab, command prompt, or generic voice-assistant shell. Stack-Chan Minimal turns the same Windows-hosted services into an appliance-like endpoint with a face, an audio I/O path, and a compact physical presence. If a user later replaces a small local model with a larger one, switches from Ollama to LM Studio, or changes voices, the robot hardware stays put.
M5Stack already promotes the AtomS3R kit for OpenAI Voice Assistant and XiaoZhi Voice Assistant firmware, so the hardware itself is not a novel AI platform. Stack-Chan Minimal’s differentiator is its open, replaceable server-side stack rather than a vendor-selected assistant backend.
The Windows use case is clearer than the “local” slogan
For a Windows machine, the intended setup is straightforward in concept but more involved than the tiny robot suggests. The host needs to run at least three services: a speech-to-text endpoint, an LLM server with a compatible chat API, and a text-to-speech server. The AtomS3R then needs Wi‑Fi access and the correct addresses, ports, model names, and voice settings.The project’s firmware supplies a Wi‑Fi configuration portal rather than requiring users to bake network details into the source. It also uses PlatformIO and an Arduino-based environment, so this is a reproducible embedded project rather than a one-off exhibition prop. The repository includes firmware, documentation, and 3D-printable enclosure files under Apache License 2.0.
But the modular design also means there is no single installer and no promised baseline of latency, quality, hardware requirements, or model behavior. A Windows PC running an efficient small model may make the character feel responsive; a machine that struggles with local transcription or inference will make a conversation feel like a sequence of separate network jobs. The firmware itself is built around exactly that sequence: record audio, send it to the speech server, wait for the LLM response, then generate and play the speech output.
The code currently limits the retained chat history to two question-and-answer pairs and instructs the model to provide short responses. Those are sensible constraints for a device with a small display, 1 W speaker, and an interaction model where waiting several seconds for a long answer would feel unnatural. They also make Stack-Chan Minimal more of a local conversational front end than a full persistent assistant.
“Local” does not mean hardened for an untrusted network
The most important limitation is not the AtomS3R’s performance. It is the current network model.A review of the published firmware shows that the local LLM and service URLs are assembled as ordinary HTTP addresses, while the device runs a web server on port 80 for configuration, text chat, model settings, sensor controls, and a broader control API. The code exposes endpoints for actions, publishing, service calls, audio blobs, and emergency-stop controls, but does not show authentication checks on those routes.
The Wi‑Fi recovery portal is more concerning for a device intended to be easy to reproduce. When it cannot connect to a saved network, the current source starts an access point named in the form
STACKCHAN-XXXX, where the suffix derives from the device identifier. The access-point call supplies a name but no password. It also offers a captive-style DNS path and configuration page over HTTP.That design is understandable for a Maker demo: it removes friction when setting up a robot at a workshop or public event. It is not a secure onboarding design for a device that could be deployed on a shared office, campus, apartment, or maker-space network. Anyone within radio range could join the unprotected setup network while it is active, and the plain-HTTP management and service traffic provide no transport encryption on the local LAN.
Users should treat Stack-Chan Minimal as trusted-LAN hardware. Put the robot and its AI host on an isolated IoT VLAN or a dedicated home lab network; do not expose its ports through router forwarding; and avoid storing or discussing sensitive information through it. The project can keep model inference off a cloud service, but that is different from protecting the traffic, configuration, and control plane between the robot and the local host.
Its physical add-ons are demonstrators, not product features
The firmware contains optional servo support, which gives the little face a way to nod or otherwise react during conversation. The AtomS3R’s expansion connections also allow the project to accept a MAX30100 optical sensor module and surface heart-rate and SpO2-like readings.Here, the author’s own warning is unusually direct and should be taken literally. The MAX30100 values are described as demonstration and education references, not medical measurements; the project is not a medical device and must not guide diagnosis, treatment, monitoring, or healthcare decisions. The repository adds that the SpO2-like value is uncalibrated and can vary with finger placement, ambient light, motion, and sensor-to-sensor differences.
The code review turns up another hardware tradeoff: the optional servo build uses the same Grove-port GPIO pins assigned to the external I2C sensor connection, so servo motion and an I2C sensor are not simply independent plug-ins on the default wiring. That is exactly the sort of constraint that tends to disappear in a polished demo but matters when reproducing the project. Builders should decide whether their version is primarily a moving character or a sensor experiment before committing to the enclosure and wiring.
A useful interface project, with responsibility pushed to the builder
Stack-Chan Minimal comes from a recognizable Stack-chan tradition: M5Stack and the broader community have maintained larger, more capable Stack-chan designs for years, including models based around the CoreS3. Those systems bring batteries, cameras, touch panels, servos, LEDs, and more complete factory firmware. The Minimal version deliberately takes the opposite route: a 24 mm-square AtomS3R and voice base become the smallest possible visible “body,” while the expensive and rapidly changing compute stays elsewhere.That makes the project more durable than a robot tied to one hosted API or one frozen model package. It also shifts the responsibility for model selection, host maintenance, voice licenses, network security, and reliability squarely onto the builder. The firmware’s support for whisper.cpp, llama.cpp, LM Studio, Ollama, piper-plus, and optional VOICEVOX compatibility is an invitation to experiment, not a guarantee that every combination will work equally well.
For a Windows local-AI setup, that is precisely the appeal: Stack-Chan Minimal can give a PC-hosted assistant a tangible interface without replacing the tools and models already running on the machine. Just build it as a lab device, not as a secured consumer appliance.