Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

m5stack core2 v1.1でファームウェアが全く機能しません #237

Closed
RChikamura opened this issue Feb 1, 2024 · 13 comments
Closed

Comments

@RChikamura
Copy link

RChikamura commented Feb 1, 2024

不具合の概要
ファームウェアをビルドし、書き込んでみたのですが、画面に何もつかず、モーターも反応しません
ターミナルやデバッガーを見ても、目立ったエラーコードは特に出ていません。

再現手順
node js および npm の最新版を導入した環境で、
https://github.com/meganetaaan/stack-chan/blob/dev/v1.0/firmware/docs/getting-started_ja.md
https://github.com/meganetaaan/stack-chan/blob/dev/v1.0/firmware/docs/flashing-firmware_ja.md
のコードを用いて環境構築をし、ファームウェアを書き込みました。

環境:

  • OS: Windows 11 実機 および Ubuntu仮想環境(VMware) (どちらで試してもダメでした)
  • ESP-IDF v5.1.2 および v4.4.3 (v4.4.3はUbuntuでのみテスト)
  • スタックチャンのバージョン v1.0
  • 使用するM5Stackの種類 m5stack core2 v1.1

その他
stack-chan-testerはPlatform IOを通して書き込みに成功しており、画面やモーターなども正しく動作することを確認しています。

@meganetaaan
Copy link
Collaborator

報告ありがとうございます!Core2 v1.1はModdable側がまだ対応しておらず、改修が必要です。
私も手元にテスト用機体はありますが手が回っていない状況でした🙇
今週中を目処に、必要な改修箇所について確認しますね。

@meganetaaan
Copy link
Collaborator

進捗共有です。M5Stackが提供するソースコードを見つつ改修箇所を確認しました。
Core2 v1.1の電源管理ICはAXP192からAXP2101に変わっており、初期化のためのコマンドが若干異なるため修正が必要です。ただし旧モデルと新モデルともに「m5stack_core2」ターゲットとして動作させたいので、端末の初期化時にICを自動判別して処理を振り分けます。
ちなみにAXP2101はCoreS3でも使われているものでModdableの実装が既にあります。他にもINA3221という電流センサICが追加されています。

最低限、必要な実装としては

  • m5stack_core2/setup-target.js:
    • 使われている電源ICがAXP192かAXP2101かを自動判別する
    • AXP2101の初期化処理を追加する
    • ディスプレイのバックライト点灯のための処理を追加する

が、できれば良さそうです。

@RChikamura
Copy link
Author

RChikamura commented Feb 18, 2024

上記、お調べいただいた情報をもとに、私のほうでも独自に調査し、改修をしていたのですが、前進があったので共有いたします
Core2のsetup-target.js, manifest.jsonと、モジュールaxp2101.jsを改修することにより、初期化処理が一部進行するようになった模様です。ただし、タッチパネルのセットアップに失敗しているようで、スタックちゃんの起動までは至らず、下部LEDのみが点灯している状態となります。
https://github.com/RChikamura/Moddable_Repair_RChikamura (Privateリポジトリです)

@RChikamura
Copy link
Author

RChikamura commented Feb 25, 2024

さらに修正を加え、プログラムが1回起動するところまでは持っていけましたが、2回目以降は正常起動ができず、わずか数秒で落ちてしまう状態になってしまいます。

問題点として、AXP2101.jsにピン設定が大幅に不足していたり、AXP192.jsから変更されていないままの部分があったりしている点が見受けられ、それが影響を及ぼしているように思えます。
https://github.com/RChikamura/moddable_core2v1.1_try

@RChikamura
Copy link
Author

さらに修正を加え、おそらく正常起動可能になりました。
https://github.com/RChikamura/moddable_core2v1.1_try

@meganetaaan
Copy link
Collaborator

ありがとうございます!いまコード読んでいます。
AXP2101のDCDCやLDOなど足りていない機能を色々実装してくださったんですね。

DCDCの電圧のステップ数などの設定がピンによって違うんですね。たしかにデータシートの5.5 (Electrical Characteristics)に書いてますね。

後ほど実機で動かしてみます!

ちなみにModdable本家に今回の対応をコントリビュートするのは興味ありますか?コードを他のデバイスでも動くように修正したり、プルリクエストを作ったりする感じです。慣れない点がありましたら私もサポートできればと思います。

@RChikamura
Copy link
Author

返信遅れて申し訳ございません。
このようにgithubで連携を取って開発を進めたことがなく、まだどのような作業を行えばよいかわかっていないのですが、できることがあればお手伝いしたいと思います。

@meganetaaan
Copy link
Collaborator

私の方でも動作確認ができました!ありがとうございます!

いただいた変更を私の方でModdableに取り込んで微修正し、旧バージョンのCore2と共存して動くようにできました。

https://github.com/meganetaaan/moddable/tree/feature/m5stack_v2.1

Moddable最新版からの差分は下記のプルリクエストのとおりです。
meganetaaan/moddable#1

このあともう少しセルフレビューしたら、RChikamuraさんを「共同編集者」としてModdable本家のほうにプルリクを出そうと思います。その際RChikamuraさんにContributor License Agreement(CLA:Moddableが指定するライセンスでコードを公開してよいですという同意書)を書いていただく必要がありますが、この段階になったらまた連絡します。CLAの詳細は↓にあります。

https://github.com/Moddable-OpenSource/moddable/blob/public/contributing.md#submitting-pull-requests

@meganetaaan
Copy link
Collaborator

プルリク作りました!

Moddable-OpenSource/moddable#1324

@RChikamura 前述の通り、ModdableにCLAを提出していただけますでしょうか。

https://github.com/Moddable-OpenSource/moddable/blob/public/licenses/Moddable%20CLA%20-%20individual.pdf

  • PDFを印刷
  • 必要事項を記入
  • スキャン(私はPDFスキャン機能のついたスマホアプリを使いました)
  • [email protected] にPDFを送付する

で完了です。ご不明点ありましたらお尋ねください 🙇

@meganetaaan
Copy link
Collaborator

上記のプルリクがマージされました。
Moddable-OpenSource/moddable#1324

既にModdableのpublicブランチで利用できるほか、来月のModdable月次リリースにもこの修正が含まれる見込みです。

@meganetaaan
Copy link
Collaborator

https://github.com/Moddable-OpenSource/moddable/releases/tag/4.6.0
4月のリリースで修正が取り込まれたので試しているんですが、LCDが付かないですね…なにか修正を間違えたかな。
デバイス本体下の青色LEDがずっと点滅しているのも気になります。

@meganetaaan
Copy link
Collaborator

あ、勘違いだった。
M5Stack Core2 v1.1とModdable v4.6.0の組み合わせで無事にスタックチャンが動作しました 🎉

@meganetaaan
Copy link
Collaborator

クローズします。v1.1でまだ問題があれば再オープンしてください。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants