R2P2 (PicoRuby) のインストール&動作確認
今日は RubyKaigi 2024 follow up に参加。PicoRuby のセッション にインスパイアーされて Raspberry Pi Pico に R2P2 をインストールしました。
GitHub の R2P2 のリリースから *.uf2.zip
をダウンロード。
今日時点の最新の https://github.com/picoruby/R2P2/releases/download/0.2.1/R2P2-FLASH_MSC-0.2.1-20240209-5145384.uf2.zip をダウンロード。
Raspberry Pi Pico をマシンに接続。
ファイルを開くと展開されるので、ダウンロードフォルダにある R2P2-FLASH_MSC-0.2.1-20240209-5145384.uf2 を Raspberry Pi Pico にドラッグ&ドロップするとインストール完了。
これが本当に楽。すごすぎる。micro:bitやMicroPythonがこの仕組みなのですが、本当に楽。uf2のドキュメントとかとても少ないのに実装してくださって、感謝。本当に楽。
あとはRaspberry Pi Picoとシリアル通信できればOKなのですが、最近はscreenではなくtmuxを使っているため、macOSでシリアル通信をする方法を調査。picocomが良さそうなのでインストール。
brew install picocom
私の環境では /dev/tty.usbmodem1234567890121 がシリアル通信のデバイスだったので以下で接続。オプションなしで接続できるのはありがたい。
picocom /dev/tty.usbmodem1234567890121
# (以下、実行結果)
# picocom v3.1
#
# port is : /dev/tty.usbmodem1234567890121
# flowcontrol : none
# baudrate is : 9600
# parity is : none
# databits are : 8
# stopbits are : 1
# escape is : C-a
# local echo is : no
# noinit is : no
# noreset is : no
# hangup is : no
# nolock is : no
# send_cmd is : sz -vv
# receive_cmd is : rz -vv -E
# imap is :
# omap is :
# emap is : crcrlf,delbs,
# logfile is : none
# initstring : none
# exit_after is : not set
# exit is : no
#
# Type [C-a] [C-h] to see available commands
# Terminal ready
# Starting shell...
#
#
# ____ _ ____ _
# | _ \(_) ___ ___ | _ \ _ _| |,_ _ _
# | |_) | |/ __/ _ \| |_) | | | | '_ \| | | |
# | __/| | (_| (_) | _ <| |_| | |_) | |_| |
# |_| |_|\___\___/|_| \_\\__,_|_.__/ \__, |
# by hasumikin |___/
#
# $>
動作確認はこんな感じ。irbが動くのは本当にすごい。入力、解析、実行のループをRaspberry Pi Pico上で行っているのですよね。本当にすごい。
$> irb
irb> puts "hello, world"
hello, world
=> nil
irb> exit
$> exit
bye (RuntimeError)
Rebooting
FATAL: read from port failed: Device not configured
term_exitfunc: reset failed for dev UNKNOWN: No such file or directory
以上、R2P2のインストール&動作確認でした。
余談
R2P2 インストール済みの Raspberry Pi Pico を持ち歩きたいので、いい感じのケースがないか物色中。
Raspberry Pi Pico Dule-SidedProtection用の防塵クリアアクリル保護ケース これが良いのですが、値段が高い。100円ショップでそれっぽいケースを探す予定。
あと、 はんだ付けなしでピンソケットをRaspberry pi picoにたてる というのも試したい。このあとセリアでテグスを探そう。
協力者の募集
スモウルビー (GitHub) の開発にご協力いただける方を常に募集しています。
ご協力いただける方は、 contact@smalruby.jp までご連絡いただいてもいいですし、連絡なしで「xxx のブロックに対応しました」というPRを作成してもらってもかまいません。むしろその方が好都合です。
また、 拙著:小学生から楽しむ きらきらRubyプログラミング をご購入いただけるとありがたいです。スモウルビーの使い方と教え方を学ぶことができる書籍です。特に小・中学校の先生に読んでいただきたいです。
日本中の小・中学生が学校の授業や地域のプログラミング教室でスモウルビーを使っています。みなさんのご協力で、たくさんの子どもたちがハッピーになります。ご協力、よろしくお願いします。