ESP32 VSCodeのPlatformIO+JTAGで環境構築する

  • 2021.08.15
  • IDE
ESP32 VSCodeのPlatformIO+JTAGで環境構築する

皆さま こんにちは。

こちらのサイトでは ESP32 に関する情報やプログラムを紹介していく予定です。

ESP32で良く使われている開発環境は Arduino と ESP-IDF の2つです。

Arduinoは使い勝手が良さそうだけれど、かゆいところに手が届きにくいようです。

ESP-IDFの方はかゆいところに手が届く分、手間がかかりそうです。

どちらの環境もVSCode(PlatformIO)のプロジェクトを作成する時に選択することができます。

開発環境

以下の通りです。

ホストPC :
Windows10
(申し訳ありません。ホスト環境はWindowsのみとなります)

開発ボード :
ESP32-DevKitCーVE 1個

デバッガー(H/W):
FT2232D

デバッガー (S/W) :
Visual Studio Code + PlatformIO + ESP-IDF framework (たまには Arduino も?)

高価なものを使いたくないので、FT2232DというUSBシリアルモジュールをJTAGデバッガーとして開発環境を構築してみます。

ブロック図

PCとESP32の開発ボードをUSBケーブルで接続します。
JTAG機能も持つFT2232DのボードとPCをUSBケーブルで接続します。
そしてESP32とFT2232Dの間 (JTAG I/F と UART I/F) を接続します。

用意するもの

秋月電子で揃えられるものを選んだので、通販コードも載せておきます。

品名 型式など 通販コード 数量
ESP32開発ボード ESP32-DevKitC-VE M-15674 1
USBシリアル2CH変換モジュール FT2232D M-02990 1
USBケーブル TypeA-miniB C-07606 1
USBケーブル TypeA-microB C-07607 1
ジャンパーワイヤー オス-オス C-05159 1
ブレッドボード BB-801 P-05294 3

その他に動作確認用として LED と 300Ω程度の抵抗やクリップ付きコード等も揃えておくと良いでしょう。

ボード・モジュールの外観を載せておきます。

FT2232D (USBシリアル2CH変換モジュール)

EPS32-DevKitC-VE (開発ボード)

開発ボードは下表の赤枠で囲ったものを推奨します。(2021年8月現在において)

金属ケースがL字型になっているものが新しいもので フラッシュが 4MB から 8MB に増えていて、かつ 8MB のPSRAM が搭載されています。

(ただし、その分 GPIOポートが若干少ない)

Antenna の項目が PCB と書かれているものはプリント基板上のパターンでアンテナを構成しているものになり、別途アンテナを用意する必要がありません。

実験用としては、こちらで充分でしょう。

接続図

下の図にある2つのジャンパーピンは不要ですから、とりはずしておきます。(別途電源を接続します)

接続表

FT2232D 名称 ESP32 名称 JATG信号名
12 BD1(RXD) J3-2 GPIO23 (TXD1として使う)
13 BD0(TXD) J3-3 GPIO22 (RXD1として使う)
17 VCCIOB J2-1 3.3V
18 VCCIOA J2-1 3.3V
23 GND J2-14 GND
30 AC2 J2-2 EN
37 AD3 J2-12 GPIO14 MTMS
38 AD2 J3-16 GPIO15 MTDO
39 AD1 J2-13 GPIO12 MTDI
40 AD0 J2-15 GPIO13 MTCK

図と表を照らし合わせながら、誤りのないように接続します。

ブレッドボードに載せて配線した様子です。

PCソフトウェアのインストール

Microsoft製の無料エディタである Visual Studio Code とその拡張機能の PlatformIO をインストールします。
その後に、USBドライバーをインストールします。

Visual Studio Code のインストール

まず Visual Studio Code (以降 VSCode と呼びます)をインストールします。

一番左の Windows と書かれた大きなボタンを押しインストーラーをダウンロードして実行します。

VSCodeUseSetup-x64… .exe を実行します。
インストール画面の内容に従っていけば良いでしょう。

完了ボタンを押すと、VSCode が起動します。

PlatformIO のインストール

続いて、PlatformIO をインストールします。

