2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

PlatformIOからM5Paperに書き込むと起動しなくなって困った

2
Last updated at Posted at 2022-11-13

久々にM5Paperで遊ぼうと思ったらつまづいたので、対処法を共有できればと思います。

前提条件

M5Paper: v1.0 (古いやつ)
環境:VSCode上のPlatformIO(Core 6.1.5, Home 3.4.3)
やったこと: GitHubのFactoryTest1をcloneしてPlatformIOで書き込み

状況

・コンパイル、書き込みは成功するが、M5Paperが起動しなくなる。
・画面は下図の初期画面が点滅する。
IMG_3981.jpg

・シリアルモニタでは以下が繰り返し表示される。

M5EPD initializing...[  2643][D][M5EPD_Driver.cpp:68] begin(): Init SUCCESS.
[  3270][E][esp32-hal-cpu.c:110] addApbChangeCallback(): duplicate func=0x400fc9c8 arg=0x3ffbde2c
[  3416][W][sd_diskio.cpp:186] sdCommand(): token error [0] 0x12
[  3417][W][sd_diskio.cpp:516] ff_sd_initialize(): GO_IDLE_STATE failed
[  3417][E][sd_diskio.cpp:802] sdcard_mount(): f_mount failed: (3) The physical drive cannot work
[  3435][D][GT911.cpp:35] begin(): GT911: Initialization
[  3435][I][esp32-hal-i2c.c:75] i2cInit(): Initialising I2C Master: sda=21 scl=22 freq=100000
[     7][D][esp32-hal-cpu.c:244] setCpuFrequencyMhz(): PLL: 480 / 2 = 240 Mhz, APB: 80000000 Hz
[   456][I][esp32-hal-psram.c:96] psramInit(): PSRAM enabled

原因、対処法

画面でもシリアルモニタでもわかる通り、FactoryTestのブートに失敗しているみたいです。
シリアルモニタの出力でググってみると、M5Stack Communityに対処法がありました2

どうやらPlatformIOのM5Paper(の中身のESP32)用のフレームワーク(framework-arduinoespressif32)の最新バージョン(v.5.2.0)では、FactoryTestが動かないようです。以前のバージョン(v.5.1.1以下)のフレームワークなら動くらしい。
なので、platformio.iniのplatformで読み込むものをv5.1.1に変更すればいいわけです。
GitHubからクローンした状態では以下のようになっています。

platform = espressif32

espressif32とだけ書いた場合、自動で最新版を使うようなので、

platform = espressif32@5.1.1

と@以後にバージョンを追記すればいいです。

フレームワークとArduinoのバージョンが合わないでエラーが出ることはよくありますが、この場合はなまじコンパイルと書き込みが通ってしまうだけ面倒ですね。

ちなみに

今回の問題はPlatformIOのフレームワークの問題なので、FactoryTestに限らず、PlarformIOからM5Paperに書き込む場合すべてで発生しますが、同様の対処法で解決します。

PlatformIO以外で書き込んだ場合はうまくいくようで、M5burnerからのFactoryTestの書き込みを試してみたところ、正常に起動しました。初期状態に戻したいだけならM5burnerを使った方がいいかもしれません。

最初に書いたように僕は古いM5Paper(v.1.0)を使っています。M5Paperの新しいバージョン(v.1.1)では状況が違う可能性があるので注意してください。

ちなみに、のちなみにですが、FactoryTestを書き込めたのはいいものの、以前(2年前くらい)では読み込んでくれたSDカードを認識してくれませんでした。

  1. https://github.com/m5stack/M5Paper_FactoryTest

  2. https://community.m5stack.com/topic/4700/m5paper-build-factory-test-from-github/2

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?