「Arduinoを始めるにはArduino IDEを入れればいいと聞いたけど、調べるとVS CodeやPlatformIOでも開発できるらしい……結局、どれを使えばいいの?」と迷ってこのページにたどり着いた方へ、まず結論からお伝えします。

これからArduinoを始める初心者は、まず「Arduino IDE」でOKです。導入が簡単で情報も多く、つまずきにくいからです。そして慣れてきたら、あるいは実務寄りに本格的にやりたくなったら「VS Code+PlatformIO」へ。この二段構えがおすすめです。

筆者は現役の車載組込みソフトエンジニアです。じつは普段の開発ではArduino IDEではなくPlatformIO(VS Codeの拡張)を使っています。だからこそ「初心者にはIDEを勧めるが、自分はなぜPlatformIOなのか」という両方の目線で、正直に比較します。

Arduinoの開発環境とは?まず全体像

比較に入る前に、「開発環境」が何をするものなのかを押さえておきましょう。ここが分かると、IDEとPlatformIOの違いが何の差なのかを判断できます。

開発環境の役割(書く→ビルド→書き込む)

Arduinoの開発でやることは、突き詰めると次の3つです。開発環境は、この3つを1つで担ってくれるソフトのことです。

① 書く
プログラム(スケッチ)を書く
② ビルド(検証)
マイコンが分かる形に変換
③ 書き込む
USB経由でボードへ転送
図:開発環境は「書く → ビルド → 書き込む」を1つでこなすソフト

用語メモ:
IDE(統合開発環境)…「書く・ビルド・書き込む」を1つにまとめたソフト。
エディタ…プログラムを書くためのソフト(例:VS Code)。単体では書き込みまでできないので、拡張機能を足して使う。
ビルド(コンパイル)…人が書いたプログラムを、マイコンが実行できる形に変換すること。
書き込み…ビルドしたプログラムをボード(マイコン)へ転送して動かすこと。

主な選択肢は3つ

Arduinoを開発する環境は、ざっくり次の3つに分けられます。本記事ではこのうち、定番のArduino IDEと、本格派のVS Code+PlatformIOを中心に比較します。

Arduino IDEArduinoの公式が配っている開発環境。書く・ビルド・書き込むが最初から1つにまとまっていて、ボードを選んでボタンを押すだけで動きます。
Arduino Cloud Editorブラウザで使う公式の環境。PCへのインストールが要りません。ただし書き込みには専用のプラグインを入れる必要があります。
VS Code+PlatformIO普段からVS Codeを使っている人、コード補完やGitを使い込みたい人向け。VS Codeに拡張機能を入れて、マイコン開発ができる状態にします。

なお2026年8月現在、公式が配っているのは Arduino IDE 2.3.10 です。1.8系(Legacy IDE 1.8.19)も置いてありますが、こちらは過去バージョンの扱いなので、これから入れるなら2系で問題ありません。ネット上には1.8系の画面で書かれた解説がまだ多く残っているので、見た目が違うときはバージョンの差を疑ってください。

もう1つ、「VS CodeでArduinoを書く方法」としてMicrosoft製の vscode-arduino という拡張機能を紹介している記事を見かけますが、これは2024年10月1日に開発が終了しています。公式リポジトリに「deprecated and no longer maintained」と明記され、マーケットプレイスからも取り下げられました。VS Codeで開発したいならPlatformIO、と考えて問題ありません(出典:microsoft/vscode-arduino)。

Arduino IDE と PlatformIO の比較

では、初心者に定番のArduino IDEと、本格派が選ぶVS Code+PlatformIOを、観点ごとに比べてみます。

比較表(手軽さ・機能・実務との近さ)

観点 Arduino IDE VS Code+PlatformIO
導入の手軽さ ◎ 公式からDLして数分 ○ 拡張の導入など少し手順が要る
日本語の情報・作例 ◎ 日本語の記事や作例が多い △ IDEよりは少なめ
コード補完・定義ジャンプ △ 最低限 ◎ VS Codeが強力
複数ファイル・大きめの開発 △ 1ファイル中心で不便 ◎ 分割して管理しやすい
ライブラリ・依存の管理 ○ ライブラリマネージャ ◎ 設定ファイルで固定・再現できる
Git(バージョン管理) △ 別途必要 ◎ VS Codeと一体で扱える
デバッグのしやすさ
AI支援(補完・チャット等) ◎ VS Codeの拡張が使える
学習コスト ◎ 低い ○ 多少の慣れが要る
向いている人 初心者・まず動かしたい人 脱初心者・本格志向や実務志向の人

