Raspberry Pi Pico ゆるピコでいこう(テスト環境)

Raspberry Pi PicoをスイッチサイエンスからGetできました。Raspberry Piといってもマイコンボードなので使いこなすには相応のスキルが必要になるかと思います。
但しMicroPythonが使えるのでRaspberryPiデスクトップを開発環境にすることで簡単に遊ぶことが出来ます。
https://www.raspberrypi.org/documentation/pico/getting-started/

またArduinoIDEのサポートがアナウンスされています。Arduinoで蓄積されたライブラリなどがPicoのRP2040で動くようになればRaspberry Piの知名度と相まって普及が進むことが予想されます。
https://www.seeedstudio.com/blog/2021/01/29/arduino-ide-support-announced-for-the-raspberry-pi-pico/
現時点では日本語マニュアルや情報が少ないためまったりゆるピコで行ってみようと思います。

取り敢えず動かしてみる

開発環境はRaspberryPi4B

新品のPicoはUSBに挿すだけで/media以下にマウントされます。
/media/RPI-RP2以下には2つのファイルが見えます。INDEX.HTMは冒頭のPicoのgetting-startedページが開きます。INFO_UF2.TXTにはボード情報が記載されています

スタートページからMicroPythonとC/C++のUF2ファイルをダウンロード

取り敢えずC/C++のLチカ確認
ダウンロードしたblink.uf2を/media/RPI-RP2にコピーすると自動でRunします。

MicroPython

今度はBOOTSELボタンを押したままUSBポートに接続、マウントしたらダウンロードしたrp2-pico-20210205-unstable-v1.14-8-g1f800cac3.uf2をコピー


Thonny Python IDEを起動
右下のPython 3.7.3をクリックしてMicroPython(Raspberry Pi Pico)を選択

blink.py

#test
import machine
import utime
led = machine.Pin(25, machine.Pin.OUT)
while True:
    led.high()
    utime.sleep(1)
    led.low()
    utime.sleep(1)


ファイルは母艦(Pi4B)にあるテキストファイルからも読み込めます。
取り敢えずThonny IDEのエディタに書き込んでRunをクリック、Picoにsave


もう1度Runをクリックするとファイル名を入れろと聞いてきます。
準備完了、RunするとLチカスタート

テスト環境

今後はPico SDKを導入する予定ですがその前にピンヘッダを取り付けます。またBOOTSELボタンを押しながらUSBポートに接続、モードを切り替える手順が気に入らないのでついでに工夫をしてみます。(そう頻繁に使うことは無いと思うのですがあれば便利)
簡単にディスクリートで構成してみました。

PicoのTP
TP2,TP3,TP6の3Pinをコネクタ化
TP5(GPIO25)を外部に引き出し


USB Aからの+5Vはリレーのbreak側からVBUSに供給、単体使用時と同じ。タクトスイッチを1回叩くとリレーオン(電源オフ)、+5VをQ2のベースに供給、Q2オン(BOOTSEL PUSH) Picoはすぐ再起動します。Q2もオフになりますがトランジスタのオフ動作に比べてPicoの起動が早いため(と思われる)この定数でも正常にモードが切り替わります。
Pi4Bのオートマウントには数秒かかります。
GPIO端子はPi4Bの適当なGPIO端子から信号を送ることで同様の動作を得られます。


ピンソケットを上部に取り付け。
上部1番側(左)はピンソケット(21P)
1Pin余分にしてGPIO25を接続
小さいブレッドボード基板を載せる予定


上部1番側(左)の0番にTP5(GPIO25)
TP5の使用は非推奨ですが10Kを介して信号のみ取り出し


ベース基板側は20P+20P


裏面


合体して完成
USB A + BOOTSELボタンは有効ですがMICRO USB + ベース基板のBOOTボタンは不可


Pi4BとのUART接続もこのままいけそうです。
タクトスイッチは一瞬でもリレーをオン(電源オフ)すればモードが切り替わります。


100均ランタン改USB延長コード仕様ゆるピコランタン
モードを切り替えた後のキャンセル(何もしない)は想定していませんでした。抜き差しが必要ですね。
ゆるピコランタンは底にスイッチがあってランタンLEDとUSB5Vをオンオフしています。