Arduino資料一覧

ESP32(ESP-WROOM-32)でWi-Fiを使う手順(ESP32をWebサーバとして使用)

2017/08/19更新

対応バージョン: Arduino IDE 1.8.2

ESP32(ESP-WROOM-32)でWi-Fiを使う手順を示す。

ここではESP32上にWebサーバを動作させて外部からHTTPでアクセスしてLEDをON/OFFさせてみる。

尚、この作業をするにはWi-Fiが利用できる(アクセスポイントに接続でき、かつDHCPサーバからIPアドレスが割り振られる)環境である必要がある。

また、Arduino IDEを動かす母艦はUbuntu 16.04とする。

準備

母艦側

まず最初に以下の資料をもとにArduino core for the ESP32ライブラリをインストールする。

関連資料・記事

esp32ディレクトリの中にlibraries/WiFi/examples/SimpleWiFiServer/SimpleWiFiServer.inoというファイルがありESP32をWebサーバとして動作させるスケッチなので、これを編集してWi-FiのSSIDとパスワードを設定する。

SimpleWiFiServer.ino
:
const char* ssid     = "yourssid"; <- SSIDを設定
const char* password = "yourpasswd"; <- パスワードを設定
:
void setup()
{
    Serial.begin(115200);
    pinMode(5, OUTPUT);      // set the LED pin mode
:

ESP32側

ここまでできたらESP32にLEDをつなぐ。結線は以下の通りとする。

IO 5 → 330Ω抵抗 → LED(アノード) → LED(カソード) → GND

ピン番号は任意でよいが、スケッチ上で5番を指定しているので変更する場合はスケッチも合わせて変更する。

動作確認

結線ができたらIDEの[ツール] > [シリアルモニタ]を開いておき、スケッチをESP32に書き込む。

書き込みが終わるとシリアルモニタにESP32の情報が出力され、最後にESP32のIPアドレスが表示される。

ets Jun  8 2016 00:22:57

rst:0x10 (RTCWDT_RTC_RESET),boot:0x12 (SPI_FAST_FLASH_BOOT)
configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:1
load:0x3fff0010,len:4
load:0x3fff0014,len:708
load:0x40078000,len:0
load:0x40078000,len:11460
entry 0x400789f4


Connecting to xxxxx
....
WiFi connected.
IP address:
xxx.xxx.xxx.xxx

あとはこのIPアドレスに対してH(ON)かL(OFF)を指定すればLEDのON/OFFが制御できる。

http://xxx.xxx.xxx.xxx/H (ON)
http://xxx.xxx.xxx.xxx/L (OFF)

参考サイト