From 851f2257b793acec0b0fb876cd29ceb966308141 Mon Sep 17 00:00:00 2001 From: Wolfgang Hottgenroth Date: Thu, 25 Apr 2019 16:47:53 +0200 Subject: [PATCH] seems to compile --- .cproject | 87 +++++ .project | 71 ++++ .pydevproject | 5 + .settings/language.settings.xml | 14 + .settings/org.eclipse.cdt.core.prefs | 528 +++++++++++++++++++++++++++ ConfigDataStructure.py | 17 + application.cpp | 36 +- application.h | 4 +- configuration.cpp | 389 ++++++++++++++++++++ configuration.h | 24 ++ esp8266boilerplate | 2 +- rgbled.cpp | 81 +--- rgbled.h | 10 +- 13 files changed, 1159 insertions(+), 109 deletions(-) create mode 100644 .cproject create mode 100644 .project create mode 100644 .pydevproject create mode 100644 .settings/language.settings.xml create mode 100644 .settings/org.eclipse.cdt.core.prefs create mode 100644 ConfigDataStructure.py create mode 100644 configuration.cpp create mode 100644 configuration.h diff --git a/.cproject b/.cproject new file mode 100644 index 0000000..ceaa099 --- /dev/null +++ b/.cproject @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 0000000..9a5a04c --- /dev/null +++ b/.project @@ -0,0 +1,71 @@ + + + rgbled + + + + + + org.python.pydev.PyDevBuilder + + + + + io.sloeber.core.inoToCpp + + + + + org.eclipse.cdt.managedbuilder.core.genmakebuilder + clean,full,incremental, + + + + + org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder + full,incremental, + + + + + + org.eclipse.cdt.core.cnature + org.eclipse.cdt.core.ccnature + org.eclipse.cdt.managedbuilder.core.managedBuildNature + org.eclipse.cdt.managedbuilder.core.ScannerConfigNature + io.sloeber.arduinonature + org.python.pydev.pythonNature + + + + core/core + 2 + ECLIPSE_HOME/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/cores/esp8266 + + + core/variant + 2 + ECLIPSE_HOME/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/variants/nodemcu + + + libraries/Adafruit_NeoPixel + 2 + ECLIPSE_HOME/arduinoPlugin/libraries/Adafruit_NeoPixel/1.1.3 + + + libraries/EEPROM + 2 + ECLIPSE_HOME/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/libraries/EEPROM + + + libraries/ESP8266WebServer + 2 + ECLIPSE_HOME/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WebServer + + + libraries/ESP8266WiFi + 2 + ECLIPSE_HOME/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/libraries/ESP8266WiFi + + + diff --git a/.pydevproject b/.pydevproject new file mode 100644 index 0000000..d001f0a --- /dev/null +++ b/.pydevproject @@ -0,0 +1,5 @@ + + +Default +python interpreter + diff --git a/.settings/language.settings.xml b/.settings/language.settings.xml new file mode 100644 index 0000000..1fda679 --- /dev/null +++ b/.settings/language.settings.xml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/.settings/org.eclipse.cdt.core.prefs b/.settings/org.eclipse.cdt.core.prefs new file mode 100644 index 0000000..3b11a20 --- /dev/null +++ b/.settings/org.eclipse.cdt.core.prefs @@ -0,0 +1,528 @@ +eclipse.preferences.version=1 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ALT_SIZE_COMMAND/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ALT_SIZE_COMMAND/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ALT_SIZE_COMMAND/value="${A.COMPILER.PATH}${A.COMPILER.SIZE.CMD}" --format\=avr --mcu\=${A.BUILD.MCU} "${A.BUILD.PATH}/${A.BUILD.PROJECT_NAME}.elf" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ARCHIVE_FILE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ARCHIVE_FILE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ARCHIVE_FILE/value=arduino.ar +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ARCHIVE_FILE_PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ARCHIVE_FILE_PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ARCHIVE_FILE_PATH/value=${A.BUILD.PATH}/${A.ARCHIVE_FILE} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.ARCH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.ARCH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.ARCH/value=ESP8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.BOARD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.BOARD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.BOARD/value=ESP8266_NODEMCU +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.CORE.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.CORE.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.CORE.PATH/value=${A.RUNTIME.PLATFORM.PATH}/cores/${A.BUILD.CORE} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.CORE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.CORE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.CORE/value=esp8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.DEBUG_LEVEL/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.DEBUG_LEVEL/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.DEBUG_LEVEL/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.DEBUG_PORT/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.DEBUG_PORT/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.DEBUG_PORT/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.EXTRA_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.EXTRA_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.EXTRA_FLAGS/value=-DESP8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_FREQ/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_FREQ/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_FREQ/value=40 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_LD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_LD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_LD/value=eagle.flash.4m1m.ld +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_MODE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_MODE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_MODE/value=dio +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_SIZE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_SIZE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.FLASH_SIZE/value=4M +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.F_CPU/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.F_CPU/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.F_CPU/value=80000000L +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.LWIP_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.LWIP_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.LWIP_FLAGS/value=-DLWIP_OPEN_SRC +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.LWIP_LIB/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.LWIP_LIB/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.LWIP_LIB/value=-llwip_gcc +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.MCU/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.MCU/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.MCU/value=esp8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.PATH/value=${ProjDirPath}/${ConfigName} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.PROJECT_NAME/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.PROJECT_NAME/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.PROJECT_NAME/value=${ProjName} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_BLOCKSIZE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_BLOCKSIZE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_BLOCKSIZE/value=8192 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_END/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_END/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_END/value=0x3FB000 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_PAGESIZE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_PAGESIZE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_PAGESIZE/value=256 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_START/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_START/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SPIFFS_START/value=0x300000 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SYSTEM.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SYSTEM.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.SYSTEM.PATH/value=${A.RUNTIME.PLATFORM.PATH}/system +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.VARIANT.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.VARIANT.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.VARIANT.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/variants/nodemcu +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.VARIANT/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.VARIANT/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.BUILD.VARIANT/value=nodemcu +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AR.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AR.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AR.CMD/value=xtensa-lx106-elf-ar +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AR.EXTRA_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AR.EXTRA_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AR.EXTRA_FLAGS/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AR.FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AR.FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AR.FLAGS/value=cru +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AS.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AS.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.AS.CMD/value=xtensa-lx106-elf-as +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.CMD/value=xtensa-lx106-elf-gcc +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.CMD/value=xtensa-lx106-elf-gcc +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.EXTRA_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.EXTRA_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.EXTRA_FLAGS/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.FLAGS/value=-g ${A.COMPILER.WARNING_FLAGS} -Os -nostdlib -Wl,--no-check-sections -u call_user_start -Wl,-static "-L${A.COMPILER.SDK.PATH}/lib" "-L${A.COMPILER.SDK.PATH}/ld" "-T${A.BUILD.FLASH_LD}" -Wl,--gc-sections -Wl,-wrap,system_restart_local -Wl,-wrap,register_chipv6_phy +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.LIBS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.LIBS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.ELF.LIBS/value=-lm -lgcc -lhal -lphy -lpp -lnet80211 -lwpa -lcrypto -lmain -lwps -laxtls -lsmartconfig -lmesh -lwpa2 ${A.BUILD.LWIP_LIB} -lstdc++ +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.EXTRA_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.EXTRA_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.EXTRA_FLAGS/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.C.FLAGS/value=-c ${A.COMPILER.WARNING_FLAGS} -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions\=4 -MMD -std\=gnu99 -ffunction-sections -fdata-sections +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPP.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPP.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPP.CMD/value=xtensa-lx106-elf-g++ +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPP.EXTRA_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPP.EXTRA_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPP.EXTRA_FLAGS/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPP.FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPP.FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPP.FLAGS/value=-c ${A.COMPILER.WARNING_FLAGS} -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions\=4 -std\=c++11 -MMD -ffunction-sections -fdata-sections +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPREPROCESSOR.FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPREPROCESSOR.FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.CPREPROCESSOR.FLAGS/value=-D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-I${A.COMPILER.SDK.PATH}/include" "-I${A.COMPILER.SDK.PATH}/lwip/include" "-I${A.BUILD.PATH}/core" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ELF2HEX.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ELF2HEX.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ELF2HEX.CMD/value=esptool +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ELF2HEX.EXTRA_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ELF2HEX.EXTRA_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ELF2HEX.EXTRA_FLAGS/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ELF2HEX.FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ELF2HEX.FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ELF2HEX.FLAGS/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ESPTOOL.CMD.WINDOWS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ESPTOOL.CMD.WINDOWS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ESPTOOL.CMD.WINDOWS/value=esptool.exe +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ESPTOOL.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ESPTOOL.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.ESPTOOL.CMD/value=esptool +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.OBJCOPY.EEP.EXTRA_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.OBJCOPY.EEP.EXTRA_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.OBJCOPY.EEP.EXTRA_FLAGS/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.PATH/value=${A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC.PATH}/bin/ +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.S.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.S.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.S.CMD/value=xtensa-lx106-elf-gcc +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.S.EXTRA_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.S.EXTRA_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.S.EXTRA_FLAGS/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.S.FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.S.FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.S.FLAGS/value=-c -g -x assembler-with-cpp -MMD -mlongcalls +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.SDK.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.SDK.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.SDK.PATH/value=${A.RUNTIME.PLATFORM.PATH}/tools/sdk +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.SIZE.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.SIZE.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.SIZE.CMD/value=xtensa-lx106-elf-size +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.ALL/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.ALL/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.ALL/value=-Wall -Wextra +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.DEFAULT/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.DEFAULT/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.DEFAULT/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.MORE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.MORE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.MORE/value=-Wall +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.NONE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.NONE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS.NONE/value=-w +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.COMPILER.WARNING_FLAGS/value=${A.COMPILER.WARNING_FLAGS.ALL} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ESP8266.NETWORK.UPLOAD.TOOL/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ESP8266.NETWORK.UPLOAD.TOOL/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.ESP8266.NETWORK.UPLOAD.TOOL/value=esp8266OTA +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.DTS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.DTS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.DTS/value=3600 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.LOCAL/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.LOCAL/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.LOCAL/value=1556210238 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.UTC/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.UTC/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.UTC/value=1556203038 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.ZONE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.ZONE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.EXTRA.TIME.ZONE/value=3600 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.JANTJE.CORE.REFERENCED.PLATFORM/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.JANTJE.CORE.REFERENCED.PLATFORM/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.JANTJE.CORE.REFERENCED.PLATFORM/value=${JANTJE.SELECTED.PLATFORM} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.JANTJE.USED.BOARDS_FILE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.JANTJE.USED.BOARDS_FILE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.JANTJE.USED.BOARDS_FILE/value=${JANTJE.BOARDS_FILE} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.JANTJE.VARIANT.REFERENCED.PLATFORM/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.JANTJE.VARIANT.REFERENCED.PLATFORM/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.JANTJE.VARIANT.REFERENCED.PLATFORM/value=${JANTJE.SELECTED.PLATFORM} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.NAME/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.NAME/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.NAME/value=NodeMCU 1.0 (ESP-12E Module) +environment/project/io.sloeber.core.toolChain.release.1704841599/A.PACKAGES/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.PACKAGES/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.PACKAGES/value=${eclipse_home}/arduinoPlugin/packages +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.AR.PATTERN.1/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.AR.PATTERN.1/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.AR.PATTERN.1/value="/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-ar" cru "/home/wn/workspace-sloeber/rgbled/Release/arduino.ar" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.AR.PATTERN.2/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.AR.PATTERN.2/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.AR.PATTERN.2/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.AR.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.AR.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.AR.PATTERN/value="${A.COMPILER.PATH}${A.COMPILER.AR.CMD}" ${A.COMPILER.AR.FLAGS} ${A.COMPILER.AR.EXTRA_FLAGS} "${A.BUILD.PATH}/arduino.ar" "${A.OBJECT_FILE}" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.COMBINE.PATTERN.1/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.COMBINE.PATTERN.1/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.COMBINE.PATTERN.1/value="/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-gcc" -g -Wall -Wextra -Os -nostdlib -Wl,--no-check-sections -u call_user_start -Wl,-static "-L/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/lib" "-L/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/ld" "-Teagle.flash.4m1m.ld" -Wl,--gc-sections -Wl,-wrap,system_restart_local -Wl,-wrap,register_chipv6_phy -o "/home/wn/workspace-sloeber/rgbled/Release/rgbled.elf" -Wl,--start-group +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.COMBINE.PATTERN.2/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.COMBINE.PATTERN.2/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.COMBINE.PATTERN.2/value=\ "/home/wn/workspace-sloeber/rgbled/Release/arduino.ar" -lm -lgcc -lhal -lphy -lpp -lnet80211 -lwpa -lcrypto -lmain -lwps -laxtls -lsmartconfig -lmesh -lwpa2 -llwip_gcc -lstdc++ -Wl,--end-group "-L/home/wn/workspace-sloeber/rgbled/Release" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.COMBINE.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.COMBINE.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.COMBINE.PATTERN/value="${A.COMPILER.PATH}${A.COMPILER.C.ELF.CMD}" ${A.COMPILER.C.ELF.FLAGS} ${A.COMPILER.C.ELF.EXTRA_FLAGS} -o "${A.BUILD.PATH}/${A.BUILD.PROJECT_NAME}.elf" -Wl,--start-group ${A.OBJECT_FILES} "${A.BUILD.PATH}/arduino.ar" ${A.COMPILER.C.ELF.LIBS} -Wl,--end-group "-L${A.BUILD.PATH}" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN.1/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN.1/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN.1/value="/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-gcc" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-I/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/include" "-I/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/lwip/include" "-I/home/wn/workspace-sloeber/rgbled/Release/core" -c -Wall -Wextra -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions\=4 -std\=gnu99 -ffunction-sections -fdata-sections -DF_CPU\=80000000L -DLWIP_OPEN_SRC -DARDUINO\=10802 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 '-DARDUINO_BOARD\="ESP8266_NODEMCU"' -DESP8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN.2/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN.2/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN.2/value=\ -o +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN.3/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN.3/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN.3/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.C.O.PATTERN/value="${A.COMPILER.PATH}${A.COMPILER.C.CMD}" ${A.COMPILER.CPREPROCESSOR.FLAGS} ${A.COMPILER.C.FLAGS} -DF_CPU\=${A.BUILD.F_CPU} ${A.BUILD.LWIP_FLAGS} ${A.BUILD.DEBUG_PORT} ${A.BUILD.DEBUG_LEVEL} -DARDUINO\=${A.RUNTIME.IDE.VERSION} -DARDUINO_${A.BUILD.BOARD} -DARDUINO_ARCH_${A.BUILD.ARCH} '-DARDUINO_BOARD\="${A.BUILD.BOARD}"' ${A.COMPILER.C.EXTRA_FLAGS} ${A.BUILD.EXTRA_FLAGS} ${A.INCLUDES} "${A.SOURCE_FILE}" -o "${A.OBJECT_FILE}" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN.1/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN.1/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN.1/value="/opt/eclipse/sloeber//arduinoPlugin/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__ "-I/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/include" "-I/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/lwip/include" "-I/home/wn/workspace-sloeber/rgbled/Release/core" -c -Wall -Wextra -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions\=4 -std\=c++11 -ffunction-sections -fdata-sections -DF_CPU\=80000000L -DLWIP_OPEN_SRC -DARDUINO\=10802 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 '-DARDUINO_BOARD\="ESP8266_NODEMCU"' -DESP8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN.2/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN.2/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN.2/value=\ -o +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN.3/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN.3/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN.3/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.CPP.O.PATTERN/value="${A.COMPILER.PATH}${A.COMPILER.CPP.CMD}" ${A.COMPILER.CPREPROCESSOR.FLAGS} ${A.COMPILER.CPP.FLAGS} -DF_CPU\=${A.BUILD.F_CPU} ${A.BUILD.LWIP_FLAGS} ${A.BUILD.DEBUG_PORT} ${A.BUILD.DEBUG_LEVEL} -DARDUINO\=${A.RUNTIME.IDE.VERSION} -DARDUINO_${A.BUILD.BOARD} -DARDUINO_ARCH_${A.BUILD.ARCH} '-DARDUINO_BOARD\="${A.BUILD.BOARD}"' ${A.COMPILER.CPP.EXTRA_FLAGS} ${A.BUILD.EXTRA_FLAGS} ${A.INCLUDES} "${A.SOURCE_FILE}" -o "${A.OBJECT_FILE}" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.EEP.PATTERN.1/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.EEP.PATTERN.1/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.EEP.PATTERN.1/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.EEP.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.EEP.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.EEP.PATTERN/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.HEX.PATTERN.1/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.HEX.PATTERN.1/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.HEX.PATTERN.1/value="/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/tools/esptool/0.4.9/esptool" -eo "/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/bootloaders/eboot/eboot.elf" -bo "/home/wn/workspace-sloeber/rgbled/Release/rgbled.bin" -bm dio -bf 40 -bz 4M -bs .text -bp 4096 -ec -eo "/home/wn/workspace-sloeber/rgbled/Release/rgbled.elf" -bs .irom0.text -bs .text -bs .data -bs .rodata -bc -ec +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.HEX.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.HEX.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OBJCOPY.HEX.PATTERN/value="${A.RUNTIME.TOOLS.ESPTOOL.PATH}/${A.COMPILER.ESPTOOL.CMD}" -eo "${A.RUNTIME.PLATFORM.PATH}/bootloaders/eboot/eboot.elf" -bo "${A.BUILD.PATH}/${A.BUILD.PROJECT_NAME}.bin" -bm ${A.BUILD.FLASH_MODE} -bf ${A.BUILD.FLASH_FREQ} -bz ${A.BUILD.FLASH_SIZE} -bs .text -bp 4096 -ec -eo "${A.BUILD.PATH}/${A.BUILD.PROJECT_NAME}.elf" -bs .irom0.text -bs .text -bs .data -bs .rodata -bc -ec +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OUTPUT.SAVE_FILE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OUTPUT.SAVE_FILE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OUTPUT.SAVE_FILE/value=${A.BUILD.PROJECT_NAME}.${A.BUILD.VARIANT}.bin +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OUTPUT.TMP_FILE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OUTPUT.TMP_FILE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.OUTPUT.TMP_FILE/value=${A.BUILD.PROJECT_NAME}.bin +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN.1/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN.1/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN.1/value="/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-gcc" -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-I/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/include" "-I/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/tools/sdk/lwip/include" "-I/home/wn/workspace-sloeber/rgbled/Release/core" -c -g -x assembler-with-cpp -mlongcalls -DF_CPU\=80000000L -DLWIP_OPEN_SRC -DARDUINO\=10802 -DARDUINO_ESP8266_NODEMCU -DARDUINO_ARCH_ESP8266 '-DARDUINO_BOARD\="ESP8266_NODEMCU"' -DESP8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN.2/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN.2/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN.2/value=\ -o +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN.3/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN.3/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN.3/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.S.O.PATTERN/value="${A.COMPILER.PATH}${A.COMPILER.C.CMD}" ${A.COMPILER.CPREPROCESSOR.FLAGS} ${A.COMPILER.S.FLAGS} -DF_CPU\=${A.BUILD.F_CPU} ${A.BUILD.LWIP_FLAGS} ${A.BUILD.DEBUG_PORT} ${A.BUILD.DEBUG_LEVEL} -DARDUINO\=${A.RUNTIME.IDE.VERSION} -DARDUINO_${A.BUILD.BOARD} -DARDUINO_ARCH_${A.BUILD.ARCH} '-DARDUINO_BOARD\="${A.BUILD.BOARD}"' ${A.COMPILER.C.EXTRA_FLAGS} ${A.BUILD.EXTRA_FLAGS} ${A.INCLUDES} "${A.SOURCE_FILE}" -o "${A.OBJECT_FILE}" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.PATTERN.1/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.PATTERN.1/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.PATTERN.1/value="/opt/eclipse/sloeber//arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2/bin/xtensa-lx106-elf-size" -A "/home/wn/workspace-sloeber/rgbled/Release/rgbled.elf" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.PATTERN/value="${A.COMPILER.PATH}${A.COMPILER.SIZE.CMD}" -A "${A.BUILD.PATH}/${A.BUILD.PROJECT_NAME}.elf" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.REGEX.DATA/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.REGEX.DATA/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.REGEX.DATA/value=^(?\:\\.data|\\.rodata|\\.bss)\\s+([0-9]+).* +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.REGEX/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.REGEX/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RECIPE.SIZE.REGEX/value=^(?\:\\.irom0\\.text|\\.text|\\.data|\\.rodata|)\\s+([0-9]+).* +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.HARDWARE.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.HARDWARE.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.HARDWARE.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/hardware/esp8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.IDE.VERSION/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.IDE.VERSION/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.IDE.VERSION/value=10802 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.PLATFORM.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.PLATFORM.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.PLATFORM.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.REFERENCED.PLATFORM.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.REFERENCED.PLATFORM.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.REFERENCED.PLATFORM.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ARDUINOOTA-1.1.1.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ARDUINOOTA-1.1.1.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ARDUINOOTA-1.1.1.PATH/value=${eclipse_home}/arduinoPlugin/packages/arduino/tools/arduinoOTA/1.1.1 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ARDUINOOTA.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ARDUINOOTA.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ARDUINOOTA.PATH/value=${eclipse_home}/arduinoPlugin/packages/arduino/tools/arduinoOTA/1.1.1 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ARDUINOOTA1.1.1.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ARDUINOOTA1.1.1.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ARDUINOOTA1.1.1.PATH/value=${eclipse_home}/arduinoPlugin/packages/arduino/tools/arduinoOTA/1.1.1 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVR-GCC-4.9.2-ATMEL3.5.4-ARDUINO2.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVR-GCC-4.9.2-ATMEL3.5.4-ARDUINO2.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVR-GCC-4.9.2-ATMEL3.5.4-ARDUINO2.PATH/value=${eclipse_home}/arduinoPlugin/packages/arduino/tools/avr-gcc/4.9.2-atmel3.5.4-arduino2 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVR-GCC.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVR-GCC.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVR-GCC.PATH/value=${eclipse_home}/arduinoPlugin/packages/arduino/tools/avr-gcc/4.9.2-atmel3.5.4-arduino2 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVR-GCC4.9.2-ATMEL3.5.4-ARDUINO2.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVR-GCC4.9.2-ATMEL3.5.4-ARDUINO2.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVR-GCC4.9.2-ATMEL3.5.4-ARDUINO2.PATH/value=${eclipse_home}/arduinoPlugin/packages/arduino/tools/avr-gcc/4.9.2-atmel3.5.4-arduino2 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVRDUDE-6.3.0-ARDUINO9.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVRDUDE-6.3.0-ARDUINO9.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVRDUDE-6.3.0-ARDUINO9.PATH/value=${eclipse_home}/arduinoPlugin/packages/arduino/tools/avrdude/6.3.0-arduino9 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVRDUDE.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVRDUDE.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVRDUDE.PATH/value=${eclipse_home}/arduinoPlugin/packages/arduino/tools/avrdude/6.3.0-arduino9 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVRDUDE6.3.0-ARDUINO9.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVRDUDE6.3.0-ARDUINO9.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.AVRDUDE6.3.0-ARDUINO9.PATH/value=${eclipse_home}/arduinoPlugin/packages/arduino/tools/avrdude/6.3.0-arduino9 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ESPTOOL-0.4.9.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ESPTOOL-0.4.9.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ESPTOOL-0.4.9.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/tools/esptool/0.4.9 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ESPTOOL.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ESPTOOL.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ESPTOOL.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/tools/esptool/0.4.9 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ESPTOOL0.4.9.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ESPTOOL0.4.9.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.ESPTOOL0.4.9.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/tools/esptool/0.4.9 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.MKSPIFFS-0.1.2.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.MKSPIFFS-0.1.2.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.MKSPIFFS-0.1.2.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/tools/mkspiffs/0.1.2 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.MKSPIFFS.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.MKSPIFFS.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.MKSPIFFS.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/tools/mkspiffs/0.1.2 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.MKSPIFFS0.1.2.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.MKSPIFFS0.1.2.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.MKSPIFFS0.1.2.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/tools/mkspiffs/0.1.2 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC-1.20.0-26-GB404FB9-2.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC-1.20.0-26-GB404FB9-2.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC-1.20.0-26-GB404FB9-2.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC1.20.0-26-GB404FB9-2.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC1.20.0-26-GB404FB9-2.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.RUNTIME.TOOLS.XTENSA-LX106-ELF-GCC1.20.0-26-GB404FB9-2.PATH/value=${eclipse_home}/arduinoPlugin/packages/esp8266/tools/xtensa-lx106-elf-gcc/1.20.0-26-gb404fb9-2 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.DISABLEDTR/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.DISABLEDTR/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.DISABLEDTR/value=true +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.DISABLERTS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.DISABLERTS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.DISABLERTS/value=true +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.PORT.FILE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.PORT.FILE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.PORT.FILE/value=${A.SERIAL.PORT} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.PORT/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.PORT/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SERIAL.PORT/value=${JANTJE.COM_PORT} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SOFTWARE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SOFTWARE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.SOFTWARE/value=ARDUINO +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.AVRDUDE_REMOTE.UPLOAD.VERBOSE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.AVRDUDE_REMOTE.UPLOAD.VERBOSE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.AVRDUDE_REMOTE.UPLOAD.VERBOSE/value=-v +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESP8266OTA.UPLOAD.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESP8266OTA.UPLOAD.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESP8266OTA.UPLOAD.PATTERN/value=${A.TOOLS.ESPTOOL.UPLOAD.NETWORK_PATTERN} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESP8266OTA/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESP8266OTA/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESP8266OTA/value=${A.TOOLS.ESPTOOL.NETWORK_CMD} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.CMD.WINDOWS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.CMD.WINDOWS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.CMD.WINDOWS/value=esptool.exe +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.CMD/value=esptool +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.NETWORK.PASSWORD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.NETWORK.PASSWORD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.NETWORK.PASSWORD/value=${A.TOOLS.ESPTOOL.NETWORK.AUTH} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.NETWORK_CMD.WINDOWS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.NETWORK_CMD.WINDOWS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.NETWORK_CMD.WINDOWS/value=python.exe +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.NETWORK_CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.NETWORK_CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.NETWORK_CMD/value=python +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.PATH/value=${A.RUNTIME.TOOLS.ESPTOOL.PATH} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.NETWORK_PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.NETWORK_PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.NETWORK_PATTERN/value="${A.TOOLS.ESPTOOL.NETWORK_CMD}" "${A.RUNTIME.PLATFORM.PATH}/tools/espota.py" -i "${A.SERIAL.PORT}" -p "${A.TOOLS.ESPTOOL.NETWORK.PORT}" "--auth\=${A.TOOLS.ESPTOOL.NETWORK.PASSWORD}" -f "${A.BUILD.PATH}/${A.BUILD.PROJECT_NAME}.bin" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PARAMS.QUIET/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PARAMS.QUIET/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PARAMS.QUIET/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PARAMS.VERBOSE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PARAMS.VERBOSE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PARAMS.VERBOSE/value=-vv +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PATTERN/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PATTERN/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PATTERN/value="${A.TOOLS.ESPTOOL.PATH}/${A.TOOLS.ESPTOOL.CMD}" ${A.TOOLS.ESPTOOL.UPLOAD.VERBOSE} -cd ${A.UPLOAD.RESETMETHOD} -cb ${A.UPLOAD.SPEED} -cp "${A.SERIAL.PORT}" -ca 0x00000 -cf "${A.BUILD.PATH}/${A.BUILD.PROJECT_NAME}.bin" +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PROTOCOL/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PROTOCOL/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.ESPTOOL.UPLOAD.PROTOCOL/value=esp +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.MKSPIFFS.CMD.WINDOWS/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.MKSPIFFS.CMD.WINDOWS/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.MKSPIFFS.CMD.WINDOWS/value=mkspiffs.exe +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.MKSPIFFS.CMD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.MKSPIFFS.CMD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.MKSPIFFS.CMD/value=mkspiffs +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.MKSPIFFS.PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.MKSPIFFS.PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.TOOLS.MKSPIFFS.PATH/value=${A.RUNTIME.TOOLS.MKSPIFFS.PATH} +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.ALTID/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.ALTID/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.ALTID/value=no_altID +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.MAXIMUM_DATA_SIZE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.MAXIMUM_DATA_SIZE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.MAXIMUM_DATA_SIZE/value=81920 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.MAXIMUM_SIZE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.MAXIMUM_SIZE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.MAXIMUM_SIZE/value=1044464 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.PROTOCOL/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.PROTOCOL/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.PROTOCOL/value=stk500v1 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.RESETMETHOD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.RESETMETHOD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.RESETMETHOD/value=nodemcu +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.SPEED/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.SPEED/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.SPEED/value=115200 +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.TOOL/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.TOOL/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.TOOL/value=esptool +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.USBID/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.USBID/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.USBID/value=no_altID +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.WAIT_FOR_UPLOAD_PORT/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.WAIT_FOR_UPLOAD_PORT/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.UPLOAD.WAIT_FOR_UPLOAD_PORT/value=true +environment/project/io.sloeber.core.toolChain.release.1704841599/A.VERSION/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/A.VERSION/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/A.VERSION/value=2.2.0 +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.ARCHITECTURE_ID/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.ARCHITECTURE_ID/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.ARCHITECTURE_ID/value=esp8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.BOARDS_FILE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.BOARDS_FILE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.BOARDS_FILE/value=${eclipse_home}/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0/boards.txt +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.BOARD_ID/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.BOARD_ID/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.BOARD_ID/value=nodemcuv2 +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.BOARD_NAME/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.BOARD_NAME/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.BOARD_NAME/value=NodeMCU 1.0 (ESP-12E Module) +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.COM_PORT/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.COM_PORT/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.COM_PORT/value=/dev/ttyUSB5 +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.ECLIPSE_LOCATION/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.ECLIPSE_LOCATION/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.ECLIPSE_LOCATION/value=${eclipse_home} +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.ALL/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.ALL/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.ALL/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.ARCHIVE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.ARCHIVE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.ARCHIVE/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.ASSEMBLY/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.ASSEMBLY/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.ASSEMBLY/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.C.COMPILE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.C.COMPILE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.C.COMPILE/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.COMPILE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.COMPILE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.COMPILE/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.CPP.COMPILE/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.CPP.COMPILE/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.CPP.COMPILE/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.LINK/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.LINK/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.EXTRA.LINK/value= +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.MENU/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.MENU/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.MENU/value=CpuFrequency\=80\nFlashSize\=4M1M\nUploadSpeed\=115200 +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.OBJCOPY/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.OBJCOPY/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.OBJCOPY/value=${A.RECIPE.OBJCOPY.HEX.PATTERN} +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.OS_NAME/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.OS_NAME/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.OS_NAME/value=linux +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.PACKAGE_ID/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.PACKAGE_ID/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.PACKAGE_ID/value=esp8266 +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.PROJECT_NAME/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.PROJECT_NAME/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.PROJECT_NAME/value=rgbled +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.SELECTED.PLATFORM/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.SELECTED.PLATFORM/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.SELECTED.PLATFORM/value=${eclipse_home}/arduinoPlugin/packages/esp8266/hardware/esp8266/2.3.0 +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.SIZE.SWITCH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.SIZE.SWITCH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.SIZE.SWITCH/value=${A.RECIPE.SIZE.PATTERN} +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.UPLOAD/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.UPLOAD/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.UPLOAD/value=Default +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.WARNING_LEVEL/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.WARNING_LEVEL/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.WARNING_LEVEL/value=true +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.WORKSPACE_LOCATION/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.WORKSPACE_LOCATION/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/JANTJE.WORKSPACE_LOCATION/value=/home/wn/workspace-sloeber +environment/project/io.sloeber.core.toolChain.release.1704841599/PATH/delimiter=\: +environment/project/io.sloeber.core.toolChain.release.1704841599/PATH/operation=replace +environment/project/io.sloeber.core.toolChain.release.1704841599/PATH/value=${A.COMPILER.PATH}${PathDelimiter}${A.BUILD.GENERIC.PATH}${PathDelimiter}${PATH} +environment/project/io.sloeber.core.toolChain.release.1704841599/append=true +environment/project/io.sloeber.core.toolChain.release.1704841599/appendContributed=true diff --git a/ConfigDataStructure.py b/ConfigDataStructure.py new file mode 100644 index 0000000..b13e782 --- /dev/null +++ b/ConfigDataStructure.py @@ -0,0 +1,17 @@ + +configItems = [ + {"label":"_", "key":"magic", "type":"I", "default": ""}, + {"label":"Config Username", "key":"confUser", "type":"C", "length":16, "default":"admin"}, + {"label":"Config Password", "key":"confPasswd", "type":"C", "length":16, "default":"geheim123"}, + {"label":"Wifi SSID", "key":"wifiSsid", "type":"C", "length":32, "default":"test"}, + {"label":"Wifi Key", "key":"wifiKey", "type":"C", "length":64, "default":"geheim"}, + {"label":"MQTT Broker", "key":"mqttBroker", "type":"C", "length":32, "default":"broker.hottis.de"}, + {"label":"MQTT Username", "key":"mqttUser", "type":"C", "length":32, "default":"RgbLed1"}, + {"label":"MQTT Password", "key":"mqttPass", "type":"C", "length":32, "default":"geheim123"}, + {"label":"MQTT ClientId", "key":"mqttClientId", "type":"C", "length":32, "default":"RgbLed1"}, + {"label":"MQTT Port", "key":"mqttPort", "type":"I", "default":8883}, + {"label":"MQTT Topic Color Command", "key":"mqttTopicColorCommand", "type":"C", "length":64, "default":"IoT/RgbLed1/ColorCommand"}, + {"label":"MQTT Topic Command", "key":"mqttTopicCommand", "type":"C", "length":64, "default":"IoT/RgbLed1/Command"}, + {"label":"MQTT DebugTopic", "key":"mqttDebugTopic", "type":"C", "length":64, "default":"IoT/RgbLed1/Debug"}, + {"label":"DebugMode", "key":"debugMode", "type":"I", "default":0} +] diff --git a/application.cpp b/application.cpp index 1dca6d9..58321bf 100644 --- a/application.cpp +++ b/application.cpp @@ -16,7 +16,7 @@ #include #include #include -#include +// #include #include #ifdef WS2811 @@ -58,35 +58,6 @@ typedef struct { Adafruit_NeoPixel pixels(NUM_OF_LEDs, PIXEL_PIN, NEO_RGB + NEO_KHZ400); #endif -void setup_wifi() { - delay(10); - WiFi.mode(WIFI_STA); - - // We start by connecting to a WiFi network -#ifdef DEBUG - Serial.println(); - Serial.print("Connecting to "); - Serial.println(configBlock.wifiSsid); -#endif - - WiFi.begin(configBlock.wifiSsid, configBlock.wifiKey); - - while (WiFi.status() != WL_CONNECTED) { - delay(50); -#ifdef DEBUG - Serial.print("."); -#endif - } - Serial.println("!"); - -#ifdef DEBUG - Serial.println(""); - Serial.println("WiFi connected"); - Serial.println("IP address: "); - Serial.println(WiFi.localIP()); -#endif -} - static CRGB evaluationColorWord(char* cmd) { uint8_t red = 0, green = 0, blue = 0; @@ -355,8 +326,7 @@ bool mqtt_connect() { } -void setupProduction() { - setup_wifi(); +void setupApplication() { client.setServer(configBlock.mqttBroker, configBlock.mqttPort); #ifdef WS2811 @@ -373,7 +343,7 @@ void setupProduction() { } -void loopProduction() { +void loopApplication() { bool reconnected = mqtt_connect(); static uint32_t reconnectTime = 0; if (reconnected) { diff --git a/application.h b/application.h index 33ce5e7..8862974 100644 --- a/application.h +++ b/application.h @@ -10,8 +10,8 @@ -void setupProduction(); -void loopProduction(); +void setupApplication(); +void loopApplication(); diff --git a/configuration.cpp b/configuration.cpp new file mode 100644 index 0000000..7537b1c --- /dev/null +++ b/configuration.cpp @@ -0,0 +1,389 @@ +#include + +#include +#include +#include + +#include "defines.h" +#include "configuration.h" + + +tConfigBlock configBlock; +const uint32_t MAGIC = 3235774469; +const char* CONFIG_SSID = "espconfig"; +extern ESP8266WebServer webServer; + +bool configSaved = false; + + +static bool checkAuthentication() { + Serial.print("User: "); Serial.println(configBlock.confUser); + Serial.print("Pass: "); Serial.println(configBlock.confPasswd); + return webServer.authenticate(configBlock.confUser, configBlock.confPasswd); +} + +void configServeIndex() { + bool configValid = (configBlock.magic == MAGIC); + + if (! configValid) { + configBlock.magic = MAGIC; + strcpy(configBlock.confUser, "admin"); + strcpy(configBlock.confPasswd, "geheim123"); + strcpy(configBlock.wifiSsid, "test"); + strcpy(configBlock.wifiKey, "geheim"); + strcpy(configBlock.mqttBroker, "broker.hottis.de"); + strcpy(configBlock.mqttUser, "RgbLed1"); + strcpy(configBlock.mqttPass, "geheim123"); + strcpy(configBlock.mqttClientId, "RgbLed1"); + configBlock.mqttPort = 8883; + strcpy(configBlock.mqttTopicColorCommand, "IoT/RgbLed1/ColorCommand"); + strcpy(configBlock.mqttTopicCommand, "IoT/RgbLed1/Command"); + strcpy(configBlock.mqttDebugTopic, "IoT/RgbLed1/Debug"); + configBlock.debugMode = 0; + } + + if (! checkAuthentication()) { + return webServer.requestAuthentication(); + } + + + String buffer = + "" + " " + " ESP8266 based TwoLedSignal" + " " + " " + "

