M5stack/HelloWorld On Mac

M5stack/HelloWorld On Mac

同梱されていた説明書に HelloWorld までの手順があったのでそれに従ってやってみる。

結果としては、2018年09月現在、OSX El Capitan 環境では全然手順通り進まないということがわかった。

筆者のスキルとしては、Web 関係のコンピュータプログラマではあるがマイコン系は普通に疎くほぼ Arduino 界を何も知らないレベル。 そういう人間の試行錯誤記録。

Install Arduino IDE

IDE なのでつまり所謂総合開発環境、Java で言うなら Eclipse を入れるような作業である。

Arduino - Software このへんから Mac版がダウンロードできるのでダウンロードする。

ダウンロードしたモノを解凍する。Arduino.app できるので Applications フォルダに突っ込む。 それだけ。

Install M5Stack

M5stack を使うためのライブラリというか開発の構成を設定する作業のようだ

Arduino.app を起動する。

上部メニューの Arduino → Preference を選ぶ。 ウィンドウが開く。

Additional Board Manager の URL の欄にこの↓URLを入れる

http://www.M5Stack.com/download/package_m5stack_index.json

この URLに実際アクセスしてみると確かに何かの JSON が戻ってくる。

次に、上部メニューの Tool → Board → Board Manager とやると先程のの URL に基づいて M5Stack 用の何かがインストールできるようなのだが・・・

このようなメッセージが出てきてしまい思った通りに進まない。

http://www.M5Stack.com/download/package_m5stack_index.json file signature verification failed. File ignored.

Arduino IDE 1.8.5 以降の問題らしく別のやり方を模索する。

Install M5Stack 別のやり方

こちらに従う → M5Stack Documentation

USB ドライバのインストール

M5Stack をモノとして Mac と接続可能にするドライバをインストールする。

ここから Mac 版の USB ドライバを取ってくる → USB to UART Bridge VCP Drivers | Silicon Labs

解凍するとイメージが出てくるのでマウントする。インストーラーが出てくるのでそれでポンポンポン・・・

なのだがこのインストールがうまくいかない場合がある。 VMware、Skype・・・ USB 機器にアクセスしそうなアプリは全部停止してOS自体も再起動し、まっさらな状態でインストールしたほうがよい。

インストール後にさらにOSの再起動をダメ押しでやっておいたほうがよい。自分は試行錯誤の間に2回ほどこれが失敗した。

調べていくと Sierra のような新しい MacOS ではシステム環境設定からこの実行を許可しないとうまく動作しないというハマりポイントもあるようだ。

ライブラリのインストール?

次に arduino-esp32/mac.md at master · espressif/arduino-esp32 · GitHub に従う

このコマンドのようなことをやる。

$ mkdir -p ~/Documents/Arduino/hardware/espressif
$ cd ~/Documents/Arduino/hardware/espressif
$ git clone https://github.com/espressif/arduino-esp32.git esp32
$ cd esp32
$ git submodule update --init --recursive
$ cd tools
$ python get.py 

これをやったのだが、最後の最後の python の実行で下記のようなエラーがでて失敗。

ImportError: cannot import name _remove_dead_weakref

原因は MacOS 上の Python 環境がめちゃくちゃになっていることに起因しているようだ。詳細不明。 特に現在は Python はどうでもよいので除去する。

$ brew remove python@2 --ignore-dependencies

再び実行。少し先に進むが下記のようなエラーが出て失敗。

[Errno socket error] [SSL: TLSV1_ALERT_PROTOCOL_VERSION]

何かのダウンロードをしたいのだが、プロトコルが古いと言われているようだ。 これは古い MacOS と Python の問題らしく・・・どうにもならない。 古い Xcode の問題でもあるようだが、よくわからない。

結局はダウンロードするために↑の仕組みが必要で、ダウンロードできればよいので、 自力でダウンロードして対処する。

必要なのは

mkspiffs-0.2.3-arduino-esp32-osx.tar.gz

らしいのでこれを手動でダウンロードする。

ブラウザを使って普通にダウンロード Releases · igrr/mkspiffs · GitHub ←おそらくこのへんである。

ダウンロードしたら

~/Documents/Arduino/hardware/espressif/esp32/tools/dist

に配置。

再び実行する。

$ python get.py

全部成功して完了。

そして Arduino IDE を再起動して Tool → Board と行くと ESP32系統の選択肢が増えていることがわかる。 そこで M5Stack-core-ESP32 を選ぶ。

Download Library

Arduino IDE の上部メニュー sketch → include Library → Manage Libraries とするといくつか候補が出てくるので m5stack をインストールする。

接続

付属の USB-C のケーブルで Mac と M5stack を接続する。

M5stackの画面にデモのような画面描画があったの後にチェックが走ってキーボードのテスト受付状態になって止まる。 これでよい。

HelloWorld 実行

Arduino IDE の File → Examples の中に M5stack がある(Download Library をしたら追加されるはず)ので Basic → helloworld を選ぶ。 サンプルコードが開く

次に Tool → Port と進むと M5Stack を接続しているなら、SLAB_USBtoUART という選択肢が存在しているはずなのでそれを選ぶ。 これが出てこないということは ↑の 「Mac 版の USB ドライバ」のインストールに失敗している。

その状態で Sketch → Upload とやるとプログラムが M5stack に送り込まれて実行され、M5stack 側の画面に

Hello World

と表示される。

終了。長かった。

arduino/m5stack/helloworld_on_mac.txt · 最終更新: 2020-02-12 15:40 by ore