M5STICKのCとVの初期設定


M5STICKのVとCを購入。

2月某日、たまたま在庫があるのを見かけたので即ポチ。

ということで、到着。

小さい。小さいというのは知っていたし、見たこともあるのだが
実際に自分の家でみてみると「小さい」という感想がまず最初に出てくる。

初期動作確認

30日以内なら初期不良交換してくれるみたいなので、とりあえず動作確認

STICK V

参考サイト

https://www.switch-science.com/catalog/5700/
https://docs.m5stack.com/#/en/quick_start/m5stickv/m5stickv_quick_start
https://qiita.com/rhene/items/10ac4238c68e6fe40ba6

ファームウェアの更新

  • EasyLoaderをDL EasyLoader_M5StickV_1022_beta.exe

添付のUSBケーブルでPCと接続して、実行。


が、ポートを認識してくれない。。。
デバイスマネージャを確認してみても、認識してなさそうなので、ドライバーのアップデート。
Windowsごと再起動してちょいびっくり。

改めて実行。

ポートも認識されているので、Burn。ちゃんと動いている。
数分で完了。

シリアル通信で確認

Putty とかを使おうぜと書いてあるけど、TeraTermでOK
ポートを指定して接続。
ボーレートを115200にするのを忘れずに。

この状態でカメラを人に向けると認識した値が表示される。

CTRL+Cで入力待ちにできるので、以下を入れてみると

import lcd
lcd.init()
lcd.draw_string(100, 100, "hello world", lcd.RED, lcd.BLACK)

画面に「hello world」が表示される。
わかりやすい。

ただし、これを使うのは扱いにくいのでIDEを使用したほうがいいらしい。

MaixPy IDEを利用

以下からDLできるので、Windows用をDL
https://docs.m5stack.com/#/en/quick_start/m5stickv/m5stickv_quick_start?id=maixpy-ide

DLしたら実行してポチポチと。
特段悩むポイントは無し。

起動するとこんな感じ。

「ツール」メニューから「Select Board」を選び「M5StickV」を選択し、左下の緑色のリンクボタンっぽいヤツをクリック。
※TeraTermで接続したままだと、こっちで接続できないので消す。

接続できるとリンクボタンっぽいヤツがこんな感じになる

この状態で右下の>を押下すると表示されているコードを転送?実行?できる。
サンプルコードは以下。

import sensor, image, time, lcd

lcd.init(freq=15000000)
sensor.reset()                      # Reset and initialize the sensor. It will
                                    # run automatically, call sensor.run(0) to stop
sensor.set_pixformat(sensor.RGB565) # Set pixel format to RGB565 (or GRAYSCALE)
sensor.set_framesize(sensor.QVGA)   # Set frame size to QVGA (320x240)
sensor.skip_frames(time = 2000)     # Wait for settings take effect.
clock = time.clock()                # Create a clock object to track the FPS.

while(True):
    clock.tick()                    # Update the FPS clock.
    img = sensor.snapshot()         # Take a picture and return the image.
    lcd.display(img)                # Display on LCD
    print(clock.fps())              # Note: MaixPy's Cam runs about half as fast when connected
                                    # to the IDE. The FPS should increase once disconnected.

カメラ(イメージセンサ)で画像を取得して、それを画面(モニタ)に表示している
って感じかな。
ただ、これで実行してみると、モニタ上では逆さまで表示されるのが謎。

ということで公式のクイックスタート分について終了。
最後で画像が反転されちゃってたのがなんか変な感じがするけど、とりあえずは動きそうかな。
初期動作確認としてはOK・・・なのかな。

STICK C

せっかくなので今まで扱ったことのない「UIFlow」でやってみることにする

参考サイト

https://www.switch-science.com/catalog/5517/
https://docs.m5stack.com/#/ja/quick_start/m5stickc/m5stickc_quick_start

ファームウェアの更新

M5BurnerをDL
※クイックスタートで示しているリンク先は404だったので以下からDL。
とはいえこのリンクも変わるかもしれないのでその場合は探すしかない。。
https://m5stack.com/pages/download

クイックスタートではファームウェアに「UIFlow-vx.x.x-StickC」を選択しろと記載されているが、
そんなものはないやんけ!

と思ったら方法がちょっと違ってた。
最新っぽいUIFlow-v1.4.4をDLしたら、Seriesが表示され、そこでStickCが選択できるように。

ということでこれでBurn

WiFi セッティング

USB接続を外して、電源再起動。
画面にUIFlowと一瞬表示された後にWiFiのSSIDが表示されるので、これに接続
その状態で、192.168.4.1にアクセスすると端末のWiFi情報を設定できるので、接続したい情報を設定。
2.4G帯しか選択できない?

接続に成功したら画面表示が変わりAPIKEYが表示される
ここについては特段悩むことは無し。

UIFlowでアクセス

URL:flow.m5stack.com

APIKEYや言語、デバイスを設定して、サンプルコーディング。
※サンプルコーディングしてみるとわかるが、日本語表記が変な感じなので、英語の方がいいかもしれない。
「Loop」が「ずっと」とかになっているのでよくわからなかった。

とりあえずこれでこっちもクイックスタート分については終了。
USBモードにもできるみたいなので、その辺はおいおい。

まとめ

ちょいちょい悩むところはあったが、全体的にはかなり簡単だなという印象。
これでいろいろと遊べるのだから、大したものだ。