How can I save an auth token input with Wi-Fi Manager?

I want to be able to configure the auth token, SSID and Password with WiFi manager so they can be changed without the need for editing the code.

I have been able to set the auth token with WiFi Manager but it’s not saved. Every time the board (I’m using a WeMos D1 Mini) is reset the auth token needs to be reconfigured.

I’ve been trying to figure out how to store the auth token in EEPROM so it can be loaded from memory when the board is reset but I’ve had nothing but failures.

Any help is much appreciated, thanks!

.


#include <WiFiManager.h>
#define BLYNK_PRINT Serial
#include <EEPROM.h>
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
    char blynk_token[33];

    void setup() {
    Serial.begin(115200);
    WiFiManagerParameter custom_blynk_token("Blynk", "blynk token", blynk_token, 33);
    WiFiManager wifi;
    wifi.addParameter(&custom_blynk_token);
    wifi.autoConnect("LightCube");
    Blynk.config(custom_blynk_token.getValue());
    }
    void loop() {
    Blynk.run();
    }


Try searching this forum. What you are looking for is out there ( I know because I have posted such information ).

1 Like

I Have spent hours searching this forum and others, I have found some info but none that was very helpful.

I even found example code more than once but it was messy and wouldn’t compile.
That could be my fault, I have some programming knowledge but I’m no expert.
If you can point me to a helpful thread that would be great.

This is the most relevant thing I’ve found so far.
It’s the example for saving custom parameters provided in the Wi-Fi Manager documentation.
However I’ve tried many times but can’t get it to compile, I always get “Error compiling for board WeMos D1 mini.”

@paradox set your compiler to show verbose messages and paste the output here.

