💦

M5StickC/ M5StickC Plusの困った時の対処や注意事項

2020/10/11に公開

M5Stackの困った時の対処や注意事項からM5StickC及びM5StickC Plusに関する部分を抜き出して再編集しました。他のM5Stack製品に関するものは別記事で作成します。

最初に起動した時に「ERROR 22」というエラーが出る。

出力されるメッセージ

---------------
Bat Vol error
check hardware

バッテリーの充電が出来ておらずエラーになっています。しばらく充電すると直ります。

電源OFFが分からない

「M5」と書かれたボタンを正面に見て左側にあるボタンを6秒長押しすると電源が切れます。電源ONは同じボタンを2秒長押しです。

【M5StickC Plus】UIFlowやArduinoIDEで書き込むと画面がおかしい

M5StickC Plusは画面の大きさが違うので、M5StickC用のファームウェアを書き込んでしまうと画面が写真のようにおかしくなります。

  1. UIFlowの場合はM5Burnerで書き込むバージョンを確認
    プルダウンでバージョンを選ぶことができます。v?.?.?-plusと「-plus」が付いたものがM5StickC Plus用のファームウェアです。

  2. ArduinoIDEの場合はincludeするヘッダファイルを確認
    M5Stackの公式ではM5StickCM5StickC Plusはライブラリが分かれているためincludeするヘッダファイルが異なります。

  • M5StickCは「M5StickC.h」
  • M5StickC Plusは「M5StickCPlus.h」

PCに接続しても認識しない

USB Type-C to USB Type-Cだと認識しない場合がある

USB Type-C to USB-Aアダプタを利用する、あるいはUSBハブ(多分2.0の方がいい)を介すと認識する場合があります。

USBポートを変えてみる

ノートPCなどで側面のUSBポートだとダメで裏側のUSBポートだと大丈夫だったということもあるようです。接続するポートを変えてみたり、USBハブを介して接続してみましょう。

起動しない時の対処【M5StickCのみ】

M5StickCは長時間何もせず置いておくと、どんなことをしても液晶が点灯しなくなり壊れたような症状が現れる時があります。そのような時は下記の手順でチェックしてみましょう。

①EasyLoaderで工場出荷時に戻してみる

自分で書き込んだ後に反応しなくなった場合は、一旦FactoryTestに戻してみましょう。

EasyLoaderで戻すことができます。

★書き込んでも動かない場合は一旦Eraseしてみましょう。

②PCに接続して認識するかを確認

PCに接続してCOMポートが見えるかどうか確認します。

(1) 認識しない場合

バッテリーが放電しきると保護が働いて起動しなくなるようです。下記の2種類の手順を試してみてください。

  • 680kΩ(1kΩでもジャンパーでもOK)の抵抗を用意して、3V3とG0の間に挿して電源を接続する。
  • 20分以上充電する。

(2) 認識した場合

こちらはAXP192がロックされた状態になるようで、液晶のみ点かなくなる症状だと思われます。

  • 対処はBAT-GND間を短絡し、USBの電源を挿すという手順です。怖いですが、バッテリー自体に短絡保護回路があるようなので大丈夫とのこと。
    ★ この場合は抵抗ではなくジャンパーで短絡するしかありません。

書き込みエラーの対処

M5StickCで書き込みができないという場合は下記の順番で確かめてみましょう。

1. 書き込み速度

M5Stackは921600bpsですが、M5StickCの場合は1.5Mbps,750000bps,115200bpsを試してみましょう。

2. 書き込みのタイミングで電源ボタンを押しながら接続してみる

書き込むタイミングでUSBケーブルを接続してみましょう。

3. 他のPC(OS)で書き込んでみる

MaxOSX Catalina以降は書き込めないという方が多いです。Windows10やLinuxで書き込めるか確認しましょう。

4. G0とGNDをジャンパーして再起動

G0とGNDをジャンパーして再起動すると、M5StickCが強制的に書き込みモード(DownloadMode)で起動します。その状態で書き込みを試してください。

★DownloadModeで起動すると画面には何も表示されないので注意してください。ファームウェアを書き込んだ後はジャンパーを外して再起動する必要があります。

5. ドライバを手動で変更してみる

Windows10で起きたのですが、購入直後に接続したところデバイスドライバが「不明なデバイス」になってしまうことがありました。その場合は手動でデバイスドライバの更新を行うと正常に認識する場合があります。

  • (1) M5StickCをPCに接続する
  • (2) デバイスマネージャーを開く
  • (3) 不明なデバイスを右クリック→「ドライバーの更新」を開く
  • (4) 「コンピューターを参照して、、、」を選択
  • (5) 「コンピューター上の利用可能なドライバの、、、」を選択
  • (6) 「互換性のあるハードウェアを表示」のチェックを外す
  • (7) 「製造元」がFTDI、モデル「USB Serial Port」を選択して「次へ」を押す
  • (8) 「ドライバーが正常に更新されました。」と表示されたら「閉じる」をクリック
  • (9) M5StickCを一旦外して再接続する

6.ドライバを最新にしてみる

M5StickCはUSB-シリアル変換にFTDI互換のデバイスを使っています。通常はOSのデフォルトドライバで動きますが、デバイスドライバ入れ替えて認識したという情報もあるので入れ替えてみましょう。

https://www.ftdichip.com/Drivers/VCP.htm

MacOSX Catalina以降

MacOSX Catalina以降のバージョンでは様々な不具合があるようです。アップグレード前は動いていて、M5Stackや他のOSでは不具合は発生してないのでMac特有の問題のようです。(筆者はCatalinaの環境が無いので詳細な検証はしていません。)

確認した不具合と対処

Twitterで見聞きした症状は下記の通りです。

  1. ArduinoIDEで書き込もうとするとM5StickCが再起動を繰り返して書き込みができない。
    → 対処方法なし(他のOSを使う方法のみ?)
  2. ArduinoIDEで書き込もうとするとTimeoutエラーが出る
    → G0-GNDを短絡して、書き込みモードにすると回避できる場合があります。
  3. デバイスを認識しない
    → USB Type-C to USB Type-Cケーブルで接続していると認識しない場合があるようです。USB Type-C to USB-Aアダプタを挟むかUSB2.0のハブを使うと認識する場合があります。

対処の方法は下記のリンクが詳しいです。

macOS CatalinaのArduino IDEでM5StickCに書き込みができない問題の解決方法

おわりに

今後も何かあったら加筆修正していきたいと思います。

更新履歴

  • 2020/10/11 新規作成

Discussion