ひとことで言えば、Arduino IDEは「手軽さ」、PlatformIOは「本格的な開発のしやすさ」が強みです。最初の一歩は手軽さで選び、複数ファイルに分けたくなった時点で本格さで選び直す、という関係です。

それぞれが向いている人

  • Arduino IDEが向いている人:プログラミングや電子工作がはじめての人。とにかくまず動かしたい人や、情報の多い環境で安心して進めたい人
  • VS Code+PlatformIOが向いている人:複数ファイルに分けて大きめのものを作りたい人。補完やGitを使い込みたい人や、将来は実務に近い開発スタイルに慣れておきたい人

初心者がArduino IDEから始めるべき理由

現役の立場から見ても、最初の1歩はArduino IDEで十分だと考えています。理由はシンプルで、「まず動かす成功体験」を最短で得られるからです。

  • 導入が簡単:公式からダウンロードして入れるだけ。環境構築でつまずきにくい
  • 情報・作例が多い:困っても日本語で調べればたいてい解決する
  • 関数1つで動く手軽さ:難しい設定を意識せずにLEDやセンサーを動かせる

<現役エンジニアの視点>
私が初学者の頃も、最初はArduino IDEを入れて、プログラムをボードに書き込む(コンパイルして転送する)だけで、すぐにLチカ(LEDの点滅)ができました。とくに苦戦することなくマイコンが動いたのを覚えています。「自分のコードで現実のモノが動いた」という成功体験こそ、学習を続ける一番のガソリンです。本格的な環境は、それからでも全く遅くありません。

Arduino IDEの具体的な入れ方は、Arduino IDEのダウンロード〜インストール完全ガイドで画像つきで解説しています。

私がPlatformIO(VS Code)を使う理由

一方で、筆者自身が普段の開発で使っているのはPlatformIOです。これはVS Code(エディタ)に入れる拡張機能で、VS Codeでマイコン開発できます。

<私がPlatformIOを使う理由>
理由としては、複数ファイルに分けて開発しやすいことです。Arduino IDEは基本的に「メインのファイルにまとめて書く」前提で、ほかのモジュール(部品ごとのファイル)から読み込ませようとすると、途端に書きづらくなります。少しマイコンを動かしたいだけなら手軽で優秀なのですが、ファイルを分けてきちんと作り込む段階になると不便で、私はPlatformIOに移りました。
加えて、ベースがVS Codeなのでコード補完・定義ジャンプが優秀で開発効率が上がり、Gitとの連携も一体。最近はGitHub CopilotのようなAI支援もそのまま使えます。設定ファイル(platformio.ini)で開発環境を固定・再現でき、複数のボードやマイコンを1つの環境で扱えるのも実務的で便利です。
実際の現場でも、コードを書くのはVS Code、ビルドは専用のコンパイラ(GHSやGCCなど)という構成が多く、Arduinoの段階からVS Codeに慣れておくと実務に入った時のギャップが少ないかもしれないですね。

PlatformIOは少し設定にクセがありますが、VS Code+PlatformIOで作るArduino開発環境(構築手順)で、初学者でも構築できるように順番に解説しています。「VS CodeでArduinoを動かしたい」という方は、そちらを参考にしてください。

移行するときにつまずく2つ

Arduino IDEでひととおり書けるようになってからPlatformIOへ移ると、それまで通っていたコードがビルドできなくなります。原因はほぼ2つに決まっているので、先に知っておいてください。

まず前提として、PlatformIOは .ino のままでもビルドできます。ただし公式は、.ino のままだと補完とコード検査が正しく働かない、あるいは無効になると書いています。だから実際には .cpp に直して使うのが基本で、そのときに次の2つが足りなくなります。

.cpp にすると足りなくなるもの

  1. #include <Arduino.h> をファイルの先頭に書く
  2. 自分で作った関数を、呼び出すより前に宣言するsetuploop は除く)

