Mac環境でm5stackを動かすための準備メモです(主に自分用)
環境
- MacBook Pro (13-inch, 2017, Two Thunderbolt 3 ports) --> 結局MacBookでは書き込みできておらず代わりにlinux環境(ubuntu)を使った
- M5Stack Basic V2.6
- sdカードを用意する KIOXIA(キオクシア) 旧東芝メモリ microSDHCカード 16GB UHS-I Class10
(※m5stackは16GB以下じゃないと認識しないとの噂のため)
準備
- 前述の環境を用意する
- SDカードをこちらを参考にFAT32でフォーマット
- arduinoIDEをインストール
- m5stack Libraryをインストール(tool-->install-->Manage-->"Library for M5Stack"記載のものを選択)
-
device:M5Stack-core-ESP32
、port:(m5stackをusb接続した際に/dev/tty***に表示されるやつ、ここは環境毎に異なる様子)
を選択 - arduinoIDEのBoardMansgerにESP32を未追加であれば、こちらを参考に追加しておく。
プログラムの書き込み&起動
こちらを参考にプログラムを書き込むとディスプレイに色が表示されるところまでとりあえず進める。
先人の知恵により短時間でできると思いきや、私の環境ではエラー出て割と悩んだので以下エラー内容と解決策を残しておきます。
error対策
書き込み時にエラー
A fatal error occurred: Failed to write to target RAM (result was 01070000)
or
$ sudo dmesg
...
CH34xVCPDataDriver stop.
CH34xVCPControlDriver stop.
CH34xVCPDeviceDriver stop.
CH34xVCPControlDriver start.
devfs: cu.wchusbserial54D8028940ZF\M^@\M^?\M^?\M^?1: name slot allocation failed (Errno=63)
devfs: tty.wchusbserial54D8028940ZF\M^@\M^?\M^?\M^?1: name slot allocation failed (Errno=63)
CH34xVCPDataDriver start - successful and IOModemSerialStreamSync created.
CH34xVCPDeviceDriver start.
com.apple.p2p: IO80211AWDLPeerManager::setAwdlOperatingMode Setting the AWDL operation mode from AUTO to SUSPENDED
com.apple.p2p: AWDL is suspended
com.apple.p2p: IO80211AWDLPeerManager::setAwdlOperatingMode Setting the AWDL operation mode from SUSPENDED to AUTO
com.apple.p2p: AWDL is off
おそらくMac側にドライバインストールが必要、以下を参考にして解決できる。
https://qiita.com/shiura/items/e987004c23b1dbb7e9d7
できなかった!!!
m5stack-v2-6からは以下のドライバをインストール必要になったとのことでした
以下の方のドライバをインストールして解決
先日もお伝えしましたが、このたびM5Stack Coreシリーズのv2.6が発売となりましたので、そのご紹介です。
シリアル変換ICの変更
CP2104→CH9102Fに変更となりました。転送速度などは変わりませんが、接続するパソコンに新しくドライバを入れる必要があります。
CH9102Fのドライバの入れ方
https://docs.m5stack.com/en/download
CH9102_VCP_SER_MacOS v1.7
エラー2
書き込み時にエラー
A fatal error occurred: Timed out waiting for packet header
Arduino IDEのUpload Speedをゆっくり(921600-->460800)にして。。。も解決しない。困った。
(その後)Apple M1 Macで試してもダメでした。困った。
--> 結局Macでは諦めて、ubuntuで実行して回避(Macでは未解決問題です、助けてください。。)
Arduino IDEのUpload Speedを遅くするとうまくいきます(921600になっていたものを460800にする
エラ−3
IDEからのビルド実行時に以下のようなエラーが発生
Traceback (most recent call last):
File "/home/sugi/.arduino15/packages/esp32/tools/esptool_py/2.6.0/esptool.py", line 35, in <module>
import serial.tools.list_ports as list_ports
ImportError: No module named serial.tools.list_ports
exit status 1
ボードESP32 Dev Moduleに対するコンパイル時にエラーが発生しました。
pyserial、esptool installのあとIDE再起動して解決
sudo apt-get install python-pip
sudo pip install pyserial
sudo pip install esptool
エラー4
m5stackにプログラムを書き込んで起動するも、どうもSDカード内の画像が表示されない。
そもそもsdカード(64GB)が認識されてないような気がする、、
(※m5stackは16GB以下のsdカードじゃないと認識しないとの噂が、、)
-->(追記)16GB以下だと無事に認識されました!よかった。。
KIOXIA(キオクシア) 旧東芝メモリ microSDHCカード 16GB UHS-I Class10
-->(追記)ちなみに画像は、サイズが320*240、JPEGであればOKでした
最終的に完成したもの
名刺を兼ねて以下のようなものを表示できた
https://challenge-club.connpass.com/
https://github.com/seigot
参考