こんにちは、あろっちです。
Chromebook(Linux開発環境 = Crostini)やRaspberry Pi OSなど一部環境ではシリアル通信でRP2040搭載ボード(Raspberry Pi Picoなど)にスケッチの書き込みができなかったり、書き込みに失敗することがあります。
そこで、手動でスケッチを書き込む方法を紹介したいと思います。
大まかな手順は次の通りです。
スケッチのバイナリファイル(uf2ファイル)を出力するには
Arduino IDEの場合
メニューから[スケッチ] > [コンパイルしたバイナリを出力]を選択します。
スケッチフォルダにバイナリファイル(拡張子が.uf2)が出力されます。
Arduino for Visual Studio Codeの場合
事前にバイナリファイルの出力先をスケッチフォルダ内の.vscode/arduino.jsonに設定します。
例えば、スケッチフォルダ/buildにバイナリファイルを出力する場合、次のように記述します。
"output": "./build"
“output”: に出力先フォルダを指定します。
チェックマークでビルドします。
“output”: で指定したフォルダ内にバイナリファイル(拡張子が.uf2)が出力されます。
PlatformIO IDEの場合
チェックマークでビルドします。
バイナリファイルの場所:
プロジェクトフォルダ内
.pio/build/pico/firmware.uf2
※RP2040ボードがRaspberry Pi Picoの場合。他のRP2040ボードを設定している場合、パスのpicoの箇所が設定しているボードの名前になります。
RP2040搭載ボードをUSBマスストレージモードにするには
リセットボタン搭載タイプのボードは、次の手順でUSBマスストレージモードにできるかと思います。
- BOOTボタンを押す
- リセットボタンを押す
- リセットボタンを離す
- BOOTボタンを離す
RP2040搭載ボードまとめ記事(参考サイト)
以下は当ブログのRP2040搭載ボードの記事です。
Raspberry Pi Picoの場合は、BOOTSELボタンを押しながらPCに接続します。
uf2ファイルの書き込み【ドラッグ&ドロップ(Chromebookの例)】
この動画のバイナリファイル(Blink.ino.rpipico.uf2)は、Blink.inoスケッチをArduino IDEでコンパイル&バイナリ出力したものです。
まとめ
RP2040搭載ボードは手動でバイナリファイルが書き込めれば、環境問わず開発できるのがメリットになるかと思いますので、シリアル通信で書き込めない環境の場合はぜひお試しください。
当ブログのマイコン記事です。ぜひご覧ください。
コメント