以下の内容はhttps://relativelayout.hatenablog.com/entry/2017/07/22/211649より取得しました。


ESP8266をAP+STAモードで使う

AP?STA?

ESP8266 AP STA

ESP8266のモードの話

普段、ESP8266はSTAモードで使っているはず。知らず知らずのうちに。

WiFi.mode(WIFI_STA);

Wi-Fi接続する際に、こういうコードをおまじないのように書いているはず。これがSTAモード。ESP8266がいわゆるWi-Fiの子機(ステーション、STA)になって動作するわけです。

AP+STAモードとは?

言うまでもないですが、STAと振る舞いながら、EPS8266はAP(アクセスポイント、いわゆるWi-Fiの親機)としても振る舞うモード。何に使うのかは別として、簡単にコーディングできます。

#include <ESP8266WiFi.h>

#define AP_SSID "xxxx"
#define AP_PW "yyyy"
#define SOFTAP_SSID "pokio"
#define SOFTAP_PW "pokipokio"

void setup() {
  Serial.begin(115200);
  Serial.println("");

  // AP+STAモードの設定
  WiFi.mode(WIFI_AP_STA);

  // APとして振る舞うためのSSIDとPW情報
  WiFi.softAP(SOFTAP_SSID, SOFTAP_PW);

  // STAとして振る舞うための接続先APのSSIDとPW情報
  WiFi.begin(AP_SSID, AP_PW);

  // APへの接続完了待ち
  while (WiFi.status() != WL_CONNECTED) {
    delay(100);
    Serial.print(". ");
  }
  Serial.println("connected!");
}

void loop() {
  // do nothing
}

ポイントは2点。

  • WiFi.mode(WIFI_AP_STA); でAP+STAモードを指定
  • WiFi.softAP(SOFTAP_SSID, SOFTAP_PW); でAPとして振る舞うの情報を設定

あとはSTAモードと全く同じ。ね、簡単。

実際に動かしてみる

ESP8266 AP STA

シリアルモニターには接続完了の表示が。

ESP8266 AP STA

Macのアクセスポイント一覧には pokio の表示が!AP+STAでちゃんとワークしてそうです。

何に使うのか?

AMAZON DASH BUTTONのハックに便利です。

qiita.com

relativelayout.hatenablog.com

なにかと面倒なAmazon Dash Buttonハック。パケットを監視するマシン・スクリプトが必要になるわけですが、そのためにRPiやパソコンを使うのは面倒というか、勿体ないわけです。そういう処理こそESP8266にやらせて、幸せになりましょう。




以上の内容はhttps://relativelayout.hatenablog.com/entry/2017/07/22/211649より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14