Merge pull request #23 from j0hnlittle/master

Added password option to AP wifiManager.autoConnect("apname","password")
thank you j0hnlittle
This commit is contained in:
tzapu
2015-12-19 13:41:25 +02:00
2 changed files with 23 additions and 4 deletions
Regular → Executable
+19 -3
View File
@@ -21,22 +21,34 @@ void WiFiManager::begin() {
}
void WiFiManager::begin(char const *apName) {
begin(apName,NULL);
}
void WiFiManager::begin(char const *apName, char const *apPasswd) {
dnsServer.reset(new DNSServer());
server.reset(new ESP8266WebServer(80));
DEBUG_PRINT("");
_apName = apName;
_apPasswd = apPasswd;
start = millis();
DEBUG_PRINT("Configuring access point... ");
DEBUG_PRINT(_apName);
if (_apPasswd != NULL)
DEBUG_PRINT(_apPasswd);
//optional soft ip config
if (_ip) {
DEBUG_PRINT("Custom IP/GW/Subnet");
WiFi.softAPConfig(_ip, _gw, _sn);
}
WiFi.softAP(_apName);//TODO: add password option
if (_apPasswd != NULL)
WiFi.softAP(_apName, _apPasswd);//password option
else
WiFi.softAP(_apName);
delay(500); // Without delay I've seen the IP address blank
DEBUG_PRINT("AP IP address: ");
DEBUG_PRINT(WiFi.softAPIP());
@@ -59,10 +71,14 @@ void WiFiManager::begin(char const *apName) {
boolean WiFiManager::autoConnect() {
String ssid = "ESP" + String(ESP.getChipId());
return autoConnect(ssid.c_str());
return autoConnect(ssid.c_str(),NULL);
}
boolean WiFiManager::autoConnect(char const *apName) {
return autoConnect(apName,NULL);
}
boolean WiFiManager::autoConnect(char const *apName, char const *apPasswd) {
DEBUG_PRINT("");
DEBUG_PRINT("AutoConnect");
@@ -91,7 +107,7 @@ boolean WiFiManager::autoConnect(char const *apName) {
_apcallback();
}
connect = false;
begin(apName);
begin(apName,apPasswd);
bool looping = true;
while(timeout == 0 || millis() < start + timeout) {
Regular → Executable
+4 -1
View File
@@ -27,7 +27,8 @@ public:
boolean autoConnect();
boolean autoConnect(char const *apName);
boolean autoConnect(char const *apName, char const *apPasswd);
String getSSID();
String getPassword();
@@ -68,9 +69,11 @@ private:
void begin();
void begin(char const *apName);
void begin(char const *apName, char const *apPasswd);
int _eepromStart;
const char* _apName = "no-net";
const char* _apPasswd = "no-net";
String _ssid = "";
String _pass = "";
unsigned long timeout = 0;