拡張機能でできること

まずはこの拡張機能がどんなことをしてくれるのかを整理します。拡張はRaspberry Pi Picoシリーズの開発を想定しており、プロジェクトの自動生成からビルド・実行・デバッグまでを一つの環境で完結させることができます。特に、Pico2など複数のモデルにも対応しているため、初心者がハードウェアの違いに悩む必要はありません。
主な特徴を挙げると以下の通りです:
- プロジェクトジェネレータ – I²CやPIOなどの高度な機能にも対応したプロジェクトを簡単に生成できます。
- クイックプロジェクト作成 – ワークスペースが空の場合でもエクスプローラビューから新規Picoプロジェクトをすぐに作成できます。
- 自動CMake設定とツール管理 – プロジェクトを読み込むと自動的にCMakeを構成し、ツールチェーンやSDKの管理を担当してくれます。
- ワンクリックビルド&デバッグ – OpenOCD、Ninja、CMakeを自動で設定し、ボタン一つでビルドとデバッグを実行できます。
- オフラインドキュメント – ネット接続がなくてもPico SDKのドキュメントをエディタ内で参照可能です。
- バージョン切替 – Pico SDKやツールのバージョンをGUIから簡単に変更できます。
このように、複雑な手作業を自動化する機能が満載なので、初心者でも迷わず開発に入ることができます。

準備とインストール
拡張機能を使う前に、開発環境を整えておきましょう。幸いにも難しい準備はほとんどありません。対応プラットフォームはRaspberry Pi OS(64bit)、Windows 10/11(x86_64)、macOS Sonoma以降、Linux(x64/arm64)で、VS Codeはバージョン1.99.3以上が必要です。Raspberry Pi OSとWindowsでは追加依存パッケージは不要ですが、macOSではターミナルでxcode-select --install
を実行してGitやC/C++コンパイラなどを入れておきます。LinuxユーザーはPython 3.10以上、Git、TarをPATHに通し、必要に応じてgdb‑multiarchやudevルールを入れておくとデバッグがスムーズに行えます。
インストール手順はとてもシンプルです。
- VS Codeの左側にある「拡張機能」タブを開き、検索バーに「Raspberry Pi Pico」と入力します。
- リストに表示される公式拡張(Raspberry Piが発行者)を選択し、「インストール」をクリックします。
- インストールが完了すると、左側のアクティビティバーにフルーツのアイコンが登場し、「Raspberry Pi Pico Project」と表示されます。
- 初回の起動時にツールチェーンやSDKが自動的にダウンロードされるので、インターネット接続を確保しておきましょう。
必要な依存関係(Python3、Git、Tar、Cコンパイラ)は拡張がインストール時にチェックしてくれます。足りない場合は指示に従って追加してください。依存関係に不安がある方は、まずRaspberry Pi OSやWindows環境で試してみるのがおすすめです。

新規プロジェクトを作成
拡張機能のインストールが完了したら、さっそく新しいプロジェクトを作ってみましょう。ここではLEDを点滅させるサンプル「blink」を例にします。手順は次の通りです。
- アクティビティバーにあるPicoアイコンをクリックし、「New Project from Examples」を選択します。
- 「Name」フィールドには「blink」と入力し、使用するボード(Pico、Pico2、Pico Wなど)を選択します。
- 保存したいフォルダを指定すると、拡張がその中にサブフォルダを作成してプロジェクトを生成します。
- 最後に「Create」を押すと、SDKやツールチェーンのダウンロード・初期設定が自動的に始まります。初回は5〜10分ほどかかることがあるのでゆっくり待ちましょう。
- VS Codeから「このフォルダーの作者を信頼しますか?」と聞かれたら「はい」を選択します。
プロジェクトが生成されると、ソースコードやCMakeファイルが自動的に配置され、エディタ下部のステータスバーにCompileとRunボタンが追加されます。これらのボタンを使って、ビルドや実機書き込みを行います。

ビルドと実行
プロジェクトができたら早速コードをビルドして実機で走らせてみましょう。拡張では以下のような流れで操作します。
- Compileボタンをクリックすると、CMakeとNinjaが自動的に呼び出され、ソースコードがビルドされます。完了するとblink.uf2ファイルが生成されます。
- Runボタンは、ビルドからデバイスへの書き込みまでを一括で行います。
- 実機に書き込む際は、PicoボードをBOOTSELボタンを押しながらUSB接続し、Mass Storageモードにします。
- 書き込みが完了するとデバイスが再起動し、LEDが点滅を始めます。
簡単な変更を試したい場合は、blink.c
を開いて定義を変えてみましょう。例えばLED_DELAY_MS
を250から100に変更すると点滅速度が速くなります。変更後、再度「Run」ボタンを押すだけで更新されたコードがボードに転送され、結果をすぐに確認できます。