PlatformIOはVSCode上からインストールすることができます。

Ctrl + Shift + x キーで拡張機能を使うことができます。
または画面左端のアクティビティバーの下のアイコンをクリックします。

枠内にカーソルが出るので、platformio と入力します。
一番上に PlatformIO IDE が表示されるので、右側の青い Installボタンを押します。
インストールには、しばらく時間がかかります。

右下に PlatformIO Installer:Finish! Please restart VSCode. と表示されたら VSCode を終了して再度立ち上げます。

たびたび日本語の環境をつくるか聞いてくるので、必要であればインストールします。

(こちらの環境では日本語環境を使わない予定ですから、メニューの説明は英語を使います)

画面左側の縦の帯をアクティビティバーと言います。
その一番下に追加されたアイコンをクリックして PlatformIO を起動します。

出てきたメニュー PIO Home の下の Open を選択し右側にある Quick Access にプロジェクト名などを入力していきます。

一番上の New Project を選択すると Project Wizard が出るので、それぞれについて

Name : ESP32E-Hello_world

Board : Espressif ESP32 Dev Module (入力または選択)

ここは Espressif あたりまで入力すると候補が出てくるので、その中から ESP32 Dev Module を選択すれば良いでしょう。

Framework : Espressif IoT Development Framework (選択)

と入力(または選択)し、Location: Use default location のチェックをはずします。

(どこに保存されるのか、よくわからないために各自で保存場所を設定するためです)

そして下の方で、保存するフォルダを選択します。

こちらの環境では D:\pio を選択しました。

そして右下の Finishボタンを選択します。

(注)Name について

このサイトではプロジェクトをつくる時の ESP32E- の “E” の文字を、使うフレームワークによって決めています。
Framework に Espressif IoT Development Framework を使う場合には “E” を、Arduino を使う場合には “A” を使うことにしますので覚えておいてください。

こちらのサイトでは主に Espressif IoT Development Framework を使う予定にしています。


以下のメッセージが出るので、チェックボックスをチェックして、Yes, I trust the authors のボタンを押します。

(このフォルダの作者を信頼するか?という質問ですから Yes を押します)

プロジェクトがつくられるまで、しばらく時間がかかります。

FT2232D用USBドライバーのインストール

こちら のサイトの枠で囲まれた Download の下にある Zadig2.5(数値は執筆時点のバージョン)をクリックします。

ダウンロードしたファイルは実行ファイルそのものですね。忘れない場所にフォルダをつくって、その中に入れておきます。
執筆時点の実行ファイルは zadig-2.5.exe です。

それでは FT2232D にUSBケーブル(TypeA-miniB)をつないだ後に、zadig-2.5.exe を起動します。

Optionメニューを選択し、一番上の List All Devices を選択します。

上の細長いコンボボックスから Dual RS232C (Interface 0) を選択します。

(Interface 0 と 1 があるので 0 を選択する)

そして下の大きなボタンを押してドライバーをインストールします。

ドライバーの確認

Windowsのスタートボタンを右クリックしてデバイスマネージャーを選択します。

ユニバーサル シリアル バスデバイス のところに Dual RS232C と表示されていることを確認します。

それからポート(COM と LPT) のところに USB Serial Port(COM20) と書かれているのでこの番号をメモ(FT2232D COM20 等)しておきます。
もしUSB Serial Port が複数表示されていたら、USBケーブルを抜き差しして、どのポートなのか確認をしておきます。

このポートはUARTの通信試験やデバッグ用途として使うことができます。

それでは、もう一本のUSBケーブル(TypeA-microB)をESP32-DevKitC-VEにつなぎます。
赤いLEDが点灯することを確認します。(もし点灯しない場合はすぐにケーブルを抜いて配線を確かめます)

ここでもう一度デバイスマネージャーを開きます。
Silicon Labs CP210x USB から始まる COMポートの番号をメモ(ESP32 COM4 等)しておきます。

今回は初めての説明だったので、画像を入れて詳しく説明しました。
次回はサンプルプログラムを動かしてみます。

お疲れさまでした。

この記事の続きは こちら からどうぞ。

IDEカテゴリの最新記事