はじめての電子工作超入門

第69回 ESP-WROOM-32をArduinoで触ってみよう(環境構築セットアップ~Lチカ編)

Arduinoの互換ボードで、そのサイズやWi-Fiが搭載しているなどの理由から人気があり、本連載でも第32~36回で取り扱ったESP-WROOM-02。今回、その後継として今年の春に発売されたESP-WROOM-32の基本的な使い方や、新たに搭載されたBluetooth(BLE)機能などを扱ってみたいと思います。

今回の電子工作レシピ

完成までの時間目安:60分
必要なパーツ

目次

  1. ESP-WROOM-32って何?
  2. ESP-WROOM-32の機能・性能
  3. Arduinoで使うための環境構築セットアップ
  4. プログラムの作成~Lチカ
  5. まとめ

 

1.ESP-WROOM-32って何?

dav

ESP-WROOM-32

ESP-WROOM-32は、第32回から紹介したESP-WROOM-02と同様、Espressif Systems社が提供しているESP32というチップを搭載したWi-Fi通信やBluetooth(BLE)通信が可能なWi-Fiモジュールのことです。ESP-WROOM-02よりやや大き目ですが、小さいサイズながらもArduinoのプログラムを書き込める(Arduinoとして利用出来る)、Wi-Fi通信が可能、そして安価というメリットを持っています。

 

2.ESP-WROOM-32の機能・性能

下記の表はこれまでのモデルESP-WROOM-02との比較表になります。

左)ESP-WROOM-32 | 右)ESP-WROOM-02

左)ESP-WROOM-32 | 右)ESP-WROOM-02

 

ESP-WROOM-02(ESP8266) ESP-WROOM-32(ESP32)
サイズ 縦20mm × 横18mm 縦25.5mm × 横18mm
CPU Tensilica LX106 @ 80 / 160 MHz Tensilica Xtensa Dual-Core LX6 @ 160 / 240Mhz
RAM 36KB available to user 520 KB
フラッシュメモリ 1, 2, 4, 8, 16 MB 64MB
Wi-Fi 802.11n up to 65 Mbps,
802.11g up to 54 Mbps
802.11n up to 150 Mbps,
802.11g up to 54 Mbps,
802.11 b/g/n/d/e/i/k/r
Bluetooth Bluetooth v4.2 BR/EDR and BLE specification
ピン数 18pin 38pin
電源 3.0~3.6V / 80 mA 2.2~3.6V / 80 mA
利用可能温度 -40℃~125℃ -40℃~125℃

ざっくりとした違いの特徴としては、

  • ESP-WROOM-02よりやや大きい
  • Bluetoothが使える
  • CPU/RAM/フラッシュメモリなどの性能が上がっている
  • ピン数が増えた
  • 電源電圧の幅が広がった

となります。Bluetoothが使えることや性能が上がったことはもちろんですが、ピン数が増えたり電源電圧の幅が広がるのは実際に制作している際に非常に助かる部分ですね。

 

3.Arduinoで使うための環境構築セットアップ

さっそくArduinoとしてESP-WROOM-32を利用していきたいと思います。ESP-WROOM-02の時もそうですが、このボードもUSBで接続して、すぐArduino IDEを立ち上げてプログラムをすぐ書き込み、というわけにはいかず、最初に利用するための環境を構築する必要があります。

今回は、ESPr Developer 32という、基板にはんだづけなどをしなくてもすぐUSBにさして利用できる開発用ボードを使って進めていきたいと思います。

ESPr Developer 32

ESPr Developer 32

環境構築の主な流れ(Windows向け)は下記のとおりです。
構築に関する細かな情報はSWITCH SCIENCEさんのサイトで紹介されていますが、ここではそのポイントを押さえて紹介していきたいと思います。

  1. Arduino IDEにESP32のボードを追加する
  2. ドライバをインストールする
  3. ボードをPCに接続する

 

3-1.Arduino IDEにESP32のボードを追加する

はじめに、Arduino IDEの「ツール」-「ボード」にESP32が選択できるようにするためにボード情報を追加する必要があります。

下記のGithubのサイト上で必要なファイルが公開されていますので、ダウンロードします。

GitHub espressif arduino esp32 Arduino core for the ESP32

画面中央の右側に「Clone or download」というボタンがありますのでそこをクリックして、「Download ZIP」を選択します。

GitHub espressif arduino esp32 Arduino core for the ESP32

ダウンロードしたZIPの中身は下記のようになっていると思います。

d3663c3a7488677838c6d6dbc7aaeca8

これらのフォルダやファイルを、Windowsの場合は下記のArduinoをインストールしている場所に保存します。

例) C:\Program Files (x86)\Arduino\hardware\espressif\esp32\

次に、保存したファイルの中から、tools/get.exeを起動してさらに必要なファイルをダウンロードします。

472a83cae319af6afde8ffe54b127562

get.exeをクリックして起動します。すると、コマンドプロンプトの画面が表示されて、必要なファイルがダウンロードされます。

c4496ce7e93f0567061bf54dcea2a9923

※ダウンロードされたファイルは同じ場所に通常ダウンロードされますが、別の場所(C:\Users\配下など)にダウンロードされた場合は、esp32\tools配下に移してください

例) C:\Program Files (x86)\Arduino\hardware\espressif\esp32\tools\

これで、必要なファイルの準備は整いました。

 

3-2.ドライバをインストールする

次に、ボードのドライバをインストールします。ドライバはUSB UARTを利用するためのドライバが必要なので下記のサイトからダウンロードします。

※過去にESP-WROOM-02などを利用したことがある方はすでにインストールされている可能性がありますのでこの手順はスキップしてください。

544d6d912cd237122c60adc866885e91

UARTドライバのダウンロード

上記のサイトを開くとページの下にそれぞれのOSに合わせたドライバが用意されていますので、ダウンロードしてドライバをインストールしてください。

 

3-3.ボードをPCに接続する

ここまで準備ができたら、実際にESP-WROOM-32のボードをPCに接続します。

PCに接続すると赤色LEDが点灯

PCに接続するとPWRの赤色LEDが点灯

Arduino IDE側でも「ツール」-「シリアルポート」で接続が認識できれば準備は完了です。

 

4.プログラムの作成~Lチカ

準備ができたらさっそくArduino IDEでプログラムを書き込みしてみます。まずはLチカということで、スケッチの例から「01.Basics」-「Blink」プログラムを開きます。

プログラムを開いたら、「ツール」からボードを「ESP32 Dev Module」に設定してプログラムを書き込みしてください。

ide01

プログラムの書き込みが完了すると、無事Lチカができました!
(今回は13番ピンを指定していますので、ESPr Developer32側も13ピンとGNDにLEDを接続しています)

 

まとめ

今回無事ESP-WROOM-32を利用することができましたので、次回はBluetooth通信をしてみたいと思います!

高専ロボコン2016 出場ロボット解剖計画
赤川シホロ

電子工作や新しいデバイスをこよなく愛するエンジニア。日常生活のちょっとしたことを電子工作で作って試して、おもしろく過ごしたいと日々考えています。