😎
WSL2上にArduino開発環境を作る〜vscode編〜
これは何?
WSL2からArduinoが触れることがわかったので、vscodeでの開発環境を整備した話
ArduinoIDEインストール
X環境を入れておく
WSLg or X環境構築→私の場合はこちら
ここからArduinoの
Linux64bit版をダウンロード。arduino-1.8.19-linux64.tar.xz
を適当な場所に配置して、展開。
私の場合、/opt/
に配置、展開。
❯ sudo tar Jvfz arduino-1.8.19-linux64.tar.xz
❯ cd /opt/arduino-1.8.19
❯ sudo sh install.sh
[sudo] password for axt:
Adding desktop shortcut and menu item for Arduino IDE...
done!
vscodeの拡張をインストール
microsoftのArduino拡張を導入
Microsoft C/C++ ExtensionのInclude pathを追加する
さきほどインストールしたディレクトリ配下の下記を追加
/opt/arduino-1.8.19/libraries/**
/opt/arduino-1.8.19/hardware/**
/opt/arduino-1.8.19/hardware/arduino/avr/cores/arduino
※↑あまりこれでいいかよくわからない
追加すると、.vscode
に下記が作成された
c_cpp_properties.json
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**",
"/opt/arduino-1.8.19/libraries/**",
"/opt/arduino-1.8.19/hardware/**",
"/opt/arduino-1.8.19/hardware/arduino/avr/cores/arduino"
],
"defines": [],
"compilerPath": "/usr/bin/gcc",
"cStandard": "gnu17",
"cppStandard": "gnu++14",
"intelliSenseMode": "linux-gcc-x64"
}
],
"version": 4
}
効いてそう
Serialにインテリセンス効かなかった↓下記で解決
"defines": [
"USBCON"
]
sketchを書き込んでみる
※usbipd-winでWSL2にCOMポートをアタッチしておく必要があります。
#include <Arduino.h>
#include <Wire.h>
#include <SoftwareSerial.h>
void setup()
{
pinMode(13, OUTPUT);
}
void loop()
{
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
vscodeの下にあるバーをBoard Type=Arduino Uno、Serial Port=/dev/ttyACM0を指定する
vscode上部のこちらで、書き込み
下記エラーが発生
avrdude: ser_open(): can't open device "/dev/ttyACM0": Permission denied
以下の状態の模様
❯ ls -al /dev/ttyACM0
crw------- 1 root root 166, 0 Feb 5 01:32 /dev/ttyACM0
❯ sudo chmod a+rw /dev/ttyACM0
権限を付与するとうまくいった!
[Starting] Uploading sketch 'l.ino'
[Warning] Output path is not specified. Unable to reuse previously compiled files. Build will be slower. See README.
Loading configuration...
Initializing packages...
Preparing boards...
Verifying...
Sketch uses 2812 bytes (8%) of program storage space. Maximum is 32256 bytes.
Global variables use 299 bytes (14%) of dynamic memory, leaving 1749 bytes for local variables. Maximum is 2048 bytes.
Uploading...
IntelliSense configuration already up to date. To manually rebuild your IntelliSense configuration run "Ctrl+Alt+I"
[Done] Uploading sketch 'l.ino'
Discussion