デバッグとドキュメント
拡張機能の便利さはビルドだけに留まりません。デバッグ機能も充実しており、Pico Debug Probeなどを使えばVS Codeのデバッグパネルからブレークポイントを設定し、ステップ実行や変数の確認が行えます。デバッグモードに入るにはF5キーを押すだけで、OpenOCDやGDBの複雑な設定は拡張が全て肩代わりしてくれます。
さらに、オフラインドキュメント機能が用意されています。Pico SDKのAPIやハードウェア仕様を参照したいとき、サイドバーからトピックを選ぶだけでエディタ内にドキュメントが表示されるので、ネット接続が無い環境でも安心して開発が続けられます。コードと資料を並べて閲覧できるため、初心者でも迷わず関数の使い方を調べられます。

バージョン管理と応用機能
Pico SDKは頻繁にアップデートされるため、常に最新機能を使えるようにしておきたいものです。拡張のステータスバーには現在利用しているSDKバージョンが表示されており、クリックすると新しいバージョンへ切り替えるダイアログが開きます。選択後は設定が自動的に反映されるので面倒な手作業は不要です。MicroPythonやRust、Zephyrといった言語・OSにも対応しており、プロジェクト作成時に言語を指定するだけで環境が整います。
また、複数の実行ファイルを持つような大規模プロジェクトや変数で名前を切り替えるCMake構成の場合は、CMake Tools拡張との連携を有効にすることでパーサが強化されます。これにより、より複雑な構成でもVS Codeから快適に操作できます。拡張設定からこの連携を有効にし、必要に応じてcmake.configureOnEdit
などをONにするのがポイントです。
応用機能が豊富ですが、初心者はまずC言語による基本的なプロジェクトを試し、その後MicroPython版に挑戦してみると理解が深まります。RustやZephyrはより高度な用途向けですが、選択肢として覚えておくと便利です。

注意点と困ったときは
便利な拡張機能にも注意点があります。まず単一フォルダワークスペースのみを対象としているため、複数フォルダを含むワークスペースでは正しく動作しません。また、CMakeやNinja、Python、Gitのカスタムパスを指定してもCMakeLists.txt
には記録されないため、拡張からビルドや設定を実行する必要があります。
バージョン取得に失敗することがある場合、その原因のひとつはGitHub APIのレート制限です。SDKやツールのバージョンリストを取得する際にはGitHub APIを利用しているため、制限にかかるとエラーが出ます。この場合はGitHubのパーソナルアクセストークン(PAT)を用意して設定し、レートリミットを引き上げましょう。また、既存のSDKやツールチェーンの手動インストールが残っている場合は削除してから再インストールするのがトラブル回避のコツです。
どんなツールでもトラブルはつきものですが、この拡張ではトラブルシューティング用のコマンドやアンインストーラも用意されています。困ったときはサイドバーの「Troubleshooting」リンクから手順を確認し、必要であればGitHubのissueに報告するとよいでしょう。
まとめと次の一歩
ラズパイピコシリーズで電子工作やプログラミングを楽しみたい初心者にとって、開発環境の壁は大きな課題です。しかし、公式のVS Code拡張を使えば、プロジェクト生成・ビルド・書き込み・デバッグまでの工程を自動化でき、敷居が一気に下がります。本記事では、プロジェクトジェネレータやワンクリックビルド、オフラインドキュメント、SDKバージョン切替などの機能を紹介し、実際にLED点滅プログラムを動かす流れを解説しました。これだけでも「自分にもできる!」という自信が湧いてきたのではないでしょうか。
次の一歩としては、C言語のサンプルコードを編集してみたり、I²CやPIOを使ったセンサー制御に挑戦するのがおすすめです。もしPythonに興味があればMicroPythonプロジェクトを作成してみるのも良いでしょう。拡張にはRustやZephyrのサポートも備わっているので、将来的にさまざまな言語やOSにも挑戦できます。まずは基本のLED点滅から始めて、自分のペースで電子工作の世界を広げていきましょう。
コメント