Here you go

        `C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\John\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\John\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\John\Documents\Arduino\libraries -fqbn=esp8266:esp8266:d1_mini:CpuFrequency=80,UploadTool=esptool,UploadSpeed=921600,FlashSize=4M3M -ide-version=10802 -build-path C:\Users\John\AppData\Local\Temp\arduino_build_348407 -warnings=none -build-cache C:\Users\John\AppData\Local\Temp\arduino_cache_246309 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.mkspiffs.path=C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\mkspiffs\0.1.2 -prefs=runtime.tools.esptool.path=C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\esptool\0.4.6 -prefs=runtime.tools.xtensa-lx106-elf-gcc.path=C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2 -verbose C:\Users\John\Documents\Arduino\Blynk_Save_Custom_peramiters\Blynk_Save_Custom_peramiters.ino
C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\John\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\John\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\John\Documents\Arduino\libraries -fqbn=esp8266:esp8266:d1_mini:CpuFrequency=80,UploadTool=esptool,UploadSpeed=921600,FlashSize=4M3M -ide-version=10802 -build-path C:\Users\John\AppData\Local\Temp\arduino_build_348407 -warnings=none -build-cache C:\Users\John\AppData\Local\Temp\arduino_cache_246309 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.mkspiffs.path=C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\mkspiffs\0.1.2 -prefs=runtime.tools.esptool.path=C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\esptool\0.4.6 -prefs=runtime.tools.xtensa-lx106-elf-gcc.path=C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2 -verbose C:\Users\John\Documents\Arduino\Blynk_Save_Custom_peramiters\Blynk_Save_Custom_peramiters.ino
Using board 'd1_mini' from platform in folder: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0
Using core 'esp8266' from platform in folder: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0
Detecting libraries used...
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11  -ffunction-sections -fdata-sections -w -x c++ -E -CC -DF_CPU=80000000L -DARDUINO=10802 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266  -DESP8266 "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\cores\esp8266" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\variants\d1_mini" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp" -o "nul"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11  -ffunction-sections -fdata-sections -w -x c++ -E -CC -DF_CPU=80000000L -DARDUINO=10802 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266  -DESP8266 "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\cores\esp8266" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\variants\d1_mini" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp" -o "nul"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11  -ffunction-sections -fdata-sections -w -x c++ -E -CC -DF_CPU=80000000L -DARDUINO=10802 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266  -DESP8266 "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\cores\esp8266" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\variants\d1_mini" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\DNSServer\src" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp" -o "nul"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11  -ffunction-sections -fdata-sections -w -x c++ -E -CC -DF_CPU=80000000L -DARDUINO=10802 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266  -DESP8266 "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\cores\esp8266" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\variants\d1_mini" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\DNSServer\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WebServer\src" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp" -o "nul"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11  -ffunction-sections -fdata-sections -w -x c++ -E -CC -DF_CPU=80000000L -DARDUINO=10802 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266  -DESP8266 "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\cores\esp8266" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\variants\d1_mini" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\DNSServer\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WebServer\src" "-IC:\Users\John\Documents\Arduino\libraries\WiFiManager" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp" -o "nul"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11  -ffunction-sections -fdata-sections -w -x c++ -E -CC -DF_CPU=80000000L -DARDUINO=10802 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266  -DESP8266 "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\cores\esp8266" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\variants\d1_mini" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\DNSServer\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WebServer\src" "-IC:\Users\John\Documents\Arduino\libraries\WiFiManager" "-IC:\Users\John\Documents\Arduino\libraries\ArduinoJson\src" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp" -o "nul"
Using cached library dependencies for file: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src\ESP8266WiFi.cpp
Using cached library dependencies for file: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src\ESP8266WiFiMulti.cpp
Using cached library dependencies for file: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src\WiFiClient.cpp
Using cached library dependencies for file: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src\WiFiClientSecure.cpp
Using cached library dependencies for file: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src\WiFiServer.cpp
Using cached library dependencies for file: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src\WiFiUdp.cpp
Using cached library dependencies for file: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\DNSServer\src\DNSServer.cpp
Using cached library dependencies for file: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WebServer\src\ESP8266WebServer.cpp
Using cached library dependencies for file: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WebServer\src\Parsing.cpp
Using cached library dependencies for file: C:\Users\John\Documents\Arduino\libraries\WiFiManager\WiFiManager.cpp
Generating function prototypes...
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11  -ffunction-sections -fdata-sections -w -x c++ -E -CC -DF_CPU=80000000L -DARDUINO=10802 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266  -DESP8266 "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\cores\esp8266" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\variants\d1_mini" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\DNSServer\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WebServer\src" "-IC:\Users\John\Documents\Arduino\libraries\WiFiManager" "-IC:\Users\John\Documents\Arduino\libraries\ArduinoJson\src" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp" -o "C:\Users\John\AppData\Local\Temp\arduino_build_348407\preproc\ctags_target_for_gcc_minus_e.cpp"
"C:\Program Files (x86)\Arduino\tools-builder\ctags\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\Users\John\AppData\Local\Temp\arduino_build_348407\preproc\ctags_target_for_gcc_minus_e.cpp"
Compiling sketch...
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-g++" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/include" -c -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11 -MMD -ffunction-sections -fdata-sections -DF_CPU=80000000L -DARDUINO=10802 -DARDUINO_ESP8266_ESP12 -DARDUINO_ARCH_ESP8266  -DESP8266 "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\cores\esp8266" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\variants\d1_mini" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\DNSServer\src" "-IC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WebServer\src" "-IC:\Users\John\Documents\Arduino\libraries\WiFiManager" "-IC:\Users\John\Documents\Arduino\libraries\ArduinoJson\src" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp" -o "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp.o"
Compiling libraries...
Compiling library "ESP8266WiFi"
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\ESP8266WiFi.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\ESP8266WiFiMulti.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\WiFiClient.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\WiFiClientSecure.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\WiFiServer.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\WiFiUdp.cpp.o
Compiling library "DNSServer"
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\DNSServer\DNSServer.cpp.o
Compiling library "ESP8266WebServer"
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WebServer\ESP8266WebServer.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WebServer\Parsing.cpp.o
Compiling library "WiFiManager"
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\WiFiManager\WiFiManager.cpp.o
Compiling library "ArduinoJson"
Compiling core...
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\cont.S.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\cont_util.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_eboot_command.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_flash_utils.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_i2s.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_noniso.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_phy.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_postmortem.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_si2c.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_timer.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_analog.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_digital.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_pulse.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_pwm.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_shift.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\libc_replacements.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\time.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_cache.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_check.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_gc.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_hydrogen.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_nucleus.c.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Esp.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\FS.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\HardwareSerial.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\IPAddress.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\MD5Builder.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Print.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Stream.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\StreamString.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Tone.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Updater.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\WMath.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\WString.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\abi.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_main.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\debug.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\pgmspace.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs_api.cpp.o
Using previously compiled file: C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs_hal.cpp.o
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\cont.S.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\cont_util.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_eboot_command.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_flash_utils.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_i2s.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_noniso.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_phy.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_postmortem.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_si2c.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_timer.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_analog.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_digital.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_pulse.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_pwm.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_wiring_shift.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\libc_replacements.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\time.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_cache.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_check.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_gc.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_hydrogen.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs\spiffs_nucleus.c.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Esp.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\FS.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\HardwareSerial.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\IPAddress.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\MD5Builder.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Print.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Stream.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\StreamString.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Tone.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\Updater.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\WMath.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\WString.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\abi.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\core_esp8266_main.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\debug.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\pgmspace.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs_api.cpp.o"
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru  "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\core\spiffs_hal.cpp.o"
Archiving built core (caching) in: C:\Users\John\AppData\Local\Temp\arduino_cache_246309\core\core_esp8266_esp8266_d1_mini_CpuFrequency_80,UploadTool_esptool,UploadSpeed_921600,FlashSize_4M3M_55a296746b5265ebf8fed3c1df2ba8db.a
Linking everything together...
"C:\Users\John\AppData\Local\Arduino15\packages\esp8266\tools\xtensa-lx106-elf-gcc\1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-gcc" -g -Os -nostdlib -Wl,--no-check-sections -u call_user_start -Wl,-static "-LC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/lib" "-LC:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0/tools/sdk/ld" "-Teagle.flash.4m.ld" -Wl,--gc-sections -Wl,-wrap,system_restart_local -Wl,-wrap,register_chipv6_phy  -o "C:\Users\John\AppData\Local\Temp\arduino_build_348407/Blynk_Save_Custom_peramiters.ino.elf" -Wl,--start-group "C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\ESP8266WiFi.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\ESP8266WiFiMulti.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\WiFiClient.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\WiFiClientSecure.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\WiFiServer.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WiFi\WiFiUdp.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\DNSServer\DNSServer.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WebServer\ESP8266WebServer.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\ESP8266WebServer\Parsing.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407\libraries\WiFiManager\WiFiManager.cpp.o" "C:\Users\John\AppData\Local\Temp\arduino_build_348407/arduino.ar" -lm -lgcc -lhal -lphy -lnet80211 -llwip -lwpa -lmain -lpp -lsmartconfig -lwps -lcrypto -laxtls -Wl,--end-group  "-LC:\Users\John\AppData\Local\Temp\arduino_build_348407"
C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp.o:(.text._ZN11ArduinoJson9JsonArray7invalidEv[_ZN11ArduinoJson9JsonArray7invalidEv]+0x8): undefined reference to `__cxa_guard_acquire'

