Changes between Version 11 and Version 12 of esp32_setup
- Timestamp:
- Jul 8, 2017 6:05:27 PM (7 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
esp32_setup
v11 v12 2 2 3 3 ESP-WROOM-32は、Xtensa Dual-Core 32-bit LX6 マイクロプロセッサを搭載する、上海のESPRESSIF社が開発した無線モジュールです。WiFiとBluetooth v4.2に対応しています。 4 開発ボードはスイッチサイエンスでも販売されている (要追記)他にも、ESPRESSIF社からESP32-DevKitCなどが発売さています。4 開発ボードはスイッチサイエンスでも販売されている[https://www.switch-science.com/catalog/3210/ ESPr® Developer 32]の他にも、ESPRESSIF社からESP32-DevKitCなどが発売さています。 5 5 6 6 本ページでは、このESP-WROOM-32をArduinoIDEで開発するためのセットアップとATコマンドモードのセットアップ手順を記述します。記述内容は2017/04/15現在のものであるため、最新版では内容は変更されている場合があります。必要に応じて下記の資料[https://github.com/espressif/arduino-esp32 Arduino Core for ESP32 - Github]などを参照してください。 7 8 また、セットアップが終わったあとの開発に関しては、[http://trac.switch-science.com/wiki/esp32_tips ESP-WROOM-32に関するTIPS]も御覧ください。 7 9 8 10 == ESP-WROOM-32 仕様 == … … 105 107 106 108 107 == ATコマンドモードのセットアップ( 現在未対応) ==109 == ATコマンドモードのセットアップ(2016/6対応) == 108 110 デフォルトでは検査用のファームウェアが書き込まれています([https://www.esp32.com/viewtopic.php?t=484#p5200 参照])。ATコマンドとは別のコマンドをやり取りできます([https://www.esp32.com/viewtopic.php?t=484#p5423 参照、ただし公式にはサポート外])。通信速度115200bps、改行モードCR+LFでコマンドの送信がができます。下は、ArduinoIDEでシリアルモニタを開いたときの様子です。 109 111 … … 114 116 ESP32のファームウェアは、ArduinoIDEで開発をすると上書きされてしまうので、ArduinoIDEで開発を行ったあとにATコマンドモードに戻したくなった場合、別の手順を踏む必要があります。 115 117 116 ATコマンド用のファームウエアは[http://espressif.com/en/support/download/at?keys=&field_type_tid%5B%5D=13 ESPRESSIF社 ダウンロード]からダウンロード ~~できます。~~2017/04/15現在できません。現在製作中の模様です。[https://esp32.com/viewtopic.php?f=2&t=1058 公式Topics参照]。118 ATコマンド用のファームウエアは[http://espressif.com/en/support/download/at?keys=&field_type_tid%5B%5D=13 ESPRESSIF社 ダウンロード]からダウンロードできます。~~2017/04/15現在できません。現在製作中の模様です。[https://esp32.com/viewtopic.php?f=2&t=1058 公式Topics参照]。~~2016/06/06付で公開されました。 117 119 118 ファームウエアの書き込みには、ESPRESIF社公式のFlash Download Toolsを使います。2017/0 4/20現在最新版はV3.4.4です。[http://espressif.com/en/support/download/other-tools ESPRESSIF社 ダウンロード-ツール]からダウンロードできます。120 ファームウエアの書き込みには、ESPRESIF社公式のFlash Download Toolsを使います。2017/07/08現在最新版はV3.4.8.4です。[http://espressif.com/en/support/download/other-tools ESPRESSIF社 ダウンロード-ツール]からダウンロードできます。 119 121 120 122 起動すると書き込み対象のボードの選択画面になります。今回は対象がESP32モジュールなので、`ESP32 DownloadTool`を選択します。 … … 129 131 MACアドレスは隠してあります。 130 132 133 ダウンロードしたATコマンド用のファームウェアの設定は、 `esp32_at_bin_v0.10\ESP32_AT_BIN\download.config` に記載されています。執筆時点でのファームのバージョンは0.10です。 134 いかにその内容を示します。 135 136 * SPI SPEED: 40 MHz 137 * SPI MODE: DIO 138 * FLASH SIZE: Detected(ESP-WROOM-32の場合は32MBbitにしておきます) 139 ||Path||Offset|| 140 ||bootloader/bootloader.bin||0x1000|| 141 ||phy_init_data.bim||0xf000|| 142 ||esp-at.bin||0x100000|| 143 ||partitions_at.bin||0x8000|| 144 145 以上のように設定をして、STARTを押します。正しく書き込めれば、FINISHとでるはずです。 146 147 [[Image(espflash-at.png)]] 148 149 アドレスは隠してあります。 150 151 シリアルモニタなどで動作を確認してみます。下の画像は起動時にシリアルモニタに表示されたログです。 152 153 [[Image(espflash-atboot.png)]] 154 155 ==== ATコマンドをやりとりする ==== 156 157 一般的に、ESP-WROOM-32の開発ボードは、基板上のUSB-Serial変換はESP-WROOM-32モジュールのUART0ピンと接続されています。これは、フラッシュへの書き込みを行うのが目的のためです。 158 159 一方で、ATコマンドはUART1ピンで送受信するようになっています。そのため、開発ボードの他にもう一台USB-Serial変換を用意して接続する必要があります。(ESP32 AT Instruction Set and Examples の `1.2 Downloading AT Firmware into Flash` 参照)(余談ですが、UART1とESP32内部回路のU1は別のようです)。 160 161 162 必要最低限の接続は次のようになっています。 163 164 ||USB/Serial||ESP-WROOM-32|| 165 ||TX||GPIO16|| 166 ||RX||GPIO17|| 167 ||GND||GND|| 168 169 通信には3.3V対応のものをつかってください。スイッチサイエンスの[https://www.switch-science.com/catalog/2782/ FTDI USBシリアル変換アダプター Rev.2]など使う場合は3.3Vに変更するのを忘れないようにしてください。 170 171 [[Image(esp32-ateg.png)]] 172 173 画像は`AT+RST`および`AT`と送信したときの応答です。`AT+RST`と送ったときは、開発ボードのシリアルにブートログが流れていることが確認できます。 174 175 ここまで動作すれば、ATコマンド用のファームウェアの書き込みは完了です。バージョン0.10ではまだWiFiのコマンドしか用意されていないようです。 176 177 ==== ota data partition invalid と表示される==== 178 179 ESP32 AT Instruction Set and Examples の `1.2 Downloading AT Firmware into Flash` によると、`ota data partition invalid`と表示されるときは`ota data`とラベルされているアドレス([https://github.com/espressif/esp32-at/blob/master/partitions_at.csv 参照])に`blank.bin`を書き込むように、とあります。 180 181 つまり、`blank.bin`をオフセット`0x10000`に書き込みます。実際に書き込んでみたところ、正常に動作するようになりました。