whatisgithub

What is stackchan-pet-fw?

corvelis/stackchan-pet-fw — explained in plain English

Analysis updated 2026-05-18

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

In one sentence

Firmware that gives an M5Stack CoreS3 based Stack-chan robot a pet-like personality, with animated faces and remote control over WebSocket.

Mindmap

mindmap
  root((repo))
    What it does
      Animated pet faces
      Affection tracking
      Remote control endpoints
    Tech stack
      C plus plus
      PlatformIO
      M5Stack CoreS3
      WebSocket and HTTP
    Use cases
      Build a desktop robot
      Add personality to Stack chan
      Voice and remote control
    Audience
      Hobbyist makers
      Embedded developers
      Stack chan builders

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

Flash a personality driven firmware onto an M5Stack CoreS3 based Stack-chan robot.

USE CASE 2

Control the robot remotely through HTTP and WebSocket commands.

USE CASE 3

Stream two way audio between the robot and an external client.

USE CASE 4

Build custom face and affection states on top of the existing tiers.

What is it built with?

C++PlatformIOArduinoWebSocketHTTP

How does it compare?

corvelis/stackchan-pet-fw0x1-1/revivalchronoconstant/sourdough-monitor
Stars131313
LanguageC++C++C++
Setup difficultyhardhardmoderate
Complexity4/55/53/5
Audiencedeveloperdeveloperops devops

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

How do you get it running?

Difficulty · hard Time to first run · 1h+

Requires M5Stack CoreS3 hardware, PlatformIO, and manually prepared face image files not included in the repo.

So what is it?

This is firmware for Stack-chan, a small desktop robot built on the M5Stack CoreS3, a compact hardware module with a screen, microphone, speaker, camera, and servo connections. The firmware gives the robot a pet-like personality, complete with an affection system that changes how it looks and acts depending on how you interact with it. The robot displays animated faces loaded from image files stored on the device. Different face expressions correspond to different states: idle, listening, speaking, blinking, reacting to being petted through the touch screen, or shaking when the device is physically moved. The affection level is tracked persistently on the device and shifts between tiers, normal, guarded, and attached, each with its own set of face images, making the robot feel more responsive over time. Beyond the screen and face animations, the firmware handles servo motors for physical movement, microphone input, and speaker output streamed as audio. The device connects to your local Wi-Fi network, or creates its own hotspot for direct connection, and exposes HTTP and WebSocket endpoints so external software can control it remotely. One WebSocket channel carries text commands in JSON format, another carries raw audio data for two way voice communication. You would use this if you are building your own Stack-chan robot and want firmware that gives it a personality beyond simple demos, specifically the pet affection mechanics, animated face states, and the network interface for external control. The project is built using PlatformIO, a development environment for embedded hardware, and the exact face image files need to be prepared and copied onto the device yourself since they are not included in the repository for licensing reasons. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
Explain how the affection tiers change which face images this firmware displays.
Prompt 2
Walk me through setting up PlatformIO and flashing this firmware onto an M5Stack CoreS3.
Prompt 3
Show me how to send a WebSocket JSON command to control the robot from an external client.
Prompt 4
Help me prepare and rename face PNG files so the firmware loads them correctly from LittleFS.

Frequently asked questions

What is stackchan-pet-fw?

Firmware that gives an M5Stack CoreS3 based Stack-chan robot a pet-like personality, with animated faces and remote control over WebSocket.

What language is stackchan-pet-fw written in?

Mainly C++. The stack also includes C++, PlatformIO, Arduino.

How hard is stackchan-pet-fw to set up?

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

Who is stackchan-pet-fw for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.