pdf-icon

StackChan

SKU:K151

Work in progress
本製品のパッケージおよびソフトウェア開発は現在進行中です。最終的な機能や資料は変更される可能性がありますので、あらかじめご了承ください。

説明

StackChan は、M5Stack とユーザーコミュニティによって共同開発された、とてもカワイイ AI デスクトップロボットです。本製品は、M5Stack の フラッグシップ IoT 開発キット CoreS3 をホストとして採用し、ESP32-S3 をメインコントローラとして搭載しています。240 MHz のデュアルコアプロセッサ、16MB Flash、8MB PSRAM をオンボードで備え、Wi-Fi および BLE に対応しています。メインユニットには、2.0 インチの高強度ガラスカバー付き静電容量式タッチスクリーン、0.3 MP カメラ、近接センサー、9 軸姿勢センサー(加速度+ジャイロスコープ+地磁気)、microSD カードスロット、1W スピーカー、デュアルマイク、電源およびリセットボタンなどの周辺機器が統合されています。

メインユニットに接続される ロボット本体部 には、USB-C 電源・データインターフェース、700 mAh バッテリー、フィードバック付きサーボモーター 2 基(水平方向 360 度無限回転、垂直方向 90 度可動)、2 列合計 12 個の RGB LED、赤外線送信・受信モジュール、3 ゾーンタッチパネル、フル機能 NFC などの周辺機器が搭載されています。

出荷時ファームウェア は機能が非常に充実しており、生き生きとした可愛らしい表情やモーション、小智 AI エージェントを備えています。また、iOS アプリと連携したビデオ通話、リモート分身、近くにある他の StackChan を発見する機能にも対応しています。さらに、本製品は Arduino や UiFlow2 によるプログラミングをサポートしており、さまざまなカスタム機能を容易に実装できます。

注意事項

モーター安全上の注意
モーターが通電・制御されているか不明な状態で、モーターに接続された可動部を手で無理に回転させないでください。ハードウェア破損の原因となります。

特徴

  • CoreS3 ホストをベースにした設計
  • ロボット本体部
    • USB-C 電源・データインターフェース
    • 700 mAh バッテリー
    • フィードバック付きサーボモーター 2 基(水平方向 360 度無限回転、垂直方向 90 度可動)
    • 2 列合計 12 個の RGB LED
    • 赤外線送信・受信モジュール
    • 上部 3 ゾーンタッチパネル
    • フル機能 NFC
  • 開発プラットフォーム
    • UiFlow2
    • Arduino IDE
    • PlatformIO
    • ESP-IDF

含まれるもの

  • StackChan 本体 ×1(CoreS3 組み込み済み)
  • Work in progress

アプリケーション

  • デスクトップ向けコンパニオン
  • AI エージェント
  • 音声による質問応答
  • スマートホーム
  • IoT 制御

仕様

仕様 パラメータ
メインコントローラ ESP32-S3
Xtensa® デュアルコア 32-bit LX7、240 MHz
16MB Flash、8MB PSRAM
無線接続 2.4 GHz Wi-Fi、IEEE 802.11 b/g/n
Bluetooth® 5 LE
赤外線受信 IRM56384+赤外線送信
有線接続 USB CDC & Full-speed USB OTG
GPIO、UART、I2C
ディスプレイ 2.0 インチ IPS LCD、解像度 320*240、65536 色、ILI9342C ドライバ
静電容量式マルチタッチ、FT6336U ドライバ
カメラ GC0308、640*480、0.3 MP
センサー デュアルマイク、ES7210 オーディオコーデック
近接センサー LTR-553ALS-WA
9 軸 IMU BMI270+BMM150(加速度+ジャイロ+地磁気)
3 ゾーンタッチパネル、Si12T ドライバ
フル機能 NFC ST25R3916
ヒューマンインターフェース 1W スピーカー、AW88298 16-bit I2S パワーアンプ
RGB LED WS2812C * 12
電源およびリセットボタン
電源インジケータ LED
拡張インターフェース microSD カードスロット
Grove インターフェース * 3
LEGO® 互換取付穴
モーター 水平方向 360 度回転フィードバック付きサーボ
垂直方向 90 度可動フィードバック付きサーボ
電源 700 mAh バッテリー
USB-C 電源・データ
電源管理 IC AXP2101、RTC BM8563
製品サイズ 54.0 * 70.0 * 62.0 mm
製品重量 186.0 g
梱包サイズ Work in progress
総重量 Work in progress

操作説明

