Some concerns about Dynamic Auth/wifi Provisioning

Nowaday I m using WiFimanager by Tzapu to do Dynamic Provisoning of Wifi Credentials and It works great. I 've read Blynk documentation and I see now that it is possible to do Dynamic Provsioning of Wifi and Auth token in a very nice and easy way. The screenshots of myPlant are excellent.

The thing is i don’t understand this part of the documentacion:

…"Resetting the board

There might be situations when you would need reset the board in case something went wrong, or you would like to connect it to a different WiFi network.

NodeMCU: Press and hold the FLASH button (near USB connector) for 10 seconds."…

If I were to launch a comercial product, I can’t tell my customer to open the product box and press a button for 10 seconds if he/she changes the Wifi credentials of the router o if he uses the product in other location with different Wifi credentials.

Using Wifimanager by Tzapu it is possible to delete the EEPROM by coding. In fact I’m using a Blynk button to activate a code function in the hardware that resets the Wifi credentials, and then activate the Wifimanager again to ask for new credentials.
I wonder it Wifimanager library by Tzapu can delete the EEPROM by coding why Blynk procedure needs to press a hardware button ??

Regards,
Leandro

We clear EEPROM Provisioning with a Blynk button but that assumes you have managed to get the App up and running. You can also change the 10s hardware reset timeout.

A physical button is the normal way for IT equipment to be reset but software works fine too. For us we just clear the credentials as the last operation before setting off to a new venue. This is only required if access to the physical button is not possible for a particular project.

I didn’t know it was possible to reset the Provisioning with a Blynk button if the App was up an running. Is this feature written in the documentation ? Sorry i couldn’t find it.

No, it can also be done with the API in a browser. SUPER powerful stuff this Blynk app :slight_smile:

Button code:

BLYNK_WRITE(V0){  // button to reset Provisioning
  unsigned int clearESP = param.asInt();
  if(clearESP == 1){
    Serial.println("Erased provsioning");
    delay(20);
    config_reset();
  }
}

Many thanks. I will have to try !!!

Regards,
Leandro

I’ve written eeprom read and erase routines using which erase the settings and reset the device using ESP.reset(). Works wonderfully well for me. I’ve even codes this as a terminal command with a password, fixed though.

Did not know the config_reset call. Thanks @Costas. Learn something new everyday.