C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp.o:(.text._ZN11ArduinoJson9JsonArray7invalidEv[_ZN11ArduinoJson9JsonArray7invalidEv]+0xc): undefined reference to `__cxa_guard_release'

C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp.o: In function `ArduinoJson::JsonArray::invalid()':

C:\Users\John\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson/JsonArray.hpp:139: undefined reference to `__cxa_guard_acquire'

C:\Users\John\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson/JsonArray.hpp:139: undefined reference to `__cxa_guard_release'

C:\Users\John\AppData\Local\Temp\arduino_build_348407\sketch\Blynk_Save_Custom_peramiters.ino.cpp.o: In function `ArduinoJson::JsonObject::invalid()':

C:\Users\John\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson/JsonObject.hpp:260: undefined reference to `__cxa_guard_acquire'

C:\Users\John\Documents\Arduino\libraries\ArduinoJson\src/ArduinoJson/JsonObject.hpp:260: undefined reference to `__cxa_guard_release'

collect2.exe: error: ld returned 1 exit status

Using library ESP8266WiFi at version 1.0 in folder: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WiFi 
Using library DNSServer at version 1.1.0 in folder: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\DNSServer 
Using library ESP8266WebServer at version 1.0 in folder: C:\Users\John\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.0.0\libraries\ESP8266WebServer 
Using library WiFiManager at version 0.12 in folder: C:\Users\John\Documents\Arduino\libraries\WiFiManager 
Using library ArduinoJson at version 5.13.0 in folder: C:\Users\John\Documents\Arduino\libraries\ArduinoJson 
exit status 1
Error compiling for board WeMos D1 mini.`

