M5Stack(UI FLOW続き)

M5UI.Flow(バージョン0.8.0)の設定した後、続き。
しばらく放置かと思ってたが、突然「あ、なんか解るかも」と降って来たので、やったことをメモる。

前回の続きとはいえ、最初からでなく再度起動して接続するのはどうしたらいいのかでちょっと躓いた。
(毎回コケてばかり)


リブートして最初の起動画面で、SETUPではなく左端のUPLOADを選択すればいいのはなんとなくわかった。
wifiにアクセス成功した後、画面にはAPIKEY(一応隠す)とQRコードが表示される。

PCのWebブラウザから、
 http://flow.m5stack.com
に接続すると、APIKEYを入力する画面になるので入力。たったこれだけだった。

後からでも右上の設定アイコンで画面が出てくる。

問題はこの先。簡単に動作確認する。

中央にあるメニュー(?)の中から「emoji」を選択。出てくるグリッドに適当にチェックを入れてみた。

これを、もともと画面上にあった「Setup」とくっつける。

完成したら、M5Stackにアップロード。ダウンロードみたいなアイコンだけど、アップロード。

M5Stackと接続してるかどうかわからなかったんだけど、クリック後にM5Stackの画面がこうなってたのでデータ転送中だとわかった。

PCの画面上にも、上部にデータ転送中とか成功したとか、英文が出てる。これも最初気付いてなかった。
データ転送後、自動でリブートされて画面にさっきのドット絵(?)が出てくる。どうやら成功。

背景がなぜかファンシー。

 

実は最初このUIが自分にはさっぱりわからなかったんだけど、別件で(絶賛積みボード中の)micro:bitを使ってみようかなーと調べたりいじっていたら、インターフェースが似てたんで理解できた。
というより、micro:bitのLEDで図形を作っていて「M5Stackのアレに似てる…」とようやく気付いた。
なんだ、ものすごくわかりやすいじゃん!と、目が覚めた感じです。
気付けばなんて事ないんだが、気付かないといつまで経っても解らない。(頭固くなってるもんだから)

 

ちなみに、起動画面でAPP.LISTを選択すると、サンプルプログラムが出てくる。

M5GOとか、他のシリーズを手に入れたら使ってみたい。

Sponsered Link

M5Stack(UI FLOW)

Windows10でArduino IDEでM5Stackを使えるようになったついでに、M5UI Flowもセッティングしたときのメモ書き。
正直、ちょっと戸惑った。

やり方は、基本的には下記チュートリアルで詳しく説明されている。
 http://forum.m5stack.com/topic/313/lesson-14-ui-flow-hello-m5-ui-flow
ただ、すごい勢いでバージョンアップしているので、多少M5Stackの表示が変わってた。

 

今回はWindows10上で使用。

