Nodemcu esp8266 program cannot reset wifi password

Once upload the example program of “Template ESP8266” to nodemcu then the board stored the wifi password when i re-upload the program to nodemcu therefore i cannot update a new setting for the board.Please help

In addition
i am following this tutorial guide

@kaleaves look in the Settings.h file of the template to see which pin you have set to clear the EEPROM.

[quote=“Costas, post:2, topic:19739”]
EEPROM

I don’t find the code to clear the EEPROM. Moreover i did upload other program to mcu then upload new example program to mcu the password setting still inside the board

Below is the Setting.h file content

 /*
  * General options
  */
 
 #define BOARD_FIRMWARE_VERSION        "1.0.1"
 #define BOARD_HARDWARE_VERSION        "1.0.0"
 
 #define BOARD_NAME                    "Product Name"        // Name of your product. Should match App Export request info.
 #define BOARD_VENDOR                  "Company Name"        // Name of your company. Should match App Export request info.
 
 #define PRODUCT_WIFI_SSID             "TTT Product"         // Name of the device, to be displayed during configuration. Should match export request info.
 #define BOARD_CONFIG_AP_URL           "our-product.cc"      // Config page will be available in a browser at 'http://our-product.cc/'
 
 /*
  * Board configuration (see examples below).
  */
 
 #if defined(USE_CUSTOM_BOARD)
 
   // Custom board configuration
   #define BOARD_BUTTON_PIN            0                     // Pin where user button is attached
   #define BOARD_BUTTON_ACTIVE_LOW     true                  // true if button is "active-low"
 
   #define BOARD_LED_PIN               2                     // Set LED pin - if you have a single-color LED attached
   //#define BOARD_LED_PIN_R           15                    // Set R,G,B pins - if your LED is PWM RGB 
   //#define BOARD_LED_PIN_G           12
   //#define BOARD_LED_PIN_B           13
   //#define BOARD_LED_PIN_WS2812      4                     // Set if your LED is WS2812 RGB
   #define BOARD_LED_INVERSE           false                 // true, if you need to inverse LED signal
   #define BOARD_RGB_BRIGHTNESS        32                    // 0..255 brightness control
 
 #elif defined(USE_NODE_MCU_BOARD)
 
   #warning "NodeMCU board selected"
 
   // Example configuration for NodeMCU v1.0 Board
   #define BOARD_BUTTON_PIN            0
   #define BOARD_BUTTON_ACTIVE_LOW     true
 
   #define BOARD_LED_PIN_R             D8
   #define BOARD_LED_PIN_G             D7
   #define BOARD_LED_PIN_B             D6
   #define BOARD_LED_INVERSE           false
   #define BOARD_RGB_BRIGHTNESS        32
 
 #elif defined(USE_SPARKFUN_BLYNK_BOARD)
 
   #warning "Sparkfun Blynk board selected"
   
   // Example configuration for SparkFun Blynk Board
   #define BOARD_BUTTON_PIN            0
   #define BOARD_BUTTON_ACTIVE_LOW     true
   
   #define BOARD_LED_PIN_WS2812        4
   #define BOARD_RGB_BRIGHTNESS        32
 
 #elif defined(USE_WITTY_CLOUD_BOARD)
 
   #warning "Witty Cloud board selected"
 
   // Example configuration for Witty cloud Board
   #define BOARD_BUTTON_PIN            4
   #define BOARD_BUTTON_ACTIVE_LOW     true
   
   #define BOARD_LED_PIN_R             15
   #define BOARD_LED_PIN_G             12
   #define BOARD_LED_PIN_B             13
   #define BOARD_LED_INVERSE           false
   #define BOARD_RGB_BRIGHTNESS        32
 
 #else
   #error "No board selected"
 #endif
 
 
 /*
  * Advanced options
  */
 
 #define BUTTON_HOLD_TIME_INDICATION   3000
 #define BUTTON_HOLD_TIME_ACTION       10000
 
 #define BOARD_PWM_MAX                 1023
 
 #define WIFI_NET_CONNECT_TIMEOUT      30000
 #define WIFI_CLOUD_CONNECT_TIMEOUT    15000
 #define WIFI_AP_CONFIG_PORT           80
 #define WIFI_AP_IP                    IPAddress(192, 168, 4, 1)
 #define WIFI_AP_Subnet                IPAddress(255, 255, 255, 0)
 //#define WIFI_CAPTIVE_PORTAL_ENABLE
 
 #define USE_TICKER
 //#define USE_TIMER_ONE
 //#define USE_TIMER_THREE
 
 #if defined(APP_DEBUG)
 #define DEBUG_PRINT(...) BLYNK_LOG1(__VA_ARGS__)
 #else
 #define DEBUG_PRINT(...)
 #endif

This is the pin to clear EEPROM but you will have to flash the sketch again or a generic EERPOM clearing sketch.

And it will remain there as this is an ESP feature. Your credentials once stored in ESP will stay there until you erase it. I found this method to be fastest and most effective way for 4MB boards, using 1MB blank bin:

Erasing just first 1MB bank will do the job as well, as credentials are stored there.
You can also use NodeMCU Flasher for the same puspose.

I did flash the new sketch again but the board still stored the passwords

I am wondering what cause this problem?

Again, this is not a problem, but ESP feature, and it’s actually very useful, if you change wifi networks frequently for example. Every ESP stores all credentials at 0x7E000 and only way to get rid of them is to erase flash memory bank where credentials are stored.

1 Like

Thx Zodiac for your answer but I am wondering what cause the MCU automatically stored the password. What specific code will cause this situation.

@kaleaves This behaviour is ESP (Espressif) designed and related, NOT Blynk related… you can Google this feature if you wish and see all the other web references to how this works and what commands you can try, if for some reason you don’t want it to happen.

https://www.google.ca/search?q=esp8266+remembers+wifi+credentials

Thx for your reference and will see it