ESP32の基板をつくっているが、
書き込みのためだけにUSB-serial変換器を買うのはなんかもったいない気がしたので、ESP32評価基板を買って、そこから別のESP32モジュールに書き込めるのではないかと考えた。
まずはESP32評価ボードを購入し、動作確認をした。
評価ボード
書き込み手順
接続
ChatGPTに聞いてみたが間違っている接続を提示された

評価ボードのTX-->書き込み対象のRX
評価ボードのRX-->書き込み対象のTX
評価ボードの3.3V-->書き込み対象の3.3V
評価ボードのGND-->書き込み対象のGND
TX/RXの接続が間違っている
評価ボードのTX/RXは評価ボードに乗っているESP32のもの

なので、CP2102のTX/RXからの接続を考えると、
CP2102のRX-->評価ボードのTX-->書き込み対象のTX
CP2102のTX-->評価ボードのRX-->書き込み対象のRX
https://dl.espressif.com/dl/schematics/esp32_devkitc_v4-sch.pdf
これに気付かず、USBシリアル変換モジュールを買ってしまった・・・
電源=3.3VやGNDは普通に接続し、
GPIO0はGNDにジャンパーする。
ENは書き込みするときにGNDに落とす(タクトスイッチなどで)
プログラム
Arduino IDEで、Board Managerからesp32のボード情報をダウンロードするが、
結構時間がかかる(5分ぐらい?)

ボードはこの評価ボードと同じ、ESP32 Dev Moduleを選択する。
LED点滅プログラムはChatGPTに書かせて、LEDのポートは自分の基板に合わせる。
// ESP32 DevKitC / ESP32-WROOM-32 LED点滅サンプル const int LED_PIN = 2; // 内蔵LEDピン(多くのDevKitCではGPIO2) void setup() { pinMode(LED_PIN, OUTPUT); // 出力モードに設定 } void loop() { digitalWrite(LED_PIN, HIGH); // LED点灯 delay(400); // 1秒待つ digitalWrite(LED_PIN, LOW); // LED消灯 delay(1000); // 1秒待つ }
その他
今回の基板はESP32の裏面GNDパッドをはんだ付けしていないが、マイコンは動いた。データシートには裏面パッドのGNDへの接続はMustではないと書かれている。

格安なのにPCB基板も簡単に発注できて、簡単な書き込み回路でよくて、シリアル通信でプログラムが書けてPICやAVRやSTM32で大変な思いをしていた時代が遠い過去のものに。。
![ESP32-DevKitC 開発ボード ESP32 TYPE-C USB CH340C デュアルコアボード WiFi +Bluetooth 2 機能マイクロコントローラー [並行輸入品] ESP32-DevKitC 開発ボード ESP32 TYPE-C USB CH340C デュアルコアボード WiFi +Bluetooth 2 機能マイクロコントローラー [並行輸入品]](https://m.media-amazon.com/images/I/41oHRgD-7SL._SL500_.jpg)



