LoginSignup
16
18

More than 5 years have passed since last update.

ESP32 を AE-FT2232 でつないで OpenOCD+GDBでデバッグ

Posted at

はじめに

先日、ESP32 を FT232H でつないで OpenOCD+GDBでデバッグ という記事を書きました。

これは、プログラム書き込み(UART接続)に FT232Rを使い、デバッグ(JTAG接続)にFT232H を使うという、FT232シリーズを2個使うものでした。

FT232シリーズには、デュアルチャネルのものがあり、それ1個で(USBケーブルも1本で)ESP32とつなぐことができたので、その方法を紹介します。

AE-FT2232

FT232シリーズで、MPSSE機能が使えて、デュアルチャネルなものなら何でもいいと思うのですが、ここでは秋月電子の AE-FT2232 (¥1,450-)を用います。(電子工作で必要なものはとりあえず秋月で探して、無ければ他の店を検討するのがいいと思ってます。)

M-02990.jpg

ドライバインストール

ドライバのインストールには、ESP32 を FT232H でつないで OpenOCD+GDBでデバッグ と同様に Zadig を用います。

AE-FT2232をPCに接続すると、仮想COMポートとして認識されます。デュアルチャネルなので2個出現します(COM1はマザボに付いてるポートです)。

ft2232-1.png

ここでは1番目をデバッグ用、2番目をプログラム書き込み用とします。(最初、逆で試していたのですが、なぜか成功しませんでした。。。)

Zadig を使って、「Dual RS232 (Interface 0)」のドライバを WinUSB に置き換えます。

ft2232-2.png

置き換えが成功すると、仮想COMポートが一つ減って、ユニバーサル シリアル バス デバイス に 「Dual RS232」が増えます。

ft2232-3.png

配線

2つのチャネルの呼び方に統一感が無くて混乱しがちなのでまとめておきます。

日本語 番号 アルファベット
1番目 0 A
2番目 1 B

1番目をデバッグ用、2番目を書き込み用としたので、ADn がデバッグ用、BDn が書き込み用です。ACn や BCn が何なのか気になりますが、使わないので気にしないことにします。

AE-FT2232にはI/O電圧用の3.3Vレギュレータが乗っていないので、外部で作った3.3VをAE-FT2232に入力してやる必要があります。そのため、 JP2AとJP2Bを外して、VCCIOA,VCCIOB に3.3Vを接続します。

AE-FT2232ピン名 信号名 ESP32ピン名
- 3.3V 3V3
VCCIOA 3.3V -
VCCIOB 3.3V -
AD0 TCK GPIO13
AD1 TDI GPIO12
AD2 TDO GPIO15
AD3 TMS GPIO14
BD0(TXD) RXD0
BD1(RXD) TXD0
GND GND GND

繰り返しになりますが、 JP2AとJP2Bを外してください。 (大事なことなので2度いいました。)

このほかに、例によって EN と GPIO0 の配線も必要です。

Lチカを試すなら GPIO4 にLEDを繋ぎましょう。

配線イメージを載せておきます。

DSC_0904.JPG

スイッチサイエンスさんの ESP-WROOM-32ピッチ変換済みモジュール《フル版》α版 を使用しました。ブレッドボードに挿すと幅が足りなくて配線しにくいので、メスのピンヘッダを半田付けして使っています。

設定ファイル

ESP32 を FT232H でつないで OpenOCD+GDBでデバッグ とほぼ同じなのですが、違う点が一つだけあります。

esp32.cfg の編集で、
source [find interface/ftdi/tumpa.cfg]

source [find interface/ftdi/um232h.cfg]
にしてましたが、今回は
source [find interface/ftdi/esp32_devkitj_v1.cfg]
とします。

(DevKitJ とは、 ESP‑WROVER‑KIT のことのようです。)

おわりに

その他は、ESP32 を FT232H でつないで OpenOCD+GDBでデバッグ と同じです。

ESP32をEclipse上でデバッグする も、もちろん可能です。

ハードウェア的には ESP‑WROVER‑KIT と同じなので、それを使ってもいいのですが、残念ながら大きすぎます。

スイッチサイエンスさんあたりで、FT2322搭載のESP32開発ボードを用意していただけたらいいなと思っています。

ポエム

ブレッドボードフレンドリーにするためには、900mil にする必要がある。
しかしそうするとピン配列のシルク印刷ができないか、無理に書いても読みにくくなってしまう。
もうメスピンヘッダを使う前提で作ってもいいのではないだろうか。
しかしブレッドボードに固定できないのも考え物だ。
ブレッドボードに固定するためだけのピンを用意するのはどうだろうか。
いや、ダミーにするよりも、よく使われる10本程度を300milで並べたらどうだろう。
他のピンも使いたければ、メスピンヘッダを装着して使うようにすればいい。

esp32beakout.png

(´-`).。oO(誰か作ってくれないかな)

16
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
18