@Paradox looking at the compiler output I think this is your problem https://github.com/esp8266/Arduino/issues/500 and it was fixed a long time ago.

Am I right in thinking you are using ESP8266 Arduino core 2.0?

You need to get rid of that. 2.4.0 is the latest official release but I would go with the master as it has additional bug fixes.

1 Like

I will post this here in hopes that it will help not only you, but future BLYNK users trying to use WIFIManager.

#include <FS.h>                   //this needs to be first, or it all crashes and burns...

#include <ESP8266WiFi.h>          //https://github.com/esp8266/Arduino
#include <BlynkSimpleEsp8266.h>
//needed for library
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <WiFiManager.h>          //https://github.com/tzapu/WiFiManager
#include <SimpleTimer.h>
#include <ArduinoJson.h>          //https://github.com/bblanchon/ArduinoJson


#define BLYNK_PRINT Serial    // Comment this out to disable prints and save space
//#define BLYNK_DEBUG


//define your default values here, if there are different values in config.json, they are overwritten.
//char mqtt_server[40];
//char mqtt_port[6] = "8080";
char blynk_token[34] = "YOUR_BLYNK_TOKEN";

//flag for saving data
bool shouldSaveConfig = false;

//callback notifying us of the need to save config
void saveConfigCallback () {
  Serial.println("Should save config");
  shouldSaveConfig = true;
}


