ESP32 WiFi connect/disconnect

2018年4月13日 - 未分類

ESP32をバッテリー動作さえる場合、省エネに気を使います。もっとも電力消費が大きいのは、WiFiなので、不要なときには、WiFiを切断します。

先ず、接続する場合には、wifiMultiが便利です。


void wifi_setup(){
// WiFi
// attempt to connect to Wifi network:
wifiMulti.addAP(ssid, pass);
wifiMulti.addAP(ssid2,pass2);
Serial.println("Connecting Wifi...");
if(wifiMulti.run() == WL_CONNECTED) {
Serial.println("");
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
}
}

切断するときには、disconnectを使いますが、このdisconnectが1度では、切断されない場合があります。なので、確実に切断するために、statusを見て、切断されるまで、disconnectする必要があります。


void wifi_disconnect(){
while(WiFi.status() == WL_CONNECTED ){
WiFi.disconnect();
delay(2000);
}
}

ちなみに、disconnectしないで、再度、connectしようとすると永久につがりません。

Translate »