【Debian 11】初心者向けRaspberry Pi Picoの開発環境構築
マイコンとWebアプリを連携した学習も始めようと、長らく使っていなかったRaspberry Pi Pico(以降Picoと略称)を取り出しました。
どうやって使うのか?Picoは何もしなくても直ぐに使えるのか?など何から始めれば良いのか分からなくなりました。初心に返って、その環境構築とThonnyを使ってLチカ行うまでの流れについてまとめておきます。
目次
パソコン環境
- OS: Q4OS 64-bit(Debian Linux 11)
- Thonny:v3.3.3以上(※defaultでPicoが使える)
Picoの初期化
公式サイトからuf2ファイルをダウンロードしてインストールします。2024年10月時点の最新版はv1.23の”RPI_PICO-20240602-v1.23.0.uf2”です。やり方も記載されています。
公式サイト
公式サイトより
- Pico用のファームウェアをダウンロードします。
- PicoのBoostボタンを押したままUSBケーブルを使ってパソコンに接続。PicoはUSBメモリとして認識されるので、PicoにファームウェアをDrag&Dropしてコピーします。
- コピーが完了すると自動でアンマウントして消えますが、これが正常な動作です。
Thonny( version3.3.3以上)のインストール
Ubuntuはパッケージの更新がより頻繁に行れているので、software centerで探すとv4.1.6の最新版がありました。Ubuntuの場合、そこからインストールすれば良いので簡単です。
Debianはパッケージの安定性を重視し、パッケージがテストされるまでの時間が長いらしく、discoverで探してもv3.2.7しかありませんでした。v3.3.3に満たないので、今回のDebianの場合は、手動でインストールします。
Thonnyダウンロード先
Downloadアイコンをクリックして、"thonny-4.1.6-x86_64.tar.gz"の圧縮ファイルをダウンロードします。
ダウンロードファイルをtmpフォルダに移動させて、そこで解凍します。
Thonnyのインストール方法
sudo mv ./thonny-4.1.6-x86_64.tar.gz /tmp/thonny-4.1.6-x86_64.tar.gz
cd tmp
# 解凍します
sudo tar zxvf ./thonny-4.1.6-x86_64.tar.gz
# install.pyが入っているフォルダに移動して実行
python3 ./install.py
完了するとデスクトップとメニューにThonnyのアイコンができています。クリックして起動してください。
Thonnyの使い方
初期起動時にはダイアログが出てきますので、「言語language = 日本語」と、「initial setting」を選択してください。initial settingは後からでも変更できます。
開発画面
開発画面の赤枠で囲ったところは、プログラミング可能なエディタ領域です。
次に、Picoと接続します。PicoをBoostボタンを押さないで、USBケーブルでパソコンと接続します。うまく接続できるか「ツール」ー「オプション」で画面を開き、インタプリタ・タグを選びます。
Thonnyオプション設定
インタプリタの設定はリストから選べるはずですので、リストから「Raspberry Pi Pico」を選びます。
また、ポートは自動で設定されています。(※Debian LinuxではWindowsのようなデバイスマネージャはありませんので、コマンドから"ls -al /dev/serial/by-id/"と入力、実行して確認してください)
確認できれば「OK」ボタンをクリックして閉じてください。
Restartボタンを押す
開発画面に戻ったところで、右端のショートカット・ボタン「Restart」を押すと、下段のシェルがクリアされて待受状態になります。これでプログラム開始できます。
Lチカプログラム
main.pyに全て記述する
Picoが自動的にスクリプトを実行するデフォルト名が"main.py"なので、main.pyを作成して書き込みます。
main.py
from machine import Pin
import time
led=Pin(25, Pin.OUT)
while True:
led.value(1)
time.sleep(0.5)
led.value(0)
time.sleep(0.5)
Picoに書き込む
ショートカット・ボタンから「保存」ボタンをクリック!
保存先を「Raspberry Pi Pico」にする。
書き込みが完了すると、左上のタグ名が<無題>から[main.py]に変わります。Pico内のファイル名は[]で囲まれるようです。
「保存」の横にある緑の▷ボタンを押すと、接続状態で動作の確認ができます。
Thoonyのメニュー「実行」-「切断」を選択して終了します。Picoをパソコンから抜いて再接続すれば単体でも動作するのが確認できます。
scriptを別ファイルで用意しmain.pyから呼び出す
MicroPythonのscriptを別ファイル("blink.py")に作成。それを呼び出す処理を"main.py"に実装する。
blink.py
# scriptを作成する
from machine import Pin
import time
def main():
led=Pin(25, Pin.OUT)
while True:
led.toggle()
time.sleep(0.5)
if __name__ == "__main__":
main()
main.py
import blink # 実行させたいscriptを読み込む
blink.main()
これでも正常に動作します。この方が色々複雑なことができそうです。私的にはこちらがお勧めです。
以上になります。