BMM150 磁場干渉
磁石は BMM150 地磁気センサーに干渉し、測定値が異常になる可能性があります。地磁気を用いてデバイスの方位を計算する場合は、強い磁場の近くに本製品を置かないようにしてください。

電源操作

電源オン:電源ボタンを短く 1 回押します(左側の USB-C ポート付近)。
電源オフ:電源ボタンを 6 秒間長押しします(左側の USB-C ポート付近)。
リセット/再起動:RST リセットボタンを短く 1 回押します(下側の microSD カードスロット付近)。

ダウンロードモード

USB-C ケーブルで StackChan とコンピュータを接続します(メインユニットの USB-C ポートおよびベースのはいずれもデータ転送に対応しています)。下側の microSD カードスロット付近にある RST リセットボタンを 3 秒間長押ししてください。ボタン横のインジケータ LED が緑色に点灯すると、ダウンロードモードに入ったことを示します。点灯後はボタンを離してください。

回路図

ピンマップ

ここでは主にロボットのボディ部分を説明します。メインコントローラ部分については、CoreS3 ピンマップを参照してください。

ESP32-S3 G6 G7 G5 G10 G11 G12
Servo_TX Servo_RX IR_SEND IR_REC I2C_SCL I2C_SDA

IO 拡張チップ

PY32L020 IO1 IO14 I2C_SCL I2C_SDA ADD_SEL
VM_EN RGB

I2C アドレス: 0x6F(ADD_SEL = 0、デフォルト)
I2C アドレス: 0x71(ADD_SEL = 1)

I2C デバイス

デバイス I2C アドレス
バッテリー監視(INA226AIDGSR) 0x41
NFC(ST25R3916-AQWT) 0x50
タッチ(Si12T、TSM12 互換) 0x68
IO 拡張(PY32L020) デフォルト 0x6F
0x71 に設定可能

拡張インターフェース

HY2.0-4P Black Red Yellow White
PORT.A GND 5V G2 G1
PORT.B GND 5V G9 G8
PORT.C GND 5V G17 G18

製品サイズ

3D

Work in progress

データシート

ソフトウェア

Arduino

Work in progress

UiFlow2

Work in progress

出荷時ファームウェア

本チュートリアルは、出荷時ファームウェア V0.12 バージョンに対応しています。

iOS アプリのインストール

Face ID に対応した iPhone または iPad に StackChan World アプリをインストールしてください:https://apps.apple.com/app/stackchan-world/id6756086326

デバイスファームウェアの更新

PC に M5Burner をダウンロードします:

M5Burner を起動し、StackChan を検索します。Only Official にチェックを入れ、Download をクリックして最新バージョンのファームウェアをダウンロードしてください。

USB-C データケーブルを使用して、コンピューターと StackChan を接続します。2 つの USB-C ポートはいずれもデータ通信に対応していますが、製品上部の回転による事故を避けるため、底座側の USB-C ポートの使用を推奨します。電源ボタン(左側 USB-C ポートの横)を短く 1 回押して電源を入れてください。macOS でデバイス接続の許可ダイアログが表示された場合は、許可をクリックしてください。

M5BurnerBurn をクリックし、デバイスに対応するポートを選択します。Start をクリックし、進行バーが完了するまで待つと、ファームウェアの更新が完了します。

どのポートがデバイスに対応しているか分からない場合は、ポート一覧を展開し、デバイスを一度取り外して消えたポート名を確認してください。その後、デバイスを再接続します。それでもポートが表示されない場合は、下側の microSD カードスロット横にある RST リセットボタンを 3 秒間長押ししてください。ボタン横のインジケーター LED が緑色に変わると、デバイスはダウンロードモードに入ります。ボタンを離してください。

M5Burner を終了し、下側の microSD カードスロット横にある RST リセットボタンを短く 1 回押すと、デバイスは通常起動します。

モーターのキャリブレーション

初回使用時は、最初にモーター位置のキャリブレーションを行うことを推奨します。

デバイス上でメインメニューの最後のページ Setup に入り、Zero Calibration をタップします。手動でデバイスを初期位置まで回転させ、画面が縦向きで、カメラが両脚の間に位置する状態にします(下図参照)。その後、Set Current Position As Home をタップします。

次に、キャリブレーションが正しく反映されているかを確認します。デバイスを初期位置以外の方向に手動で回転させた後、Move To Home をタップします。デバイスが初期位置に戻れば、キャリブレーションは有効です。Done をタップしてキャリブレーションを完了します。

モーター安全
手動で回転させた際に抵抗を感じる場合は、モーターが通電され制御状態にあることを示します。この状態で無理に手で回転させると、ハードウェア破損の原因になります。

