VS CodeでArduino開発環境を作ってみよう【Raspberry Pi Picoの開発もできる】

Raspberry Pi/電子工作

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

VS CodeでArduino開発環境の構築方法について記述します。
本記事は、細かい説明は省いて、最短で設定(構築)できることを目的の1つとしていますので、VS CodeやArduino IDEについてはほとんど触れていません。ご了承ください。

設定例では、Windows、Mac、Raspberry Pi(Raspberry Pi OS)、Chromebook(Chrome OS)を掲載しています。ご参考にしてください。

本記事で紹介するVS CodeでArduino開発を行う要件として、Arduino IDEのインストールは必須となっています。

スポンサーリンク

事前準備

以下をインストールしてください。

VS Code
Arduino IDE

WindowsとMacのインストール方法は、本記事では省略いたします。

VS Codeのインストール

Raspberry Pi OS

以下のコマンドでインストールします。

sudo apt install code

Chromebook

Chromebookのインストール先は、Linux開発環境(Crostini)となります。

Linux開発環境を有効化していない場合は、設定から有効化しておきます。

VS Codeのダウンロードサイトから、ご使用の環境に合った.debファイルをダウンロードし、以下のコマンドでインストールします。

sudo apt install ./<file>.deb

マシン環境(CPUの種類)は、以下のコマンドで確認できます。

dpkg --print-architecture

僕のマシンは、arm64だったので、VS Codeのダウンロードサイトからarm64版(code_1.57.1-1623936438_arm64.deb)をダウンロードし、以下のコマンドでインストールしました。

sudo apt install ./code_1.57.1-1623936438_arm64.deb

Arduino IDEのインストール

Raspberry Pi OS

Linux ARM32bits版をダウンロードし、以下のコマンドで解凍します。

tar xf arduino-1.8.15-linuxarm.tar.xz -C ~

-Cオプションの後ろに解凍先(インストール先)ディレクトリを指定します。
~(チルダ)は、ホームディレクトリ(piユーザの場合は、/home/pi)を表します。

次のコマンドでインストールします。

cd ~/arduino-1.8.15
sudo ./install.sh

Chromebook

Chromebookのインストール先は、VS Code同様、Linux開発環境(Crostini)です。

今回は、ARM64bits版の例を記述します。

Linux ARM64bits版をダウンロードし、以下のコマンドで解凍します。

tar xf arduino-1.8.15-linuxaarch64.tar.xz -C ~

-Cオプションの後ろに解凍先(インストール先)ディレクトリを指定します。
~(チルダ)は、ホームディレクトリ(/home/$USERNAME)を表します。

次のコマンドでインストールします。

cd ~/arduino-1.8.15
sudo ./install.sh

VS Code拡張機能のインストール

※2021年10月8日追記
Arduino for Visual Studio Code 0.4.6にてボードが選択できないという現象が見受けられました。
この場合、0.4.5に戻すとボード選択できるようになりました。

拡張機能は、画像の赤枠で囲ったアイコンからインストールできます。
例えば、Arduino for Visual Studio Codeをインストールするには、入力ボックス(Marketplace)に「arduino」と入力するとリストに表示されますので、インストールをクリックします。(画像はインストール済みです。)

以下の拡張機能をインストールします。

Arduino for Visual Studio Code
C/C++

以下は必須ではありませんが、入れておくといいかもしれません。

arduino-snippets … Arduinoの入力補完
Japanese Language Pack for Visual Studio Code … VS Codeの日本語化

以下はインストール例です。

Arduino for Visual Studio Codeの日本語文字化け対応(Windowsのみ)

Windowsの場合、Arduino for Visual Studio Codeの初回インストールの状態では、Arduino IDEから出力される日本語が、VS Codeの出力画面(コンソール画面)で文字化けしてしまいます。

そこで、対策として「C:\Users\%USERNAME%\.vscode\extensions\vsciot-vscode.vscode-arduino-0.4.3\out\src\common\util.js」ファイルを編集します。

205行目から215行目までをコメントアウトします。画像参照。

設定(setting.json)

設定は、setting.jsonに記述します。
※本記事では、こちらを直接記述する方針をとります。
設定画面からも設定できますが、本記事では省略しています。ご了承ください。

設定画面の赤枠で囲ったアイコンからsetting.jsonを編集できます。
設定画面は、Windowsの場合、「ctrl+,」で開けます。

以下に設定例を記載します。最小限の設定内容となっています。

設定例(Windows)

{
    "arduino.path": "C:\\Program Files (x86)\\Arduino",
    "C_Cpp.intelliSenseEngine": "Tag Parser",
    "arduino.additionalUrls": "",
}

arduino.pathにArduino IDEのインストールフォルダのパスを記述します。

設定例(Mac)

{
    "arduino.path": "/Applications/Arduino.app",
    "arduino.commandPath": "Contents/MacOS/Arduino",
    "C_Cpp.intelliSenseEngine": "Tag Parser",
    "arduino.additionalUrls": "",
}

arduino.pathにArduino IDE(Arduino.app)のパスを記述します。
arduino.commandPathを上記のように記述します。

設定例(Raspberry Pi OS)

{
    "arduino.path": "/home/pi/arduino-1.8.15",
    "C_Cpp.intelliSenseEngine": "Tag Parser",
}

arduino.pathを記述します。
Arduino IDE(1.8.15)を/home/pi配下にインストールした場合の記述例です。

設定例(Chromebook)

{
    "arduino.path": "/home/$USERNAME/arduino-1.8.15",
    "C_Cpp.intelliSenseEngine": "Tag Parser",
}

arduino.pathを記述します。
Arduino IDE(1.8.15)をローカルユーザ($USERNAMEは、ローカルユーザ名に置き換えて下さい)のホームディレクトリ配下にインストールした場合の記述例です。

