Repository navigation
v0.3.0 — Even R1 Compatible Remote for M5Stack StopWatch
リリース日: 2026-10-10。
ESP32-S3をiPhoneのEvenアプリへR1互換リモコンとして登録し、Even G2を操作する非公式プロジェクトです。
純正R1ファームウェアは含みません。プロジェクト版は0.3.0、アプリへ通知する互換用文字列は
R1_APP_VERSION=2.3.2.0007です。
0.3.0の変更点
- 初回公開に向けてライセンス、文書、配布構成を整備。
- プロジェクト版を0.3.0へ更新。R1_APP_VERSIONは2.3.2.0007を維持。
- 操作処理とBLE/GATT配置は0.2.9から変更なし。
0.2.9から引き継ぐ機能
- CST820Bによる画面の任意位置での単タップ・二度タップ・長押し・short→long。
- 上下60px以上かつ横変位以上のスワイプでup/downを1接触につき1回送信。
20pxを超える移動でタップ候補を取り消します。 - M5IOE1によるタッチリセットと、PM1・タッチの共有I2Cバスへの対応。
- 公開用文書とライセンス表示の整備。旧パッチ・版別文書・古いバイナリを現在の配布ツリーから除去。
公開用整理による操作処理・BLE/GATT配置の変更はありません。
確認環境と動作
M5Stack StopWatch、ESP-IDF 5.5.1、Evenアプリ2.3.2、G2ファームウェア2.3.2.14。
利用者実機でペアリング、G2操作、全コンソール操作、G1の各タップ操作、G2短押しdown・長押しup・
保持中500ms周期のup繰り返し、各タッチ操作と上下スワイプが確認されています。
コンソールコマンドはEnterで実行します。起動時のstatus/auto入力は不要です。
ホストテストはwire・legacy・inputs・battery・touchの全項目が通過しています。
公開用ソースはWSL2上のESP-IDF 5.5.1でESP32-S3向けビルドも成功しています。
検証範囲はdocs/VALIDATION.mdを参照してください。
既知の制限
- 再起動後、G2の再接続に数分かかる事例があります。遅延原因と長期安定性は未確定です。
- バッテリー残量は電圧から推定してアプリ/G2へ通知します。実機での残量表示は未確認です。
- 充電中・満充電状態の判定、ディスプレイ描画、生体センサー、省電力・スリープ、DFUは未実装です。
- 純正R1は使用しておらず、iPhoneアプリの開発環境も使用していません。
他のアプリ/G2バージョンとの互換性は未検証です。
配布とビルド
ソースのみを配布します。ESP-IDF 5.5.1でビルドしてください。
idf.py set-target esp32s3
idf.py build
idf.py -p COM5 flash
idf.py -p COM5 monitorCOM5は実機のポートへ変更します。既存sdkconfigから更新する場合は
docs/BUILD.mdを参照してください。
LICENSE、NOTICE.md、LICENSES/をソースとともに保持してください。
独自部分はBSL-1.0、MIT参照実装に基づくファイルはBSL-1.0 AND MITです。