
ESP-WROOM-02 の間で通信するのに難儀した件
ESP-WROOM-02 を 2つ用意して、一方を HTTP サーバー、他方は HTTP クライアントとして動かそうとしたのですが、難儀したのでメモします。
当初 HTTP GET リクエストするも、エラーコード: -1(CONNECTION_REFUSED) が返ってきて失敗。
スマホやパソコンからリクエスト →○→ ESP-WROOM-02 サーバー
ESP-WROOM-02 クライアントからリクエスト →○→ 普通のアクセスポイント/普通のウェブサイト
ESP-WROOM-02 クライアントからリクエスト →×→ ESP-WROOM-02 サーバー
な状態だったので、「ESP-WROOM-02 クライアント」のプログラムが怪しいようです。
ESP-WROOM-02 クライアント側の初期化周り
void setup() {
Serial.begin(115200);
delay(10);
WiFi.mode(WIFI_STA); // ← これを追加したら AP モードの ESP-WROOM-02 サーバーに GET リクエストできました
WiFi.begin(ssid, password); // SSID、パスワードは適切な値に
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
}
なまじ、普通のアクセスポイントとウェブサイトにアクセスできていたため気づきませんでした。
クライアント側は、WiFi.begin の前に、WiFi.mode(WIFI_STA) を明示的に指定しましょう。
Arduino core for ESP8266 WiFi chip 2.2.0
Arduino 1.6.8
参考情報)
esp8266 to esp8266 #1664