MicroPython的午睡(36) ThonnyでATOM Liteにインストール

Joseph Halfmoon

ラズパイPicoのMicroPythonを使うにあたって頼り切ってきたものにThonny IDEがあります。ふれこみでは「初心者向けのPythonのIDE」であると。しかしこのツール、ラズパイPicoに限らず、マイコン上でMicroPythonを使うときの友というべきものじゃないかと思います。本日、これを使ってM5 ATOM LiteをMicroPython化、まさに一撃。

※「MicroPython的午睡」投稿順 Indexはこちら

まずは実際にM5Stack社のとても小さなWiFiデバイス ATOM LiteをThonny IDEを使ってMicroPython化するステップからご覧いただきましょう。今回はPC上のThonny使っていますが、他OSでも基本は同じじゃないかと思います。

Thonnyを立ち上げたら「ツール」メニューから「Option」を選択し、「インタプリタ」タブを開きます。インタプリタを選択するためのプルダウンメニューを引き出せばこんな感じです。

ThonnyInterpreterThonnyは、汎用のPythonIDEであるので、当然ローカル環境(PC)で走っているPythonのスクリプト開発にも使えるのです。「普通のPython」のIDEとしては「初心者向け」かも。しかし注目はMicroPythonのサポートです。上記のように大変充実しています。上記では、直前にRaspberry Pi PicoのMicroPythonのスクリプトを書くためにThonnyを使っていたのでPicoが選択されています。これをESP32に切り替えてみます。ターゲットのデバイスであるM5 ATOM Lite(ESP32コア搭載)は既にPCのUSBに接続済。Thonnyはそれらしい仮想シリアルポートを直ぐに見つけるので手動での選択は不要でした。

ThonnyPort

既にデバイスにMicroPythonをインストール済で、ラズパイPicoからM5 ATOM Liteに切り替えるのであれば、ここでOK押せば完了です。しかし、今回はまだMicroPython化されていないATOM LiteをUSBに接続しています。そこで上記のウインドウの右下の方にある Install or update firmwareというリンクを押します。

ThonnyInstall

するとESP32用のインストーラが開くので、Browseボタンからインストールするバイナリを指定してあげます。流石に勝手にダウンロードしてくれることまではしないです(MicroPythonのバイナリ配布元のサイトを見るとわかりますが、種類、バージョンが異なる多数のバイナリが並んでいるので、自分の要望に合ったものを選択してダウンロードしておかないとなりません。)

後は、インストール・ボタン(上の画面キャプチャでは「インストー」の末尾の「ル」が半分ですが)を押せば、フラッシュがクリアされ、バイナリが書き込まれ、即座に使用可能な状態となります。こんな感じ。

ThonnyESP32onM5ATOMLitet

 

いやあ、とっても楽です。だいたいMicroPythonのインストール(アップデート)手順は簡単ではあるのです。しかし、ターゲットのデバイス毎にお作法も違い、たまにしかやらない操作ということもあって、毎度、やり方を調べてました。覚えられない自分。しかし、Thonnyのこの機能を使えば、とっても楽。

M5Stack系のデバイスであると、個々のデバイス固有の実装に合わせたMicroPythonもあるのです。しかし、このごろラズパイPicoでMicroPythonしていることも多いので、なるべく「標準的なMicroPython」で書くのが良いかと思い始めました。使いまわしができるし。ハマり込んだ実装のものは特定のシーンでは良いけれど、いろいろ制限あったりして「水平展開」(まだ古語にはなっていないか?そこはかと懐かしい匂いのするお言葉です)しずらいんだ。

Thonny1つで、いくつものデバイスの開発が楽になるのはいいね。肝心のThonnyのオフィシャルサイトへのリンクは以下です。

Thonny Python IDE for beginners

「Thonnyについて」からも読めるThonnyの出自はエストニアだそうな。

Thonny手元で使っている版は左のバージョンでしたが、上記からはもっと新しいバージョンが使えます。

なお、私のThonnyへの頼り方は若干徹底しておりません。

BBC micro:bitでMicroPythonするときは Mu Editor

それ以外のデバイスでMicroPythonするときは、Thonny

デバイス側のプログラムと連動するPython3スクリプトを書くときはThonnyとMu併用

純然たるPC/Linux上のPython3スクリプトを書くときは VS Code

という不徹底さであります。

まあ、いろいろ使った方が、良し悪しが分かるようになるかと。実際は惰性だけれども。でもま、MicroPythonの運用のためにはThonnyが一押しとなっております。Pythonには他にもいろいろあるんだけれども。。。人気者は大変だね。

MicroPython的午睡(35) ラズパイPico、MCP23017でIO端子数拡張 へ戻る

MicroPython的午睡(37) ラズパイPicoとDMA3重塔でZ80の制御を奪う へ進む