目的:
arduino IDE2 では 外部エディタを使用できない。コードの編集等で Vim を使用したいため、VSCode + arduino-CLI + neovim での環境を構築してみる。
概要:
VSCode に 拡張機能として VSCode neovim, Remode Development, Arduino Community Edition を インストールし、WSL から起動する。これにより、arduino IDE2 で 作成したソースコードをそのまま使用することができる。
VSCode は Windows側にインストールし、WSL から Windows版 VSCode を呼び出す。
VSCode には Linux版もあるが、Windows版を呼び出すのが推奨とのこと。
インストール手順
インストールは以下の通り行う。Windows 側
- Windows に vscode をインストールする。
https://code.visualstudio.com/download
から Windows 版をダウンロードしてインストール
以下の拡張機能をインストールする。
拡張機能のインストールは VSCode 画面 左側のアイコンの 拡張機能 をクリックし、上側にある検索窓にキーワードを入力して探す。
- VSCode neovim
- Remote Development
- WSL に arduino-CLI インストール
curl -fsSL https://raw.githubusercontent.com/arduino/arduino-cli/master/install.sh | sh
で ~/bin に arduino-cli が置かれる。
この arduino-cli を /usr/local/bin に移動(コピー) する。
( または ~/bin に PATH を通す ) - WSL から vscodeを起動し、arduino の 拡張機能をインストールする。
code .
で Windows版 VSCode が起動する。
拡張機能 として Arduino Community Editionをインストールする。 - Arduino 拡張機能の設定。
Ctrl + , を押下し、検索窓に arduino を入れ、以下の項目を設定
- Arduino: Use Arduino CLI
チェックをつける - Arduino: Path
arduino-cli を インストールしたパスを 設定
/usr/local/bin - Arduino: Command Path
arduino-cli
- Arduino: Disable Itelli Sense Auto Gen
チェックをつける
( つけなくてもいいかも ) - Arduino: Additional Urls
サードパーティのボードマネージャの URL
( 今回は 空のまま )
- Arduino: Use Arduino CLI
VSCode 実行
-
Arduino をUSB 接続、WSL に接続ポートを認識させる。
"arduino IDE の インストール (WSL)" 参照
Windows power shell で
"usbipd list"で 接続された USB のBUSID を確認し、"usbipd attach --wsl --busid <BUSID>" で WSL に接続する。 -
arduino スケッチのあるディレクトリで VSCode を起動する。
ボードマネージャ、シリアルポート を設定し、コンパイル(Verify), アップロード (upload) を行う。 ctrl + shift + P で 以下の設定やコマンドの実行を行う。
- Arduino: Board Manager
ボードマネージャの選択を行う。
ESP32 の場合、
esp32: by Espressif Systems をインストールする。 - Arduino: Board Config
ボードの設定を行う。
ESP32 の場合、
Selected Bord: で ESP32 Dev Modele (esp32)を選択する。 - Arduino: Select Serial Port
arduino を接続したポートを選択する。
WSL にポートが認識されていないと、選択肢に出てこない。 - Arduino: Verify
スケッチのコンパイルを行う。
エディタ右上にある ボタン (Arduino : Verify) からも可能 - Arduino: Upload
コンパイル結果のアップロードを行う。
エディタ右上にある ボタン (Arduino : Upload) からも可能 - Arduino:Open Serial Monitor
ボーレートの選択を行うと画面下部にシリアルモニタの画面が開く。
画面下部のパネルで シリアルモニタを選択しても良い。
画面下部のパネルがない場合、右上の パネルの切り替えボタンを押下。
- Arduino: Board Manager
コードの表示画面で #include が エラー になる。
(下部に赤い波線が付き、ソースファイルを開けません となる)
そのままでも コンパイル(Verify) は可能であるが、検出しないように以下のように設定。
★LittleFs への アップロード
(下部に赤い波線が付き、ソースファイルを開けません となる)
そのままでも コンパイル(Verify) は可能であるが、検出しないように以下のように設定。
- Intelli Sense Engine を Rag Parser に設定
Ctrl + , を押下し、検索窓に Intelli を入れ、以下の項目を設定
C_Cpp: Intelli Sense Engine
:Rag Parser を選択 - 1. で 波線が消えず、青くなった場合、include パス の設定を行う
カーソルを #include の行に移動すると、左側にランプマークが付く。
左クリックして"browse.path" 設定の編集 を選択。
"パスを含める" の項目に、include するヘッダファイルのパスを追加する。
例:
${workspaceFolder}/** ~/.arduino15/packages/esp32/hardware/esp32/3.3.0/cores/esp32/ ~/.arduino15/packages/esp32/hardware/esp32/3.3.0/libraries/**
これで include の エラーは消える。
( .vscode/c_cpp_properties.json に パス等が追加される )
LittleFs への アップロードは VSCode arduino-CLI からはできない。
このため、LittleFS へのアップロードは Arduino IDE2.x を使用する様にした。
VScode + arduino-CLI とArduino IDE2.x は 同時に起動しても問題なさそう。
尚、アップロードは VSCode の シリアルポートは 閉じた状態で Auduino IDE2.x からアップロードを行う。
このため、LittleFS へのアップロードは Arduino IDE2.x を使用する様にした。
VScode + arduino-CLI とArduino IDE2.x は 同時に起動しても問題なさそう。
尚、アップロードは VSCode の シリアルポートは 閉じた状態で Auduino IDE2.x からアップロードを行う。
0 件のコメント:
コメントを投稿