Raspberry Pi Pico/RP2040ボードにシリアル通信を使わずArduinoスケッチを書き込む方法

Raspberry Pi/電子工作
スポンサーリンク

こんにちは、あろっちです。

Chromebook(Linux開発環境 = Crostini)やRaspberry Pi OSなど一部環境ではシリアル通信でRP2040搭載ボード(Raspberry Pi Picoなど)にスケッチの書き込みができなかったり、書き込みに失敗することがあります。

そこで、手動でスケッチを書き込む方法を紹介したいと思います。

大まかな手順は次の通りです。

  1. スケッチをコンパイル(ビルド)してバイナリファイル(uf2ファイル)を書き出す
  2. RP2040搭載ボードをUSBマスストレージモードでPCに接続する
  3. uf2ファイルをRP2040搭載ボード(RPI-RP2)にドラッグ&ドロップする
スポンサーリンク

スケッチのバイナリファイル(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搭載ボードは手動でバイナリファイルが書き込めれば、環境問わず開発できるのがメリットになるかと思いますので、シリアル通信で書き込めない環境の場合はぜひお試しください。

当ブログのマイコン記事です。ぜひご覧ください。

コメント

タイトルとURLをコピーしました