Skip to content

Repository files navigation

Stack-chan

Build Stack-chan Firmware Discord server invitation

日本語

stackchan

Stack-chan is an open-source, JavaScript-driven, super-kawaii robot built with M5Stack.

This repository provides firmware with M5StackChan CoreS3 as its standard configuration, user applications called MODs, browser development tools, cases, and schematics.

Getting started

If this is your first Stack-chan, start with a preassembled M5StackChan and the browser tools.

1. Get an M5StackChan

The standard M5StackChan AI Desktop Robot (K151) package is enough to get started. The joystick remote controller is optional.

2. Flash the firmware

Connect M5StackChan to a computer with a data-capable USB cable, then open the Web firmware installer in Chrome or Edge. Select "M5StackChan CoreS3" as the device. You do not need to install the Moddable SDK or ESP-IDF.

Important

Flashing this repository's firmware replaces the factory firmware supplied by M5Stack. To restore it, follow the restore procedure in the M5Stack product documentation and use M5Burner.

Web firmware installer

3. Try a MOD

Find published MODs and mini apps in the MOD Gallery. Choose a MOD, then run it in the simulator or install it on a device. Block-based samples can be opened directly in the block editor and changed.

MOD Gallery

Browser tools

Use the Stack-chan browser tools to set up a device, change its preferences, and create MODs in a browser.

Stack-chan browser tools home screen

Tool Purpose
Firmware installer Flash firmware to a supported M5Stack over USB
Preferences Change Wi-Fi and device preferences over BLE
MOD Gallery Find, try, and install published MODs
Block editor Create MODs with Blockly and run them in the simulator or on a device
Shape face editor Arrange eyes and a mouth to create a custom Face
Simulator Run MODs with the WebAssembly firmware and a 3D model
MediaPipe BLE tracking Send tracked face and hand movement over BLE

Block editor

Supported hardware

The distributed firmware supports M5Stack, M5Stack Core2, M5Stack CoreS3, and M5StackChan CoreS3. M5StackChan CoreS3 is the standard configuration and the target used for physical-device release validation.

Firmware for Stack-chan RT and Takao Core2 + SG90 can be built from source. See the firmware guide for target-specific commands and constraints.

To build the hardware yourself, see the case guide for parts and assembly instructions. See the schematics for board information.

Repository contents

  • firmware: Host firmware, modules, MODs, and development scripts
  • web: Firmware installer, preferences, editors, Gallery, and simulator
  • case: Case models for 3D printing
  • schematics: Schematics and board layouts
  • docs: Roadmap, specifications, operations guides, and release notes

Development

Contributing

Feature requests, bug reports, and pull requests are welcome. Read the contribution guide, or open an issue.

To support the project financially, visit the GitHub Sponsors page.

License

The resources in this repository are distributed under the Apache License 2.0. See LICENSE.

BibTeX

@misc{stackchan,
  author       = {Shinya Ishikawa and the Stack-chan community},
  title        = {Stack-chan: A JavaScript-driven Super-kawaii Robot},
  year         = {2021},
  howpublished = {\url{https://github.com/stack-chan/stack-chan}},
  note         = {Open-source hardware and software.},
}

Releases

Sponsor this project

Packages

Used by

Contributors

Languages