RGB LED ストリップのテスト

デバイス上でメインメニューの最後のページ Setup に入り、LED Strips Test をタップします。テスト用にライトの色を切り替えることができます。下部の Quit をタップすると、ライトが消灯します。

ネットワーク・エージェント接続

デバイス上でメインメニューの最初のページ AI Agent に入ります。デバイスが顔を上げ、画面に Xiaozhi-XXXX 形式の Wi-Fi ホットスポット名が表示されます。スマートフォンまたはパソコンでこの Wi-Fi に接続すると、設定ページが自動的に表示されます。表示されない場合は、ブラウザで http://192.168.4.1 を開いて設定ページにアクセスしてください。設定ページで接続したい Wi-Fi の SSID とパスワードを入力し、connect をタップすると、デバイスが再起動します。再起動後、再度 AI Agent に入ると、デバイスが音声で案内し、画面に 6 桁の認証コードが表示されます。

小智(XiaoZhi)AI コンソール https://xiaozhi.me にアクセスし、アカウントを登録した後、新しいエージェントを作成します。エージェント名(ウェイクワード Hi, StackChan とは独立)、言語、音声、キャラクター性格を設定し、先ほどの 6 桁の認証コードを使用してデバイスをエージェントに紐付けます。紐付け後にエージェント設定を変更した場合は、変更を反映させるためにデバイスを再起動する必要があります。

AI エージェント設定

小智 AI コンソールでは、StackChan デバイスに紐付けられたエージェントの各種設定を変更できます。これには、大規模言語モデル、音声の話速やイントネーション、MCP などが含まれます。

Home Assistant プラグインを使用して小智を HA に接続すると、小智の音声操作で HA デバイスを制御できます。詳しい手順については、以下を参照してください:https://github.com/c1pher-cn/ha-mcp-for-xiaozhi/blob/main/README.en.md

音声インタラクション

デバイスのデフォルトの音声ウェイクワードは Hi, StackChan です。画面をタップして起動し、話し始めることもできます。現在のテスト版ファームウェアでは、画面左上付近にある RGB LED によって音声インタラクションの状態が表示されます:

  • :デバイスが音声を聴取中;
  • :デバイスが発話中;
  • 消灯:音声インタラクションは待機状態。

よく使われる音声コマンド:

  • 一般的な質問応答
    • 今何時?
    • 明日の大阪の天気はどう?
    • ジョークを一つ言って。
    • ニュートンについて紹介して。
  • デバイス本体の部品操作
    • (スピーカー)音量を 90% に設定して。
    • (モーター)左に頭を回して。
    • (RGB LED)内蔵ライトを青色にして。
    • (カメラ)今、何が見えている?
    • (バッテリー)バッテリー残量はどれくらい?
  • Home Assistant MCP 接続後
    • 寝室のライトをつけて。
    • エアコンをつけて、25 度に設定して。
    • 今、リビングの温度は何度?

動作インタラクション

デバイスが待機状態のとき、ランダムに異なる表情を表示したり、異なる方向に頭を向けたりします。

デバイス頭部のタッチエリアを縦方向にスワイプすると、ハート ❤️ の表情と動作をトリガーできます。

リモートコントロールモード

Work in progress

iOS アプリの接続

(現在、内測版ファームウェアでは AI Agent 画面からメインメニューに戻ることができません。リセットボタンを短く押してデバイスを再起動する必要があります。)

デバイス上でメインメニューの最後のページ Setup に入り、App Bind Code をタップします。画面に QR コードが表示されます。スマートフォンで StackChan World アプリを起動し、案内に従って QR コードをスキャンしてバインドを完了してください。バインド完了後、デバイス上で Back - Quit をタップしてメインメニューに戻り、Avatar 機能に入ります。スマートフォン側でも Avatar 機能を開きます。

Avatar モードでは、デバイスがあなたの分身となり、スマートフォンの前にいる人物の動きを模倣します。上下左右の首の動きや、目と口の位置・大きさが反映されます。音声通話機能は現在開発中で、まだ利用できません。

デバイスが Avatar モードのとき、スマートフォン側で Sentinel モードを有効にすることもできます。上下左右の矢印ボタンを 長押し するとデバイスが回転し、可動範囲は縦方向 0~90 度、横方向 -128~+128 度です。左下の +/- ボタンは現在の向きを記録するためのもので、別の向きから対応する数字をタップすると、記録した向きに素早く戻ることができます。スマートフォンの横画面・縦画面の両方に対応しています。

関連リンク