Raspberry PiでのRaspberry Pi PicoのMicroPython開発環境はどうなの?(2021.06)

先日のエントリではRaspberry Pi Pico(以下Pico)でLチカの次の段階ということでUSBデバイス(キーボード)を作ってみました。そのときの開発環境はWindowsPCにVisual Studio Codeをインストールして、USBストレージとして見えるPico(MicroPython環境設定済み)のファイルを編集するというようなものでした。それでも割と問題ないのですが、折角Picoを使っているので、開発環境すべてをRaspberry Pi印でそろえるっていうのはどうだろうかと考え、今回のこのようなものを書いてみました。

Raspberry PiPicoがあれば格安で開発できるんじゃね?という安易な考え方ではありますが、子どもたち向けにやるにはかなり価格的なハードルが下がるのかなという観点でもあります。

では、現時点(2021年6月)での開発環境を見てみようと思います。

過去エントリー参考

uepon.hatenadiary.com

開発環境は?

開発環境として使えそうなものは以下のようなものがあるようです。

X環境上でIDEっぽいビジュアルのものを調べた形です。テキストエディタであればUSBストレージ上のファイルを修正するだけなので、基本なんでも行けるはずなんですが、それを言ってしまうとメモ帳でもいいじゃんとなってしまうので禁句ということで

Mu Editor

まずは対応しているといわれているMu Editorになります。Raspberry Pi OSによってはインストールされていない可能性もあるかと思いますので、インストールを行ってみます。インストールされている場合にはX環境のメニューのProgrammingのカテゴリーに表示されるのですが、私の環境ではインストールされていませんでした。(自分が使用しているのはRaspberry Pi OS with desktopなので、Raspberry Pi OS with desktop and recommended softwareを使えばインストール済みかもしれません)

f:id:ueponx:20210614231432p:plain

ではインストールを行ってみたいと思います。インストールについては既にエントリーを書いているのでそちらをご覧ください。

Mu Editorのインストール

uepon.hatenadiary.com

f:id:ueponx:20210614231534p:plain

f:id:ueponx:20210614231439p:plain

インストールが終わるとメニューのProgrammingカテゴリーに表示されるようになります。ちなみにaptコマンドでインストールを行ってもメニューに追加されるようです。

f:id:ueponx:20210614231529p:plain

可能であれば起動前にPicoをUSB接続するようにしましょう。ではメニューから起動してみます。起動するとスプラッシュスクリーンが表示されて

f:id:ueponx:20210614231512p:plain

接続環境設定を行うダイアログが表示されます。初期状態ではRaspberry Piにインストールされているpython環境を使用するようになっていますが、PicoPython環境での開発を行うにはこの中から【Adafruit CircuitPython】を選択します。ここで設定していなくてもメニューバーに【Mode】ボタンがあるのでいつでも変更は可能です。ここで接続をmicro:bitに変更することも可能です。

f:id:ueponx:20210614231458p:plain

選択を行ったら【OK】ボタンをクリックします。環境はどこで確認するかというと、Mu Editorの右下にAdafruitという表示が行われていれば大丈夫です。

f:id:ueponx:20210614231507p:plain

あとはPythonのコードを書いていくだけです。IDE環境でもあるので、記載しながらヘルプ機能が表示されるのはかなり助かりますね。

f:id:ueponx:20210614231517p:plain

あとは、編集しているファイルをcode.pyなどにするとファイルの保存を行う度にPico上で実行が行われていきます。また、メニュー上の【Serial】ボタンをクリックすることで、REPL環境のCircuitPythonも動作します。

f:id:ueponx:20210614231539p:plain

f:id:ueponx:20210614231524p:plain

他にも【plot】ボタンを押すとデータのグラフ化も行ったりできるようです。試していませんが、Arduinoと同様に便利そうに思います。

Mu Editorを使ってみての感想

入力時のヘルプ機能やREPLへの接続ができるのは割といい感じですね。ただ、この機能だけというのであればわざわざ常用しているテキストエディタでもいいのではというのは否めないかなと思います。初心者にはとっつきやすいので、これで実験をしてから本格的な開発環境へ行くのがおすすめでしょうか。

Thonny Python IDE

こちらはEditorというよりもIDE色が強いものになります。こちらはRaspberry Pi OSに既にインストールされているので、より標準的な位置づけの開発環境になるのでしょうか?

X環境のメニューからProgramminカテゴリーのThonny Python IDE選択して起動を行います。

f:id:ueponx:20210614231552p:plain

起動するとわりとMu Editorと似たような雰囲気の画面になります。初期状態ではこちらもRaspberry Pi OSにインストールされたPython(Version 3.7.3)へ接続されているのでこれをCircuitPythonへ接続変更します。

f:id:ueponx:20210614231558p:plain

