Exemplo n.º 1
0
void setup() {
  //Initialize serial and wait for port to open:
  Serial1.begin(9600);
  SPI.begin();
  while (!Serial1) {
    ; // wait for serial port to connect. Needed for Leonardo only
  }
  
  delay(1200);

  // check for the presence of the shield:
  if (WiFi.status() == WL_NO_SHIELD) {
    Serial1.println("WiFi shield not present");
    // don't continue:
    while (true);
  }

  String fv = WiFi.firmwareVersion();
  if ( fv != "1.1.0" )
    Serial1.println("Please upgrade the firmware");

  // Print WiFi MAC address:
  printMacAddress();

  // scan for existing networks:
  Serial1.println("Scanning available networks...");
  listNetworks();
}
Exemplo n.º 2
0
void WifiControl::setup(String sids[3], String passwords[3])
{
    #if _DEBUG
    Serial.println("WifiControl starting up.");
    #endif

  WiFi.mode(WIFI_STA);
  std::vector<String> networks = listNetworks();

  bool connected = false;
  int wait_time = 10000;

  for(auto ssid : networks) {
    for(int i = 0; i < 3; i++) {
      if(sids[i] == ssid) {
        Serial.println("Connecting to " + ssid);
        WiFi.begin(sids[i].c_str(), passwords[i].c_str());
        wait_time = 10000;
        while (WiFi.waitForConnectResult() != WL_CONNECTED && wait_time > 0) {
          Serial.println("Connection Failed! Trying again...");
          delay(5000);
          wait_time -= 2000;
        }
        connected = WiFi.isConnected();
        if(connected) {
          break;
        }
      }
    }
    if(connected){
      break;
    }
  }
  if(connected) {
    Serial.println("Connected!");
  }
  

  // Port defaults to 3232
  // ArduinoOTA.setPort(3232);

  // Hostname defaults to esp3232-[MAC]
  // ArduinoOTA.setHostname("myesp32");

  // No authentication by default
  ArduinoOTA.setPassword("aqua");

  // Password can be set with it's md5 value as well
  // MD5(admin) = 21232f297a57a5a743894a0e4a801fc3
  // ArduinoOTA.setPasswordHash("21232f297a57a5a743894a0e4a801fc3");

  ArduinoOTA
    .onStart([]() {
      String type;
      if (ArduinoOTA.getCommand() == U_FLASH)
        type = "sketch";
      else // U_SPIFFS
        type = "filesystem";

      // NOTE: if updating SPIFFS this would be the place to unmount SPIFFS using SPIFFS.end()
      Serial.println("Start updating " + type);
    })
    .onEnd([]() {
      Serial.println("\nEnd");
    })
    .onProgress([](unsigned int progress, unsigned int total) {
      Serial.printf("Progress: %u%%\r", (progress / (total / 100)));
    })
    .onError([](ota_error_t error) {
      Serial.printf("Error[%u]: ", error);
      if (error == OTA_AUTH_ERROR) Serial.println("Auth Failed");
      else if (error == OTA_BEGIN_ERROR) Serial.println("Begin Failed");
      else if (error == OTA_CONNECT_ERROR) Serial.println("Connect Failed");
      else if (error == OTA_RECEIVE_ERROR) Serial.println("Receive Failed");
      else if (error == OTA_END_ERROR) Serial.println("End Failed");
    });

  ArduinoOTA.begin();

  Serial.println("Ready");
  Serial.print("IP address: ");
  Serial.println(WiFi.localIP());
}
Exemplo n.º 3
0
void loop() {
  delay(10000);
  // scan for existing networks:
  Serial1.println("Scanning available networks...");
  listNetworks();
}