M5StackのTimed outエラー対策

一目惚れのM5Stack、購入してから〇ヵ月経ってしまいましたが、年末年始に時間がとれたので動かしてみました。

見た目がカッコイイ、M5Stack

5cm角のコアモジュールに、さまざまな機能モジュールを積み上げて機能拡張できる、開発ツールです。

f:id:matsujirushix:20180107143951p:plain

液晶、スイッチ、USBコネクター、マイクロSDスロット、Groveコネクターがコンパクトで綺麗なケースに包まれています。見た目大事。当初、MPUはESP8266だったようですが、現在発売されているのはESP32で、工事設計認証も取得済みのようです。

AliexpressのM5Storeから購入できます。

f:id:matsujirushix:20180107152509p:plain

開発環境はArduino IDE

Getting Startedに沿って実施しました。

開発環境は、Arduino IDE + Espressif ESP32という、一般的な構成。そして、M5Stack用ライブラリを追加、利用する形です。

開発の仕方については、ドキュメントがほとんど見当たりませんでした。ただ、サンプルスケッチが多数用意されているので、動かしてみてコード読みなさいという感じなのかもしれません。

スケッチのコンパイル、書き込み

サンプルのMPU9250BasicAHRSをコンパイル、書き込みしてみました。

コンパイルは3分ほど。結構、遅いですね。ESP32はこれくらいかかるのが一般的なのだろうか。まぁ、問題はありません。ちゃんとコンパイルできました。

書き込みは... Timed outエラーが発生して書き込みできず。何度試してもダメ。悲しい。

esptool.py v2.1
Connecting........_____....._____....._____....._____....._____....._____....._____....._____....._____....._____

A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header

f:id:matsujirushix:20180107151229p:plain

Tips - コンデンサを繋ぐ

M5Stack Communityに同様の事例と対策が載っていたので、手元にあった4.7uFをRSTとGNDに接続してみたところ、きちんと書き込みできました。

f:id:matsujirushix:20180107151724p:plain

f:id:matsujirushix:20180107151812p:plain

コンデンサを内蔵

せっかく恰好いいケースなのにコンデンサがはみ出ているのは悲しいので、分解して基板上に4.7uFのチップコンデンサを実装しました。

f:id:matsujirushix:20180107152040p:plain

f:id:matsujirushix:20180107152308p:plain