ラズパイPicoでPlatformIO使えるけど、まだまだ謎?だらけ

ラズパイ(Raspberry Pi) Pico でのPlatformIOの謎

ラズパイPicoで遊んでみたけど、書き込みはやっぱりC言語で「PlatformIO」を使いたい。
標準で使用できるボード「Raspberry Pi Pico」はいろいろエラーが出たので「EarlePhilhower」コアの方を使おうと、いろいろ試してみたけどファームウェアの書き込みの癖が強い・・・?

自分のやり方が悪いのか、まだ使うには早いのか・・・ということでしばらくは「PlatformIO」でプログラムの作成、編集をして書き込みは「ArduinoIDE」を使うことにしました。

このページは作業メモとして残します。


「PlatformIO」のインストール方法は以下で紹介しています。

2023/4/10時点でここで書いた問題は発生しなくなり普通に書き込みできるようになっていました。
以下のリンクで手順を詳しく紹介しています。
ラズパイPico/PicoWの使い方を3つの開発環境Python、ArduinoIDE、PlatformIOで紹介
Raspberry Pi Pico/Pico Wの使い方を端子配列からPython(MicroPython)とC言語の開発環境、Lチカ方法まで紹介。PythonはTonny、C言語はArduinoIDEとPlatformIOの3種類で詳しく紹介します。

ここからは過去の記事です。

いろいろ問題があって、ボード設定として「EarlePhilhower」コアの方を使って書き込むところまではできたという紹介です。
問題点は、次に書き込む時に「BOOTSEL」を押しながら接続し直して、標準ボード「Raspberry Pi Pico」の方で作成されたファームウェアを書き込まないといけないというものです。

慣れれば問題なさそうですが、せっかく「PlatformIO」を使うならサクッと書き込みたい。
ということで詳しくまとめるのはもうしばらく待ってからにします。

雑になりますが、以下で手順を紹介します。

事前に標準ボード「Raspberry Pi Pico」の方でプロジェクトを作成して、コンパイルまで行ってから、新たにプロジェクトを作成して次に進んでください。
標準ボードで作った方は後で中のファームウェアを使用します。
スポンサーリンク

プラットフォームの変更(コアの切り替え)

まずは標準のボード設定「Raspberry Pi Pico」でプロジェクトを作成します。
次に以下のように「platformio.ini」ファイルを書き換えます。

変更前

[env:pico]
platform = raspberrypi
board = pico
framework = arduino

変更後

[env:pico]
platform = https://github.com/maxgerhardt/platform-raspberrypi.git
board = pico
framework = arduino
board_build.core = earlephilhower

下画像の状態になったら書き込みを行います。

ラズパイ(Raspberry Pi) Pico でのPlatformIOの使い方

いきなり以下のエラーが出る場合は「git」をインストールしてください。
この表示が出ない場合はここは飛ばしてください、コンパイルが始まり通信のところでエラーになると思います。(私の環境だけかもしれませんが・・・)

ラズパイ(Raspberry Pi) Pico でのPlatformIOの使い方

以下のサイトからダウンロードできます。

下画像のページが表示されるので、ダウンロードしてインストールします。
特に設定はなく「NEXT」連打です。
ラズパイ(Raspberry Pi) Pico でのPlatformIOの使い方

「git」をインストールしたら「PlatformIO」を再起動します。
すると下画像のように「PlatformIO:Loading tasks…」の状態が長時間続きます。
終わるまで放置しましょう。(30分ぐらいかかった気がします。)

ラズパイ(Raspberry Pi) Pico でのPlatformIOの使い方

下画像のように「PlatformIO:Loading tasls…」が消えたら[→]ボタンで書き込みを実行します。

ラズパイ(Raspberry Pi) Pico でのPlatformIOの使い方

下画像のようにインストールが始まります。
これでプラットフォームの変更(コアの置き替え)は完了です。

ラズパイ(Raspberry Pi) Pico でのPlatformIOの使い方
残念ながらこの後の書き込みでラズパイが認識されずエラーとなります。
どうやらラズパイにファームウェアを書き込んであげないといけないようです。
スポンサーリンク

ファームウェアの書き込み

プラットフォームの変更が完了したら下画像のように「Raspberry Pi Pico」の「BOOTSEL」ボタンを押しながらパソコンと接続します。

ラズパイ(Raspberry Pi) Pico Python開発環境準備

下画像のように「RPI-RP2」フォルダが開きます。私の環境では現状はここにファームウェアを毎回コピーしてあげないといけないようです。

ラズパイ(Raspberry Pi) Pico Python開発環境準備

ファームウェアのファイルの場所は下画像を参照してください。
ファームウェアファイルをドラッグ&ドロップで「RPI-RP2」へコピーします。

ここで注意が必要です。ファームウェアは作成しているプログラムのファイルではなく、以前、標準のボード設定「Raspberry Pi Pico」で作成したプログラムのファイル内に作成されているファームウェアファイル「firmware.uf2」を書き込んでください。
どれでもいいかどうかはわかりませんが、今のところ標準のボード設定で作成されたものならどれでも問題無いようです。

コピーしたら「RPI-RP2」フォルダが勝手に閉じるので、書き込みを実行すると無事書き込み完了です。
しかし、続けて書き込もうとするとまたエラーになります。
上記の手順をもう一度行えば書き込めます・・・


何か間違ってるかもしれませんが、私の環境では今はこの方法が限界です。
忘れないうちにここに残しておきます。

コメント

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