皆さま こんにちは。
こちらのサイトでは 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 等)しておきます。

今回は初めての説明だったので、画像を入れて詳しく説明しました。
次回はサンプルプログラムを動かしてみます。
お疲れさまでした。
この記事の続きは こちら からどうぞ。