1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[備忘録]PlatformIOでraspberry pi picoのセットアップ

Posted at

はじめに

ubuntuではすんなり設定できたのですが、windows11でraspberry pi picoをPlatformIOで開発しようとした際の環境構築でつまずいたため、備忘録の意味を込めてまとめました。
この記事が同じようなエラーでつまずいた人の参考になれば幸いです。
また、初めてのQiita投稿なので温かい目で見ていただけると嬉しいです。

使用環境

  • windows 11

PlatFormIOのインストール

  1. visual studio codeの左側のバーの拡張機能で「PlatformIO」で検索
  2. PlatformIO IDEをダウンロード
    image.png

プロジェクトの作成

  1. 左側のバーのPlatfromIOをクリック(アリ?のロゴ)

  2. openをクリック(下図参照)
    image.png

  3. Quick Accessの「New Project」をクリック
    image.png

  4. 作成するプロジェクト名、ボード、プロジェクトを保存する場所の選択
    今回はプロジェクト名を「pico_motor_driver」、ボードを「Raspberry Pi Pico」、保存場所をデフォルトで選択
    image.png

  5. Finishをクリック
    image.png

  6. しばらく待って、下の図のような画面が出てきたらプロジェクトの作成が完了です
    image.png

raspberry pi picoへの書き込み

試しに「Hello World」とターミナルに出力するプログラムを書き込んでみます。

#include <Arduino.h>

void setup() {
}

void loop() {
  Serial.println("Hello World");
  sleep_ms(100);
}

コードのビルドは下のチェックマーク、書き込みは下の右矢印マークで行えます。
image.png

ターミナルの出力は以下になります
(ターミナル出力は、下のプラグマーク?をクリック)
image.png

raspberry pi picoが認識せずに書き込めない時の対処法

私の環境では、初めてraspberry pi picoに書き込む際、looking for portが続いて書き込むことができなかったです。どうやらraspberry pi picoのドライバーが入っていないことが原因のようです。
この問題はこちらを参考にすることで解決することができました。

PlatformIOでマルチコアの使用

現在の設定でもコードを動かすことは可能ですが、マルチコアのプログラミングに対応していないみたいです。(参考)
試しに以下のコードを書きこんでみます。

#include <Arduino.h>

void setup() {
}



void loop() {
  Serial.println("core0");
  sleep_ms(1000);
}

void setup1(){
}

void loop1(){
  Serial.println("core1");
  sleep_ms(500);
}

ターミナルへの出力結果は以下になります。
image.png
この結果からcore0のプログラムのみ動いており、core1のプログラムが動いていないことが分かります

platformio.iniを書き換

現在のplatformio.iniは以下のようになります

platformio.ini
[env:pico]
platform = raspberrypi
board = pico
framework = arduino

これを以下に書き換えます

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

初めてbuildするときは多少時間がかかります。
platformio.iniを書き換えて、先程のコードを書き込むと出力は以下のようになります。
image.png
この結果からマルチコアができていることが分かります。

セットアップがエラーで止まった場合

私の環境ではplatform.iniの設定を変えて、インストール等が始まった際に以下のエラーが出ました。

error: unable to create file Application/8_uarts_server/RT-Thread/uart_server_rtt/rt-thread/components/vmm/linux_patch-v3.8/0001-RTT-VMM-implement-dual-system-running-on-realview-pb.patch: Filename too long
error: unable to create file Application/8_uarts_server/RT-Thread/uart_server_rtt/rt-thread/components/vmm/linux_patch-v3.8/0002-arm-gic-correct-the-cpu-map-on-gic_raise_softirq-for.patch: Filename too long

これはgitの初期設定で、ファイル名の名前が長いとダメみたいなのでターミナルで以下の設定をします。(windowsの場合は管理者権限でターミナル実行してください)

git config --system core.longpaths true

私の場合は再度ビルドすることでインストールが完了しました。

参考

おわりに

初めての記事投稿ですが誰かの役に立てばうれしいです。
また、マイコン触りたての初心者なのでここが違うなどあれば、教えていただけると幸いです。

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?