Arduino IDEは、この2つを裏で自動的に足してくれていました。だから .ino では「関数を下に書いて上から呼ぶ」が通ります。PlatformIOで .cpp にすると、その自動処理が無くなるだけです。

Arduino IDE(.ino)では通る書き方

void setup()
{
    Serial.begin(9600);
    printTemp(25);          /* 下で定義した関数を、上から呼べる */
}

void loop()
{
}

void printTemp(int t)
{
    Serial.println(t);
}
PlatformIO(.cpp)で書くとき

#include <Arduino.h>      /* ① これを足す */

void printTemp(int t);      /* ② 呼ぶ前に宣言する */

void setup()
{
    Serial.begin(9600);
    printTemp(25);
}

void loop()
{
}

void printTemp(int t)
{
    Serial.println(t);
}

この2つは、C言語ドリルの関数のプロトタイプ宣言でやったことそのものです。Arduino IDEが隠していたぶんが、PlatformIOでは表に出てくる、と考えてください。

なお、Arduino IDEで作ったプロジェクトは、PlatformIOの画面から Import Arduino Project で読み込めます。読み込むとPlatformIO用のフォルダが新しく作られ、src の下に元の .ino が入ります。元のファイルとは別物になるので、Arduino IDE側はそのまま残ります。

出典:PlatformIO公式ドキュメント「Convert Arduino file to C++ manually」

どっちを選ぶ?レベル別おすすめと次の一歩

結論を、レベル別に整理します。迷ったら上から順に進めばOKです。

  • はじめて〜まず動かしたい(初心者)Arduino IDEIDEの導入手順
  • 基本に慣れた、または本格的に作りたい・実務を見据えたい(脱初心者) → VS Code+PlatformIOPlatformIOの導入手順
  • PCに何も入れずにまず試したい → ブラウザで使うCloud Editor(クラウド版・旧Web Editor)もあり

大事なのは、環境選びで止まらないこと。最初はIDEでさっと始め、必要を感じたらPlatformIOへ乗り換える。この順番が、遠回りがなくおすすめです。

よくある質問(FAQ)

PlatformIOは初心者には難しい?

正直、設定まわりはArduino IDEより少し複雑です。とはいえ、手順どおりに進めれば初学者でも環境構築は可能。つまずきやすい所はPlatformIOの導入手順で先回りして解説しています。まずはIDEで基本を掴んでから移ると、よりスムーズです。

Arduino IDEからPlatformIOに移行できる?

できます。文法そのものはどちらもC++なので、IDEで覚えた知識は活かせます。ただしそのまま貼っただけではビルドが通りません#include <Arduino.h> と関数の前方宣言が要るためで、詳しくは移行するときにつまずく2つにまとめました。実際に筆者も、最初はIDEで学び、必要を感じてからPlatformIOへ移っています。

Cloud Editor(クラウド版)はどんな時に使う?

ブラウザだけで動くので、PCにソフトを入れたくない・別のPCでも使いたいといった場面に向きます。手軽な反面、オフラインや細かいカスタマイズには弱いので、本格的に続けるならArduino IDEかPlatformIOをPCに入れるのが基本です。

結局、最初はどっちを入れればいい?

初心者はArduino IDEです。これ一択で迷う必要はありません。まずIDEで「動かす楽しさ」を体験し、複数ファイルでの開発やGit・補完が欲しくなったら、そのときにVS Code+PlatformIOを検討すれば十分です。

まとめ|まずはIDE、慣れたらPlatformIO

最後に、この記事の要点を整理します。

  • 初心者はArduino IDE:導入が簡単・情報が多く、まず動かす成功体験を得やすい
  • 脱初心者はVS Code+PlatformIO:複数ファイル管理・補完・Git・AI支援に強く、実務に近い
  • 選び方:まずIDEで始め、不便を感じたらPlatformIOへ。環境選びで立ち止まらない

Arduinoそのものを知りたい方はArduinoとは?できること・種類の解説へ。環境が決まったら、実際に手を動かすArduino基礎ドリルへ進んでください。組込み学習全体の進め方は未経験から組込みエンジニアになる全体ロードマップにまとめています。

各ソフトの最新版とバージョンは、Arduino公式(ソフトウェア)PlatformIO公式サイトで確認できます。