最初にM5Stack本体のファームウェアを書き換える必要がある。
M5Stack本家(http://m5stack.com/)から、ファームウェアを書き込むためのM5Burner-for-windowsというツールをダウンロード。
M5Burner.exeを起動。

M5StackをPCに接続し、チュートリアルのStep 4を参照して、ポートとスピード、ファームウェアを選択。
このファームウェアは自分が入れたときは0.8になっていた。
これでBurnをクリックし、しばらく待つ。ときどきプチプチとノイズがするかもだけど、気にしない。
ちなみに以前書き込み不可能になったM5Stackでやってみたら、やっぱりエラーで終わった。(どうでもいい)

 

書き込みが終わったら、USBを引っこ抜いてM5Stackをリブート。

この画面がチュートリアルとちょっと違うけど、とにかくSETUPでいいだろうと、右端のボタンを押す。

放置すると数秒で画面が消えてしまうので、急いで押す。

次の画面では「Link Server: Flow.m5stack.com」を選択。

PCからWifiでアクセスするためのアドレスが出てくるので、PCのWifi設定から選択して接続。

常にM5Stack-(数字)と言うアドレスになるのかな?

接続するとすると今後は192.168.4.1にアクセスする必要がある。

WEBブラウザを起動して、192.168.4.1に接続。
チュートリアルのStep 9の通りの画面が出てくるので、今度は普段使ってるwifiのアドレスを選択してパスワードを入れて接続。
Step 10の画面になったら成功です。
自分は1度目はこれにならず、最初からやり直しました。

 

というわけで、バージョンが上がって画面表示が変わったけど、基本的な流れは変わってません。
この後、ブラウザからhttp://flow.m5stack.comに接続し、設定からM5Stackに表示されているAPIKEYを入力してプログラムをやり取りできるようになるんだけど…まだ使い方が良く解らない。

まだまだファームウェアもバージョンも上がるだろうし、のんびり調べて使っていくことにする。

Sponsered Link

Arduino IDEにM5Stack開発環境(Windows10版)

M5Stackの開発環境は既にあるんだけど、Windowsマシンを手に入れたことだし、改めてセッティングした。

というか、自分がMacのArduino IDEにM5Stackを追加したのはかなり以前なので、もうすっかりやり方を忘れてしまっていた。

なので最新(?)の方法で入れてみた。

Gitツールの使い方も含め、やり方メモ。

 

参考にしたのは公式のページ。

 http://www.m5stack.com/assets/docs/

久しぶりにここ見るなあ。

Arduino IDEは既にインストールされていること前提。

せっかくWindowsなので、アプリのストアからダウンロードして入れておいた。

次にUSBドライバのインストール。

Windows10のだけどv10.1.1は入れちゃいけないみたいなことが書いてあるので、v6.7.6をインストールした。

まあここまでは問題ない。

 

次に入れるのがESP32用の設定なんだけど、最近はESP32入れておけばM5Stackの設定も一緒に入ってるんだな。

 https://github.com/espressif/arduino-esp32/blob/master/docs/arduino-ide/windows.md#steps-to-install-arduino-esp32-support-on-windows

今回は上記のページ通りにやってみた。なので下記は内容が同じ。

 

最初にGitというツールをインストール。Githubのファイルを管理するツールらしい。(初めて使った)

下記クリックで速攻でWindows版がダウンロードされるので注意。

 https://git-scm.com/download/win

今回はGit-2.19.1-64.bitというインストーラがダウンロードできたので、これをダブルクリックして普通にインストール。

すると3種類のツールが増えてるはずなので、このうち「Git GUI」を起動。

ウィンドウ内のメニューのうち、「Clone Existing Repository」をクリック。

それぞれの欄にクローン元のURLとクローン先のフォルダ名を記載。

 Source Location: https://github.com/espressif/arduino-esp32.git

 Target Directory: (自分のArduinoがインストールされてるところ)/hardware/espressif/esp32

自分の場合、ディレクトリは「C:/Users/pc/Documents/Arduino/hardware/espressif/esp32」になった。

このArduinoの下の、/hardware/espressif/esp32の部分はまだできてないので追加で記載する。

準備ができたら「Clone」をクリックしてコピー開始。

これが自分の時は結構時間がかかった。でも長かったのは最初のアクセスだけで、ファイルのダウンロードはすぐ終わった。

 

これでコピーが終わったらGit GUIを終了し、今度はGit Bashを起動。

コマンドプロンプトの画面になると思うので、場所をさっき作った(自分のArduinoがインストールされてるところ)/hardware/espressif/esp32まで移動させる。

自分の場合、

 $ cd Documents/Arduino/hardware/espressif/esp32

と、やった…と思う。

その後

 $ git submodule update --init --recursive

と入力。

最後に、エクスプローラーでesp32のフォルダまで降りて、中にある「get.exe」を起動。

これが終わると、Arduino IDEを起動してハードウェアを選択するところにM5Stackが増えてる。

現在はESP32のボードの一種として扱われてるということかな。

 

Gitのツールを使うとアップデートなどが楽になるみたいなので、実は便利…らしい。

でも手間がかかる感じがして自分はちょっと慣れなかった。

しかし関係ない話だけど、Teclast F5でスクリーンショットってどうやって撮るんだろう…。

(結局、スマホで画面撮影してた)

Sponsered Link

M5STACK(その11)

M5StackのUSBホストシールドがあったら何がしたかったって、USB付きの電子楽器と繋げること。

USB_Host_ShieldライブラリのサンプルスケッチのUSBH_MIDI_dump.inoを使うと、楽器からどういった信号が送られてるかシリアルモニタで確認できる。
これをM5Stackにして、手元で見ることができるようにしたかった。

 

しかしいざUSBH_MIDI_dump.inoをArduino IDEでコンパイルしてみたら、なんか変なことやっちゃたみたいでエラーが出まくった。
冷静に確認してみたら、自分がいろいろ間違えてただけだった。

ライブラリは
 https://github.com/felis/USB_Host_Shield_2.0
と、
 https://github.com/YuuichiAkagawa/USBH_MIDI
の2つを別々に入れちゃったけど、USBH_MIDIはUSB_Host_Shield_2.0に含まれてるので必要なかった。
それにUSB_Host_Shield_2.0はライブラリのフォルダ名称を「USB_Host_Shield_20」にする必要があった。
もうめんどくさいので、いったんどちらも削除して、「ライブラリの管理」からUSB_Host_Shield_2.0だけインストールし直した。

その後、もう一度USBH_MIDI_dump.inoをコンパイルしたら無事に通った。
使えそうなので、これをM5Stack用にして、いつものようにLCDにシリアルモニタの内容が出るようにちょっと修正。

 

Vアコーディオンのベース音がどんな信号になってるか、視覚でわかるようにしてみた。

で、VアコーディオンとUSB接続。キーを押したら数字が出る。

でも想像したよりなんかデータが多い気がするぞ。これは解析してみないとわからない。

とりあえずデータを取ることはできたので、これをカスタムしてなんかできそうな感じ。

 

しかしVアコーディオンのUSB端子をここに付けたやつにはその理由を問い詰めてやりたい。

アコーディオンを弾くときに下に来るところに付いてるもんだから、邪魔でしかたない。

まあ自分の使い方がヘンなだけで、そもそも入出力の端子がここに集まってるんでしかたないんですけどね。

Sponsered Link

M5STACK(書き込みできない問題)

先日発生したM5Stackの書き込みエラー、再度発生して未だに直せない。

途中経過というか、調べてみたことをメモ。

 

Arduino IDEでのエラーは下記。

(簡単なスケッチだとエラーが出ないこともある。動かないけど)

 

 Writing at 0x00001000... (100 %)
 Wrote 12304 bytes (8126 compressed) at 0x00001000 in 0.1 seconds (effective 912.4 kbit/s)...
 File  md5: c9eef0ea20f73dd01d9d11b993a7f5b0
 Flash md5: a5d27405f560aff71439fc146d13d59f
 MD5 of 0xFF is 2036f3103f5c9c65c80411e064d4c928

 A fatal error occurred: MD5 of file does not match data in flash!
 A fatal error occurred: MD5 of file does not match data in flash!

 

対策として、何度もリトライすることとアップロードのスピードを変えること。

それで一度は治ったんだけど、また同じ症状が出まくって現在に至る。

 

実はダメ元で、ファームウェアも書き換えてみようとした。

(それでesptoolを最新にしたくて、Pythonのバージョンアップまで飛び火した)

 https://github.com/m5stack/M5Cloud/tree/master/firmwares/OFF-LINE

からbinファイルを落としてきて、firmware.binと名称を変えて、

 $ esptool.py --chip esp32 --port (接続したポート名) erase_flash

 $ esptool.py --chip esp32 --port (接続したポート名) write_flash --flash_mode dio -z 0x1000 firmware.bin

としたところ、同じようにエラーが出た。文面も同じ。

どうしてもMD5チェックで引っかかるらしい。

 

原因は、どうやら書き込み時にGPIOピンに何か繋げてあるとまずい…ことがあるらしい。

これは心当たりありまくり。

Lチカしようと、本体に直接LEDと抵抗を挿していた。

最初は問題なかったんだけど、だんだんおかしくなった感じ。

書き込み時にはよけいなものは外しておいたほうがいいらしい。

(今まで結構大丈夫だったんだけどなあ)

でも一応、RSTとGNDにコンデンサを入れて書き込みしてみるヤツもやるだけやってみた。ダメだったけど。

 http://forum.m5stack.com/topic/55/simple-fix-when-upload-fails

 

現在LCDにも電源が行ってない感じでバックライトも付かず、ますますマズイ。

ただ、中身のESP32は生きているようで、接続したままリセットするとArduino IDEのシリアルモニタには

 

 rst:0x1 (POWERON_RESET),boot:0x17 (SPI_FAST_FLASH_BOOT)
 configsip: 0, SPIWP:0xee
 clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
 mode:DIO, clock div:1
 load:0x3fff0018,len:4
 load:0x3fff001c,len:956
 load:0x40078000,len:0
 load:0x40078000,len:13076
 entry 0x40078ad0
 user code done

 

と、反応はある。

なので放置しちゃうのはもったいなくて、なんとかしようといじり倒してます。

 

他にもM5Stackは持ってるので遊ぶのは問題ないんだけど、中途半端に治らないのが気に入らない。

それとやっぱり一番シンプルなM5Stack Basicは手元に持っておきたい。

手持ちのを修理しつつ、いずれまた買おうかな。

Sponsered Link