void setup() {
  // put your setup code here, to run once:
  Serial.begin(115200);
  Serial.println();

  //clean FS, for testing
  //SPIFFS.format();

  //read configuration from FS json
  Serial.println("mounting FS...");

  if (SPIFFS.begin()) {
    Serial.println("mounted file system");
    if (SPIFFS.exists("/config.json")) {
      //file exists, reading and loading
      Serial.println("reading config file");
      File configFile = SPIFFS.open("/config.json", "r");
      if (configFile) {
        Serial.println("opened config file");
        size_t size = configFile.size();
        // Allocate a buffer to store contents of the file.
        std::unique_ptr<char[]> buf(new char[size]);

        configFile.readBytes(buf.get(), size);
        DynamicJsonBuffer jsonBuffer;
        JsonObject& json = jsonBuffer.parseObject(buf.get());
        json.printTo(Serial);
        if (json.success()) {
          Serial.println("\nparsed json");

          //strcpy(mqtt_server, json["mqtt_server"]);
          //strcpy(mqtt_port, json["mqtt_port"]);
          strcpy(blynk_token, json["blynk_token"]);

        } else {
          Serial.println("failed to load json config");
        }
      }
    }
  } else {
    Serial.println("failed to mount FS");
  }
  //end read



  // The extra parameters to be configured (can be either global or just in the setup)
  // After connecting, parameter.getValue() will get you the configured value
  // id/name placeholder/prompt default length
  //WiFiManagerParameter custom_mqtt_server("server", "mqtt server", mqtt_server, 40);
  //WiFiManagerParameter custom_mqtt_port("port", "mqtt port", mqtt_port, 6);
  WiFiManagerParameter custom_blynk_token("blynk", "blynk token", blynk_token, 33);

  //WiFiManager
  //Local intialization. Once its business is done, there is no need to keep it around
  WiFiManager wifiManager;

  //set config save notify callback
  wifiManager.setSaveConfigCallback(saveConfigCallback);

  //set static ip
  //wifiManager.setSTAStaticIPConfig(IPAddress(10,0,1,99), IPAddress(10,0,1,1), IPAddress(255,255,255,0));
  
  //add all your parameters here
  //wifiManager.addParameter(&custom_mqtt_server);
  //wifiManager.addParameter(&custom_mqtt_port);
  wifiManager.addParameter(&custom_blynk_token);

  //reset settings - for testing
  //wifiManager.resetSettings();

  //set minimu quality of signal so it ignores AP's under that quality
  //defaults to 8%
  //wifiManager.setMinimumSignalQuality();
  
  //sets timeout until configuration portal gets turned off
  //useful to make it all retry or go to sleep
  //in seconds
  //wifiManager.setTimeout(120);

  //fetches ssid and pass and tries to connect
  //if it does not connect it starts an access point with the specified name
  //here  "AutoConnectAP"
  //and goes into a blocking loop awaiting configuration
  if (!wifiManager.autoConnect("Wifi_Manager", "password")) {
    Serial.println("failed to connect and hit timeout");
    delay(3000);
    //reset and try again, or maybe put it to deep sleep
    ESP.reset();
    delay(5000);
  }

  //if you get here you have connected to the WiFi
  Serial.println("connected...yeey :)");

  //read updated parameters
  //strcpy(mqtt_server, custom_mqtt_server.getValue());
  //strcpy(mqtt_port, custom_mqtt_port.getValue());
  strcpy(blynk_token, custom_blynk_token.getValue());

  //save the custom parameters to FS
  if (shouldSaveConfig) {
    Serial.println("saving config");
    DynamicJsonBuffer jsonBuffer;
    JsonObject& json = jsonBuffer.createObject();
    //json["mqtt_server"] = mqtt_server;
    //json["mqtt_port"] = mqtt_port;
    json["blynk_token"] = blynk_token;

    File configFile = SPIFFS.open("/config.json", "w");
    if (!configFile) {
      Serial.println("failed to open config file for writing");
    }

    json.printTo(Serial);
    json.printTo(configFile);
    configFile.close();
    //end save
  }

  //Serial.println("local ip");
  //Serial.println(WiFi.localIP());

  Blynk.config(blynk_token);
  bool result = Blynk.connect();

if (result != true)
{
  Serial.println("BLYNK Connection Fail");
  Serial.println(blynk_token);
  wifiManager.resetSettings();
  ESP.reset();
  delay (5000);
}
else
{
  Serial.println("BLYNK Connected");
}

}

void loop() {
 
Blynk.run();

}

If you will notice, all I did was comment out the sections that did not apply (mqqt_server and mqqt_port).

Also if you don’t have all the right libraries installed it will not work. I will leave that part up to you.

4 Likes

That did it!
Yes I was using 2.0 and after updating to version 2.4.0 it compiled and uploaded!

I’m using the code @Toro_Blanco edited.
I’ve tested it and it’s working great!

Thanks @Costas and @Toro_Blanco !

Thank you Code works successfully on nodemcu

There is a problem with esp-01 after the power is disconnected and back it starts to establish an access point
(Do not keep contact information)

I ran into that problem too. Update WIFi Manager, that should fix it. Good luck!

Can you upload the library version you are using with the code?

A week and I am trying to repair this in vain

I’m using version 0.12.0 of WiFi manager. You should be able to install or update with the Arduino Library Manager. Here’s the link for the WiFi manager Git Hub, (https://github.com/tzapu/WiFiManager).
I hope that solves your problem! :grinning:

1 Like

I spent many hours reading through this and other forums trying to understand this exact issue. I found this post and used your code. After solving a couple of syntax issues where I inserted it, it works. Thanks for posting.

The Json library changed.
This code work only with 5.13.2

Thank you. This code ti’s work for ESP826612F and all ESP.

A post was split to a new topic: How to configure my own blynk server?