ESP8266 based TwoLedSignal - ESP8266 Configuration Page

"; + + if (configSaved) { + configSaved = false; + buffer += "

Configuration saved

"; + } + + buffer += + "
" + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + " " + " " + "
" + " " + "
" + "
" + " " + ""; + + webServer.send(200, "text/html", buffer); + + +#ifdef DEBUG + Serial.println("indexHtml request served"); +#endif +} + +void configServeGetConfiguration() { + if (! checkAuthentication()) { + return webServer.requestAuthentication(); + } + + String arg; + + arg = webServer.arg("confUser"); + strcpy(configBlock.confUser, arg.c_str()); + arg = webServer.arg("confPasswd"); + strcpy(configBlock.confPasswd, arg.c_str()); + arg = webServer.arg("wifiSsid"); + strcpy(configBlock.wifiSsid, arg.c_str()); + arg = webServer.arg("wifiKey"); + strcpy(configBlock.wifiKey, arg.c_str()); + arg = webServer.arg("mqttBroker"); + strcpy(configBlock.mqttBroker, arg.c_str()); + arg = webServer.arg("mqttUser"); + strcpy(configBlock.mqttUser, arg.c_str()); + arg = webServer.arg("mqttPass"); + strcpy(configBlock.mqttPass, arg.c_str()); + arg = webServer.arg("mqttClientId"); + strcpy(configBlock.mqttClientId, arg.c_str()); + arg = webServer.arg("mqttPort"); + configBlock.mqttPort = atoi(arg.c_str()); + arg = webServer.arg("mqttTopicColorCommand"); + strcpy(configBlock.mqttTopicColorCommand, arg.c_str()); + arg = webServer.arg("mqttTopicCommand"); + strcpy(configBlock.mqttTopicCommand, arg.c_str()); + arg = webServer.arg("mqttDebugTopic"); + strcpy(configBlock.mqttDebugTopic, arg.c_str()); + arg = webServer.arg("debugMode"); + configBlock.debugMode = atoi(arg.c_str()); + + configBlock.magic = MAGIC; + + showConfiguration(); + + EEPROM.begin(512); + EEPROM.put(EEPROM_ADDR, configBlock); + EEPROM.commit(); + + Serial.println("EEPROM saved"); + + configSaved = true; + webServer.sendHeader("Location", String("/"), true); + webServer.send(302, "text/plain", ""); + //webServer.send(200, "text/html", "configuration saved"); +} + +void showConfiguration() { + Serial.println("Configuration is"); + + Serial.print("magic = <"); + Serial.print(configBlock.magic); + Serial.println(">"); + + Serial.print("confUser = <"); + Serial.print(configBlock.confUser); + Serial.println(">"); + + Serial.print("confPasswd = <"); + Serial.print(configBlock.confPasswd); + Serial.println(">"); + + Serial.print("wifiSsid = <"); + Serial.print(configBlock.wifiSsid); + Serial.println(">"); + + Serial.print("wifiKey = <"); + Serial.print(configBlock.wifiKey); + Serial.println(">"); + + Serial.print("mqttBroker = <"); + Serial.print(configBlock.mqttBroker); + Serial.println(">"); + + Serial.print("mqttUser = <"); + Serial.print(configBlock.mqttUser); + Serial.println(">"); + + Serial.print("mqttPass = <"); + Serial.print(configBlock.mqttPass); + Serial.println(">"); + + Serial.print("mqttClientId = <"); + Serial.print(configBlock.mqttClientId); + Serial.println(">"); + + Serial.print("mqttPort = <"); + Serial.print(configBlock.mqttPort); + Serial.println(">"); + + Serial.print("mqttTopicColorCommand = <"); + Serial.print(configBlock.mqttTopicColorCommand); + Serial.println(">"); + + Serial.print("mqttTopicCommand = <"); + Serial.print(configBlock.mqttTopicCommand); + Serial.println(">"); + + Serial.print("mqttDebugTopic = <"); + Serial.print(configBlock.mqttDebugTopic); + Serial.println(">"); + + Serial.print("debugMode = <"); + Serial.print(configBlock.debugMode); + Serial.println(">"); + + + Serial.println("---"); +} \ No newline at end of file diff --git a/configuration.h b/configuration.h new file mode 100644 index 0000000..2b21764 --- /dev/null +++ b/configuration.h @@ -0,0 +1,24 @@ +typedef struct { + uint32_t magic; + char confUser[16]; + char confPasswd[16]; + char wifiSsid[32]; + char wifiKey[64]; + char mqttBroker[32]; + char mqttUser[32]; + char mqttPass[32]; + char mqttClientId[32]; + uint32_t mqttPort; + char mqttTopicColorCommand[64]; + char mqttTopicCommand[64]; + char mqttDebugTopic[64]; + uint32_t debugMode; +} tConfigBlock; + +extern const uint32_t MAGIC; +extern tConfigBlock configBlock; +extern const char* CONFIG_SSID; + +void configServeIndex(); +void configServeGetConfiguration(); +void showConfiguration(); \ No newline at end of file diff --git a/esp8266boilerplate b/esp8266boilerplate index 28b3265..8ec16cd 160000 --- a/esp8266boilerplate +++ b/esp8266boilerplate @@ -1 +1 @@ -Subproject commit 28b32656aa94ebe02b3e48db614cde552fa16957 +Subproject commit 8ec16cda27637ec71eed16693070902a5c49ab07 diff --git a/rgbled.cpp b/rgbled.cpp index d8218fa..9668b27 100644 --- a/rgbled.cpp +++ b/rgbled.cpp @@ -1,73 +1,18 @@ -#include "RgbLed.h" -#include "defines.h" +// Do not remove the include below +#include "rgbled.h" -// #define ESP8266 +#include - -#include - -#include "configuration.h" -#include "productionMode.h" -#include "configurationMode.h" - - - - -bool configMode = false; - -uint32_t startTime = 0; - - -void setup() { - startTime = millis(); -#ifdef DEBUG - Serial.begin(115200); - Serial.println("Starting ..."); -#endif - - pinMode(CONFIG_SWITCH, INPUT_PULLUP); - - - EEPROM.begin(1024); - EEPROM.get(EEPROM_ADDR, configBlock); - - - Serial.print("Magic: "); - Serial.println(configBlock.magic); - Serial.print("ConfigSwitch: "); - Serial.println(digitalRead(CONFIG_SWITCH)); - - - configMode = ((LOW == digitalRead(CONFIG_SWITCH)) || (configBlock.magic != MAGIC)); - - if (configMode) { -#ifdef DEBUG - Serial.println("Configuration mode"); -#endif - setupConfigurationNetwork(); - setupConfigurationServer(); - } else { -#ifdef DEBUG - Serial.println("Production mode"); - Serial.println(); - Serial.println(); - showConfiguration(); -#endif - - setupProduction(); - setupConfigurationServer(); - } - -#ifdef DEBUG - Serial.println("Started."); -#endif +//The setup function is called once at startup of the sketch +void setup() +{ +// Add your initialization code here + mainSetup(); } -void loop() { - if (configMode) { - loopConfiguration(); - } else { - loopConfiguration(); - loopProduction(); - } +// The loop function is called in an endless loop +void loop() +{ +//Add your repeated code here + mainLoop(); } diff --git a/rgbled.h b/rgbled.h index f2f3974..08a7596 100644 --- a/rgbled.h +++ b/rgbled.h @@ -4,19 +4,19 @@ // - extern variable definitions // In the appropriate section -#ifndef _RgbLed_H_ -#define _RgbLed_H_ +#ifndef _rgbled_H_ +#define _rgbled_H_ #include "Arduino.h" -//add your includes for the project RgbLed here +//add your includes for the project rgbled here //end of add your includes here -//add your function definitions for the project RgbLed here +//add your function definitions for the project rgbled here //Do not add code below this line -#endif /* _RgbLed_H_ */ +#endif /* _rgbled_H_ */