JH1LHVの雑記帳

和文電信好きなアマチュア無線家の雑記帳

スポンサーリンク

M5Stack でブロックプログラミング ~UIFlow ~

M5Stack の UIFlow でブロックプログラミングがやりたくなって環境整備したんですが、そのときハマったことを、情報共有しておきたいと思います。

f:id:JH1LHV:20200129202430j:plain

(UIFow はブラウザベースのブロック型ビジュアルプログラミング開発環境です。)

M5Stack の UIFlow は、こういうブロック(Blockly)を組み合わせてプログラムを作っていく開発スタイルで、プログラムの実態は MicroPython です。
画面上部の ”</>Python" ボタンで Python 直書きでも記述できるので、複雑なプログラムも書けるんじゃないかと思い、使ってみることにしました。

これまでは Lovyan Launcher というファームウェアを入れて使っていたので、UIFlow を使うためにはファームウェアの入れ直しが必要になります。

UIFlow のファームウェアは、公式サイトの "Introduction" に記載されているとおりに作業すれば書き込むことができます。

f:id:JH1LHV:20200129211931j:plain

日本語で読めるこの GitHub、UIFlow · UIFlow Use サイトがわかりやすです。

普通ならここに書かれたとおりに、"M5Burner" というツールを使って簡単に UIFlow のファームウェアは書き込めるはずなんですが・・・ここでハマりました!

<今日のブログで伝えたいのは、ここです!>
同じ M5Stack Basic でも、そのロットによって、UIFlow のファームウェアが書き込めるものと、書き込めないものがあるようなので、購入をご検討中の方は注意してください。

f:id:JH1LHV:20200129211905j:plain

どちらも、スイッチサイエンスから購入したものなんですが、購入時期の違いでパッケージの表記が違っていて、”CORE” と書かれた M5Stack では、ファームウェアは書き込めませんでした。

この ”CORE" なんですが、いつごろ購入したものかもう忘れてるんですが、最近のものは恐らく ”BASIC” バージョンじゃないかと思います。

ということで、UIFlow でプログラミングしたい方は、くれぐれもご注意ください。
できれば、”BASIC” と表記されていることを確認してから購入した方がいいかもしれません。


f:id:JH1LHV:20200129215226j:plain

”CORE” も "BASIC" も同じように書き込めるのですが、”CORE” では一瞬だけ画面がフラシュするだけで UIFlow は起動してくれませんでした。
(ただし、CORE でも "LovyanLauncher" だけは、正常に動作します。)

最初「絶対に書き込めるはずだ」と、なんやかんやとやって、 mac まで動員したんですが、ハマる一方で・・・ググってみても、「ロットの違いで書き込めない」なんて記述はどこにも見つからず、やっぱりなにか設定でもあるのかと・・・またハマり。

で、もう一個持ってた M5Stack。
こっちは普通に書き込めた "BASIC" バージョンなんですが。
他の実験で IO にピンをメチャメチャ挿して使ってたので・・・これらのピンは外したくなかった(ファームウェアも書き換えたくなかった)のですが、仕方なく全部はずして、M5Buner ツールの ”Erase” から ”Burn” で一発で書き込めて、しかもちゃんと起動するし。
ホント、ムダな時間を使っちゃいました。トホホ。。。 


■ ■ ■ 

 

しかし M5Stack ですが。
ユーザライクなアップデートが頻繁で、新たな商品も次ぎから次と出てくるし、日本語のドキュメントも充実していて、ホント目が離せないマイコンです。

今のところは、今回の UIFlow についての専門書なんてありませんが、公式の動画を含めたチュートリアルもとっても充実してるので、これだけで十分で、たとえ専門書が発刊されたとしても、わざわざ取り立てて買う必要はないと思います。

結局は、週一ペースで新たなアクションがあったりするので、UIFlow のメソッドも頻繁にアップデートされると思うし、機能アップに伴って公式のチュートリアルもちゃんと更新されるので、公式サイトの情報だけをウオッチしていれば事足りるんじゃないかと思います。

ということで、ハマった分だけ UIFlow。しっかり遊んで元を取ろうと思います。