ESP-13を使ってみる

Arduino IDEを使ってスケッチを書き込む


Arduino-IDEを使ったESP-13(ESP-WROOM-02)へのスケッチ書き込み方法は、あちこちで紹介されていますので
今更私が紹介することは何もないです。
こちらこちらに 詳し く紹介されています。
特に以下のページの回路図はきれいで非常に参考になりました。
ESP-WROOM-02 > ユニバーサル基板でも動いた > 使用部品 / 実装の写真 / 回路図

<余談>
ESP-13とESP-WROOM-02はピンコンパチですが、製造者が違います。
ESP-13:ShenZhen AI-thinker CO.,LTD
ESP-WROOM-02:Espressif Inc(Espressif IncはESP8266EXチップの製造元)
こ ちらに公開されているスケッチを使って、両者のチップ情報を取り出してみました。

ESP-13
Core Version = 2_4_1
CPU Frequency = 80 MHz
SDK version = 2.2.1(cfd48f3)
Boot version = 4
Boot Mode = 1
Flash Chip IDE Size = 1048576 byte
Flash Chip Real Size = 4194304 byte
Flash Frequency = 40000000 Hz
Flash Chip Mode = QIO
Free Heap Size = 45400
Free Sketch Size = 770048
Sketch Size = 257040


ESP-WROOM-02(4MBytes Version)
Core Version = 2_4_1
CPU Frequency = 80 MHz
SDK version = 2.2.1(cfd48f3)
Boot version = 31
Boot Mode = 1
Flash Chip IDE Size = 1048576 byte
Flash Chip Real Size = 4194304 byte
Flash Frequency = 40000000 Hz
Flash Chip Mode = QIO
Free Heap Size = 46224
Free Sketch Size = 770048
Sketch Size = 257040


ESP-WROOM-02(2MBytes Version)
Core Version = 2_4_1
CPU Frequency = 80 MHz
SDK version = 2.2.1(cfd48f3)
Boot version = 31
Boot Mode = 1
Flash Chip IDE Size = 1048576 byte
Flash Chip Real Size = 2097152 byte
Flash Frequency = 40000000 Hz
Flash Chip Mode = QIO
Free Heap Size = 46528
Free Sketch Size = 770048
Sketch Size = 257040


全く同じ条件で書き込んだのにFree Heap Sizeが微妙に違っています。

</余談>

上記のページではGPIO_2をPullUpしています。
GPIO_2のPullUpについては悩みました。
こ ちらのページの「Boot Messages and Modes」には、以下のコメントが記載されています。
note: - GPIO2 is used as TX output and the internal Pullup is enabled on boot.

また、以下のページの結線図ではGPIO_2はN/Cとなっています。
Upload sketch to the ESP8266 (ESP-07/ESP-12) using Arduino IDE
ESP8266 WiFi – ESP-12 module aansluiten
Programming and running the ESP12-E

そこで、しばらくGPIO_2はオープンにしていましたが、スケッチの書き込みができたりできなかったり安定しません。
スケッチ書き込み時にはGPIO_2はPullUpした方がいいです。

今回、USB-TTL変換ケーブルではなく、このようなUSB-TTL変換基盤を使いました。
ESPへの電源(3.3V)もこの基盤からとりました。
CP2102(に限らずほとんどのUSB-TTL変換チップ)はチップ本体にレギュレータを内蔵していて、
3.3Vを出力することができますが、データシートに よると最大100mAなので
スケッチの書き込みはできますが、Wifiを使うスケッチでは実行時にクラッシュ(StackOverFlow)します。
スケッチを安定して動かすには、5Vをレギュレータで3.3Vに変換して、ESPに給電しないと安定して動きません。



今回、変換基盤にはAITENDOの製品を使いましたが、AITENDOの製品は、パターン付きとパターンなしの2種類あります。


左がパターン付き、右がパターンなしですが、表面は同じです。


パターン付きの基盤はチップ抵抗を使うことで、CH_PDとRSETをPullUpすることができます。
またパターンをショートすることで、以下のようにすることができます。
GPIO_15:GND
GPIO_2:3.3V
GPIO_0:GNDまたは3.3V
こちらで チップ抵抗を使った写真が公開されています。

今回はパターンなしの基盤を使いましたが、パターン付きの基盤を使えば(はんだ付けの技術が必要ですが)部品点数はかなり減らすことができます。

最近になってこのようなT型の変換基盤も発見しました。


右が千石で見つけた基盤(\180) 左が秋月で見つけた基盤(\80)
サイズと値段が反比例します。


次回はESP-13の実行環境を紹介します。