サードパーティボードの追加

Arduino for Visual Studio CodeのArduino Board Managerからサードパーティボード(ESP32等)をインストールする場合に設定します。

    "arduino.additionalUrls": [
        "https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json",
        "https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json"
    ],

“arduino.additionalUrls”: に追加ボードのURLを記述します。
複数のボードURL指定する場合は、コンマで区切ります。

上記は、Raspberry Pi Pico/RP2040とESP32のボード追加例です。

追加ボードのURLを以下の記事にまとめてみました。

簡単な使い方

Arduinoの準備

使用するボードやライブラリは、あらかじめインストールします。

VS Codeからインストールする場合:
ボードは、Arduino Board Managerからインストールします。
ライブラリは、Arduino Library Managerからインストールします。

Arduino IDEからインストールする場合:
ボードは、[ツール] > [ボード] > [ボードマネージャ]からインストールします。
ライブラリは、[ツール] > [ライブラリの管理]からインストールします。

Raspberry Pi Picoのボードについて

Arduino IDEでは、Raspberry Pi Picoのボードが2種類あります。

1つは、Mbedボードで、こちらはArduino IDEデフォルトのインストール状態でボードマネージャからインストールできます。

もう1つは、Raspberry Pi PicoのC/C++ SDKをベースにしたearlephilhower版のボードです。

こちらを使用するには、Arduino IDEから[ファイル]>[環境設定]の画面から以下の設定を実施することで、ボードマネージャからインストールできるようになります。

[追加のボードマネージャのURL:]のボックス(赤枠の箇所)に次のURLを入力し、[OK]をクリックします。

https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json

[ツール] > [ボード] > [ボードマネージャ]を開き、検索ボックスにpicoと入力すると、Raspberry Pi Picoのボードがインストールできます。
※画像はArduino Mbed OS RP2040 Boards、Raspberry Pi Pico/RP2040(earlephilhower版)ともにインストール済みです。

本記事での、Raspberry Pi Picoの解説はearlephilhower版を使用しています。
また、筆者はearlephilhower版をメインで使用しています。

しかし、経験上スケッチによっては相性があり、earlephilhower版だとうまく動かないが、Mbed版だとうまく動いたなんてこともありましたので、使い分けできるようにしておくのがよいかと思っています。

スケッチを開く

Arduino IDEのスケッチを開くには、[ファイル] > [フォルダーを開く]からスケッチのフォルダーを選択します。

基本的な使い方

基本的には、右下のステータスバーから操作します。VS Codeのコマンドパレットから実行することもできますが、本記事では割愛します。

右下のステータスバーより、

<Select Board Type>をクリックすると、画像のようにスケッチを書き込みたいボード(マイコン)を選択できます。

その右のコンセントのようなアイコンをクリックするとシリアルモニターが起動できます。

<Select Serial Port>をクリックするとPCに認識されたマイコンのシリアルポートを選択できます。

※注意点
ご使用の環境によって、<Select Serial Port>をクリックしても反応しない不具合があるようです。
回避策として、.vscode/arduino.jsonを開き、Arduino IDEで識別されたシリアルポート名を直接記述します。
例えば、/dev/ttyUSB0と識別された場合、次のようにarduino.jsonに記述します。

    "port": "/dev/ttyUSB0"

"port": に各自の環境に合わせたシリアルポート名を記述します。

使用例

Windows版のVS CodeでArduino NanoにLチカ(Blink)を書き込んでみます。

Blink.inoを開いています。ボードとシリアルポートを指定しています。(画像右下のステータスバー参照)

スケッチの書き込みは、画像の赤枠で囲った箇所のアイコンをクリックもしくは、Ctrl + Alt + Uです。

このように動きました。

Raspberry Pi Picoにスケッチを書き込んでみる

Mac版のVS Codeからスケッチ例のFadeを書き込んでみます。

Windowsと同じく右下のステータスバーからボードとシリアルポートを選択します。

ボードとして[Raspberry Pi Pico (Raspberry Pi Pico/RP2040)]を選択します。

Macの場合、シリアルポートは、/dev/tty.usbmodem14301のようになります。

スケッチの書き込み(Mac版のショートカットは、Command + option + U)を行います。

このように動きました。

Arduino Nano RP2040 Connectの例

こちらのリンクのRainbow LEDのスケッチをVS Codeから書き込んでみました。

Nano RP2040 Connect RGB LED Tutorial - Learn Embedded Systems
This tutorial will teach you how to create a rainbow effect using the Arduino Nano RP2040 Connect's onboard RGB LED using the Arduino IDE.

VS Codeの画面です。Mac版を使用しています。

ボードは、[Arduino Nano RP2040 Connect (Arduino Mbed OS Nano Boards)]を選択しています。
こちらのボードは、事前にArduino IDEからインストールしました。

フルカラーLEDが綺麗に発光していますね。

Adafruit QT Py RP2040の例

Raspberry Pi Picoと同じRP2040を使ったマイコンです。
内蔵NeoPixelをLチカしてみました。

VS Codeの画面

まとめ

VS CodeでArduino開発を行う大きなメリットは、コード補完(IntelliSense)が使えることだと思います。

快適なArduino開発ができるようになりますね。

スポンサーリンク
この記事を書いた人
あろっち

元ITエンジニア
エンジニア時代は大手企業などでSE・プログラマを経験してきました。

当ブログでは、経験や日々の暮らしの中で、興味があること、役に立ちそうなこと、気になったことを発信していきます。

IT関係(技術的な内容もあります) / スマホ・PC / ガジェット / 生活に役立ちそうなこと ... etc

あろっちをフォローする
Raspberry Pi/電子工作IT
スポンサーリンク
あろっちをフォローする
あろしーど

コメント

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