Warning
This library is WIP (work in progress) and unstable. Breaking changes can be installed easily!
download.mp4
StackChan display is an Arduino library to display stackchan faces. StackChan display depends on only U5Unified and drawing with it.
This library is based on stack-chan/m5stack-avatar, botamochi6277/m5stack-avatar, and m5stack/StackChan.
StackChan display is one of StackChan components to control a display. Even if you use this library alone, “StackChan” will not be complete.
---
config:
theme: 'redux-dark'
title: 'StackChan Architecture'
---
graph LR
planning((planning))
%% sensor inputs
camera[fas:fa-camera camera]-->|cam image|planning
touch[head touch sensor]-->planning
head_rot[head rotation sensor]-->|pan tilt angles|planning
mic[microphone]-->planning
bat[battery sensor]-->planning
%% comm inputs
esp_now[esp now]-.->planning
ble[bluetooth]-.->planning
usb[usb]-.->planning
wifi[WiFi]-.->planning
%% extra
llm[large language model]-.->wifi
%% outputs
planning-->display
subgraph display[display control]
face([face])
speech([speech bubble])
decorators([decorators])
end
display-->display_lib["display lib<br/>(M5Unified)"]
planning-->mot[motion control]
mot-->servo_lib[servo lib]
%% head neopixels on M5StackChan Head
head_led[head LED control]
planning-->head_led[head LED control]
head_led-->led_lib[LED lib]
planning-->speaker
Install this repository as an Arduino library.
Note
TODO: write install command here
Demo.ino is a demo arduino file to draw stackchan faces, please build this.
These changes are to improve functionality while keeping the code concise.
- No xTask: If you want to draw face in xtask, please register yourself.
- No
DrawingContext: It is too complex.FacialDrawable.draw()in this library usesExpressionWeight,ColorPalette, and a few internal parameters.ExpressionWeightconcept is based on ShapeKey. - No
Avatar: "Avatar" has to control whole behaviors of stackchan including motor motions and audio behaviors.Displayclass in this library only controls display behaviors.
- Increase #decorators
- Migrate more faces from botamochi6277/m5stack-avatar
- Add pictures of StackChans in the real world
- Add
autoScale()to support various M5Stack Boards - Add documents with doxygen
- Add the diagram of system architecture
- Add ellipse eyes
- Add cluster face
- Add Base classes for facial components
- Add build CI tests