ウインドウの右下端のPython 3.7.3の箇所をクリックすると変更がでてくるので、CircuitPython(Generic)を選択します。

f:id:ueponx:20210614231602p:plain

f:id:ueponx:20210614231606p:plain

すると、PicoのREPL環境へ接続してくれます。

f:id:ueponx:20210614231610p:plain

これでOKです。ファイルのロードをしようとするとPico上のファイルなのかRaspberry Pi上のファイルなのか尋ねてくれるようです。割と混乱することもあるのでこういう手順を踏んでくれるのはいいなと思います。

f:id:ueponx:20210614231618p:plain

あとはファイルを実行していくことになります。

Mu Editorに比較していいなと思ったのはメニューバーに【Run】ボタンがあることでしょうか。ボタンをクリックするとREPL環境のウインドウに実行結果が表示されるので、地味にうれしいかも。

f:id:ueponx:20210614231632p:plain

Thonny Python IDEを使ってみて

Mu Editorとあまり変わらないかなという印象ですね。メニューバーには【Debug】ボタンはあるのですが、CircuitPythonでは有効化されていません。Raspberry Pi OSPython環境では使用可能です。つまりまだ発展途上ということでしょうか。あとMu EditorにPlot機能は見当たらない感じです。

今後の機能の拡充に期待したいです。個人的にはデフォルトで使用できることを考えるならば、Thonny Python IDEでいいのではと思いました。

Visual Studio Code

これが本命かもと思って使っています。まあ、PCに接続すればいいんじゃね?というご意見は尤もですが。

インストールは現在は正式対応をされたこともあり、かなり簡単になっています。メニューからRecommended Softwareにいって選択するだけ、もう手作業いらないんですね…

f:id:ueponx:20210614231447p:plain

【Apply】ボタンをクリックするとインストールされて、X環境のメニューにも登録してくれます。正式対応から結構短時間でここまでくるのすごいです。

f:id:ueponx:20210614231452p:plain

基本的にはVisual Studio Codeなので一般的なPython環境に関しては問題ありません。

f:id:ueponx:20210614231635p:plain

あとはCircuitPython(MicroPython)に対応した拡張機能をインストールすることになります。

f:id:ueponx:20210614231638p:plain

今回はいろいろネット上で記載の多かったPico-Goをつかってみようかなと思います。

f:id:ueponx:20210614231642p:plain

検索して【Install】ボタンをクリックすればインストール作業は終わります。

f:id:ueponx:20210614231650p:plain

インストール後にマウスで右クリックするとメニューが開くのでその中から【Pico-Go > Connect】を選べば接続になるのですが…

f:id:ueponx:20210614231653p:plain

選択してもなにも起きません?あれ? きました、いつものアレです。

もしかしたら、バージョンの問題と思ったので、古いものがインストールされたからなのかなと思いバージョンを確認してみます。

f:id:ueponx:20210614231707p:plain

わりと新しいバージョンがインストールされているようです。なぜ? ターミナルを開いても、Raspberry Pi側のコンソールが開くようです。うまく動作していないようですね。

f:id:ueponx:20210614231710p:plain

では、手動で同じようにインストールするとどうなるかも調べてみました。

参考 uepon.hatenadiary.com

手動でインストールしてもメニューには登録してくれるのか、すげ。 アイコンの色が緑っぽいところが違うみたいです。Insiderとも表記されています。

f:id:ueponx:20210614231719p:plain

同様に拡張機能をインストールしてみます。

f:id:ueponx:20210614231725p:plain

f:id:ueponx:20210614231734p:plain

念のため、バージョンを確認してみますが1.58になっているので、前述のバージョンとほぼ同じ模様。

f:id:ueponx:20210614231737p:plain

拡張のドキュメントをよくよく読んでみると…対応OSの部分に

の表記が。このLinuxってなかには入ってないの?ということでドキュメントよく読め案件でした😞

f:id:ueponx:20210614231741p:plain

ただ、普通にファイルの編集はできますのでPicoのファイルを読み込んでPythonを実行させるだけなら拡張なしでも普通につかえますよ。

f:id:ueponx:20210614231745p:plain

Visual Studio Codeをつかってみて

拡張機能がうまく使えるのであれば100点満点なんですが…他のものと比較したとしても、全然いい感じです。早く拡張機能使えないかなあ。

おわりに

現時点(2021年6月)でのPicoの開発をRaspberry Piでやったら何がいいかなという比較をやってみました。

個人的には、現時点ではまだどれもそんなに秀でているとかいうところではなく、Editorとしては使えますという程度でしょうか。 もう少し状況が変わるとRaspberry Pi印で統一した環境での開発も現実的になるでしょうか。期待を込めて今後も見ていけるといいなと思いました。

結論:PCに接続して開発したほうが今は便利。

/* -----codeの行番号----- */