OpenAIのルート証明を更新しました。「rootCACertificate.h」
webAppでResetとPowerOffが利かない不具合を修正。
"script.js" (java Scriptファイル)
その他、いくつかの表示上の修正をおこないました。
(1).ファイル管理機能つき、WebServer
SPIFFS/SDにPCから直接ファイルをアップロードまたは、PCにファイルをダウンロードすることが可能になりました。
ファイル管理機能
Dir of SPIFFS/SD file system
Upload a file to SPIFFS/SD from PC
Download a file from SPIFFS/SD to PC
Stream a file to PC browser
Delete a file in SPIFFS/SD
Rename a file in SPIFFS/SD
Spiffs/Sd change file system
Status of m5Stack system information
SD folder function (暫定版)
Root : change directory to Root
Chdir. : change directory
Mkdir : make directory
Rmdir: remove directory
(2).Webアプリとファームウエアが連携したスタックチャン・ソフトウエア。
設定・サーボ調整・リモコンのオールインワンのソフトを提供。
スマートフォンとPC両方に対応しています。
Webアプリは、html、styleSheet、javaScript、画像ファイルなどを使用して作成できます。
(3).階層構造
ソフトウエアを開発するにあたり、開発効率、拡張性とメンテナンスを考慮した設計をしました。
各階の役割は次のようになっています。
4階: webApps: リモコン、Servo調整、設定などのWebアプリ(SPIFFS)
3階: webApi: 外部とのインターフェース
2階: module: ChatGPT,Timer,Servoなど、ファームウエアで提供のモジュール
1階: base1: Avatar,TTS,STTなど、スタックチャンの基となる表情・話す・聞くなどの部分
0階: base0: M5Stackのハード依存の部分(Button,LED,Server,WiFiなど)
(4).module(モジュール)形式で、機能の追加・削除が可能。
現在ファームウエアとして3個のモジュールの内蔵アプリを提供。
・ chatGPT (AiStackchan2相当)
・ Timer
・ Servo
・本体 - M5Stack Core2 (Core2 for Awsで動作確認しています)
・Servo(SG90、または互換サーボ): 「顔だけ」の場合は必要なし
サーボ・ポートは、PortA,PortC両方に対応。設定で後から変更できます。
・SDカード : 初回のWiFi接続時に使用します。
通常は、SPIFFS内のファイルだけで運用することができますが、SDの情報がSPIFFSファイルより優先されます。緊急用にWiFiとApiKeyの設定ファイルは、SDに保存しておくことをお勧めします。
・OpenAiのApiKey
・VOICEVOXのApiKey
ファームウエアを本体に書き込む為にPC上にどちらかの環境を整えてください。
・VsCodeの開発環境 または、M5Burner
下記リンクで、インストール手順などのサポートを行っています。
https://nori.rdy.jp/wss/ (WSS-Support)
M5Burnerで、ファームウエアを入手することもできます。
(デバイス種類は「CORE2 & TOUGH」)

私が作成した部分のソフト(srcフォルダ以下:libフォルダは除く)は、MIT license です。
ただし、"src/base00/wsServer.cpp"ファイルは、ESP-File-Server-License となります。
ご自分の判断でご活用ください。
イラストのライセンスは下記をご参照ください。
- [おきもくさんの公開物wiki] (https://okimoku.com/wiki/%E3%82%A4%E3%83%A9%E3%82%B9%E3%83%88)
-
AI_StackChan2 (robo8080さん)「MIT License」
-
M5Stack_Stack-chan_another_dimension(つゆきぱぱさん)「MIT License」
-
stack-chan-tester (タカオさん)「MIT License」
-
m5stack-avatar(ししかわさん)「MIT License」
「スタックチャン」は、ししかわさんが公開しているオープンソースのプロジェクトです。
https://github.com/meganetaaan/stack-chan
このソフトを作成するにあたり、
-
AiStackChan2の開発者で、先進的な取り組みでスタックチャン界をリードしてくださるrobo8080氏に感謝いたします。
-
stack-chan-testerの開発者で、博識でいつも適切なアドバイスをして頂けるタカオ氏に感謝いたします。
-
スタックチャン・コミュニティを様々な角度から暖かく支えてくれて、自由に使えるイラストをまとめてくれたおきもく氏に感謝いたします。
他にも、たくさんの方々からアドバイスとアイデアを頂き、感謝いたしております。
ステータス表示(StatusDisp)が正しく表示されないBug修正
RootCA変更による「わかりません」現象の解消。
・初期設定で、SERVOはOFFに変更。(サーボなし使用)
・SD-Updatar使用するBINファイルをSDに直接書込みする機能。
(書込みに失敗することがあります。その時は、再起動してください)
立上げ時に SD-UpdaterのMenuに移行できるようしました。
SD直下に、firmware(ファイル名"wss.bin")をコピーしておくと、SD-Updater対応のアプリと切替えができるようになります。
電源投入時の不具合対応のため緊急リリース。
(根本原因は不明なのですが、とりあえず現象は解消した)
Ver304に引き続き、バッテリー・アイコンを拡張し、情報表示の機能をつけました。
画面上部の真中をタッチすると、Normal, StatusLine, StatusDispの3つのModeを切替えます。
Normal : 通常のスタックチャンの顔の表示
StatusLine :上1行を使い、バッテリー・アイコンを含めた7種類を選択できます。
種類の選択は、画面上部の左(Prev)または、右(Next)で選ぶことができます。今回は、「メモリ残量」表示を追加しています。
StatusDisp : Avatarを停止して、全画面を使って情報表示をします。
StatsuLineモードと同様に、画面上部の左右をタッチすると違う種類を選択することができます。
全部で7種類の情報があります。
v304から、ソースにかなりの変更を加えました。
・chatGPTの modelは、「gpt-3.5-turbo-0125」に変更
・VOICEVOXのクラス化
・階層間の機能分離の推進
・PowerOn時のWiFi優先順位の見直し、などなど
・HOME画面で使用できるイラストが、10+1(下の画像)で11種類になりました。
(1).ステータス表示
バッテリー・アイコンを拡張してステータス表示ができるよになりました。
画面上部をタッチすると、6種のモード切替え・10秒表示・常時表示OnOff機能を実行します。
(Ver3.05でStatusLine:7種類 および StatusDisp:7種類となりました。タッチ操作も変更されました)
(2).イラストのHome画面表示(自由に選択可)
自由に使えるイラストをHome画面に表示できるようになりました。現在、ご提供いただいたイラスト9+1(下の画像)の計10種類 (Ver3.05で11種類) のファイルが選択できます。
・CORE2 V1.1対応 -- M5UnifiedライブラリV0.1.11使用
(1). Chat(Chat Remote Controller)Webアプリ
ChatGPTの操作に特化したリモコンを追加しました。
・ キャラ変機能
9つのキャラクター(ロールと音声)をワンタッチで変更
・ チャット履歴表示(chat History)
(2). 暫定版:SDファイル管理のフォルダ機能
Spiffs/SDで、SDを選択するとフォルダ機能のメニューが出ます。
Chdir, Mkdir, Rmdir などが使えるようになりました。
・first Release




