From e71d847282bc5d873295c36332fb7f50632633cb Mon Sep 17 00:00:00 2001 From: Khoi Hoang <57012152+khoih-prog@users.noreply.github.com> Date: Sat, 14 Jan 2023 21:45:34 -0500 Subject: [PATCH] v1.0.0 for `LwIP W6100 Ethernet` #### Releases v1.0.0 1. Initial coding to port `synchronous` [ESP_WiFiManager](https://github.com/khoih-prog/ESP_WiFiManager) to `ESP32_S2/S3/C3` boards using `LwIP W6100 Ethernet`. 2. Use `allman astyle` --- .codespellrc | 7 + CONTRIBUTING.md | 84 + Images/Configuration_AIO_MQTT.png | Bin 0 -> 36319 bytes Images/Configuration_Standard.png | Bin 0 -> 17154 bytes Images/ESP32S2_DEV.png | Bin 0 -> 360117 bytes Images/ESP32S3_DEV.png | Bin 0 -> 300581 bytes Images/ESP32_C3_DevKitC_02.png | Bin 0 -> 210355 bytes Images/Info.png | Bin 0 -> 61752 bytes Images/Main.png | Bin 0 -> 13218 bytes Images/Saved.png | Bin 0 -> 2478 bytes Images/W6100.png | Bin 0 -> 118672 bytes LICENSE | 21 + changelog.md | 33 + .../ConfigOnDoubleReset.ino | 720 ++++++++ .../ConfigOnDoubleReset_TZ.ino | 749 ++++++++ examples/ConfigOnSwitch/ConfigOnSwitch.ino | 905 ++++++++++ .../ConfigOnSwitchFS/ConfigOnSwitchFS.ino | 1113 ++++++++++++ .../ConfigPortalParamsOnSwitch.ino | 1009 +++++++++++ .../ESP32_FSWebServer/ESP32_FSWebServer.ino | 1061 ++++++++++++ examples/ESP32_FSWebServer/README.md | 71 + .../ESP32_FSWebServer/data/CanadaFlag_1.png | Bin 0 -> 41214 bytes .../ESP32_FSWebServer/data/CanadaFlag_2.png | Bin 0 -> 8311 bytes .../ESP32_FSWebServer/data/CanadaFlag_3.jpg | Bin 0 -> 11156 bytes examples/ESP32_FSWebServer/data/edit.htm.gz | Bin 0 -> 4116 bytes examples/ESP32_FSWebServer/data/favicon.ico | Bin 0 -> 1150 bytes examples/ESP32_FSWebServer/data/graphs.js.gz | Bin 0 -> 1971 bytes examples/ESP32_FSWebServer/data/index.htm | 97 ++ .../pics/async-esp32fs.local.png | Bin 0 -> 20520 bytes .../pics/async-esp32fs.local_edit.png | Bin 0 -> 76964 bytes .../ESP32_FSWebServer_DRD.ino | 1115 ++++++++++++ examples/ESP32_FSWebServer_DRD/README.md | 71 + .../data/CanadaFlag_1.png | Bin 0 -> 41214 bytes .../data/CanadaFlag_2.png | Bin 0 -> 8311 bytes .../data/CanadaFlag_3.jpg | Bin 0 -> 11156 bytes .../ESP32_FSWebServer_DRD/data/edit.htm.gz | Bin 0 -> 4116 bytes .../ESP32_FSWebServer_DRD/data/favicon.ico | Bin 0 -> 1150 bytes .../ESP32_FSWebServer_DRD/data/graphs.js.gz | Bin 0 -> 1971 bytes examples/ESP32_FSWebServer_DRD/data/index.htm | 97 ++ .../pics/async-esp32fs.local.png | Bin 0 -> 20520 bytes .../pics/async-esp32fs.local_edit.png | Bin 0 -> 76964 bytes keywords.txt | 92 + library.json | 44 + library.properties | 12 + platformio/platformio.ini | 166 ++ src/ESP32_SC_W6100_Manager.h | 30 + src/ESP32_SC_W6100_Manager.hpp | 627 +++++++ src/ESP32_SC_W6100_Manager_Debug.h | 93 + src/ESP32_SC_W6100_Manager_Impl.h | 1211 +++++++++++++ src/ESP32_SC_W6100_Manager_Manager_Impl.h | 1217 +++++++++++++ src/utils/TZ.h | 1526 +++++++++++++++++ travis/common.sh | 51 + utils/astyle_library.conf | 70 + utils/restyle.sh | 6 + 53 files changed, 12298 insertions(+) create mode 100644 .codespellrc create mode 100644 CONTRIBUTING.md create mode 100644 Images/Configuration_AIO_MQTT.png create mode 100644 Images/Configuration_Standard.png create mode 100644 Images/ESP32S2_DEV.png create mode 100644 Images/ESP32S3_DEV.png create mode 100644 Images/ESP32_C3_DevKitC_02.png create mode 100644 Images/Info.png create mode 100644 Images/Main.png create mode 100644 Images/Saved.png create mode 100644 Images/W6100.png create mode 100644 LICENSE create mode 100644 changelog.md create mode 100644 examples/ConfigOnDoubleReset/ConfigOnDoubleReset.ino create mode 100644 examples/ConfigOnDoubleReset_TZ/ConfigOnDoubleReset_TZ.ino create mode 100644 examples/ConfigOnSwitch/ConfigOnSwitch.ino create mode 100644 examples/ConfigOnSwitchFS/ConfigOnSwitchFS.ino create mode 100644 examples/ConfigPortalParamsOnSwitch/ConfigPortalParamsOnSwitch.ino create mode 100644 examples/ESP32_FSWebServer/ESP32_FSWebServer.ino create mode 100644 examples/ESP32_FSWebServer/README.md create mode 100644 examples/ESP32_FSWebServer/data/CanadaFlag_1.png create mode 100644 examples/ESP32_FSWebServer/data/CanadaFlag_2.png create mode 100644 examples/ESP32_FSWebServer/data/CanadaFlag_3.jpg create mode 100644 examples/ESP32_FSWebServer/data/edit.htm.gz create mode 100644 examples/ESP32_FSWebServer/data/favicon.ico create mode 100644 examples/ESP32_FSWebServer/data/graphs.js.gz create mode 100644 examples/ESP32_FSWebServer/data/index.htm create mode 100644 examples/ESP32_FSWebServer/pics/async-esp32fs.local.png create mode 100644 examples/ESP32_FSWebServer/pics/async-esp32fs.local_edit.png create mode 100644 examples/ESP32_FSWebServer_DRD/ESP32_FSWebServer_DRD.ino create mode 100644 examples/ESP32_FSWebServer_DRD/README.md create mode 100644 examples/ESP32_FSWebServer_DRD/data/CanadaFlag_1.png create mode 100644 examples/ESP32_FSWebServer_DRD/data/CanadaFlag_2.png create mode 100644 examples/ESP32_FSWebServer_DRD/data/CanadaFlag_3.jpg create mode 100644 examples/ESP32_FSWebServer_DRD/data/edit.htm.gz create mode 100644 examples/ESP32_FSWebServer_DRD/data/favicon.ico create mode 100644 examples/ESP32_FSWebServer_DRD/data/graphs.js.gz create mode 100644 examples/ESP32_FSWebServer_DRD/data/index.htm create mode 100644 examples/ESP32_FSWebServer_DRD/pics/async-esp32fs.local.png create mode 100644 examples/ESP32_FSWebServer_DRD/pics/async-esp32fs.local_edit.png create mode 100644 keywords.txt create mode 100644 library.json create mode 100644 library.properties create mode 100644 platformio/platformio.ini create mode 100644 src/ESP32_SC_W6100_Manager.h create mode 100644 src/ESP32_SC_W6100_Manager.hpp create mode 100644 src/ESP32_SC_W6100_Manager_Debug.h create mode 100644 src/ESP32_SC_W6100_Manager_Impl.h create mode 100644 src/ESP32_SC_W6100_Manager_Manager_Impl.h create mode 100644 src/utils/TZ.h create mode 100644 travis/common.sh create mode 100644 utils/astyle_library.conf create mode 100644 utils/restyle.sh diff --git a/.codespellrc b/.codespellrc new file mode 100644 index 0000000..00fe362 --- /dev/null +++ b/.codespellrc @@ -0,0 +1,7 @@ +# See: https://github.com/codespell-project/codespell#using-a-config-file +[codespell] +# In the event of a false positive, add the problematic word, in all lowercase, to a comma-separated list here: +ignore-words-list = , +check-filenames = +check-hidden = +skip = ./.git,./src,./examples,./Packages_Patches,./LibraryPatches diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..3ab69f4 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,84 @@ +## Contributing to ESP32_SC_W6100_Manager + +### Reporting Bugs + +Please report bugs in ESP32_SC_W6100_Manager if you find them. + +However, before reporting a bug please check through the following: + +* [Existing Open Issues](https://github.com/khoih-prog/ESP32_SC_W6100_Manager/issues) - someone might have already encountered this. + +If you don't find anything, please [open a new issue](https://github.com/khoih-prog/ESP32_SC_W6100_Manager/issues/new). + +--- + +### How to submit a bug report + +Please ensure to specify the following: + +* Arduino IDE version (e.g. 1.8.19) or Platform.io version +* Board Type (e.g. ESP32S3_DEV, ESP32S2_DEV, ESP32C3_DEV) +* Board Core Version (e.g. ESP32 core v2.0.6) +* Contextual information (e.g. what you were trying to achieve) +* Simplest possible steps to reproduce +* Anything that might be relevant in your opinion, such as: + * Operating system (Windows, Ubuntu, etc.) and the output of `uname -a` + * Network configuration + + +Please be educated, civilized and constructive as you've always been. Disrespective posts against [GitHub Code of Conduct](https://docs.github.com/en/site-policy/github-terms/github-event-code-of-conduct) will be ignored and deleted. + +--- + +### Example + +``` +Arduino IDE version: 1.8.19 +ESP32S3_DEV board +ESP32 core v2.0.6 +OS: Ubuntu 20.04 LTS +Linux xy-Inspiron-3593 5.15.0-58-generic #64~20.04.1-Ubuntu SMP Fri Jan 6 16:42:31 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux + +Context: +I encountered a crash while using this library +Steps to reproduce: +1. ... +2. ... +3. ... +4. ... +``` +--- + +### Additional context + +Add any other context about the problem here. + +--- + +### Sending Feature Requests + +Feel free to post feature requests. It's helpful if you can explain exactly why the feature would be useful. + +There are usually some outstanding feature requests in the [existing issues list](https://github.com/khoih-prog/ESP32_SC_W6100_Manager/issues?q=is%3Aopen+is%3Aissue+label%3Aenhancement), feel free to add comments to them. + +--- + +### Sending Pull Requests + +Pull Requests with changes and fixes are also welcome! + +Please use the `astyle` to reformat the updated library code as follows (demo for Ubuntu Linux) + +1. Change directory to the library GitHub + +``` +xy@xy-Inspiron-3593:~$ cd Arduino/xy/ESP32_SC_W6100_Manager_GitHub/ +xy@xy-Inspiron-3593:~/Arduino/xy/ESP32_SC_W6100_Manager_GitHub$ +``` + +2. Issue astyle command + +``` +xy@xy-Inspiron-3593:~/Arduino/xy/ESP32_SC_W6100_Manager_GitHub$ bash utils/restyle.sh +``` + diff --git a/Images/Configuration_AIO_MQTT.png b/Images/Configuration_AIO_MQTT.png new file mode 100644 index 0000000000000000000000000000000000000000..75ad6cae61aee038fffedbb4181e0538c6f26ded GIT binary patch literal 36319 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 literal 0 HcmV?d00001 diff --git a/Images/ESP32S2_DEV.png b/Images/ESP32S2_DEV.png new file mode 100644 index 0000000000000000000000000000000000000000..b73e4d0996bd15a9706e3c8e0982753dd56f61a1 GIT binary patch literal 360117 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%0A3!z&P{AEwAe){a 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

xFf3$`-Sz%iQb&$MlHu2f}UEG=U_y2^ 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 J7s{Cj{U4K&pMn4Y literal 0 HcmV?d00001 diff --git a/Images/ESP32S3_DEV.png b/Images/ESP32S3_DEV.png new file mode 100644 index 0000000000000000000000000000000000000000..829610f77a74cd77a02051ab603aadbd24575fcd GIT binary patch literal 300581 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℘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ⅆRSb7`lpe75cFB(BH}0 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 Xc7n&B*-idN00000NkvXXu0mjf`ZKjs literal 0 HcmV?d00001 diff --git a/Images/ESP32_C3_DevKitC_02.png b/Images/ESP32_C3_DevKitC_02.png new file mode 100644 index 0000000000000000000000000000000000000000..1189334d26e20f51c6d37f18926a54d90069528f GIT binary patch literal 210355 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 u9n4?#{+Mi=X{IpF+&@{_Ibj%2zYo#h9I0 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

>UR*YJ&1Ym^ONq6_ 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

P-1gw!&D6AG(97vyOioVp$(4Z`P5A(y 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ⓈMjY5eqK%%cr7#uI1CzgNJ+mCPa&#F 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 V-BcY4X7)00@6LnU=$o+U{{Zr7+UNiP literal 0 HcmV?d00001 diff --git a/Images/Info.png b/Images/Info.png new file mode 100644 index 0000000000000000000000000000000000000000..52cdbc102791c17fa172dcebcdb4e6870acf72b4 GIT binary patch literal 61752 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 O08o%ol`fZjAN)VU7z;T7 literal 0 HcmV?d00001 diff --git a/Images/Main.png b/Images/Main.png new file mode 100644 index 0000000000000000000000000000000000000000..6d570d3509eee5e005258bea12d8c076bfbcaf65 GIT binary patch literal 13218 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 literal 0 HcmV?d00001 diff --git a/Images/Saved.png b/Images/Saved.png new file mode 100644 index 0000000000000000000000000000000000000000..a4c89cb9d7076c3e3c9a8e06ba0bd14673eaf9b5 GIT binary patch literal 2478 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 Fe*ystmM8!K literal 0 HcmV?d00001 diff --git a/Images/W6100.png b/Images/W6100.png new file mode 100644 index 0000000000000000000000000000000000000000..867119addd8cc0cce0efa1346a65fd6b977f1c22 GIT binary patch literal 118672 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\>cQ_|&5X~0gOmfu)F{5y2FdkK)Hb(| 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%0AH@AP`nGZcX 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

-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 literal 0 HcmV?d00001 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ab72b02 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2022 Khoi Hoang + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/changelog.md b/changelog.md new file mode 100644 index 0000000..6ff24e8 --- /dev/null +++ b/changelog.md @@ -0,0 +1,33 @@ +# ESP32_SC_W6100_Manager Library + +[![arduino-library-badge](https://www.ardu-badge.com/badge/ESP32_SC_W6100_Manager.svg?)](https://www.ardu-badge.com/ESP32_SC_W6100_Manager) +[![GitHub release](https://img.shields.io/github/release/khoih-prog/ESP32_SC_W6100_Manager.svg)](https://github.com/khoih-prog/ESP32_SC_W6100_Manager/releases) +[![GitHub](https://img.shields.io/github/license/mashape/apistatus.svg)](https://github.com/khoih-prog/ESP32_SC_W6100_Manager/blob/main/LICENSE) +[![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](#Contributing) +[![GitHub issues](https://img.shields.io/github/issues/khoih-prog/ESP32_SC_W6100_Manager.svg)](http://github.com/khoih-prog/ESP32_SC_W6100_Manager/issues) + +Donate to my libraries using BuyMeACoffee + + + +--- +--- + +## Table of contents + +* [Changelog](#changelog) + * [Releases v1.0.0](#releases-v100) + + + +--- +--- + +## Changelog + +#### Releases v1.0.0 + +1. Initial coding to port `synchronous` [ESP_WiFiManager](https://github.com/khoih-prog/ESP_WiFiManager) to `ESP32_S2/S3/C3` boards using `LwIP W6100 Ethernet`. +2. Use `allman astyle` + + diff --git a/examples/ConfigOnDoubleReset/ConfigOnDoubleReset.ino b/examples/ConfigOnDoubleReset/ConfigOnDoubleReset.ino new file mode 100644 index 0000000..e73575e --- /dev/null +++ b/examples/ConfigOnDoubleReset/ConfigOnDoubleReset.ino @@ -0,0 +1,720 @@ +/**************************************************************************************************************************** + ConfigOnDoubleReset.ino + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + *****************************************************************************************************************************/ +/**************************************************************************************************************************** + This example will open a configuration portal when the reset button is pressed twice. + This method works well on Wemos boards which have a single reset button on board. It avoids using a pin for launching the configuration portal. + + Settings + There are two values to be set in the sketch. + + DRD_TIMEOUT - Number of seconds to wait for the second reset. Set to 10 in the example. + DRD_ADDRESS - The address in ESP8266 RTC RAM to store the flag. This memory must not be used for other purposes in the same sketch. Set to 0 in the example. + + This example, originally relied on the Double Reset Detector library from https://github.com/datacute/DoubleResetDetector + To support ESP32, use ESP_DoubleResetDetector library from //https://github.com/khoih-prog/ESP_DoubleResetDetector + *****************************************************************************************************************************/ + +#if !( defined(ESP32) ) + #error This code is designed for (ESP32_S2/3, ESP32_C3 + W6100) to run on ESP32 platform! Please check your Tools->Board setting. +#endif + +// Use from 0 to 4. Higher number, more debugging messages and memory usage. +#define _ESP32_ETH_MGR_LOGLEVEL_ 4 + +// To not display stored SSIDs and PWDs on Config Portal, select false. Default is true +// Even the stored Credentials are not display, just leave them all blank to reconnect and reuse the stored Credentials +//#define DISPLAY_STORED_CREDENTIALS_IN_CP false + +////////////////////////////////////////////////////////////// + +// Enter a MAC address and IP address for your controller below. +#define NUMBER_OF_MAC 20 + +byte mac[][NUMBER_OF_MAC] = +{ + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x01 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x02 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x03 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x04 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x05 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x06 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x07 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x08 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x09 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0A }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0B }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0C }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0D }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0E }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0F }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x10 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x11 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x12 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x13 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x14 }, +}; + +////////////////////////////////////////////////////////// + +// For W6100 & ESP32-S3 +// Optional values to override default settings +// Don't change unless you know what you're doing +//#define ETH_SPI_HOST SPI3_HOST +//#define SPI_CLOCK_MHZ 25 + +// Must connect INT to GPIOxx or not working +//#define INT_GPIO 4 + +//#define MISO_GPIO 13 +//#define MOSI_GPIO 11 +//#define SCK_GPIO 12 +//#define CS_GPIO 10 + +////////////////////////////////////////////////////////// + +#include + +//Ported to ESP32 +#include + +// LittleFS has higher priority than SPIFFS +#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #define USE_LITTLEFS true + #define USE_SPIFFS false +#elif defined(ARDUINO_ESP32C3_DEV) + // For core v1.0.6-, ESP32-C3 only supporting SPIFFS and EEPROM. To use v2.0.0+ for LittleFS + #define USE_LITTLEFS false + #define USE_SPIFFS true +#endif + +#if USE_LITTLEFS + // Use LittleFS + #include "FS.h" + + // Check cores/esp32/esp_arduino_version.h and cores/esp32/core_version.h + //#if ( ESP_ARDUINO_VERSION >= ESP_ARDUINO_VERSION_VAL(2, 0, 0) ) //(ESP_ARDUINO_VERSION_MAJOR >= 2) + #if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.6 or 2.0.0+ + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/espressif/arduino-esp32/tree/master/libraries/LittleFS + + FS* filesystem = &LittleFS; + #define FileFS LittleFS + #define FS_Name "LittleFS" + #else + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.5-. You must install LITTLEFS library + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/lorol/LITTLEFS + + FS* filesystem = &LITTLEFS; + #define FileFS LITTLEFS + #define FS_Name "LittleFS" + #endif + +#elif USE_SPIFFS + #include + FS* filesystem = &SPIFFS; + #define FileFS SPIFFS + #define FS_Name "SPIFFS" +#else + // +Use FFat + #include + FS* filesystem = &FFat; + #define FileFS FFat + #define FS_Name "FFat" +#endif +////// + +#if !defined(LED_BUILTIN) + #define LED_BUILTIN 2 +#endif + +#define LED_ON HIGH +#define LED_OFF LOW + +// These defines must be put before #include +// to select where to store DoubleResetDetector's variable. +// For ESP32, You must select one to be true (EEPROM or SPIFFS) +// Otherwise, library will use default EEPROM storage + +// These defines must be put before #include +// to select where to store DoubleResetDetector's variable. +// For ESP32, You must select one to be true (EEPROM or SPIFFS) +// Otherwise, library will use default EEPROM storage +#if USE_LITTLEFS + #define ESP_DRD_USE_LITTLEFS true + #define ESP_DRD_USE_SPIFFS false + #define ESP_DRD_USE_EEPROM false +#elif USE_SPIFFS + #define ESP_DRD_USE_LITTLEFS false + #define ESP_DRD_USE_SPIFFS true + #define ESP_DRD_USE_EEPROM false +#else + #define ESP_DRD_USE_LITTLEFS false + #define ESP_DRD_USE_SPIFFS false + #define ESP_DRD_USE_EEPROM true +#endif + +#define DOUBLERESETDETECTOR_DEBUG true //false + +#include //https://github.com/khoih-prog/ESP_DoubleResetDetector + +// Number of seconds after reset during which a +// subseqent reset will be considered a double reset. +#define DRD_TIMEOUT 10 + +// RTC Memory Address for the DoubleResetDetector to use +#define DRD_ADDRESS 0 + +//DoubleResetDetector drd(DRD_TIMEOUT, DRD_ADDRESS); +DoubleResetDetector* drd;////// + +// Onboard LED I/O pin on NodeMCU board +const int PIN_LED = 2; // D4 on NodeMCU and WeMos. GPIO2/ADC12 of ESP32. Controls the onboard LED. + +// You only need to format the filesystem once +//#define FORMAT_FILESYSTEM true +#define FORMAT_FILESYSTEM false + +// Assuming max 49 chars +#define TZNAME_MAX_LEN 50 +#define TIMEZONE_MAX_LEN 50 + +typedef struct +{ + char TZ_Name[TZNAME_MAX_LEN]; // "America/Toronto" + char TZ[TIMEZONE_MAX_LEN]; // "EST5EDT,M3.2.0,M11.1.0" + uint16_t checksum; +} EthConfig; + +EthConfig Ethconfig; + +#define CONFIG_FILENAME F("/eth_cred.dat") +////// + +// Indicates whether ESP has credentials saved from previous session, or double reset detected +bool initialConfig = false; + +// Use false if you don't like to display Available Pages in Information Page of Config Portal +// Comment out or use true to display Available Pages in Information Page of Config Portal +// Must be placed before #include +#define USE_AVAILABLE_PAGES true //false + +// To permit disable/enable StaticIP configuration in Config Portal from sketch. Valid only if DHCP is used. +// You'll loose the feature of dynamically changing from DHCP to static IP, or vice versa +// You have to explicitly specify false to disable the feature. +//#define USE_STATIC_IP_CONFIG_IN_CP false + +// Use false to disable NTP config. Advisable when using Cellphone, Tablet to access Config Portal. +// See Issue 23: On Android phone ConfigPortal is unresponsive (https://github.com/khoih-prog/ESP_WiFiManager/issues/23) +#define USE_ESP_ETH_MANAGER_NTP true //false + +// Just use enough to save memory. On ESP8266, can cause blank ConfigPortal screen +// if using too much memory +#define USING_AFRICA false +#define USING_AMERICA true +#define USING_ANTARCTICA false +#define USING_ASIA false +#define USING_ATLANTIC false +#define USING_AUSTRALIA false +#define USING_EUROPE false +#define USING_INDIAN false +#define USING_PACIFIC false +#define USING_ETC_GMT false + +// Use true to enable CloudFlare NTP service. System can hang if you don't have Internet access while accessing CloudFlare +// See Issue #21: CloudFlare link in the default portal (https://github.com/khoih-prog/ESP_WiFiManager/issues/21) +#define USE_CLOUDFLARE_NTP false + +#define USING_CORS_FEATURE true + +//////////////////////////////////////////// + +// Use USE_DHCP_IP == true for dynamic DHCP IP, false to use static IP which you have to change accordingly to your network +#if (defined(USE_STATIC_IP_CONFIG_IN_CP) && !USE_STATIC_IP_CONFIG_IN_CP) + // Force DHCP to be true + #if defined(USE_DHCP_IP) + #undef USE_DHCP_IP + #endif + #define USE_DHCP_IP true +#else + // You can select DHCP or Static IP here + //#define USE_DHCP_IP true + #define USE_DHCP_IP false +#endif + +#if ( USE_DHCP_IP ) + // Use DHCP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using DHCP IP + #endif + + IPAddress stationIP = IPAddress(0, 0, 0, 0); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); + +#else + // Use static IP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using static IP + #endif + + IPAddress stationIP = IPAddress(192, 168, 2, 232); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); +#endif + +//////////////////////////////////////////// + + +#define USE_CONFIGURABLE_DNS true + +IPAddress dns1IP = gatewayIP; +IPAddress dns2IP = IPAddress(8, 8, 8, 8); + +#include //https://github.com/khoih-prog/ESP32_SC_W6100_Manager + +#define HTTP_PORT 80 + +/////////////////////////////////////////// +/****************************************** + // Defined in ESP32_SC_W6100_Manager.hpp + typedef struct + { + IPAddress _sta_static_ip; + IPAddress _sta_static_gw; + IPAddress _sta_static_sn; + #if USE_CONFIGURABLE_DNS + IPAddress _sta_static_dns1; + IPAddress _sta_static_dns2; + #endif + } ETH_STA_IPConfig; +******************************************/ + +ETH_STA_IPConfig EthSTA_IPconfig; + +void initSTAIPConfigStruct(ETH_STA_IPConfig &in_EthSTA_IPconfig) +{ + in_EthSTA_IPconfig._sta_static_ip = stationIP; + in_EthSTA_IPconfig._sta_static_gw = gatewayIP; + in_EthSTA_IPconfig._sta_static_sn = netMask; +#if USE_CONFIGURABLE_DNS + in_EthSTA_IPconfig._sta_static_dns1 = dns1IP; + in_EthSTA_IPconfig._sta_static_dns2 = dns2IP; +#endif +} + +void displayIPConfigStruct(ETH_STA_IPConfig in_EthSTA_IPconfig) +{ + LOGERROR3(F("stationIP ="), in_EthSTA_IPconfig._sta_static_ip, ", gatewayIP =", in_EthSTA_IPconfig._sta_static_gw); + LOGERROR1(F("netMask ="), in_EthSTA_IPconfig._sta_static_sn); +#if USE_CONFIGURABLE_DNS + LOGERROR3(F("dns1IP ="), in_EthSTA_IPconfig._sta_static_dns1, ", dns2IP =", in_EthSTA_IPconfig._sta_static_dns2); +#endif +} + +#if USE_ESP_ETH_MANAGER_NTP + +void printLocalTime() +{ + struct tm timeinfo; + + getLocalTime( &timeinfo ); + + // Valid only if year > 2000. + // You can get from timeinfo : tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec + if (timeinfo.tm_year > 100 ) + { + Serial.print("Local Date/Time: "); + Serial.print( asctime( &timeinfo ) ); + } +} + +#endif + +void heartBeatPrint() +{ +#if USE_ESP_ETH_MANAGER_NTP + printLocalTime(); +#else + static int num = 1; + + if (ESP32_W6100_isConnected()) + Serial.print(F("H")); // H means connected to Ethernet + else + Serial.print(F("F")); // F means not connected to Ethernet + + if (num == 80) + { + Serial.println(); + num = 1; + } + else if (num++ % 10 == 0) + { + Serial.print(F(" ")); + } + +#endif +} + +void check_status() +{ + static ulong checkstatus_timeout = 0; + + static ulong current_millis; + +#if USE_ESP_ETH_MANAGER_NTP +#define HEARTBEAT_INTERVAL 60000L +#else +#define HEARTBEAT_INTERVAL 10000L +#endif + + current_millis = millis(); + + // Print hearbeat every HEARTBEAT_INTERVAL (10) seconds. + if ((current_millis > checkstatus_timeout) || (checkstatus_timeout == 0)) + { + heartBeatPrint(); + checkstatus_timeout = current_millis + HEARTBEAT_INTERVAL; + } +} + +int calcChecksum(uint8_t* address, uint16_t sizeToCalc) +{ + uint16_t checkSum = 0; + + for (uint16_t index = 0; index < sizeToCalc; index++) + { + checkSum += * ( ( (byte*) address ) + index); + } + + return checkSum; +} + +bool loadConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "r"); + LOGERROR(F("LoadCfgFile ")); + + memset((void *) &Ethconfig, 0, sizeof(Ethconfig)); + memset((void *) &EthSTA_IPconfig, 0, sizeof(EthSTA_IPconfig)); + + if (file) + { + file.readBytes((char *) &Ethconfig, sizeof(Ethconfig)); + file.readBytes((char *) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + + if ( Ethconfig.checksum != calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ) ) + { + LOGERROR(F("Ethconfig checksum wrong")); + + return false; + } + + displayIPConfigStruct(EthSTA_IPconfig); + + return true; + } + else + { + LOGERROR(F("failed")); + + return false; + } +} + +void saveConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "w"); + LOGERROR(F("SaveCfgFile ")); + + if (file) + { + Ethconfig.checksum = calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ); + + file.write((uint8_t*) &Ethconfig, sizeof(Ethconfig)); + + displayIPConfigStruct(EthSTA_IPconfig); + + file.write((uint8_t*) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + } + else + { + LOGERROR(F("failed")); + } +} + +void beginEthernet() +{ + LOGWARN(F("Default SPI pinout:")); + LOGWARN1(F("SPI_HOST:"), ETH_SPI_HOST); + LOGWARN1(F("MOSI:"), MOSI_GPIO); + LOGWARN1(F("MISO:"), MISO_GPIO); + LOGWARN1(F("SCK:"), SCK_GPIO); + LOGWARN1(F("CS:"), CS_GPIO); + LOGWARN1(F("INT:"), INT_GPIO); + LOGWARN1(F("SPI Clock (MHz):"), SPI_CLOCK_MHZ); + LOGWARN(F("=========================")); + + /////////////////////////////////// + + // To be called before ETH.begin() + ESP32_W6100_onEvent(); + + // start the ethernet connection and the server: + // Use DHCP dynamic IP and random mac + uint16_t index = millis() % NUMBER_OF_MAC; + + //bool begin(int MISO_GPIO, int MOSI_GPIO, int SCLK_GPIO, int CS_GPIO, int INT_GPIO, int SPI_CLOCK_MHZ, + // int SPI_HOST, uint8_t *W6100_Mac = W6100_Default_Mac); + //ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST ); + ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST, mac[index] ); +} + +void initEthernet() +{ +#if !( USE_DHCP_IP ) + displayIPConfigStruct(EthSTA_IPconfig); + + // Static IP, leave without this line to get IP via DHCP + //bool config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1 = 0, IPAddress dns2 = 0); + //ETH.config(stationIP, gatewayIP, netMask, dns1IP, dns2IP); + ETH.config(EthSTA_IPconfig._sta_static_ip, EthSTA_IPconfig._sta_static_gw, EthSTA_IPconfig._sta_static_sn, + EthSTA_IPconfig._sta_static_dns1); +#endif + + ESP32_W6100_waitForConnect(); +} + +void setup() +{ + // put your setup code here, to run once: + // initialize the LED digital pin as an output. + pinMode(PIN_LED, OUTPUT); + + Serial.begin(115200); + + while (!Serial && millis() < 5000); + + delay(500); + + Serial.print(F("\nStarting ConfigOnDoubleReset using ")); + Serial.print(FS_Name); + Serial.print(F(" on ")); + Serial.print(ARDUINO_BOARD); + Serial.print(F(" with ")); + Serial.println(SHIELD_TYPE); + Serial.println(ESP32_SC_W6100_MANAGER_VERSION); + Serial.println(ESP_DOUBLE_RESET_DETECTOR_VERSION); + + Serial.setDebugOutput(false); + + if (FORMAT_FILESYSTEM) + FileFS.format(); + + // Format FileFS if not yet + if (!FileFS.begin(true)) + { + Serial.println(F("SPIFFS/LittleFS failed! Already tried formatting.")); + + if (!FileFS.begin()) + { + // prevents debug info from the library to hide err message. + delay(100); + +#if USE_LITTLEFS + Serial.println(F("LittleFS failed!. Please use SPIFFS or EEPROM. Stay forever")); +#else + Serial.println(F("SPIFFS failed!. Please use LittleFS or EEPROM. Stay forever")); +#endif + + while (true) + { + delay(1); + } + } + } + + drd = new DoubleResetDetector(DRD_TIMEOUT, DRD_ADDRESS); + + unsigned long startedAt = millis(); + + beginEthernet(); + + initSTAIPConfigStruct(EthSTA_IPconfig); + + //Local intialization. Once its business is done, there is no need to keep it around + // Use this to default DHCP hostname to ESP32-XXXXXX + //ESP32_SC_W6100_Manager ESP32_SC_W6100_manager; + // Use this to personalize DHCP hostname (RFC952 conformed) + ESP32_SC_W6100_Manager ESP32_SC_W6100_manager("ConfigOnDoubleReset"); + +#if !USE_DHCP_IP + // Set (static IP, Gateway, Subnetmask, DNS1 and DNS2) or (IP, Gateway, Subnetmask) + ESP32_SC_W6100_manager.setSTAStaticIPConfig(EthSTA_IPconfig); +#endif + +#if USING_CORS_FEATURE + ESP32_SC_W6100_manager.setCORSHeader("Your Access-Control-Allow-Origin"); +#endif + + if (loadConfigData()) + { + //If no access point name has been previously entered disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(120); + + Serial.println(F("Got stored Credentials. Timeout 120s for Config Portal")); + +#if USE_ESP_ETH_MANAGER_NTP + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + Serial.println(F("Current Timezone is not set. Enter Config Portal to set.")); + } + +#endif + } + + ////////////////////////////////// + + // Connect ETH now if using STA + initEthernet(); + + ////////////////////////////////// + + if (drd->detectDoubleReset()) + { + // DRD, disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(0); + + Serial.println(F("Open Config Portal without Timeout: Double Reset Detected")); + initialConfig = true; + } + + if (initialConfig) + { + Serial.print(F("Starting configuration portal @ ")); + Serial.println(ETH.localIP()); + + digitalWrite(PIN_LED, LED_ON); // turn the LED on by making the voltage LOW to tell us we are in configuration mode. + + //sets timeout in seconds until configuration portal gets turned off. + //If not specified device will remain in configuration mode until + //switched off via webserver or device is restarted. + //ESP32_SC_W6100_manager.setConfigPortalTimeout(600); + + // Starts an access point + if (!ESP32_SC_W6100_manager.startConfigPortal()) + Serial.println(F("Not connected to ETH network but continuing anyway.")); + else + { + Serial.println(F("ETH network connected...yeey :)")); + } + +#if USE_ESP_ETH_MANAGER_NTP + String tempTZ = ESP32_SC_W6100_manager.getTimezoneName(); + + if (strlen(tempTZ.c_str()) < sizeof(Ethconfig.TZ_Name) - 1) + strcpy(Ethconfig.TZ_Name, tempTZ.c_str()); + else + strncpy(Ethconfig.TZ_Name, tempTZ.c_str(), sizeof(Ethconfig.TZ_Name) - 1); + + const char * TZ_Result = ESP32_SC_W6100_manager.getTZ(Ethconfig.TZ_Name); + + if (strlen(TZ_Result) < sizeof(Ethconfig.TZ) - 1) + strcpy(Ethconfig.TZ, TZ_Result); + else + strncpy(Ethconfig.TZ, TZ_Result, sizeof(Ethconfig.TZ_Name) - 1); + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Saving current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + LOGERROR(F("Current Timezone Name is not set. Enter Config Portal to set.")); + } + +#endif + + ESP32_SC_W6100_manager.getSTAStaticIPConfig(EthSTA_IPconfig); + + saveConfigData(); + +#if !USE_DHCP_IP + + // Reset to use new Static IP, if different from current ETH.localIP() + if (ETH.localIP() != EthSTA_IPconfig._sta_static_ip) + { + Serial.print(F("Current IP = ")); + Serial.print(ETH.localIP()); + Serial.print(F(". Reset to take new IP = ")); + Serial.println(EthSTA_IPconfig._sta_static_ip); + + ESP.restart(); + delay(2000); + } + +#endif + } + + digitalWrite(PIN_LED, LED_OFF); // Turn led off as we are not in configuration mode. + + startedAt = millis(); + + Serial.print(F("After waiting ")); + Serial.print((float) (millis() - startedAt) / 1000); + Serial.print(F(" secs more in setup(), connection result is ")); + + if (ESP32_W6100_isConnected()) + { + Serial.print(F("connected. Local IP: ")); + Serial.println(ETH.localIP()); + } +} + +void loop() +{ + // Call the double reset detector loop method every so often, + // so that it can recognise when the timeout expires. + // You can also call drd.stop() when you wish to no longer + // consider the next reset as a double reset. + drd->loop(); + + // put your main code here, to run repeatedly + check_status(); +} diff --git a/examples/ConfigOnDoubleReset_TZ/ConfigOnDoubleReset_TZ.ino b/examples/ConfigOnDoubleReset_TZ/ConfigOnDoubleReset_TZ.ino new file mode 100644 index 0000000..32ff2e2 --- /dev/null +++ b/examples/ConfigOnDoubleReset_TZ/ConfigOnDoubleReset_TZ.ino @@ -0,0 +1,749 @@ +/**************************************************************************************************************************** + ConfigOnDoubleReset_TZ.ino + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + *****************************************************************************************************************************/ +/**************************************************************************************************************************** + This example will open a configuration portal when the reset button is pressed twice. + This method works well on Wemos boards which have a single reset button on board. It avoids using a pin for launching the configuration portal. + + Settings + There are two values to be set in the sketch. + + DRD_TIMEOUT - Number of seconds to wait for the second reset. Set to 10 in the example. + DRD_ADDRESS - The address in ESP8266 RTC RAM to store the flag. This memory must not be used for other purposes in the same sketch. Set to 0 in the example. + + This example, originally relied on the Double Reset Detector library from https://github.com/datacute/DoubleResetDetector + To support ESP32, use ESP_DoubleResetDetector library from //https://github.com/khoih-prog/ESP_DoubleResetDetector + *****************************************************************************************************************************/ + +#if !( defined(ESP32) ) + #error This code is designed for (ESP32_S2/3, ESP32_C3 + W6100) to run on ESP32 platform! Please check your Tools->Board setting. +#endif + +// Use from 0 to 4. Higher number, more debugging messages and memory usage. +#define _ESP32_ETH_MGR_LOGLEVEL_ 4 + +// To not display stored SSIDs and PWDs on Config Portal, select false. Default is true +// Even the stored Credentials are not display, just leave them all blank to reconnect and reuse the stored Credentials +//#define DISPLAY_STORED_CREDENTIALS_IN_CP false + +////////////////////////////////////////////////////////////// + +// Enter a MAC address and IP address for your controller below. +#define NUMBER_OF_MAC 20 + +byte mac[][NUMBER_OF_MAC] = +{ + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x01 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x02 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x03 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x04 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x05 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x06 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x07 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x08 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x09 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0A }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0B }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0C }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0D }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0E }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0F }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x10 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x11 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x12 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x13 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x14 }, +}; + +////////////////////////////////////////////////////////// + +// For W6100 & ESP32-S3 +// Optional values to override default settings +// Don't change unless you know what you're doing +//#define ETH_SPI_HOST SPI3_HOST +//#define SPI_CLOCK_MHZ 25 + +// Must connect INT to GPIOxx or not working +//#define INT_GPIO 4 + +//#define MISO_GPIO 13 +//#define MOSI_GPIO 11 +//#define SCK_GPIO 12 +//#define CS_GPIO 10 + +////////////////////////////////////////////////////////// + +#include + +//Ported to ESP32 +#include + +// LittleFS has higher priority than SPIFFS +#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #define USE_LITTLEFS true + #define USE_SPIFFS false +#elif defined(ARDUINO_ESP32C3_DEV) + // For core v1.0.6-, ESP32-C3 only supporting SPIFFS and EEPROM. To use v2.0.0+ for LittleFS + #define USE_LITTLEFS false + #define USE_SPIFFS true +#endif + +#if USE_LITTLEFS + // Use LittleFS + #include "FS.h" + + // Check cores/esp32/esp_arduino_version.h and cores/esp32/core_version.h + //#if ( ESP_ARDUINO_VERSION >= ESP_ARDUINO_VERSION_VAL(2, 0, 0) ) //(ESP_ARDUINO_VERSION_MAJOR >= 2) + #if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.6 or 2.0.0+ + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/espressif/arduino-esp32/tree/master/libraries/LittleFS + + FS* filesystem = &LittleFS; + #define FileFS LittleFS + #define FS_Name "LittleFS" + #else + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.5-. You must install LITTLEFS library + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/lorol/LITTLEFS + + FS* filesystem = &LITTLEFS; + #define FileFS LITTLEFS + #define FS_Name "LittleFS" + #endif + +#elif USE_SPIFFS + #include + FS* filesystem = &SPIFFS; + #define FileFS SPIFFS + #define FS_Name "SPIFFS" +#else + // +Use FFat + #include + FS* filesystem = &FFat; + #define FileFS FFat + #define FS_Name "FFat" +#endif + +////////////////////////////////////////////////////////////// + +#if !defined(LED_BUILTIN) + #define LED_BUILTIN 2 +#endif + +#define LED_ON HIGH +#define LED_OFF LOW + +////////////////////////////////////////////////////////////// + +// These defines must be put before #include +// to select where to store DoubleResetDetector's variable. +// For ESP32, You must select one to be true (EEPROM or SPIFFS) +// For ESP8266, You must select one to be true (RTC, EEPROM, SPIFFS or LITTLEFS) +// Otherwise, library will use default EEPROM storage + +// These defines must be put before #include +// to select where to store DoubleResetDetector's variable. +// For ESP32, You must select one to be true (EEPROM or SPIFFS) +// Otherwise, library will use default EEPROM storage +#if USE_LITTLEFS + #define ESP_DRD_USE_LITTLEFS true + #define ESP_DRD_USE_SPIFFS false + #define ESP_DRD_USE_EEPROM false +#elif USE_SPIFFS + #define ESP_DRD_USE_LITTLEFS false + #define ESP_DRD_USE_SPIFFS true + #define ESP_DRD_USE_EEPROM false +#else + #define ESP_DRD_USE_LITTLEFS false + #define ESP_DRD_USE_SPIFFS false + #define ESP_DRD_USE_EEPROM true +#endif + +#define DOUBLERESETDETECTOR_DEBUG true //false + +#include //https://github.com/khoih-prog/ESP_DoubleResetDetector + +// Number of seconds after reset during which a +// subseqent reset will be considered a double reset. +#define DRD_TIMEOUT 10 + +// RTC Memory Address for the DoubleResetDetector to use +#define DRD_ADDRESS 0 + +//DoubleResetDetector drd(DRD_TIMEOUT, DRD_ADDRESS); +DoubleResetDetector* drd;////// + +// Onboard LED I/O pin on NodeMCU board +const int PIN_LED = 2; // D4 on NodeMCU and WeMos. GPIO2/ADC12 of ESP32. Controls the onboard LED. + +// You only need to format the filesystem once +//#define FORMAT_FILESYSTEM true +#define FORMAT_FILESYSTEM false + +////////////////////////////////////////////////////////////// + +// Assuming max 49 chars +#define TZNAME_MAX_LEN 50 +#define TIMEZONE_MAX_LEN 50 + +typedef struct +{ + char TZ_Name[TZNAME_MAX_LEN]; // "America/Toronto" + char TZ[TIMEZONE_MAX_LEN]; // "EST5EDT,M3.2.0,M11.1.0" + uint16_t checksum; +} EthConfig; + +EthConfig Ethconfig; + +#define CONFIG_FILENAME F("/eth_cred.dat") + +////////////////////////////////////////////////////////////// + +// Indicates whether ESP has credentials saved from previous session, or double reset detected +bool initialConfig = false; + +// Use false if you don't like to display Available Pages in Information Page of Config Portal +// Comment out or use true to display Available Pages in Information Page of Config Portal +// Must be placed before #include +#define USE_AVAILABLE_PAGES true //false + +// From v1.0.10 to permit disable/enable StaticIP configuration in Config Portal from sketch. Valid only if DHCP is used. +// You'll loose the feature of dynamically changing from DHCP to static IP, or vice versa +// You have to explicitly specify false to disable the feature. +//#define USE_STATIC_IP_CONFIG_IN_CP false + +// Use false to disable NTP config. Advisable when using Cellphone, Tablet to access Config Portal. +// See Issue 23: On Android phone ConfigPortal is unresponsive (https://github.com/khoih-prog/ESP_WiFiManager/issues/23) +#define USE_ESP_ETH_MANAGER_NTP true + +// Just use enough to save memory. On ESP8266, can cause blank ConfigPortal screen +// if using too much memory +#define USING_AFRICA false +#define USING_AMERICA true +#define USING_ANTARCTICA false +#define USING_ASIA false +#define USING_ATLANTIC false +#define USING_AUSTRALIA false +#define USING_EUROPE false +#define USING_INDIAN false +#define USING_PACIFIC false +#define USING_ETC_GMT false + +// Use true to enable CloudFlare NTP service. System can hang if you don't have Internet access while accessing CloudFlare +// See Issue #21: CloudFlare link in the default portal (https://github.com/khoih-prog/ESP_WiFiManager/issues/21) +#define USE_CLOUDFLARE_NTP false + +// New in v1.0.11 +#define USING_CORS_FEATURE true + +////////////////////////////////////////////////////////////// + +// Use USE_DHCP_IP == true for dynamic DHCP IP, false to use static IP which you have to change accordingly to your network +#if (defined(USE_STATIC_IP_CONFIG_IN_CP) && !USE_STATIC_IP_CONFIG_IN_CP) + // Force DHCP to be true + #if defined(USE_DHCP_IP) + #undef USE_DHCP_IP + #endif + #define USE_DHCP_IP true +#else + // You can select DHCP or Static IP here + #define USE_DHCP_IP true + //#define USE_DHCP_IP false +#endif + +#if ( USE_DHCP_IP ) + // Use DHCP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using DHCP IP + #endif + + IPAddress stationIP = IPAddress(0, 0, 0, 0); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); + +#else + // Use static IP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using static IP + #endif + + IPAddress stationIP = IPAddress(192, 168, 2, 232); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); +#endif + +////////////////////////////////////////////////////////////// + +#define USE_CONFIGURABLE_DNS true + +IPAddress dns1IP = gatewayIP; +IPAddress dns2IP = IPAddress(8, 8, 8, 8); + +#include //https://github.com/khoih-prog/ESP32_SC_W6100_Manager + +#define HTTP_PORT 80 + +////////////////////////////////////////////////////////////// + +/****************************************** + // Defined in ESP32_SC_W6100_Manager.hpp + typedef struct + { + IPAddress _sta_static_ip; + IPAddress _sta_static_gw; + IPAddress _sta_static_sn; + #if USE_CONFIGURABLE_DNS + IPAddress _sta_static_dns1; + IPAddress _sta_static_dns2; + #endif + } ETH_STA_IPConfig; +******************************************/ + +ETH_STA_IPConfig EthSTA_IPconfig; + +////////////////////////////////////////////////////////////// + +void initSTAIPConfigStruct(ETH_STA_IPConfig &in_EthSTA_IPconfig) +{ + in_EthSTA_IPconfig._sta_static_ip = stationIP; + in_EthSTA_IPconfig._sta_static_gw = gatewayIP; + in_EthSTA_IPconfig._sta_static_sn = netMask; +#if USE_CONFIGURABLE_DNS + in_EthSTA_IPconfig._sta_static_dns1 = dns1IP; + in_EthSTA_IPconfig._sta_static_dns2 = dns2IP; +#endif +} + +////////////////////////////////////////////////////////////// + +void displayIPConfigStruct(ETH_STA_IPConfig in_EthSTA_IPconfig) +{ + LOGERROR3(F("stationIP ="), in_EthSTA_IPconfig._sta_static_ip, ", gatewayIP =", in_EthSTA_IPconfig._sta_static_gw); + LOGERROR1(F("netMask ="), in_EthSTA_IPconfig._sta_static_sn); +#if USE_CONFIGURABLE_DNS + LOGERROR3(F("dns1IP ="), in_EthSTA_IPconfig._sta_static_dns1, ", dns2IP =", in_EthSTA_IPconfig._sta_static_dns2); +#endif +} + +////////////////////////////////////////////////////////////// + +#if USE_ESP_ETH_MANAGER_NTP +void printLocalTime() +{ + struct tm timeinfo; + + getLocalTime( &timeinfo ); + + // Valid only if year > 2000. + // You can get from timeinfo : tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec + if (timeinfo.tm_year > 100 ) + { + Serial.print("Local Date/Time: "); + Serial.print( asctime( &timeinfo ) ); + } +} +#endif + +////////////////////////////////////////////////////////////// + +void heartBeatPrint() +{ +#if USE_ESP_ETH_MANAGER_NTP + printLocalTime(); +#else + static int num = 1; + + if (ESP32_W6100_isConnected()) + Serial.print(F("H")); // H means connected to Ethernet + else + Serial.print(F("F")); // F means not connected to Ethernet + + if (num == 80) + { + Serial.println(); + num = 1; + } + else if (num++ % 10 == 0) + { + Serial.print(F(" ")); + } + +#endif +} + +////////////////////////////////////////////////////////////// + +void check_status() +{ + static ulong checkstatus_timeout = 0; + + static ulong current_millis; + +#if USE_ESP_ETH_MANAGER_NTP +#define HEARTBEAT_INTERVAL 60000L +#else +#define HEARTBEAT_INTERVAL 10000L +#endif + + current_millis = millis(); + + // Print hearbeat every HEARTBEAT_INTERVAL (10) seconds. + if ((current_millis > checkstatus_timeout) || (checkstatus_timeout == 0)) + { + heartBeatPrint(); + checkstatus_timeout = current_millis + HEARTBEAT_INTERVAL; + } +} + +////////////////////////////////////////////////////////////// + +int calcChecksum(uint8_t* address, uint16_t sizeToCalc) +{ + uint16_t checkSum = 0; + + for (uint16_t index = 0; index < sizeToCalc; index++) + { + checkSum += * ( ( (byte*) address ) + index); + } + + return checkSum; +} + +////////////////////////////////////////////////////////////// + +bool loadConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "r"); + LOGERROR(F("LoadCfgFile ")); + + memset((void *) &Ethconfig, 0, sizeof(Ethconfig)); + memset((void *) &EthSTA_IPconfig, 0, sizeof(EthSTA_IPconfig)); + + if (file) + { + file.readBytes((char *) &Ethconfig, sizeof(Ethconfig)); + file.readBytes((char *) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + + if ( Ethconfig.checksum != calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ) ) + { + LOGERROR(F("Ethconfig checksum wrong")); + + return false; + } + + displayIPConfigStruct(EthSTA_IPconfig); + + return true; + } + else + { + LOGERROR(F("failed")); + + return false; + } +} + +////////////////////////////////////////////////////////////// + +void saveConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "w"); + LOGERROR(F("SaveCfgFile ")); + + if (file) + { + Ethconfig.checksum = calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ); + + file.write((uint8_t*) &Ethconfig, sizeof(Ethconfig)); + + displayIPConfigStruct(EthSTA_IPconfig); + + file.write((uint8_t*) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + } + else + { + LOGERROR(F("failed")); + } +} + +////////////////////////////////////////////////////////////// + +void beginEthernet() +{ + LOGWARN(F("Default SPI pinout:")); + LOGWARN1(F("SPI_HOST:"), ETH_SPI_HOST); + LOGWARN1(F("MOSI:"), MOSI_GPIO); + LOGWARN1(F("MISO:"), MISO_GPIO); + LOGWARN1(F("SCK:"), SCK_GPIO); + LOGWARN1(F("CS:"), CS_GPIO); + LOGWARN1(F("INT:"), INT_GPIO); + LOGWARN1(F("SPI Clock (MHz):"), SPI_CLOCK_MHZ); + LOGWARN(F("=========================")); + + /////////////////////////////////// + + // To be called before ETH.begin() + ESP32_W6100_onEvent(); + + // start the ethernet connection and the server: + // Use DHCP dynamic IP and random mac + uint16_t index = millis() % NUMBER_OF_MAC; + + //bool begin(int MISO_GPIO, int MOSI_GPIO, int SCLK_GPIO, int CS_GPIO, int INT_GPIO, int SPI_CLOCK_MHZ, + // int SPI_HOST, uint8_t *W6100_Mac = W6100_Default_Mac); + //ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST ); + ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST, mac[index] ); +} + +////////////////////////////////////////////////////////////// + +void initEthernet() +{ +#if !( USE_DHCP_IP ) + displayIPConfigStruct(EthSTA_IPconfig); + + // Static IP, leave without this line to get IP via DHCP + //bool config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1 = 0, IPAddress dns2 = 0); + //ETH.config(stationIP, gatewayIP, netMask, dns1IP, dns2IP); + ETH.config(EthSTA_IPconfig._sta_static_ip, EthSTA_IPconfig._sta_static_gw, EthSTA_IPconfig._sta_static_sn, + EthSTA_IPconfig._sta_static_dns1); +#endif + + ESP32_W6100_waitForConnect(); +} + +////////////////////////////////////////////////////////////// + +void setup() +{ + // put your setup code here, to run once: + // initialize the LED digital pin as an output. + pinMode(PIN_LED, OUTPUT); + + Serial.begin(115200); + + while (!Serial && millis() < 5000); + + delay(500); + + Serial.print(F("\nStarting ConfigOnDoubleReset_TZ using ")); + Serial.print(FS_Name); + Serial.print(F(" on ")); + Serial.print(ARDUINO_BOARD); + Serial.print(F(" with ")); + Serial.println(SHIELD_TYPE); + Serial.println(ESP32_SC_W6100_MANAGER_VERSION); + Serial.println(ESP_DOUBLE_RESET_DETECTOR_VERSION); + + Serial.setDebugOutput(false); + + if (FORMAT_FILESYSTEM) + FileFS.format(); + + // Format FileFS if not yet +#ifdef ESP32 + + if (!FileFS.begin(true)) +#else + if (!FileFS.begin()) +#endif + { +#ifdef ESP8266 + FileFS.format(); +#endif + + Serial.println(F("SPIFFS/LittleFS failed! Already tried formatting.")); + + if (!FileFS.begin()) + { + // prevents debug info from the library to hide err message. + delay(100); + +#if USE_LITTLEFS + Serial.println(F("LittleFS failed!. Please use SPIFFS or EEPROM. Stay forever")); +#else + Serial.println(F("SPIFFS failed!. Please use LittleFS or EEPROM. Stay forever")); +#endif + + while (true) + { + delay(1); + } + } + } + + drd = new DoubleResetDetector(DRD_TIMEOUT, DRD_ADDRESS); + + unsigned long startedAt = millis(); + + beginEthernet(); + + initSTAIPConfigStruct(EthSTA_IPconfig); + + //Local intialization. Once its business is done, there is no need to keep it around + // Use this to default DHCP hostname to ESP32-XXXXXX + //ESP32_SC_W6100_Manager ESP32_SC_W6100_manager; + // Use this to personalize DHCP hostname (RFC952 conformed) + ESP32_SC_W6100_Manager ESP32_SC_W6100_manager("ConfigOnDoubleReset_TZ"); + +#if !USE_DHCP_IP + // Set (static IP, Gateway, Subnetmask, DNS1 and DNS2) or (IP, Gateway, Subnetmask) + ESP32_SC_W6100_manager.setSTAStaticIPConfig(EthSTA_IPconfig); +#endif + +#if USING_CORS_FEATURE + ESP32_SC_W6100_manager.setCORSHeader("Your Access-Control-Allow-Origin"); +#endif + + if (loadConfigData()) + { + //If no access point name has been previously entered disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(120); + + Serial.println(F("Got stored Credentials. Timeout 120s for Config Portal")); + +#if USE_ESP_ETH_MANAGER_NTP + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + Serial.println(F("Current Timezone is not set. Enter Config Portal to set.")); + } + +#endif + } + else + { + // Enter CP only if no stored Credentials on flash and file + Serial.println(F("Open Config Portal without Timeout: No stored Credentials.")); + initialConfig = true; + } + + ////////////////////////////////// + + // Connect ETH now if using STA + initEthernet(); + + ////////////////////////////////// + + if (drd->detectDoubleReset()) + { + // DRD, disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(0); + + Serial.println(F("Open Config Portal without Timeout: Double Reset Detected")); + initialConfig = true; + } + + if (initialConfig) + { + Serial.print(F("Starting configuration portal @ ")); + Serial.println(ETH.localIP()); + + digitalWrite(LED_BUILTIN, LED_ON); // Turn led on as we are in configuration mode. + + //sets timeout in seconds until configuration portal gets turned off. + //If not specified device will remain in configuration mode until + //switched off via webserver or device is restarted. + //ESP32_SC_W6100_manager.setConfigPortalTimeout(600); + + // Starts an access point + if (!ESP32_SC_W6100_manager.startConfigPortal()) + Serial.println(F("Not connected to ETH network but continuing anyway.")); + else + { + Serial.println(F("ETH network connected...yeey :)")); + } + +#if USE_ESP_ETH_MANAGER_NTP + String tempTZ = ESP32_SC_W6100_manager.getTimezoneName(); + + if (strlen(tempTZ.c_str()) < sizeof(Ethconfig.TZ_Name) - 1) + strcpy(Ethconfig.TZ_Name, tempTZ.c_str()); + else + strncpy(Ethconfig.TZ_Name, tempTZ.c_str(), sizeof(Ethconfig.TZ_Name) - 1); + + const char * TZ_Result = ESP32_SC_W6100_manager.getTZ(Ethconfig.TZ_Name); + + if (strlen(TZ_Result) < sizeof(Ethconfig.TZ) - 1) + strcpy(Ethconfig.TZ, TZ_Result); + else + strncpy(Ethconfig.TZ, TZ_Result, sizeof(Ethconfig.TZ_Name) - 1); + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Saving current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + LOGERROR(F("Current Timezone Name is not set. Enter Config Portal to set.")); + } + +#endif + + ESP32_SC_W6100_manager.getSTAStaticIPConfig(EthSTA_IPconfig); + + saveConfigData(); + } + + digitalWrite(PIN_LED, LED_OFF); // Turn led off as we are not in configuration mode. + + startedAt = millis(); + + Serial.print(F("After waiting ")); + Serial.print((float) (millis() - startedAt) / 1000); + Serial.print(F(" secs more in setup(), connection result is ")); + + if (ESP32_W6100_isConnected()) + { + Serial.print(F("connected. Local IP: ")); + Serial.println(ETH.localIP()); + } +} + +////////////////////////////////////////////////////////////// + +void loop() +{ + // Call the double reset detector loop method every so often, + // so that it can recognise when the timeout expires. + // You can also call drd.stop() when you wish to no longer + // consider the next reset as a double reset. + drd->loop(); + + // put your main code here, to run repeatedly + check_status(); +} diff --git a/examples/ConfigOnSwitch/ConfigOnSwitch.ino b/examples/ConfigOnSwitch/ConfigOnSwitch.ino new file mode 100644 index 0000000..8ee153c --- /dev/null +++ b/examples/ConfigOnSwitch/ConfigOnSwitch.ino @@ -0,0 +1,905 @@ +/**************************************************************************************************************************** + ConfigOnSwitch.ino + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + *****************************************************************************************************************************/ +/**************************************************************************************************************************** + This example will open a configuration portal when no configuration has been previously entered or when a button is pushed. + It is the easiest scenario for configuration but requires a pin and a button on the ESP8266 device. + The Flash button is convenient for this on NodeMCU devices. + + Also in this example a password is required to connect to the configuration portal + network. This is inconvenient but means that only those who know the password or those + already connected to the target network can access the configuration portal and + the network credentials will be sent from the browser over an encrypted connection and + can not be read by observers. + *****************************************************************************************************************************/ + +#if !( defined(ESP32) ) + #error This code is designed for (ESP32_S2/3, ESP32_C3 + W6100) to run on ESP32 platform! Please check your Tools->Board setting. +#endif + +////////////////////////////////////////////////////////////// + +// Use from 0 to 4. Higher number, more debugging messages and memory usage. +#define _ESP32_ETH_MGR_LOGLEVEL_ 4 + +// To not display stored SSIDs and PWDs on Config Portal, select false. Default is true +// Even the stored Credentials are not display, just leave them all blank to reconnect and reuse the stored Credentials +//#define DISPLAY_STORED_CREDENTIALS_IN_CP false + +////////////////////////////////////////////////////////////// + +// Enter a MAC address and IP address for your controller below. +#define NUMBER_OF_MAC 20 + +byte mac[][NUMBER_OF_MAC] = +{ + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x01 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x02 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x03 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x04 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x05 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x06 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x07 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x08 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x09 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0A }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0B }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0C }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0D }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0E }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0F }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x10 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x11 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x12 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x13 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x14 }, +}; + +////////////////////////////////////////////////////////// + +// For W6100 & ESP32-S3 +// Optional values to override default settings +// Don't change unless you know what you're doing +//#define ETH_SPI_HOST SPI3_HOST +//#define SPI_CLOCK_MHZ 25 + +// Must connect INT to GPIOxx or not working +//#define INT_GPIO 4 + +//#define MISO_GPIO 13 +//#define MOSI_GPIO 11 +//#define SCK_GPIO 12 +//#define CS_GPIO 10 + +////////////////////////////////////////////////////////// + +//For ESP32, To use ESP32 Dev Module, QIO, Flash 4MB/80MHz, Upload 921600 + +//Ported to ESP32 +#include + +////////////////////////////////////////////////////////////// + +// LittleFS has higher priority than SPIFFS +#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #define USE_LITTLEFS true + #define USE_SPIFFS false +#elif defined(ARDUINO_ESP32C3_DEV) + // For core v1.0.6-, ESP32-C3 only supporting SPIFFS and EEPROM. To use v2.0.0+ for LittleFS + #define USE_LITTLEFS false + #define USE_SPIFFS true +#endif + +#if USE_LITTLEFS + // Use LittleFS + #include "FS.h" + + // Check cores/esp32/esp_arduino_version.h and cores/esp32/core_version.h + //#if ( ESP_ARDUINO_VERSION >= ESP_ARDUINO_VERSION_VAL(2, 0, 0) ) //(ESP_ARDUINO_VERSION_MAJOR >= 2) + #if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.6 or 2.0.0+ + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/espressif/arduino-esp32/tree/master/libraries/LittleFS + + FS* filesystem = &LittleFS; + #define FileFS LittleFS + #define FS_Name "LittleFS" + #else + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.5-. You must install LITTLEFS library + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/lorol/LITTLEFS + + FS* filesystem = &LITTLEFS; + #define FileFS LITTLEFS + #define FS_Name "LittleFS" + #endif + +#elif USE_SPIFFS + #include + FS* filesystem = &SPIFFS; + #define FileFS SPIFFS + #define FS_Name "SPIFFS" +#else + // Use FFat + #include + FS* filesystem = &FFat; + #define FileFS FFat + #define FS_Name "FFat" +#endif + +////////////////////////////////////////////////////////////// + +#if !defined(LED_BUILTIN) + #define LED_BUILTIN 2 +#endif + +#define LED_ON HIGH +#define LED_OFF LOW + +//See file .../hardware/espressif/esp32/variants/(esp32|doitESP32devkitV1)/pins_arduino.h + +#define PIN_D0 0 // Pin D0 mapped to pin GPIO0/BOOT/ADC11/TOUCH1 of ESP32 +#define PIN_D1 1 // Pin D1 mapped to pin GPIO1/TX0 of ESP32 +#define PIN_D2 2 // Pin D2 mapped to pin GPIO2/ADC12/TOUCH2 of ESP32 +#define PIN_D3 3 // Pin D3 mapped to pin GPIO3/RX0 of ESP32 +#define PIN_D4 4 // Pin D4 mapped to pin GPIO4/ADC10/TOUCH0 of ESP32 +#define PIN_D5 5 // Pin D5 mapped to pin GPIO5/SPISS/VSPI_SS of ESP32 +#define PIN_D6 6 // Pin D6 mapped to pin GPIO6/FLASH_SCK of ESP32 +#define PIN_D7 7 // Pin D7 mapped to pin GPIO7/FLASH_D0 of ESP32 +#define PIN_D8 8 // Pin D8 mapped to pin GPIO8/FLASH_D1 of ESP32 +#define PIN_D9 9 // Pin D9 mapped to pin GPIO9/FLASH_D2 of ESP32 + +#define PIN_D10 10 // Pin D10 mapped to pin GPIO10/FLASH_D3 of ESP32 +#define PIN_D11 11 // Pin D11 mapped to pin GPIO11/FLASH_CMD of ESP32 +#define PIN_D12 12 // Pin D12 mapped to pin GPIO12/HSPI_MISO/ADC15/TOUCH5/TDI of ESP32 +#define PIN_D13 13 // Pin D13 mapped to pin GPIO13/HSPI_MOSI/ADC14/TOUCH4/TCK of ESP32 +#define PIN_D14 14 // Pin D14 mapped to pin GPIO14/HSPI_SCK/ADC16/TOUCH6/TMS of ESP32 +#define PIN_D15 15 // Pin D15 mapped to pin GPIO15/HSPI_SS/ADC13/TOUCH3/TDO of ESP32 +#define PIN_D16 16 // Pin D16 mapped to pin GPIO16/TX2 of ESP32 +#define PIN_D17 17 // Pin D17 mapped to pin GPIO17/RX2 of ESP32 +#define PIN_D18 18 // Pin D18 mapped to pin GPIO18/VSPI_SCK of ESP32 +#define PIN_D19 19 // Pin D19 mapped to pin GPIO19/VSPI_MISO of ESP32 + +#define PIN_D21 21 // Pin D21 mapped to pin GPIO21/SDA of ESP32 +#define PIN_D22 22 // Pin D22 mapped to pin GPIO22/SCL of ESP32 +#define PIN_D23 23 // Pin D23 mapped to pin GPIO23/VSPI_MOSI of ESP32 +#define PIN_D24 24 // Pin D24 mapped to pin GPIO24 of ESP32 +#define PIN_D25 25 // Pin D25 mapped to pin GPIO25/ADC18/DAC1 of ESP32 +#define PIN_D26 26 // Pin D26 mapped to pin GPIO26/ADC19/DAC2 of ESP32 +#define PIN_D27 27 // Pin D27 mapped to pin GPIO27/ADC17/TOUCH7 of ESP32 + +#define PIN_D32 32 // Pin D32 mapped to pin GPIO32/ADC4/TOUCH9 of ESP32 +#define PIN_D33 33 // Pin D33 mapped to pin GPIO33/ADC5/TOUCH8 of ESP32 +#define PIN_D34 34 // Pin D34 mapped to pin GPIO34/ADC6 of ESP32 + +//Only GPIO pin < 34 can be used as output. Pins >= 34 can be only inputs +//See .../cores/esp32/esp32-hal-gpio.h/c +//#define digitalPinIsValid(pin) ((pin) < 40 && esp32_gpioMux[(pin)].reg) +//#define digitalPinCanOutput(pin) ((pin) < 34 && esp32_gpioMux[(pin)].reg) +//#define digitalPinToRtcPin(pin) (((pin) < 40)?esp32_gpioMux[(pin)].rtc:-1) +//#define digitalPinToAnalogChannel(pin) (((pin) < 40)?esp32_gpioMux[(pin)].adc:-1) +//#define digitalPinToTouchChannel(pin) (((pin) < 40)?esp32_gpioMux[(pin)].touch:-1) +//#define digitalPinToDacChannel(pin) (((pin) == 25)?0:((pin) == 26)?1:-1) + +#define PIN_D35 35 // Pin D35 mapped to pin GPIO35/ADC7 of ESP32 +#define PIN_D36 36 // Pin D36 mapped to pin GPIO36/ADC0/SVP of ESP32 +#define PIN_D39 39 // Pin D39 mapped to pin GPIO39/ADC3/SVN of ESP32 + +#define PIN_RX0 3 // Pin RX0 mapped to pin GPIO3/RX0 of ESP32 +#define PIN_TX0 1 // Pin TX0 mapped to pin GPIO1/TX0 of ESP32 + +#define PIN_SCL 22 // Pin SCL mapped to pin GPIO22/SCL of ESP32 +#define PIN_SDA 21 // Pin SDA mapped to pin GPIO21/SDA of ESP32 + +////////////////////////////////////////////////////////////// + +/* Trigger for inititating config mode is Pin D3 and also flash button on NodeMCU + Flash button is convenient to use but if it is pressed it will stuff up the serial port device driver + until the computer is rebooted on windows machines. +*/ +#if ( USING_ESP32_S2 || USING_ESP32_C3 ) + + const int TRIGGER_PIN = PIN_D3; // Pin D3 mapped to pin GPIO03/ADC1-2/TOUCH3 of ESP32-S2 + /* + Alternative trigger pin. Needs to be connected to a button to use this pin. It must be a momentary connection + not connected permanently to ground. Either trigger pin will work. + */ + const int TRIGGER_PIN2 = PIN_D4; // Pin D4 mapped to pin GPIO04/ADC1_3/TOUCH4 of ESP32-S2 + +#else + const int TRIGGER_PIN = PIN_D0; // Pin D0 mapped to pin GPIO0/BOOT of ESP32_S3 + /* + Alternative trigger pin. Needs to be connected to a button to use this pin. It must be a momentary connection + not connected permanently to ground. Either trigger pin will work. + */ + const int TRIGGER_PIN2 = PIN_D7; // Pin D7 mapped to pin GPIO7/ADC1_6/TOUCH7 of ESP32_S3 +#endif + +////////////////////////////////////////////////////////////// + +// You only need to format the filesystem once +//#define FORMAT_FILESYSTEM true +#define FORMAT_FILESYSTEM false + +////////////////////////////////////////////////////////////// + +// Assuming max 49 chars +#define TZNAME_MAX_LEN 50 +#define TIMEZONE_MAX_LEN 50 + +typedef struct +{ + char TZ_Name[TZNAME_MAX_LEN]; // "America/Toronto" + char TZ[TIMEZONE_MAX_LEN]; // "EST5EDT,M3.2.0,M11.1.0" + uint16_t checksum; +} EthConfig; + +EthConfig Ethconfig; + +////////////////////////////////////////////////////////////// + +#define CONFIG_FILENAME F("/eth_cred.dat") + +////////////////////////////////////////////////////////////// + +// Indicates whether ESP has credentials saved from previous session, or double reset detected +bool initialConfig = false; + +// Use false if you don't like to display Available Pages in Information Page of Config Portal +// Comment out or use true to display Available Pages in Information Page of Config Portal +// Must be placed before #include +#define USE_AVAILABLE_PAGES true + +// From v1.0.10 to permit disable/enable StaticIP configuration in Config Portal from sketch. Valid only if DHCP is used. +// You'll loose the feature of dynamically changing from DHCP to static IP, or vice versa +// You have to explicitly specify false to disable the feature. +//#define USE_STATIC_IP_CONFIG_IN_CP false + +// Use false to disable NTP config. Advisable when using Cellphone, Tablet to access Config Portal. +// See Issue 23: On Android phone ConfigPortal is unresponsive (https://github.com/khoih-prog/ESP_WiFiManager/issues/23) +#define USE_ESP_ETH_MANAGER_NTP true + +// Just use enough to save memory. On ESP8266, can cause blank ConfigPortal screen +// if using too much memory +#define USING_AFRICA false +#define USING_AMERICA true +#define USING_ANTARCTICA false +#define USING_ASIA false +#define USING_ATLANTIC false +#define USING_AUSTRALIA false +#define USING_EUROPE false +#define USING_INDIAN false +#define USING_PACIFIC false +#define USING_ETC_GMT false + +// Use true to enable CloudFlare NTP service. System can hang if you don't have Internet access while accessing CloudFlare +// See Issue #21: CloudFlare link in the default portal (https://github.com/khoih-prog/ESP_WiFiManager/issues/21) +#define USE_CLOUDFLARE_NTP false + +// New in v1.0.11 +#define USING_CORS_FEATURE true + +////////////////////////////////////////////////////////////// + +// Use USE_DHCP_IP == true for dynamic DHCP IP, false to use static IP which you have to change accordingly to your network +#if (defined(USE_STATIC_IP_CONFIG_IN_CP) && !USE_STATIC_IP_CONFIG_IN_CP) + // Force DHCP to be true + #if defined(USE_DHCP_IP) + #undef USE_DHCP_IP + #endif + #define USE_DHCP_IP true +#else + // You can select DHCP or Static IP here + //#define USE_DHCP_IP true + #define USE_DHCP_IP false +#endif + +#if ( USE_DHCP_IP ) + // Use DHCP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using DHCP IP + #endif + + IPAddress stationIP = IPAddress(0, 0, 0, 0); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); + +#else + // Use static IP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using static IP + #endif + + IPAddress stationIP = IPAddress(192, 168, 2, 232); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); +#endif + +////////////////////////////////////////////////////////////// + +#define USE_CONFIGURABLE_DNS true + +IPAddress dns1IP = gatewayIP; +IPAddress dns2IP = IPAddress(8, 8, 8, 8); + +#include //https://github.com/khoih-prog/ESP32_SC_W6100_Manager + +#define HTTP_PORT 80 + +////////////////////////////////////////////////////////////// + +/****************************************** + // Defined in ESP32_SC_W6100_Manager.hpp + typedef struct + { + IPAddress _sta_static_ip; + IPAddress _sta_static_gw; + IPAddress _sta_static_sn; + #if USE_CONFIGURABLE_DNS + IPAddress _sta_static_dns1; + IPAddress _sta_static_dns2; + #endif + } ETH_STA_IPConfig; +******************************************/ + +ETH_STA_IPConfig EthSTA_IPconfig; + +////////////////////////////////////////////////////////////// + +void initSTAIPConfigStruct(ETH_STA_IPConfig &in_EthSTA_IPconfig) +{ + in_EthSTA_IPconfig._sta_static_ip = stationIP; + in_EthSTA_IPconfig._sta_static_gw = gatewayIP; + in_EthSTA_IPconfig._sta_static_sn = netMask; +#if USE_CONFIGURABLE_DNS + in_EthSTA_IPconfig._sta_static_dns1 = dns1IP; + in_EthSTA_IPconfig._sta_static_dns2 = dns2IP; +#endif +} + +////////////////////////////////////////////////////////////// + +void displayIPConfigStruct(ETH_STA_IPConfig in_EthSTA_IPconfig) +{ + LOGERROR3(F("stationIP ="), in_EthSTA_IPconfig._sta_static_ip, ", gatewayIP =", in_EthSTA_IPconfig._sta_static_gw); + LOGERROR1(F("netMask ="), in_EthSTA_IPconfig._sta_static_sn); +#if USE_CONFIGURABLE_DNS + LOGERROR3(F("dns1IP ="), in_EthSTA_IPconfig._sta_static_dns1, ", dns2IP =", in_EthSTA_IPconfig._sta_static_dns2); +#endif +} + +////////////////////////////////////////////////////////////// + +void toggleLED() +{ + //toggle state + digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); +} + +////////////////////////////////////////////////////////////// + +#if USE_ESP_ETH_MANAGER_NTP +void printLocalTime() +{ + struct tm timeinfo; + + getLocalTime( &timeinfo ); + + // Valid only if year > 2000. + // You can get from timeinfo : tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec + if (timeinfo.tm_year > 100 ) + { + Serial.print("Local Date/Time: "); + Serial.print( asctime( &timeinfo ) ); + } +} +#endif + +////////////////////////////////////////////////////////////// + +void heartBeatPrint() +{ +#if USE_ESP_ETH_MANAGER_NTP + printLocalTime(); +#else + static int num = 1; + + if (ESP32_W6100_isConnected()) + Serial.print(F("H")); // H means connected to Ethernet + else + Serial.print(F("F")); // F means not connected to Ethernet + + if (num == 80) + { + Serial.println(); + num = 1; + } + else if (num++ % 10 == 0) + { + Serial.print(F(" ")); + } + +#endif +} + +////////////////////////////////////////////////////////////// + +void check_status() +{ + static ulong checkstatus_timeout = 0; + static ulong LEDstatus_timeout = 0; + + static ulong current_millis; + +#if USE_ESP_ETH_MANAGER_NTP +#define HEARTBEAT_INTERVAL 60000L +#else +#define HEARTBEAT_INTERVAL 10000L +#endif + +#define LED_INTERVAL 2000L + + current_millis = millis(); + + if ((current_millis > LEDstatus_timeout) || (LEDstatus_timeout == 0)) + { + // Toggle LED at LED_INTERVAL = 2s + toggleLED(); + LEDstatus_timeout = current_millis + LED_INTERVAL; + } + + // Print hearbeat every HEARTBEAT_INTERVAL (10) seconds. + if ((current_millis > checkstatus_timeout) || (checkstatus_timeout == 0)) + { + heartBeatPrint(); + checkstatus_timeout = current_millis + HEARTBEAT_INTERVAL; + } +} + +////////////////////////////////////////////////////////////// + +int calcChecksum(uint8_t* address, uint16_t sizeToCalc) +{ + uint16_t checkSum = 0; + + for (uint16_t index = 0; index < sizeToCalc; index++) + { + checkSum += * ( ( (byte*) address ) + index); + } + + return checkSum; +} + +////////////////////////////////////////////////////////////// + +bool loadConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "r"); + LOGERROR(F("LoadCfgFile ")); + + memset((void *) &Ethconfig, 0, sizeof(Ethconfig)); + memset((void *) &EthSTA_IPconfig, 0, sizeof(EthSTA_IPconfig)); + + if (file) + { + file.readBytes((char *) &Ethconfig, sizeof(Ethconfig)); + file.readBytes((char *) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + + if ( Ethconfig.checksum != calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ) ) + { + LOGERROR(F("Ethconfig checksum wrong")); + + return false; + } + + displayIPConfigStruct(EthSTA_IPconfig); + + return true; + } + else + { + LOGERROR(F("failed")); + + return false; + } +} + +////////////////////////////////////////////////////////////// + +void saveConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "w"); + LOGERROR(F("SaveCfgFile ")); + + if (file) + { + Ethconfig.checksum = calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ); + + file.write((uint8_t*) &Ethconfig, sizeof(Ethconfig)); + + displayIPConfigStruct(EthSTA_IPconfig); + + file.write((uint8_t*) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + } + else + { + LOGERROR(F("failed")); + } +} + +////////////////////////////////////////////////////////////// + +void beginEthernet() +{ + LOGWARN(F("Default SPI pinout:")); + LOGWARN1(F("SPI_HOST:"), ETH_SPI_HOST); + LOGWARN1(F("MOSI:"), MOSI_GPIO); + LOGWARN1(F("MISO:"), MISO_GPIO); + LOGWARN1(F("SCK:"), SCK_GPIO); + LOGWARN1(F("CS:"), CS_GPIO); + LOGWARN1(F("INT:"), INT_GPIO); + LOGWARN1(F("SPI Clock (MHz):"), SPI_CLOCK_MHZ); + LOGWARN(F("=========================")); + + /////////////////////////////////// + + // To be called before ETH.begin() + ESP32_W6100_onEvent(); + + // start the ethernet connection and the server: + // Use DHCP dynamic IP and random mac + uint16_t index = millis() % NUMBER_OF_MAC; + + //bool begin(int MISO_GPIO, int MOSI_GPIO, int SCLK_GPIO, int CS_GPIO, int INT_GPIO, int SPI_CLOCK_MHZ, + // int SPI_HOST, uint8_t *W6100_Mac = W6100_Default_Mac); + //ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST ); + ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST, mac[index] ); +} + +////////////////////////////////////////////////////////////// + +void initEthernet() +{ +#if !( USE_DHCP_IP ) + displayIPConfigStruct(EthSTA_IPconfig); + + // Static IP, leave without this line to get IP via DHCP + //bool config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1 = 0, IPAddress dns2 = 0); + //ETH.config(stationIP, gatewayIP, netMask, dns1IP, dns2IP); + ETH.config(EthSTA_IPconfig._sta_static_ip, EthSTA_IPconfig._sta_static_gw, EthSTA_IPconfig._sta_static_sn, + EthSTA_IPconfig._sta_static_dns1); +#endif + + ESP32_W6100_waitForConnect(); +} + +////////////////////////////////////////////////////////////// + +void setup() +{ + //set led pin as output + pinMode(LED_BUILTIN, OUTPUT); + + pinMode(TRIGGER_PIN, INPUT_PULLUP); + pinMode(TRIGGER_PIN2, INPUT_PULLUP); + + Serial.begin(115200); + + while (!Serial && millis() < 5000); + + delay(500); + + Serial.print(F("\nStarting ConfigOnSwitch using ")); + Serial.print(FS_Name); + Serial.print(F(" on ")); + Serial.print(ARDUINO_BOARD); + Serial.print(F(" with ")); + Serial.println(SHIELD_TYPE); + Serial.println(ESP32_SC_W6100_MANAGER_VERSION); + + Serial.setDebugOutput(false); + + if (FORMAT_FILESYSTEM) + FileFS.format(); + + // Format FileFS if not yet +#ifdef ESP32 + + if (!FileFS.begin(true)) +#else + if (!FileFS.begin()) +#endif + { +#ifdef ESP8266 + FileFS.format(); +#endif + + Serial.println(F("SPIFFS/LittleFS failed! Already tried formatting.")); + + if (!FileFS.begin()) + { + // prevents debug info from the library to hide err message. + delay(100); + +#if USE_LITTLEFS + Serial.println(F("LittleFS failed!. Please use SPIFFS or EEPROM. Stay forever")); +#else + Serial.println(F("SPIFFS failed!. Please use LittleFS or EEPROM. Stay forever")); +#endif + + while (true) + { + delay(1); + } + } + } + + unsigned long startedAt = millis(); + + beginEthernet(); + + initSTAIPConfigStruct(EthSTA_IPconfig); + + digitalWrite(LED_BUILTIN, LED_ON); // turn the LED on by making the voltage LOW to tell us we are in configuration mode. + + //Local intialization. Once its business is done, there is no need to keep it around + // Use this to default DHCP hostname to ESP32-XXXXXX + //ESP32_SC_W6100_Manager ESP32_SC_W6100_manager; + // Use this to personalize DHCP hostname (RFC952 conformed) + ESP32_SC_W6100_Manager ESP32_SC_W6100_manager("ConfigOnSwitch"); + + ESP32_SC_W6100_manager.setDebugOutput(true); + +#if !USE_DHCP_IP + // Set (static IP, Gateway, Subnetmask, DNS1 and DNS2) or (IP, Gateway, Subnetmask) + ESP32_SC_W6100_manager.setSTAStaticIPConfig(EthSTA_IPconfig); +#endif + +#if USING_CORS_FEATURE + ESP32_SC_W6100_manager.setCORSHeader("Your Access-Control-Allow-Origin"); +#endif + + if (loadConfigData()) + { + //If no access point name has been previously entered disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(120); + + Serial.println(F("Got stored Credentials. Timeout 120s for Config Portal")); + +#if USE_ESP_ETH_MANAGER_NTP + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + Serial.println(F("Current Timezone is not set. Enter Config Portal to set.")); + } + +#endif + } + else + { + // Enter CP only if no stored SSID on flash and file + Serial.println(F("Open Config Portal without Timeout: No stored Credentials.")); + initialConfig = true; + } + + ////////////////////////////////// + + // Connect ETH now if using STA + initEthernet(); + + ////////////////////////////////// + + if (initialConfig) + { + Serial.print(F("Starting configuration portal @ ")); + Serial.println(ETH.localIP()); + + digitalWrite(LED_BUILTIN, LED_ON); // Turn led on as we are in configuration mode. + + //sets timeout in seconds until configuration portal gets turned off. + //If not specified device will remain in configuration mode until + //switched off via webserver or device is restarted. + //ESP32_SC_W6100_manager.setConfigPortalTimeout(600); + + // Starts an access point + if (!ESP32_SC_W6100_manager.startConfigPortal()) + Serial.println(F("Not connected to ETH network but continuing anyway.")); + else + { + Serial.println(F("ETH network connected...yeey :)")); + } + +#if USE_ESP_ETH_MANAGER_NTP + String tempTZ = ESP32_SC_W6100_manager.getTimezoneName(); + + if (strlen(tempTZ.c_str()) < sizeof(Ethconfig.TZ_Name) - 1) + strcpy(Ethconfig.TZ_Name, tempTZ.c_str()); + else + strncpy(Ethconfig.TZ_Name, tempTZ.c_str(), sizeof(Ethconfig.TZ_Name) - 1); + + const char * TZ_Result = ESP32_SC_W6100_manager.getTZ(Ethconfig.TZ_Name); + + if (strlen(TZ_Result) < sizeof(Ethconfig.TZ) - 1) + strcpy(Ethconfig.TZ, TZ_Result); + else + strncpy(Ethconfig.TZ, TZ_Result, sizeof(Ethconfig.TZ_Name) - 1); + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Saving current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + LOGERROR(F("Current Timezone Name is not set. Enter Config Portal to set.")); + } + +#endif + + ESP32_SC_W6100_manager.getSTAStaticIPConfig(EthSTA_IPconfig); + + saveConfigData(); + } + + digitalWrite(LED_BUILTIN, LED_OFF); // Turn led off as we are not in configuration mode. + + startedAt = millis(); + + Serial.print(F("After waiting ")); + Serial.print((float) (millis() - startedAt) / 1000); + Serial.print(F(" secs more in setup(), connection result is ")); + + if (ESP32_W6100_isConnected()) + { + Serial.print(F("connected. Local IP: ")); + Serial.println(ETH.localIP()); + } +} + +////////////////////////////////////////////////////////////// + +void loop() +{ + // is configuration portal requested? + if ((digitalRead(TRIGGER_PIN) == LOW) || (digitalRead(TRIGGER_PIN2) == LOW)) + { + Serial.println(F("\nConfiguration portal requested.")); + digitalWrite(LED_BUILTIN, LED_ON); // turn the LED on by making the voltage LOW to tell us we are in configuration mode. + + //Local intialization. Once its business is done, there is no need to keep it around + // Use this to default DHCP hostname to ESP32-XXXXXX + //ESP32_SC_W6100_Manager ESP32_SC_W6100_manager; + // Use this to personalize DHCP hostname (RFC952 conformed) + ESP32_SC_W6100_Manager ESP32_SC_W6100_manager("ConfigOnSwitch"); + +#if !USE_DHCP_IP +#if USE_CONFIGURABLE_DNS + // Set static IP, Gateway, Subnetmask, DNS1 and DNS2 + ESP32_SC_W6100_manager.setSTAStaticIPConfig(stationIP, gatewayIP, netMask, dns1IP, dns2IP); +#else + // Set static IP, Gateway, Subnetmask, Use auto DNS1 and DNS2. + ESP32_SC_W6100_manager.setSTAStaticIPConfig(stationIP, gatewayIP, netMask); +#endif +#endif + +#if USING_CORS_FEATURE + ESP32_SC_W6100_manager.setCORSHeader("Your Access-Control-Allow-Origin"); +#endif + + //Check if there is stored credentials. + //If not found, device will remain in configuration mode until switched off via webserver. + Serial.println(F("Opening configuration portal. ")); + + if (loadConfigData()) + { + //If no access point name has been previously entered disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(120); + + Serial.println(F("Got stored Credentials. Timeout 120s for Config Portal")); + } + else + { + // Enter CP only if no stored SSID on flash and file + ESP32_SC_W6100_manager.setConfigPortalTimeout(0); + Serial.println(F("Open Config Portal without Timeout: No stored Credentials.")); + initialConfig = true; + } + + //Starts an access point + //and goes into a blocking loop awaiting configuration + if (!ESP32_SC_W6100_manager.startConfigPortal()) + Serial.println(F("Not connected to ETH network but continuing anyway.")); + else + { + Serial.println(F("ETH network connected...yeey :)")); + Serial.print(F("Local IP: ")); + Serial.println(ETH.localIP()); + } + +#if USE_ESP_ETH_MANAGER_NTP + String tempTZ = ESP32_SC_W6100_manager.getTimezoneName(); + + if (strlen(tempTZ.c_str()) < sizeof(Ethconfig.TZ_Name) - 1) + strcpy(Ethconfig.TZ_Name, tempTZ.c_str()); + else + strncpy(Ethconfig.TZ_Name, tempTZ.c_str(), sizeof(Ethconfig.TZ_Name) - 1); + + const char * TZ_Result = ESP32_SC_W6100_manager.getTZ(Ethconfig.TZ_Name); + + if (strlen(TZ_Result) < sizeof(Ethconfig.TZ) - 1) + strcpy(Ethconfig.TZ, TZ_Result); + else + strncpy(Ethconfig.TZ, TZ_Result, sizeof(Ethconfig.TZ_Name) - 1); + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Saving current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + LOGERROR(F("Current Timezone Name is not set. Enter Config Portal to set.")); + } + +#endif + + ESP32_SC_W6100_manager.getSTAStaticIPConfig(EthSTA_IPconfig); + + saveConfigData(); + +#if !USE_DHCP_IP + + // Reset to use new Static IP, if different from current ETH.localIP() + if (ETH.localIP() != EthSTA_IPconfig._sta_static_ip) + { + Serial.print(F("Current IP = ")); + Serial.print(ETH.localIP()); + Serial.print(F(". Reset to take new IP = ")); + Serial.println(EthSTA_IPconfig._sta_static_ip); + + ESP.restart(); + delay(2000); + } + +#endif + + digitalWrite(LED_BUILTIN, LED_OFF); // Turn led off as we are not in configuration mode. + } + + // put your main code here, to run repeatedly + check_status(); +} diff --git a/examples/ConfigOnSwitchFS/ConfigOnSwitchFS.ino b/examples/ConfigOnSwitchFS/ConfigOnSwitchFS.ino new file mode 100644 index 0000000..b72d72a --- /dev/null +++ b/examples/ConfigOnSwitchFS/ConfigOnSwitchFS.ino @@ -0,0 +1,1113 @@ +/**************************************************************************************************************************** + ConfigOnSwitchFS.ino + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + *****************************************************************************************************************************/ +/**************************************************************************************************************************** + This example will open a configuration portal when the reset button is pressed twice. + This method works well on Wemos boards which have a single reset button on board. It avoids using a pin for launching the configuration portal. + + Settings + There are two values to be set in the sketch. + + DRD_TIMEOUT - Number of seconds to wait for the second reset. Set to 10 in the example. + DRD_ADDRESS - The address in ESP8266 RTC RAM to store the flag. This memory must not be used for other purposes in the same sketch. Set to 0 in the example. + + This example, originally relied on the Double Reset Detector library from https://github.com/datacute/DoubleResetDetector + To support ESP32, use ESP_DoubleResetDetector library from //https://github.com/khoih-prog/ESP_DoubleResetDetector + *****************************************************************************************************************************/ +/**************************************************************************************************************************** + This example will open a configuration portal when no configuration has been previously entered or when a button is pushed. + It is the easiest scenario for configuration but requires a pin and a button on the ESP8266 device. + The Flash button is convenient for this on NodeMCU devices. + + Also in this example a password is required to connect to the configuration portal + network. This is inconvenient but means that only those who know the password or those + already connected to the target network can access the configuration portal and + the network credentials will be sent from the browser over an encrypted connection and + can not be read by observers. + *****************************************************************************************************************************/ + +#if !( defined(ESP32) ) + #error This code is designed for (ESP32_S2/3, ESP32_C3 + W6100) to run on ESP32 platform! Please check your Tools->Board setting. +#endif + +////////////////////////////////////////////////////////////// + +// Use from 0 to 4. Higher number, more debugging messages and memory usage. +#define _ESP32_ETH_MGR_LOGLEVEL_ 4 + +// To not display stored SSIDs and PWDs on Config Portal, select false. Default is true +// Even the stored Credentials are not display, just leave them all blank to reconnect and reuse the stored Credentials +//#define DISPLAY_STORED_CREDENTIALS_IN_CP false + +////////////////////////////////////////////////////////////// + +// Enter a MAC address and IP address for your controller below. +#define NUMBER_OF_MAC 20 + +byte mac[][NUMBER_OF_MAC] = +{ + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x01 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x02 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x03 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x04 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x05 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x06 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x07 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x08 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x09 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0A }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0B }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0C }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0D }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0E }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0F }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x10 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x11 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x12 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x13 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x14 }, +}; + +////////////////////////////////////////////////////////// + +// For W6100 & ESP32-S3 +// Optional values to override default settings +// Don't change unless you know what you're doing +//#define ETH_SPI_HOST SPI3_HOST +//#define SPI_CLOCK_MHZ 25 + +// Must connect INT to GPIOxx or not working +//#define INT_GPIO 4 + +//#define MISO_GPIO 13 +//#define MOSI_GPIO 11 +//#define SCK_GPIO 12 +//#define CS_GPIO 10 + +////////////////////////////////////////////////////////// + +#include +// Now support ArduinoJson 6.0.0+ ( tested with v6.14.1 ) +#include // get it from https://arduinojson.org/ or install via Arduino library manager + +//For ESP32, To use ESP32 Dev Module, QIO, Flash 4MB/80MHz, Upload 921600 +//Ported to ESP32 +#include + +////////////////////////////////////////////////////////////// + +// LittleFS has higher priority than SPIFFS +#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #define USE_LITTLEFS true + #define USE_SPIFFS false +#elif defined(ARDUINO_ESP32C3_DEV) + // For core v1.0.6-, ESP32-C3 only supporting SPIFFS and EEPROM. To use v2.0.0+ for LittleFS + #define USE_LITTLEFS false + #define USE_SPIFFS true +#endif + +#if USE_LITTLEFS + // Use LittleFS + #include "FS.h" + + // Check cores/esp32/esp_arduino_version.h and cores/esp32/core_version.h + //#if ( ESP_ARDUINO_VERSION >= ESP_ARDUINO_VERSION_VAL(2, 0, 0) ) //(ESP_ARDUINO_VERSION_MAJOR >= 2) + #if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.6 or 2.0.0+ + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/espressif/arduino-esp32/tree/master/libraries/LittleFS + + FS* filesystem = &LittleFS; + #define FileFS LittleFS + #define FS_Name "LittleFS" + #else + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.5-. You must install LITTLEFS library + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/lorol/LITTLEFS + + FS* filesystem = &LITTLEFS; + #define FileFS LITTLEFS + #define FS_Name "LittleFS" + #endif + +#elif USE_SPIFFS + #include + FS* filesystem = &SPIFFS; + #define FileFS SPIFFS + #define FS_Name "SPIFFS" +#else + // +Use FFat + #include + FS* filesystem = &FFat; + #define FileFS FFat + #define FS_Name "FFat" +#endif + +////////////////////////////////////////////////////////////// + +#if !defined(LED_BUILTIN) + #define LED_BUILTIN 2 +#endif + +#define LED_ON HIGH +#define LED_OFF LOW + +////////////////////////////////////////////////////////////// + +//See file .../hardware/espressif/esp32/variants/(esp32|doitESP32devkitV1)/pins_arduino.h +#define PIN_LED 2 // Pin D2 mapped to pin GPIO2/ADC12 of ESP32, control on-board LED + +#define PIN_D0 0 // Pin D0 mapped to pin GPIO0/BOOT/ADC11/TOUCH1 of ESP32 +#define PIN_D1 1 // Pin D1 mapped to pin GPIO1/TX0 of ESP32 +#define PIN_D2 2 // Pin D2 mapped to pin GPIO2/ADC12/TOUCH2 of ESP32 +#define PIN_D3 3 // Pin D3 mapped to pin GPIO3/RX0 of ESP32 +#define PIN_D4 4 // Pin D4 mapped to pin GPIO4/ADC10/TOUCH0 of ESP32 +#define PIN_D5 5 // Pin D5 mapped to pin GPIO5/SPISS/VSPI_SS of ESP32 +#define PIN_D6 6 // Pin D6 mapped to pin GPIO6/FLASH_SCK of ESP32 +#define PIN_D7 7 // Pin D7 mapped to pin GPIO7/FLASH_D0 of ESP32 +#define PIN_D8 8 // Pin D8 mapped to pin GPIO8/FLASH_D1 of ESP32 +#define PIN_D9 9 // Pin D9 mapped to pin GPIO9/FLASH_D2 of ESP32 + +#define PIN_D10 10 // Pin D10 mapped to pin GPIO10/FLASH_D3 of ESP32 +#define PIN_D11 11 // Pin D11 mapped to pin GPIO11/FLASH_CMD of ESP32 +#define PIN_D12 12 // Pin D12 mapped to pin GPIO12/HSPI_MISO/ADC15/TOUCH5/TDI of ESP32 +#define PIN_D13 13 // Pin D13 mapped to pin GPIO13/HSPI_MOSI/ADC14/TOUCH4/TCK of ESP32 +#define PIN_D14 14 // Pin D14 mapped to pin GPIO14/HSPI_SCK/ADC16/TOUCH6/TMS of ESP32 +#define PIN_D15 15 // Pin D15 mapped to pin GPIO15/HSPI_SS/ADC13/TOUCH3/TDO of ESP32 +#define PIN_D16 16 // Pin D16 mapped to pin GPIO16/TX2 of ESP32 +#define PIN_D17 17 // Pin D17 mapped to pin GPIO17/RX2 of ESP32 +#define PIN_D18 18 // Pin D18 mapped to pin GPIO18/VSPI_SCK of ESP32 +#define PIN_D19 19 // Pin D19 mapped to pin GPIO19/VSPI_MISO of ESP32 + +#define PIN_D21 21 // Pin D21 mapped to pin GPIO21/SDA of ESP32 +#define PIN_D22 22 // Pin D22 mapped to pin GPIO22/SCL of ESP32 +#define PIN_D23 23 // Pin D23 mapped to pin GPIO23/VSPI_MOSI of ESP32 +#define PIN_D24 24 // Pin D24 mapped to pin GPIO24 of ESP32 +#define PIN_D25 25 // Pin D25 mapped to pin GPIO25/ADC18/DAC1 of ESP32 +#define PIN_D26 26 // Pin D26 mapped to pin GPIO26/ADC19/DAC2 of ESP32 +#define PIN_D27 27 // Pin D27 mapped to pin GPIO27/ADC17/TOUCH7 of ESP32 + +#define PIN_D32 32 // Pin D32 mapped to pin GPIO32/ADC4/TOUCH9 of ESP32 +#define PIN_D33 33 // Pin D33 mapped to pin GPIO33/ADC5/TOUCH8 of ESP32 +#define PIN_D34 34 // Pin D34 mapped to pin GPIO34/ADC6 of ESP32 + +//Only GPIO pin < 34 can be used as output. Pins >= 34 can be only inputs +//See .../cores/esp32/esp32-hal-gpio.h/c +//#define digitalPinIsValid(pin) ((pin) < 40 && esp32_gpioMux[(pin)].reg) +//#define digitalPinCanOutput(pin) ((pin) < 34 && esp32_gpioMux[(pin)].reg) +//#define digitalPinToRtcPin(pin) (((pin) < 40)?esp32_gpioMux[(pin)].rtc:-1) +//#define digitalPinToAnalogChannel(pin) (((pin) < 40)?esp32_gpioMux[(pin)].adc:-1) +//#define digitalPinToTouchChannel(pin) (((pin) < 40)?esp32_gpioMux[(pin)].touch:-1) +//#define digitalPinToDacChannel(pin) (((pin) == 25)?0:((pin) == 26)?1:-1) + +#define PIN_D35 35 // Pin D35 mapped to pin GPIO35/ADC7 of ESP32 +#define PIN_D36 36 // Pin D36 mapped to pin GPIO36/ADC0/SVP of ESP32 +#define PIN_D39 39 // Pin D39 mapped to pin GPIO39/ADC3/SVN of ESP32 + +#define PIN_RX0 3 // Pin RX0 mapped to pin GPIO3/RX0 of ESP32 +#define PIN_TX0 1 // Pin TX0 mapped to pin GPIO1/TX0 of ESP32 + +#define PIN_SCL 22 // Pin SCL mapped to pin GPIO22/SCL of ESP32 +#define PIN_SDA 21 // Pin SDA mapped to pin GPIO21/SDA of ESP32 + +////////////////////////////////////////////////////////////// + +/* Trigger for inititating config mode is Pin D3 and also flash button on NodeMCU + Flash button is convenient to use but if it is pressed it will stuff up the serial port device driver + until the computer is rebooted on windows machines. +*/ +const int TRIGGER_PIN = PIN_D0; // Pin D0 mapped to pin GPIO0/BOOT of ESP32_S3 +/* + Alternative trigger pin. Needs to be connected to a button to use this pin. It must be a momentary connection + not connected permanently to ground. Either trigger pin will work. +*/ +#if ( ARDUINO_ESP32C3_DEV ) + const int TRIGGER_PIN2 = PIN_D8; // Pin D8 mapped to pin GPIO8/FLASH_D1 of ESP32 +#else + const int TRIGGER_PIN2 = PIN_D7; // Pin D7 mapped to pin GPIO7/ADC1_6/TOUCH7 of ESP32_S3 +#endif + +int pinSda = PIN_SDA; // Pin SDA mapped to pin GPIO21/SDA of ESP32 +int pinScl = PIN_SCL; // Pin SCL mapped to pin GPIO22/SCL of ESP32 + +////////////////////////////////////////////////////////////// + +const char* JSON_CONFIG_FILE = "/ConfigSW.json"; + +// Variables + +// Default configuration values +char thingspeakApiKey[17] = ""; +bool sensorDht22 = true; + +#define ThingSpeakAPI_Label "thingspeakApiKey" +#define SensorDht22_Label "SensorDHT22" +#define PinSDA_Label "PinSda" +#define PinSCL_Label "PinScl" + +////////////////////////////////////////////////////////////// + +// Function Prototypes + +bool readConfigFile(); +bool writeConfigFile(); + +// You only need to format the filesystem once +//#define FORMAT_FILESYSTEM true +#define FORMAT_FILESYSTEM false + +////////////////////////////////////////////////////////////// + +// Assuming max 49 chars +#define TZNAME_MAX_LEN 50 +#define TIMEZONE_MAX_LEN 50 + +typedef struct +{ + char TZ_Name[TZNAME_MAX_LEN]; // "America/Toronto" + char TZ[TIMEZONE_MAX_LEN]; // "EST5EDT,M3.2.0,M11.1.0" + uint16_t checksum; +} EthConfig; + +EthConfig Ethconfig; + +#define CONFIG_FILENAME F("/eth_cred.dat") + +////////////////////////////////////////////////////////////// + +// Indicates whether ESP has credentials saved from previous session +bool initialConfig = false; + +// Use false if you don't like to display Available Pages in Information Page of Config Portal +// Comment out or use true to display Available Pages in Information Page of Config Portal +// Must be placed before #include +#define USE_AVAILABLE_PAGES true + +// From v1.0.10 to permit disable/enable StaticIP configuration in Config Portal from sketch. Valid only if DHCP is used. +// You'll loose the feature of dynamically changing from DHCP to static IP, or vice versa +// You have to explicitly specify false to disable the feature. +//#define USE_STATIC_IP_CONFIG_IN_CP false + +// Use false to disable NTP config. Advisable when using Cellphone, Tablet to access Config Portal. +// See Issue 23: On Android phone ConfigPortal is unresponsive (https://github.com/khoih-prog/ESP_WiFiManager/issues/23) +#define USE_ESP_ETH_MANAGER_NTP true + +// Just use enough to save memory. On ESP8266, can cause blank ConfigPortal screen +// if using too much memory +#define USING_AFRICA false +#define USING_AMERICA true +#define USING_ANTARCTICA false +#define USING_ASIA false +#define USING_ATLANTIC false +#define USING_AUSTRALIA false +#define USING_EUROPE false +#define USING_INDIAN false +#define USING_PACIFIC false +#define USING_ETC_GMT false + +// Use true to enable CloudFlare NTP service. System can hang if you don't have Internet access while accessing CloudFlare +// See Issue #21: CloudFlare link in the default portal (https://github.com/khoih-prog/ESP_WiFiManager/issues/21) +#define USE_CLOUDFLARE_NTP false + +// New in v1.0.11 +#define USING_CORS_FEATURE true + +////////////////////////////////////////////////////////////// + +// Use USE_DHCP_IP == true for dynamic DHCP IP, false to use static IP which you have to change accordingly to your network +#if (defined(USE_STATIC_IP_CONFIG_IN_CP) && !USE_STATIC_IP_CONFIG_IN_CP) + // Force DHCP to be true + #if defined(USE_DHCP_IP) + #undef USE_DHCP_IP + #endif + #define USE_DHCP_IP true +#else + // You can select DHCP or Static IP here + //#define USE_DHCP_IP true + #define USE_DHCP_IP false +#endif + +#if ( USE_DHCP_IP ) + // Use DHCP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using DHCP IP + #endif + + IPAddress stationIP = IPAddress(0, 0, 0, 0); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); + +#else + // Use static IP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using static IP + #endif + + IPAddress stationIP = IPAddress(192, 168, 2, 232); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); +#endif + +////////////////////////////////////////////////////////////// + +#define USE_CONFIGURABLE_DNS true + +IPAddress dns1IP = gatewayIP; +IPAddress dns2IP = IPAddress(8, 8, 8, 8); + +#include //https://github.com/khoih-prog/ESP32_SC_W6100_Manager + +#define HTTP_PORT 80 + +////////////////////////////////////////////////////////////// + +/****************************************** + // Defined in ESP32_SC_W6100_Manager.hpp + typedef struct + { + IPAddress _sta_static_ip; + IPAddress _sta_static_gw; + IPAddress _sta_static_sn; + #if USE_CONFIGURABLE_DNS + IPAddress _sta_static_dns1; + IPAddress _sta_static_dns2; + #endif + } ETH_STA_IPConfig; +******************************************/ + +ETH_STA_IPConfig EthSTA_IPconfig; + +////////////////////////////////////////////////////////////// + +void initSTAIPConfigStruct(ETH_STA_IPConfig &in_EthSTA_IPconfig) +{ + in_EthSTA_IPconfig._sta_static_ip = stationIP; + in_EthSTA_IPconfig._sta_static_gw = gatewayIP; + in_EthSTA_IPconfig._sta_static_sn = netMask; +#if USE_CONFIGURABLE_DNS + in_EthSTA_IPconfig._sta_static_dns1 = dns1IP; + in_EthSTA_IPconfig._sta_static_dns2 = dns2IP; +#endif +} + +////////////////////////////////////////////////////////////// + +void displayIPConfigStruct(ETH_STA_IPConfig in_EthSTA_IPconfig) +{ + LOGERROR3(F("stationIP ="), in_EthSTA_IPconfig._sta_static_ip, ", gatewayIP =", in_EthSTA_IPconfig._sta_static_gw); + LOGERROR1(F("netMask ="), in_EthSTA_IPconfig._sta_static_sn); +#if USE_CONFIGURABLE_DNS + LOGERROR3(F("dns1IP ="), in_EthSTA_IPconfig._sta_static_dns1, ", dns2IP =", in_EthSTA_IPconfig._sta_static_dns2); +#endif +} + +////////////////////////////////////////////////////////////// + +void toggleLED() +{ + //toggle state + digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); +} + +////////////////////////////////////////////////////////////// + +#if USE_ESP_ETH_MANAGER_NTP +void printLocalTime() +{ + struct tm timeinfo; + + getLocalTime( &timeinfo ); + + // Valid only if year > 2000. + // You can get from timeinfo : tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec + if (timeinfo.tm_year > 100 ) + { + Serial.print("Local Date/Time: "); + Serial.print( asctime( &timeinfo ) ); + } +} +#endif + +////////////////////////////////////////////////////////////// + +void heartBeatPrint() +{ +#if USE_ESP_ETH_MANAGER_NTP + printLocalTime(); +#else + static int num = 1; + + if (ESP32_W6100_isConnected()) + Serial.print(F("H")); // H means connected to Ethernet + else + Serial.print(F("F")); // F means not connected to Ethernet + + if (num == 80) + { + Serial.println(); + num = 1; + } + else if (num++ % 10 == 0) + { + Serial.print(F(" ")); + } + +#endif +} + +////////////////////////////////////////////////////////////// + +void check_status() +{ + static ulong checkstatus_timeout = 0; + static ulong LEDstatus_timeout = 0; + + static ulong current_millis; + +#if USE_ESP_ETH_MANAGER_NTP +#define HEARTBEAT_INTERVAL 60000L +#else +#define HEARTBEAT_INTERVAL 10000L +#endif + +#define LED_INTERVAL 2000L + + current_millis = millis(); + + if ((current_millis > LEDstatus_timeout) || (LEDstatus_timeout == 0)) + { + // Toggle LED at LED_INTERVAL = 2s + toggleLED(); + LEDstatus_timeout = current_millis + LED_INTERVAL; + } + + // Print hearbeat every HEARTBEAT_INTERVAL (10) seconds. + if ((current_millis > checkstatus_timeout) || (checkstatus_timeout == 0)) + { + heartBeatPrint(); + checkstatus_timeout = current_millis + HEARTBEAT_INTERVAL; + } +} + +////////////////////////////////////////////////////////////// + +int calcChecksum(uint8_t* address, uint16_t sizeToCalc) +{ + uint16_t checkSum = 0; + + for (uint16_t index = 0; index < sizeToCalc; index++) + { + checkSum += * ( ( (byte*) address ) + index); + } + + return checkSum; +} + +////////////////////////////////////////////////////////////// + +bool loadConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "r"); + LOGERROR(F("LoadCfgFile ")); + + memset((void *) &Ethconfig, 0, sizeof(Ethconfig)); + memset((void *) &EthSTA_IPconfig, 0, sizeof(EthSTA_IPconfig)); + + if (file) + { + file.readBytes((char *) &Ethconfig, sizeof(Ethconfig)); + file.readBytes((char *) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + + if ( Ethconfig.checksum != calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ) ) + { + LOGERROR(F("Ethconfig checksum wrong")); + + return false; + } + + displayIPConfigStruct(EthSTA_IPconfig); + + return true; + } + else + { + LOGERROR(F("failed")); + + return false; + } +} + +////////////////////////////////////////////////////////////// + +void saveConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "w"); + LOGERROR(F("SaveCfgFile ")); + + if (file) + { + Ethconfig.checksum = calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ); + + file.write((uint8_t*) &Ethconfig, sizeof(Ethconfig)); + + displayIPConfigStruct(EthSTA_IPconfig); + + file.write((uint8_t*) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + } + else + { + LOGERROR(F("failed")); + } +} + +////////////////////////////////////////////////////////////// + +bool readConfigFile() +{ + // this opens the config file in read-mode + File f = FileFS.open(JSON_CONFIG_FILE, "r"); + + if (!f) + { + Serial.println(F("Configuration file not found")); + + return false; + } + else + { + // we could open the file + size_t size = f.size(); + // Allocate a buffer to store contents of the file. + std::unique_ptr buf(new char[size + 1]); + + // Read and store file contents in buf + f.readBytes(buf.get(), size); + // Closing file + f.close(); + // Using dynamic JSON buffer which is not the recommended memory model, but anyway + // See https://github.com/bblanchon/ArduinoJson/wiki/Memory%20model + +#if (ARDUINOJSON_VERSION_MAJOR >= 6) + DynamicJsonDocument json(1024); + auto deserializeError = deserializeJson(json, buf.get()); + + if ( deserializeError ) + { + Serial.println(F("JSON parseObject() failed")); + + return false; + } + + serializeJson(json, Serial); +#else + DynamicJsonBuffer jsonBuffer; + // Parse JSON string + JsonObject& json = jsonBuffer.parseObject(buf.get()); + + // Test if parsing succeeds. + if (!json.success()) + { + Serial.println(F("JSON parseObject() failed")); + return false; + } + + json.printTo(Serial); +#endif + + // Parse all config file parameters, override + // local config variables with parsed values + if (json.containsKey(ThingSpeakAPI_Label)) + { + strcpy(thingspeakApiKey, json[ThingSpeakAPI_Label]); + } + + if (json.containsKey(SensorDht22_Label)) + { + sensorDht22 = json[SensorDht22_Label]; + } + + if (json.containsKey(PinSDA_Label)) + { + pinSda = json[PinSDA_Label]; + } + + if (json.containsKey(PinSCL_Label)) + { + pinScl = json[PinSCL_Label]; + } + } + + Serial.println(F("\nConfig file was successfully parsed")); + + return true; +} + +////////////////////////////////////////////////////////////// + +bool writeConfigFile() +{ + Serial.println(F("Saving config file")); + +#if (ARDUINOJSON_VERSION_MAJOR >= 6) + DynamicJsonDocument json(1024); +#else + DynamicJsonBuffer jsonBuffer; + JsonObject& json = jsonBuffer.createObject(); +#endif + + // JSONify local configuration parameters + json[ThingSpeakAPI_Label] = thingspeakApiKey; + json[SensorDht22_Label] = sensorDht22; + json[PinSDA_Label] = pinSda; + json[PinSCL_Label] = pinScl; + + // Open file for writing + File f = FileFS.open(JSON_CONFIG_FILE, "w"); + + if (!f) + { + Serial.println(F("Failed to open config file for writing")); + + return false; + } + +#if (ARDUINOJSON_VERSION_MAJOR >= 6) + serializeJsonPretty(json, Serial); + // Write data to file and close it + serializeJson(json, f); +#else + json.prettyPrintTo(Serial); + // Write data to file and close it + json.printTo(f); +#endif + + f.close(); + + Serial.println(F("\nConfig file was successfully saved")); + + return true; +} + +////////////////////////////////////////////////////////////// + +void beginEthernet() +{ + LOGWARN(F("Default SPI pinout:")); + LOGWARN1(F("SPI_HOST:"), ETH_SPI_HOST); + LOGWARN1(F("MOSI:"), MOSI_GPIO); + LOGWARN1(F("MISO:"), MISO_GPIO); + LOGWARN1(F("SCK:"), SCK_GPIO); + LOGWARN1(F("CS:"), CS_GPIO); + LOGWARN1(F("INT:"), INT_GPIO); + LOGWARN1(F("SPI Clock (MHz):"), SPI_CLOCK_MHZ); + LOGWARN(F("=========================")); + + /////////////////////////////////// + + // To be called before ETH.begin() + ESP32_W6100_onEvent(); + + // start the ethernet connection and the server: + // Use DHCP dynamic IP and random mac + uint16_t index = millis() % NUMBER_OF_MAC; + + //bool begin(int MISO_GPIO, int MOSI_GPIO, int SCLK_GPIO, int CS_GPIO, int INT_GPIO, int SPI_CLOCK_MHZ, + // int SPI_HOST, uint8_t *W6100_Mac = W6100_Default_Mac); + //ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST ); + ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST, mac[index] ); +} + +////////////////////////////////////////////////////////////// + +void initEthernet() +{ +#if !( USE_DHCP_IP ) + displayIPConfigStruct(EthSTA_IPconfig); + + // Static IP, leave without this line to get IP via DHCP + //bool config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1 = 0, IPAddress dns2 = 0); + //ETH.config(stationIP, gatewayIP, netMask, dns1IP, dns2IP); + ETH.config(EthSTA_IPconfig._sta_static_ip, EthSTA_IPconfig._sta_static_gw, EthSTA_IPconfig._sta_static_sn, + EthSTA_IPconfig._sta_static_dns1); +#endif + + ESP32_W6100_waitForConnect(); +} + +////////////////////////////////////////////////////////////// + +void setup() +{ + //set led pin as output + pinMode(LED_BUILTIN, OUTPUT); + + // Put your setup code here, to run once + Serial.begin(115200); + + while (!Serial && millis() < 5000); + + delay(500); + + Serial.print(F("\nStarting ConfigOnSwichFS using ")); + Serial.print(FS_Name); + Serial.print(F(" on ")); + Serial.print(ARDUINO_BOARD); + Serial.print(F(" with ")); + Serial.println(SHIELD_TYPE); + Serial.println(ESP32_SC_W6100_MANAGER_VERSION); + + // Initialize the LED digital pin as an output. + pinMode(PIN_LED, OUTPUT); + // Initialize trigger pins + pinMode(TRIGGER_PIN, INPUT_PULLUP); + pinMode(TRIGGER_PIN2, INPUT_PULLUP); + + if (FORMAT_FILESYSTEM) + { + Serial.println(F("Forced Formatting.")); + FileFS.format(); + } + + // Format FileFS if not yet +#ifdef ESP32 + + if (!FileFS.begin(true)) +#else + if (!FileFS.begin()) +#endif + { +#ifdef ESP8266 + FileFS.format(); +#endif + + Serial.println(F("SPIFFS/LittleFS failed! Already tried formatting.")); + + if (!FileFS.begin()) + { + // prevents debug info from the library to hide err message. + delay(100); + +#if USE_LITTLEFS + Serial.println(F("LittleFS failed!. Please use SPIFFS or EEPROM. Stay forever")); +#else + Serial.println(F("SPIFFS failed!. Please use LittleFS or EEPROM. Stay forever")); +#endif + + while (true) + { + delay(1); + } + } + } + + beginEthernet(); + + initSTAIPConfigStruct(EthSTA_IPconfig); + + if (!readConfigFile()) + { + Serial.println(F("Failed to read ConfigFile, using default values")); + } + + unsigned long startedAt = millis(); + + //Local intialization. Once its business is done, there is no need to keep it around + // Use this to default DHCP hostname to ESP32-XXXXXX + //ESP32_SC_W6100_Manager ESP32_SC_W6100_manager; + // Use this to personalize DHCP hostname (RFC952 conformed) + ESP32_SC_W6100_Manager ESP32_SC_W6100_manager("ConfigOnSwitchFS"); + + ESP32_SC_W6100_manager.setDebugOutput(true); + +#if !USE_DHCP_IP + // Set (static IP, Gateway, Subnetmask, DNS1 and DNS2) or (IP, Gateway, Subnetmask) + ESP32_SC_W6100_manager.setSTAStaticIPConfig(EthSTA_IPconfig); +#endif + +#if USING_CORS_FEATURE + ESP32_SC_W6100_manager.setCORSHeader("Your Access-Control-Allow-Origin"); +#endif + + if (loadConfigData()) + { + //If no access point name has been previously entered disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(120); + + Serial.println(F("Got stored Credentials. Timeout 120s for Config Portal")); + +#if USE_ESP_ETH_MANAGER_NTP + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + Serial.println(F("Current Timezone is not set. Enter Config Portal to set.")); + } + +#endif + } + else + { + // Enter CP only if no stored SSID on flash and file + Serial.println(F("Open Config Portal without Timeout: No stored Credentials.")); + initialConfig = true; + } + + + ////////////////////////////////// + + // Connect ETH now if using STA + initEthernet(); + + ////////////////////////////////// + + if (initialConfig) + { + Serial.print(F("Starting configuration portal @ ")); + Serial.println(ETH.localIP()); + + digitalWrite(LED_BUILTIN, LED_ON); // Turn led on as we are in configuration mode. + + //sets timeout in seconds until configuration portal gets turned off. + //If not specified device will remain in configuration mode until + //switched off via webserver or device is restarted. + //ESP32_SC_W6100_manager.setConfigPortalTimeout(600); + + // Starts an access point + if (!ESP32_SC_W6100_manager.startConfigPortal()) + Serial.println(F("Not connected to ETH network but continuing anyway.")); + else + { + Serial.println(F("ETH network connected...yeey :)")); + } + + +#if USE_ESP_ETH_MANAGER_NTP + String tempTZ = ESP32_SC_W6100_manager.getTimezoneName(); + + if (strlen(tempTZ.c_str()) < sizeof(Ethconfig.TZ_Name) - 1) + strcpy(Ethconfig.TZ_Name, tempTZ.c_str()); + else + strncpy(Ethconfig.TZ_Name, tempTZ.c_str(), sizeof(Ethconfig.TZ_Name) - 1); + + const char * TZ_Result = ESP32_SC_W6100_manager.getTZ(Ethconfig.TZ_Name); + + if (strlen(TZ_Result) < sizeof(Ethconfig.TZ) - 1) + strcpy(Ethconfig.TZ, TZ_Result); + else + strncpy(Ethconfig.TZ, TZ_Result, sizeof(Ethconfig.TZ_Name) - 1); + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Saving current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + LOGERROR(F("Current Timezone Name is not set. Enter Config Portal to set.")); + } + +#endif + + ESP32_SC_W6100_manager.getSTAStaticIPConfig(EthSTA_IPconfig); + + saveConfigData(); + } + + digitalWrite(LED_BUILTIN, LED_OFF); // Turn led off as we are not in configuration mode. + + startedAt = millis(); + + Serial.print(F("After waiting ")); + Serial.print((float) (millis() - startedAt) / 1000); + Serial.print(F(" secs more in setup(), connection result is ")); + + if (ESP32_W6100_isConnected()) + { + Serial.print(F("connected. Local IP: ")); + Serial.println(ETH.localIP()); + } +} + +////////////////////////////////////////////////////////////// + +void loop() +{ + // is configuration portal requested? + if ((digitalRead(TRIGGER_PIN) == LOW) || (digitalRead(TRIGGER_PIN2) == LOW)) + { + Serial.println(F("\nConfiguration portal requested.")); + digitalWrite(LED_BUILTIN, LED_ON); // turn the LED on by making the voltage LOW to tell us we are in configuration mode. + + //Local intialization. Once its business is done, there is no need to keep it around + // Use this to default DHCP hostname to ESP32-XXXXXX + //ESP32_SC_W6100_Manager ESP32_SC_W6100_manager; + // Use this to personalize DHCP hostname (RFC952 conformed) + ESP32_SC_W6100_Manager ESP32_SC_W6100_manager("ConfigOnSwitchFS"); + + //Check if there is stored credentials. + //If not found, device will remain in configuration mode until switched off via webserver. + Serial.println(F("Opening configuration portal. ")); + + if (loadConfigData()) + { + //If no access point name has been previously entered disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(120); + + Serial.println(F("Got stored Credentials. Timeout 120s for Config Portal")); + } + else + { + // Enter CP only if no stored SSID on flash and file + Serial.println(F("Open Config Portal without Timeout: No stored Credentials.")); + initialConfig = true; + } + + // Extra parameters to be configured + // After connecting, parameter.getValue() will get you the configured value + // Format:

+ +

+ +Select `Information` to enter the Info page where the board info will be shown (long page) + +

+ +

+ + +Select `Configuration` to enter this page where you can select an AP and specify its WiFi Credentials + +

+ +

+ +Enter your credentials, then click `Save`. + +--- + +## How to use this Async_ESP32_FSWebServer_DRD example? + +This shows you how to use this example in Ubuntu (but you can use similar commands in other OSes) + +### Download Data files + +1. For example, you already downloaded data files from [Async_ESP32_FSWebServer_DRD data](https://github.com/khoih-prog/ESP32_W6100_Manager/tree/main/examples/Async_ESP32_FSWebServer_DRD/data) to a local folder, for example: + +``` +~/Arduino/libraries/ESP32_W6100_Manager-main/examples/Async_ESP32_FSWebServer_DRD/data +``` + +### HOWTO Upload files to ESP32 (SPIFFS or FFat) + +Use one of these methods (preferable first) + +1. Go to http://async-esp32fs.local/edit, then "Choose file" -> "Upload" +2. or Upload the contents of the data folder with MkSPIFFS Tool ("ESP8266 Sketch Data Upload" in Tools menu in Arduino IDE) +3. or upload the contents of a folder by running the following commands: +``` +Ubuntu$ cd ~/Arduino/libraries/ESP32_W6100_Manager-main/examples/Async_ESP32_FSWebServer_DRD/data +Ubuntu$ for file in \`\ls -A1\`; do curl -F "file=@$PWD/$file" http://async-esp32fs.local/edit; done +``` + +--- + +### Demonstrating pictures + +

+ +

+ +4. Edit / Delete / Download any file in the the folder by going to http://async-esp32fs.local/edit + +

+ +

+ + diff --git a/examples/ESP32_FSWebServer/data/CanadaFlag_1.png b/examples/ESP32_FSWebServer/data/CanadaFlag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..e3089877a83b0445506ccc764caed7922820b79c GIT binary patch literal 41214 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∾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 Sn()s7@S}?`(kh4F4F4adf8J^U literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer/data/CanadaFlag_2.png b/examples/ESP32_FSWebServer/data/CanadaFlag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..d51d229c29ce5c89f4e56ae44d06c6af925deca3 GIT binary patch literal 8311 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 Dvn_B_ literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer/data/edit.htm.gz b/examples/ESP32_FSWebServer/data/edit.htm.gz new file mode 100644 index 0000000000000000000000000000000000000000..69ce414f47f4b25a70160fc4985b2bd320c9b90a GIT binary patch literal 4116 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 literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer/data/graphs.js.gz b/examples/ESP32_FSWebServer/data/graphs.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..72435445a7ef86e00fe6c66b3b71c47fdbd53a93 GIT binary patch literal 1971 zcmV;k2Tb@MiwFo@s$5k717~t!aAw-*8%!ep`yEM!aI@XpTRzN;M>CH`Bk93rb1y+*nfgVXr6{*O z+qWk+vpIfdbmRB&GiOD~!8-BI8jWLya*xm0`?Ns*u7@$U5b~-2FAtyY?VsHiJWiul z$g}Ci$m17Tz>sgbNBG!p6`3AIdmW5d-8e)$jYf;JJn?*ncK^L=>v4>q7o#|V#AXxo zd(ilSPVW5&A*9`%(ECk!Y+arKfe)*P?pEpRp~jzoF096?>r=Aoz97T=5)|h&-xQIu zg>l28ew8E08a6CBp`}c_5jC)_GP?DY`3f}-jd!TP&)0@aTI6>ySBJ(C^6Vjg_FCi? z4W)y8K|{N+7xu_b?5Q2tp*_aW9rTMaq?DSsrVu+rd~J}hE1ki{8Q_4DpSuf+7N=y0 z&lbmI*d0+cIw7C&8TouX>b8vuC7%rP5n-@XYJN3AXB2Qkjq~PBh|f&&!8{IOB&X(2 zH9yyb7aQ|uSdryo%OvNrl!(4VCh<(%jlKg>o+p(VLEZu+SU49}D`X?;9hV2J6#b@5xoQzr_H2o5@^1L}hMUELzT^@ZjjKOo0;;PSc-R=y16 zZ?GMY#vgK8*szEP4+cZTEn{%f2k_E z27Gde+C~f)Fg^jqZfsd{i2;6w@jVpRk!@);Z(!Q^0V_`j7DaAW9TdZ@cIt4a4szZaa^^aU29qDr;ABm46G?-=na2}Ferp=!isDL5 zZsRR-8*h`__!TcbYL6zj@e8?){|UK0{(#)d@5!y&&_(q^Zq+tjEH`wq+|b2RliLz5 zFqaQCU2wY8dG2R6eWA(3ua&TB6J>0#%pV>3Z zdyofc0!I`ut`SP$kiJ3WHi#-0<433_` z)YOv0bAAFn?dFnNRNv(ebZf$J9m~5X4;HB}|KgQLUj9wtTU0ot`o1rAx!kOPE}Fw8 zS~Q^pvJt_F1Mf4=n%)ASw`5Ik|GTcX!Dzk1YQ^WUvs*ob65M#*8Pl}n#sj~2z;Kp3 z#wt>!wBemdQe1%Fa@<6G*Tw3BO6(?)=)j$C-mo1S$t$oENe=yhLb-k<8_;yI4OzB} zRnJ39Vd(ZadQJ$E_Fo6+T+OyM?w0=_W4@|s1;9o}-pE(zujhQpQ&}rb!wtIwq}*=X z4FSKo$AySPF)Nk{6YIBX;rZfke?Eikq=c+ENp6^52>r$^5|&2ANW^K%_#LYXv7c8e z=vGa#hyxfcmO0B{UVkpiG+<$zvOo;WqJY`6)K6l6B8Kp~K2ezpCd|@8%tl_2EiSSo zFA^|v1uq>WUSe{a+%Cnisy&!<^nU5?i#QLL2@C+6O z9mvZ6hkhC(4R=nr5iF#GH6&3&)`F6DcbF}Sh6I^7IhzV|9hOnAbbP~0)_aTc?G-T zUOp0`CmZu63}>tmJ`@(Gu)SWMGnfEAsi4IU)bR<5*jr~_#!;-Z^EjQ<&VItC4B8MT z8B`^L%rDim_gH$+=1MruU~n)H8CPxfm(bCv7eR<84hDk()HUc0oPGxaFZ!1Rx^{U0 z&VK*U?e~RBheyXbhhXsb4|_d`A?>3*L0l+t&uz4z32}iM0zT**`+0@&e*in8G#?BP F000|7$0Ps% literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer/data/index.htm b/examples/ESP32_FSWebServer/data/index.htm new file mode 100644 index 0000000..9cb560c --- /dev/null +++ b/examples/ESP32_FSWebServer/data/index.htm @@ -0,0 +1,97 @@ + + + + + + ESP Monitor + + + + +
+ + + + +
+
+
+
+ + \ No newline at end of file diff --git a/examples/ESP32_FSWebServer/pics/async-esp32fs.local.png b/examples/ESP32_FSWebServer/pics/async-esp32fs.local.png new file mode 100644 index 0000000000000000000000000000000000000000..05e9f2474a25de0c6111edc9a26040d4b430b5d6 GIT binary patch literal 20520 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 T6qn6}hxb-a6;Lem;q(6mKu|tN literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer/pics/async-esp32fs.local_edit.png b/examples/ESP32_FSWebServer/pics/async-esp32fs.local_edit.png new file mode 100644 index 0000000000000000000000000000000000000000..7deb17a4b9445b89f4c0e9836cdd83774429e06f GIT binary patch literal 76964 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 E1&k*zmjD0& literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer_DRD/ESP32_FSWebServer_DRD.ino b/examples/ESP32_FSWebServer_DRD/ESP32_FSWebServer_DRD.ino new file mode 100644 index 0000000..045eab1 --- /dev/null +++ b/examples/ESP32_FSWebServer_DRD/ESP32_FSWebServer_DRD.ino @@ -0,0 +1,1115 @@ +/**************************************************************************************************************************** + ESP32_FSWebServer_DRD - Example WebServer with SPIFFS backend for ESP32 + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + *****************************************************************************************************************************/ +/***************************************************************************************************************************** + How To Upload Files: + 1) Go to http://async-esp32fs.local/edit, then "Choose file" -> "Upload" + 2) or Upload the contents of the data folder with MkSPIFFS Tool ("ESP8266 Sketch Data Upload" in Tools menu in Arduino IDE) + 3) or you can upload the contents of a folder if you CD in that folder and run the following command: + for file in `\ls -A1`; do curl -F "file=@$PWD/$file" esp8266fs.local/edit; done + + How To Use: + 1) access the sample web page at http://async-esp32fs.local + 2) edit the page by going to http://async-esp32fs.local/edit + 3. Use configurable user/password to login. Default is admin/admin +*****************************************************************************************************************************/ + +#if !( defined(ESP32) ) + #error This code is designed for (ESP32_S2/3, ESP32_C3 + W6100) to run on ESP32 platform! Please check your Tools->Board setting. +#endif + +////////////////////////////////////////////////////////////// + +// Use from 0 to 4. Higher number, more debugging messages and memory usage. +#define _ESP32_ETH_MGR_LOGLEVEL_ 4 + +// To not display stored SSIDs and PWDs on Config Portal, select false. Default is true +// Even the stored Credentials are not display, just leave them all blank to reconnect and reuse the stored Credentials +//#define DISPLAY_STORED_CREDENTIALS_IN_CP false + +////////////////////////////////////////////////////////////// + +// Enter a MAC address and IP address for your controller below. +#define NUMBER_OF_MAC 20 + +byte mac[][NUMBER_OF_MAC] = +{ + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x01 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x02 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x03 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x04 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x05 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x06 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x07 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x08 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x09 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0A }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0B }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0C }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0D }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x0E }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x0F }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x10 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x11 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x12 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0x13 }, + { 0xDE, 0xAD, 0xBE, 0xEF, 0xBE, 0x14 }, +}; + +////////////////////////////////////////////////////////// + +// For W6100 & ESP32-S3 +// Optional values to override default settings +// Don't change unless you know what you're doing +//#define ETH_SPI_HOST SPI3_HOST +//#define SPI_CLOCK_MHZ 25 + +// Must connect INT to GPIOxx or not working +//#define INT_GPIO 4 + +//#define MISO_GPIO 13 +//#define MOSI_GPIO 11 +//#define SCK_GPIO 12 +//#define CS_GPIO 10 + +////////////////////////////////////////////////////////// + +#include + +#include + +////////////////////////////////////////////////////////////// + +// You only need to format the filesystem once +//#define FORMAT_FILESYSTEM true +#define FORMAT_FILESYSTEM false + +////////////////////////////////////////////////////////////// + +// LittleFS has higher priority than SPIFFS +#if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #define USE_LITTLEFS true + #define USE_SPIFFS false +#elif defined(ARDUINO_ESP32C3_DEV) + // For core v1.0.6-, ESP32-C3 only supporting SPIFFS and EEPROM. To use v2.0.0+ for LittleFS + #define USE_LITTLEFS false + #define USE_SPIFFS true +#endif + +#if USE_LITTLEFS + // Use LittleFS + #include "FS.h" + + // Check cores/esp32/esp_arduino_version.h and cores/esp32/core_version.h + //#if ( ESP_ARDUINO_VERSION >= ESP_ARDUINO_VERSION_VAL(2, 0, 0) ) //(ESP_ARDUINO_VERSION_MAJOR >= 2) + #if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.6 or 2.0.0+ + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/espressif/arduino-esp32/tree/master/libraries/LittleFS + + FS* filesystem = &LittleFS; + #define FileFS LittleFS + #define FS_Name "LittleFS" + #else + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32 Core 1.0.5-. You must install LITTLEFS library + #endif + + // The library has been merged into esp32 core from release 1.0.6 + #include // https://github.com/lorol/LITTLEFS + + FS* filesystem = &LITTLEFS; + #define FileFS LITTLEFS + #define FS_Name "LittleFS" + #endif + +#elif USE_SPIFFS + #include + FS* filesystem = &SPIFFS; + #define FileFS SPIFFS + #define FS_Name "SPIFFS" +#else + // Use FFat + #include + FS* filesystem = &FFat; + #define FileFS FFat + #define FS_Name "FFat" +#endif + +#if !defined(LED_BUILTIN) + #define LED_BUILTIN 2 +#endif + +#define LED_ON HIGH +#define LED_OFF LOW + +#include + +////////////////////////////////////////////////////////////// + +// These defines must be put before #include +// to select where to store DoubleResetDetector's variable. +// For ESP32, You must select one to be true (EEPROM or SPIFFS) +// Otherwise, library will use default EEPROM storage +#if USE_LITTLEFS + #define ESP_DRD_USE_LITTLEFS true + #define ESP_DRD_USE_SPIFFS false + #define ESP_DRD_USE_EEPROM false +#elif USE_SPIFFS + #define ESP_DRD_USE_LITTLEFS false + #define ESP_DRD_USE_SPIFFS true + #define ESP_DRD_USE_EEPROM false +#else + #define ESP_DRD_USE_LITTLEFS false + #define ESP_DRD_USE_SPIFFS false + #define ESP_DRD_USE_EEPROM true +#endif + +#define DOUBLERESETDETECTOR_DEBUG true //false + +#include //https://github.com/khoih-prog/ESP_DoubleResetDetector + +// Number of seconds after reset during which a +// subseqent reset will be considered a double reset. +#define DRD_TIMEOUT 10 + +// RTC Memory Address for the DoubleResetDetector to use +#define DRD_ADDRESS 0 + +//DoubleResetDetector drd(DRD_TIMEOUT, DRD_ADDRESS); +DoubleResetDetector* drd = NULL; + +////////////////////////////////////////////////////////////// + +// Assuming max 49 chars +#define TZNAME_MAX_LEN 50 +#define TIMEZONE_MAX_LEN 50 + +typedef struct +{ + char TZ_Name[TZNAME_MAX_LEN]; // "America/Toronto" + char TZ[TIMEZONE_MAX_LEN]; // "EST5EDT,M3.2.0,M11.1.0" + uint16_t checksum; +} EthConfig; + +EthConfig Ethconfig; + +#define CONFIG_FILENAME F("/eth_cred.dat") + +////////////////////////////////////////////////////////////// + +// Indicates whether ESP has credentials saved from previous session, or double reset detected +bool initialConfig = false; + +// Use false if you don't like to display Available Pages in Information Page of Config Portal +// Comment out or use true to display Available Pages in Information Page of Config Portal +// Must be placed before #include +#define USE_AVAILABLE_PAGES false + +// From v1.0.10 to permit disable/enable StaticIP configuration in Config Portal from sketch. Valid only if DHCP is used. +// You'll loose the feature of dynamically changing from DHCP to static IP, or vice versa +// You have to explicitly specify false to disable the feature. +//#define USE_STATIC_IP_CONFIG_IN_CP false + +// Use false to disable NTP config. Advisable when using Cellphone, Tablet to access Config Portal. +// See Issue 23: On Android phone ConfigPortal is unresponsive (https://github.com/khoih-prog/ESP_WiFiManager/issues/23) +#define USE_ESP_ETH_MANAGER_NTP false + +// Just use enough to save memory. On ESP8266, can cause blank ConfigPortal screen +// if using too much memory +#define USING_AFRICA false +#define USING_AMERICA true +#define USING_ANTARCTICA false +#define USING_ASIA false +#define USING_ATLANTIC false +#define USING_AUSTRALIA false +#define USING_EUROPE false +#define USING_INDIAN false +#define USING_PACIFIC false +#define USING_ETC_GMT false + +// Use true to enable CloudFlare NTP service. System can hang if you don't have Internet access while accessing CloudFlare +// See Issue #21: CloudFlare link in the default portal (https://github.com/khoih-prog/ESP_WiFiManager/issues/21) +#define USE_CLOUDFLARE_NTP false + +#define USING_CORS_FEATURE true + +////////////////////////////////////////////////////////////// + +// Use USE_DHCP_IP == true for dynamic DHCP IP, false to use static IP which you have to change accordingly to your network +#if (defined(USE_STATIC_IP_CONFIG_IN_CP) && !USE_STATIC_IP_CONFIG_IN_CP) + // Force DHCP to be true + #if defined(USE_DHCP_IP) + #undef USE_DHCP_IP + #endif + #define USE_DHCP_IP true +#else + // You can select DHCP or Static IP here + //#define USE_DHCP_IP true + #define USE_DHCP_IP false +#endif + +#if ( USE_DHCP_IP ) + // Use DHCP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using DHCP IP + #endif + + IPAddress stationIP = IPAddress(0, 0, 0, 0); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); + +#else + // Use static IP + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using static IP + #endif + + IPAddress stationIP = IPAddress(192, 168, 2, 232); + IPAddress gatewayIP = IPAddress(192, 168, 2, 1); + IPAddress netMask = IPAddress(255, 255, 255, 0); +#endif + +////////////////////////////////////////////////////////////// + +#define USE_CONFIGURABLE_DNS true + +IPAddress dns1IP = gatewayIP; +IPAddress dns2IP = IPAddress(8, 8, 8, 8); + +////////////////////////////////////////////////////////////// + +// To eliminate WebServer.h conflicts when using AsyncWebServer +#define WEBSERVER_H + +#include //https://github.com/khoih-prog/ESP32_SC_W6100_Manager + +const char* host = "esp32-fs-browser"; + +#define HTTP_PORT 80 + +WebServer server(HTTP_PORT); + +//holds the current upload +File fsUploadFile; + +String http_username = "admin"; +String http_password = "admin"; + +String separatorLine = "==============================================================="; + +////////////////////////////////////////////////////////////// + +/****************************************** + // Defined in ESP32_SC_W6100_Manager.hpp + typedef struct + { + IPAddress _sta_static_ip; + IPAddress _sta_static_gw; + IPAddress _sta_static_sn; + #if USE_CONFIGURABLE_DNS + IPAddress _sta_static_dns1; + IPAddress _sta_static_dns2; + #endif + } ETH_STA_IPConfig; +******************************************/ + +ETH_STA_IPConfig EthSTA_IPconfig; + +////////////////////////////////////////////////////////////// + +void initSTAIPConfigStruct(ETH_STA_IPConfig &in_EthSTA_IPconfig) +{ + in_EthSTA_IPconfig._sta_static_ip = stationIP; + in_EthSTA_IPconfig._sta_static_gw = gatewayIP; + in_EthSTA_IPconfig._sta_static_sn = netMask; +#if USE_CONFIGURABLE_DNS + in_EthSTA_IPconfig._sta_static_dns1 = dns1IP; + in_EthSTA_IPconfig._sta_static_dns2 = dns2IP; +#endif +} + +////////////////////////////////////////////////////////////// + +void displayIPConfigStruct(ETH_STA_IPConfig in_EthSTA_IPconfig) +{ + LOGERROR3(F("stationIP ="), in_EthSTA_IPconfig._sta_static_ip, ", gatewayIP =", in_EthSTA_IPconfig._sta_static_gw); + LOGERROR1(F("netMask ="), in_EthSTA_IPconfig._sta_static_sn); +#if USE_CONFIGURABLE_DNS + LOGERROR3(F("dns1IP ="), in_EthSTA_IPconfig._sta_static_dns1, ", dns2IP =", in_EthSTA_IPconfig._sta_static_dns2); +#endif +} + +////////////////////////////////////////////////////////////// + +//format bytes +String formatBytes(size_t bytes) +{ + if (bytes < 1024) + { + return String(bytes) + "B"; + } + else if (bytes < (1024 * 1024)) + { + return String(bytes / 1024.0) + "KB"; + } + else if (bytes < (1024 * 1024 * 1024)) + { + return String(bytes / 1024.0 / 1024.0) + "MB"; + } + else + { + return String(bytes / 1024.0 / 1024.0 / 1024.0) + "GB"; + } +} + + +String getContentType(String filename) +{ + if (server.hasArg("download")) + { + return "application/octet-stream"; + } + else if (filename.endsWith(".htm")) + { + return "text/html"; + } + else if (filename.endsWith(".html")) + { + return "text/html"; + } + else if (filename.endsWith(".css")) + { + return "text/css"; + } + else if (filename.endsWith(".js")) + { + return "application/javascript"; + } + else if (filename.endsWith(".png")) + { + return "image/png"; + } + else if (filename.endsWith(".gif")) + { + return "image/gif"; + } + else if (filename.endsWith(".jpg")) + { + return "image/jpeg"; + } + else if (filename.endsWith(".ico")) + { + return "image/x-icon"; + } + else if (filename.endsWith(".xml")) + { + return "text/xml"; + } + else if (filename.endsWith(".pdf")) + { + return "application/x-pdf"; + } + else if (filename.endsWith(".zip")) + { + return "application/x-zip"; + } + else if (filename.endsWith(".gz")) + { + return "application/x-gzip"; + } + + return "text/plain"; +} + +bool handleFileRead(String path) +{ + Serial.println("handleFileRead: " + path); + + if (path.endsWith("/")) + { + path += "index.htm"; + } + + String contentType = getContentType(path); + String pathWithGz = path + ".gz"; + + if (filesystem->exists(pathWithGz) || filesystem->exists(path)) + { + if (filesystem->exists(pathWithGz)) + { + path += ".gz"; + } + + File file = filesystem->open(path, "r"); + server.streamFile(file, contentType); + file.close(); + return true; + } + + return false; +} + +void handleFileUpload() +{ + if (server.uri() != "/edit") + { + return; + } + + HTTPUpload& upload = server.upload(); + + if (upload.status == UPLOAD_FILE_START) + { + String filename = upload.filename; + + if (!filename.startsWith("/")) + { + filename = "/" + filename; + } + + Serial.print(F("handleFileUpload Name: ")); + Serial.println(filename); + fsUploadFile = filesystem->open(filename, "w"); + filename.clear(); + } + else if (upload.status == UPLOAD_FILE_WRITE) + { + //Serial.print(F("handleFileUpload Data: ")); Serial.println(upload.currentSize); + if (fsUploadFile) + { + fsUploadFile.write(upload.buf, upload.currentSize); + } + } + else if (upload.status == UPLOAD_FILE_END) + { + if (fsUploadFile) + { + fsUploadFile.close(); + } + + Serial.print(F("handleFileUpload Size: ")); + Serial.println(upload.totalSize); + } +} + +void handleFileDelete() +{ + if (server.args() == 0) + { + return server.send(500, "text/plain", "BAD ARGS"); + } + + String path = server.arg(0); + Serial.println("handleFileDelete: " + path); + + if (path == "/") + { + return server.send(500, "text/plain", "BAD PATH"); + } + + if (!filesystem->exists(path)) + { + return server.send(404, "text/plain", "FileNotFound"); + } + + filesystem->remove(path); + server.send(200, "text/plain", ""); + path.clear(); +} + +void handleFileCreate() +{ + if (server.args() == 0) + { + return server.send(500, "text/plain", "BAD ARGS"); + } + + String path = server.arg(0); + Serial.println("handleFileCreate: " + path); + + if (path == "/") + { + return server.send(500, "text/plain", "BAD PATH"); + } + + if (filesystem->exists(path)) + { + return server.send(500, "text/plain", "FILE EXISTS"); + } + + File file = filesystem->open(path, "w"); + + if (file) + { + file.close(); + } + else + { + return server.send(500, "text/plain", "CREATE FAILED"); + } + + server.send(200, "text/plain", ""); + path.clear(); +} + +void handleFileList() +{ + if (!server.hasArg("dir")) + { + server.send(500, "text/plain", "BAD ARGS"); + return; + } + + String path = server.arg("dir"); + Serial.println("handleFileList: " + path); + + File root = filesystem->open(path); + path = String(); + + String output = "["; + + if (root.isDirectory()) + { + File file = root.openNextFile(); + + while (file) + { + if (output != "[") + { + output += ','; + } + + output += "{\"type\":\""; + output += (file.isDirectory()) ? "dir" : "file"; + output += "\",\"name\":\""; + //output += String(file.name()).substring(1); + output += String(file.name()).substring(0); + output += "\"}"; + file = root.openNextFile(); + } + } + + output += "]"; + + Serial.println("handleFileList: " + output); + + server.send(200, "text/json", output); +} + + +////////////////////////////////////////////////////////////// + +void toggleLED() +{ + //toggle state + digitalWrite(LED_BUILTIN, !digitalRead(LED_BUILTIN)); +} + +////////////////////////////////////////////////////////////// + +#if USE_ESP_ETH_MANAGER_NTP +void printLocalTime() +{ + struct tm timeinfo; + + getLocalTime( &timeinfo ); + + // Valid only if year > 2000. + // You can get from timeinfo : tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec + if (timeinfo.tm_year > 100 ) + { + Serial.print("Local Date/Time: "); + Serial.print( asctime( &timeinfo ) ); + } +} +#endif + +////////////////////////////////////////////////////////////// + +void heartBeatPrint() +{ +#if USE_ESP_ETH_MANAGER_NTP + printLocalTime(); +#else + static int num = 1; + + if (ESP32_W6100_isConnected()) + Serial.print(F("H")); // H means connected to Ethernet + else + Serial.print(F("F")); // F means not connected to Ethernet + + if (num == 80) + { + Serial.println(); + num = 1; + } + else if (num++ % 10 == 0) + { + Serial.print(F(" ")); + } + +#endif +} + +////////////////////////////////////////////////////////////// + +void check_status() +{ + static ulong checkstatus_timeout = 0; + static ulong LEDstatus_timeout = 0; + + static ulong current_millis; + +#if USE_ESP_ETH_MANAGER_NTP +#define HEARTBEAT_INTERVAL 60000L +#else +#define HEARTBEAT_INTERVAL 10000L +#endif + +#define LED_INTERVAL 2000L + + current_millis = millis(); + + if ((current_millis > LEDstatus_timeout) || (LEDstatus_timeout == 0)) + { + // Toggle LED at LED_INTERVAL = 2s + toggleLED(); + LEDstatus_timeout = current_millis + LED_INTERVAL; + } + + // Print hearbeat every HEARTBEAT_INTERVAL (10) seconds. + if ((current_millis > checkstatus_timeout) || (checkstatus_timeout == 0)) + { + heartBeatPrint(); + checkstatus_timeout = current_millis + HEARTBEAT_INTERVAL; + } +} + +////////////////////////////////////////////////////////////// + +int calcChecksum(uint8_t* address, uint16_t sizeToCalc) +{ + uint16_t checkSum = 0; + + for (uint16_t index = 0; index < sizeToCalc; index++) + { + checkSum += * ( ( (byte*) address ) + index); + } + + return checkSum; +} + +////////////////////////////////////////////////////////////// + +bool loadConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "r"); + LOGERROR(F("LoadCfgFile ")); + + memset((void *) &Ethconfig, 0, sizeof(Ethconfig)); + memset((void *) &EthSTA_IPconfig, 0, sizeof(EthSTA_IPconfig)); + + if (file) + { + file.readBytes((char *) &Ethconfig, sizeof(Ethconfig)); + file.readBytes((char *) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + + if ( Ethconfig.checksum != calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ) ) + { + LOGERROR(F("Ethconfig checksum wrong")); + + return false; + } + + displayIPConfigStruct(EthSTA_IPconfig); + + return true; + } + else + { + LOGERROR(F("failed")); + + return false; + } +} + +////////////////////////////////////////////////////////////// + +void saveConfigData() +{ + File file = FileFS.open(CONFIG_FILENAME, "w"); + LOGERROR(F("SaveCfgFile ")); + + if (file) + { + Ethconfig.checksum = calcChecksum( (uint8_t*) &Ethconfig, sizeof(Ethconfig) - sizeof(Ethconfig.checksum) ); + + file.write((uint8_t*) &Ethconfig, sizeof(Ethconfig)); + + displayIPConfigStruct(EthSTA_IPconfig); + + file.write((uint8_t*) &EthSTA_IPconfig, sizeof(EthSTA_IPconfig)); + file.close(); + + LOGERROR(F("OK")); + } + else + { + LOGERROR(F("failed")); + } +} + +////////////////////////////////////////////////////////////// + +void beginEthernet() +{ + LOGWARN(F("Default SPI pinout:")); + LOGWARN1(F("SPI_HOST:"), ETH_SPI_HOST); + LOGWARN1(F("MOSI:"), MOSI_GPIO); + LOGWARN1(F("MISO:"), MISO_GPIO); + LOGWARN1(F("SCK:"), SCK_GPIO); + LOGWARN1(F("CS:"), CS_GPIO); + LOGWARN1(F("INT:"), INT_GPIO); + LOGWARN1(F("SPI Clock (MHz):"), SPI_CLOCK_MHZ); + LOGWARN(F("=========================")); + + /////////////////////////////////// + + // To be called before ETH.begin() + ESP32_W6100_onEvent(); + + // start the ethernet connection and the server: + // Use DHCP dynamic IP and random mac + uint16_t index = millis() % NUMBER_OF_MAC; + + //bool begin(int MISO_GPIO, int MOSI_GPIO, int SCLK_GPIO, int CS_GPIO, int INT_GPIO, int SPI_CLOCK_MHZ, + // int SPI_HOST, uint8_t *W6100_Mac = W6100_Default_Mac); + //ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST ); + ETH.begin( MISO_GPIO, MOSI_GPIO, SCK_GPIO, CS_GPIO, INT_GPIO, SPI_CLOCK_MHZ, ETH_SPI_HOST, mac[index] ); +} + +////////////////////////////////////////////////////////////// + +void initEthernet() +{ +#if !( USE_DHCP_IP ) + displayIPConfigStruct(EthSTA_IPconfig); + + // Static IP, leave without this line to get IP via DHCP + //bool config(IPAddress local_ip, IPAddress gateway, IPAddress subnet, IPAddress dns1 = 0, IPAddress dns2 = 0); + //ETH.config(stationIP, gatewayIP, netMask, dns1IP, dns2IP); + ETH.config(EthSTA_IPconfig._sta_static_ip, EthSTA_IPconfig._sta_static_gw, EthSTA_IPconfig._sta_static_sn, + EthSTA_IPconfig._sta_static_dns1); +#endif + + ESP32_W6100_waitForConnect(); +} + +////////////////////////////////////////////////////////////// + +void setup() +{ + //set led pin as output + pinMode(LED_BUILTIN, OUTPUT); + + Serial.begin(115200); + + while (!Serial && millis() < 5000); + + delay(500); + + Serial.print(F("\nStarting ESP32_FSWebServer_DRD using ")); + Serial.print(FS_Name); + Serial.print(F(" on ")); + Serial.print(ARDUINO_BOARD); + Serial.print(F(" with ")); + Serial.println(SHIELD_TYPE); + Serial.println(ESP32_SC_W6100_MANAGER_VERSION); + Serial.println(ESP_DOUBLE_RESET_DETECTOR_VERSION); + + Serial.setDebugOutput(false); + + if (FORMAT_FILESYSTEM) + FileFS.format(); + + // Format FileFS if not yet + if (!FileFS.begin(true)) + { + Serial.println(F("SPIFFS/LittleFS failed! Already tried formatting.")); + + if (!FileFS.begin()) + { + // prevents debug info from the library to hide err message. + delay(100); + +#if USE_LITTLEFS + Serial.println(F("LittleFS failed!. Please use SPIFFS or EEPROM. Stay forever")); +#else + Serial.println(F("SPIFFS failed!. Please use LittleFS or EEPROM. Stay forever")); +#endif + + while (true) + { + delay(1); + } + } + } + + File root = FileFS.open("/"); + File file = root.openNextFile(); + + while (file) + { + String fileName = file.name(); + size_t fileSize = file.size(); + Serial.printf("FS File: %s, size: %s\n", fileName.c_str(), formatBytes(fileSize).c_str()); + file = root.openNextFile(); + } + + Serial.println(); + + drd = new DoubleResetDetector(DRD_TIMEOUT, DRD_ADDRESS); + + if (!drd) + Serial.println(F("Can't instantiate. Disable DRD feature")); + + unsigned long startedAt = millis(); + + beginEthernet(); + + initSTAIPConfigStruct(EthSTA_IPconfig); + + digitalWrite(LED_BUILTIN, LED_ON); + + //Local intialization. Once its business is done, there is no need to keep it around + // Use this to default DHCP hostname to ESP32-XXXXXX + //ESP32_SC_W6100_Manager ESP32_SC_W6100_manager; + // Use this to personalize DHCP hostname (RFC952 conformed) + ESP32_SC_W6100_Manager ESP32_SC_W6100_manager("ESP32-FSWebServer_DRD"); + +#if !USE_DHCP_IP + // Set (static IP, Gateway, Subnetmask, DNS1 and DNS2) or (IP, Gateway, Subnetmask) + ESP32_SC_W6100_manager.setSTAStaticIPConfig(EthSTA_IPconfig); +#endif + +#if USING_CORS_FEATURE + ESP32_SC_W6100_manager.setCORSHeader("Your Access-Control-Allow-Origin"); +#endif + + bool configDataLoaded = loadConfigData(); + + ////////////////////////////////// + + // Connect ETH now if using STA + initEthernet(); + + ////////////////////////////////// + + if (configDataLoaded) + { + //If no access point name has been previously entered disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(120); + + Serial.println(F("Got stored Credentials. Timeout 120s for Config Portal")); + +#if USE_ESP_ETH_MANAGER_NTP + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Saving current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + Serial.println(F("Current Timezone is not set. Enter Config Portal to set.")); + } + +#endif + } + else + { + // Enter CP only if no stored SSID on flash and file + Serial.println(F("Open Config Portal without Timeout: No stored Credentials.")); + initialConfig = true; + } + + if (drd->detectDoubleReset()) + { + // DRD, disable timeout. + ESP32_SC_W6100_manager.setConfigPortalTimeout(0); + + Serial.println(F("Open Config Portal without Timeout: Double Reset Detected")); + initialConfig = true; + } + + if (initialConfig) + { + Serial.print(F("Starting configuration portal @ ")); + Serial.println(ETH.localIP()); + + //sets timeout in seconds until configuration portal gets turned off. + //If not specified device will remain in configuration mode until + //switched off via webserver or device is restarted. + //ESP32_SC_W6100_manager.setConfigPortalTimeout(600); + + // Starts an access point + if (!ESP32_SC_W6100_manager.startConfigPortal()) + Serial.println(F("Not connected to ETH network but continuing anyway.")); + else + { + Serial.println(F("ETH network connected...yeey :)")); + } + +#if USE_ESP_ETH_MANAGER_NTP + String tempTZ = ESP32_SC_W6100_manager.getTimezoneName(); + + if (strlen(tempTZ.c_str()) < sizeof(Ethconfig.TZ_Name) - 1) + strcpy(Ethconfig.TZ_Name, tempTZ.c_str()); + else + strncpy(Ethconfig.TZ_Name, tempTZ.c_str(), sizeof(Ethconfig.TZ_Name) - 1); + + const char * TZ_Result = ESP32_SC_W6100_manager.getTZ(Ethconfig.TZ_Name); + + if (strlen(TZ_Result) < sizeof(Ethconfig.TZ) - 1) + strcpy(Ethconfig.TZ, TZ_Result); + else + strncpy(Ethconfig.TZ, TZ_Result, sizeof(Ethconfig.TZ_Name) - 1); + + if ( strlen(Ethconfig.TZ_Name) > 0 ) + { + LOGERROR3(F("Saving current TZ_Name ="), Ethconfig.TZ_Name, F(", TZ = "), Ethconfig.TZ); + + //configTzTime(Ethconfig.TZ, "pool.ntp.org" ); + configTzTime(Ethconfig.TZ, "time.nist.gov", "0.pool.ntp.org", "1.pool.ntp.org"); + } + else + { + LOGERROR(F("Current Timezone Name is not set. Enter Config Portal to set.")); + } + +#endif + + ESP32_SC_W6100_manager.getSTAStaticIPConfig(EthSTA_IPconfig); + + saveConfigData(); + } + + startedAt = millis(); + + Serial.print(F("After waiting ")); + Serial.print((float) (millis() - startedAt) / 1000); + Serial.print(F(" secs more in setup(), connection result is ")); + + if (ESP32_W6100_isConnected()) + { + Serial.print(F("connected. Local IP: ")); + Serial.println(ETH.localIP()); + } + + //SERVER INIT + //list directory + server.on("/list", HTTP_GET, handleFileList); + + //load editor + server.on("/edit", HTTP_GET, []() + { + if (!handleFileRead("/edit.htm")) + { + server.send(404, "text/plain", "FileNotFound"); + } + }); + + //create file + server.on("/edit", HTTP_PUT, handleFileCreate); + + //delete file + server.on("/edit", HTTP_DELETE, handleFileDelete); + + //first callback is called after the request has ended with all parsed arguments + //second callback handles file uploads at that location + server.on("/edit", HTTP_POST, []() + { + server.send(200, "text/plain", ""); + }, handleFileUpload); + + //called when the url is not defined here + //use it to load content from SPIFFS + server.onNotFound([]() + { + if (!handleFileRead(server.uri())) + { + server.send(404, "text/plain", "FileNotFound"); + } + }); + + //get heap status, analog input value and all GPIO statuses in one json call + server.on("/all", HTTP_GET, []() + { + String json = "{"; + json += "\"heap\":" + String(ESP.getFreeHeap()); + json += ", \"analog\":" + String(analogRead(A0)); + json += ", \"gpio\":" + String((uint32_t)(0)); + json += "}"; + server.send(200, "text/json", json); + json = String(); + }); + + server.begin(); + + Serial.print(F("HTTP server started @ ")); + Serial.println(WiFi.localIP()); + + MDNS.begin(host); + // Add service to MDNS-SD + MDNS.addService("http", "tcp", HTTP_PORT); + + ////////////////////////////////////////////////////////////// + + Serial.print(F("HTTP server started @ ")); + Serial.println(ETH.localIP()); + + Serial.println(separatorLine); + Serial.print("Open http://"); + Serial.print(ETH.localIP()); + Serial.println("/edit to see the file browser"); + Serial.println("Using username = " + http_username + " and password = " + http_password); + Serial.println(separatorLine); + + digitalWrite(LED_BUILTIN, LED_OFF); +} + +////////////////////////////////////////////////////////////// + +void loop() +{ + // Call the double reset detector loop method every so often, + // so that it can recognise when the timeout expires. + // You can also call drd.stop() when you wish to no longer + // consider the next reset as a double reset. + drd->loop(); + + // this is just for checking if we are alive and connected to WiFi + check_status(); + + server.handleClient(); +} diff --git a/examples/ESP32_FSWebServer_DRD/README.md b/examples/ESP32_FSWebServer_DRD/README.md new file mode 100644 index 0000000..c7994fe --- /dev/null +++ b/examples/ESP32_FSWebServer_DRD/README.md @@ -0,0 +1,71 @@ +# Async_ESP32_FSWebServer_DRD Example + +Compare this efficient Async_ESP32_FSWebServer_DRD example with the so complicated twin [ESP32_FSWebServer_DRD](https://github.com/khoih-prog/ESP_WiFiManager/tree/main/examples/ESP32_FSWebServer_DRD) to appreciate the powerful AsynWebServer this [ESP32_W6100_Manager Library](https://github.com/khoih-prog/ESP32_W6100_Manager) is relying on. + +## First, how Config Portal works? + +Connect to Config Portal @ the localIP address, e.g. `192.168.2.232` + + +You'll see this `Main` page: + +

+ +

+ +Select `Information` to enter the Info page where the board info will be shown (long page) + +

+ +

+ + +Select `Configuration` to enter this page where you can select an AP and specify its WiFi Credentials + +

+ +

+ +Enter your credentials, then click `Save`. + +--- + +## How to use this Async_ESP32_FSWebServer_DRD example? + +This shows you how to use this example in Ubuntu (but you can use similar commands in other OSes) + +### Download Data files + +1. For example, you already downloaded data files from [Async_ESP32_FSWebServer_DRD data](https://github.com/khoih-prog/ESP32_W6100_Manager/tree/main/examples/Async_ESP32_FSWebServer_DRD/data) to a local folder, for example: + +``` +~/Arduino/libraries/ESP32_W6100_Manager-main/examples/Async_ESP32_FSWebServer_DRD/data +``` + +### HOWTO Upload files to ESP32 (SPIFFS or FFat) + +Use one of these methods (preferable first) + +1. Go to http://async-esp32fs.local/edit, then "Choose file" -> "Upload" +2. or Upload the contents of the data folder with MkSPIFFS Tool ("ESP8266 Sketch Data Upload" in Tools menu in Arduino IDE) +3. or upload the contents of a folder by running the following commands: +``` +Ubuntu$ cd ~/Arduino/libraries/ESP32_W6100_Manager-main/examples/Async_ESP32_FSWebServer_DRD/data +Ubuntu$ for file in \`\ls -A1\`; do curl -F "file=@$PWD/$file" http://async-esp32fs.local/edit; done +``` + +--- + +### Demonstrating pictures + +

+ +

+ +4. Edit / Delete / Download any file in the the folder by going to http://async-esp32fs.local/edit + +

+ +

+ + diff --git a/examples/ESP32_FSWebServer_DRD/data/CanadaFlag_1.png b/examples/ESP32_FSWebServer_DRD/data/CanadaFlag_1.png new file mode 100644 index 0000000000000000000000000000000000000000..e3089877a83b0445506ccc764caed7922820b79c GIT binary patch literal 41214 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∾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 Sn()s7@S}?`(kh4F4F4adf8J^U literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer_DRD/data/CanadaFlag_2.png b/examples/ESP32_FSWebServer_DRD/data/CanadaFlag_2.png new file mode 100644 index 0000000000000000000000000000000000000000..d51d229c29ce5c89f4e56ae44d06c6af925deca3 GIT binary patch literal 8311 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 Dvn_B_ literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer_DRD/data/edit.htm.gz b/examples/ESP32_FSWebServer_DRD/data/edit.htm.gz new file mode 100644 index 0000000000000000000000000000000000000000..69ce414f47f4b25a70160fc4985b2bd320c9b90a GIT binary patch literal 4116 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 literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer_DRD/data/graphs.js.gz b/examples/ESP32_FSWebServer_DRD/data/graphs.js.gz new file mode 100644 index 0000000000000000000000000000000000000000..72435445a7ef86e00fe6c66b3b71c47fdbd53a93 GIT binary patch literal 1971 zcmV;k2Tb@MiwFo@s$5k717~t!aAw-*8%!ep`yEM!aI@XpTRzN;M>CH`Bk93rb1y+*nfgVXr6{*O z+qWk+vpIfdbmRB&GiOD~!8-BI8jWLya*xm0`?Ns*u7@$U5b~-2FAtyY?VsHiJWiul z$g}Ci$m17Tz>sgbNBG!p6`3AIdmW5d-8e)$jYf;JJn?*ncK^L=>v4>q7o#|V#AXxo zd(ilSPVW5&A*9`%(ECk!Y+arKfe)*P?pEpRp~jzoF096?>r=Aoz97T=5)|h&-xQIu zg>l28ew8E08a6CBp`}c_5jC)_GP?DY`3f}-jd!TP&)0@aTI6>ySBJ(C^6Vjg_FCi? z4W)y8K|{N+7xu_b?5Q2tp*_aW9rTMaq?DSsrVu+rd~J}hE1ki{8Q_4DpSuf+7N=y0 z&lbmI*d0+cIw7C&8TouX>b8vuC7%rP5n-@XYJN3AXB2Qkjq~PBh|f&&!8{IOB&X(2 zH9yyb7aQ|uSdryo%OvNrl!(4VCh<(%jlKg>o+p(VLEZu+SU49}D`X?;9hV2J6#b@5xoQzr_H2o5@^1L}hMUELzT^@ZjjKOo0;;PSc-R=y16 zZ?GMY#vgK8*szEP4+cZTEn{%f2k_E z27Gde+C~f)Fg^jqZfsd{i2;6w@jVpRk!@);Z(!Q^0V_`j7DaAW9TdZ@cIt4a4szZaa^^aU29qDr;ABm46G?-=na2}Ferp=!isDL5 zZsRR-8*h`__!TcbYL6zj@e8?){|UK0{(#)d@5!y&&_(q^Zq+tjEH`wq+|b2RliLz5 zFqaQCU2wY8dG2R6eWA(3ua&TB6J>0#%pV>3Z zdyofc0!I`ut`SP$kiJ3WHi#-0<433_` z)YOv0bAAFn?dFnNRNv(ebZf$J9m~5X4;HB}|KgQLUj9wtTU0ot`o1rAx!kOPE}Fw8 zS~Q^pvJt_F1Mf4=n%)ASw`5Ik|GTcX!Dzk1YQ^WUvs*ob65M#*8Pl}n#sj~2z;Kp3 z#wt>!wBemdQe1%Fa@<6G*Tw3BO6(?)=)j$C-mo1S$t$oENe=yhLb-k<8_;yI4OzB} zRnJ39Vd(ZadQJ$E_Fo6+T+OyM?w0=_W4@|s1;9o}-pE(zujhQpQ&}rb!wtIwq}*=X z4FSKo$AySPF)Nk{6YIBX;rZfke?Eikq=c+ENp6^52>r$^5|&2ANW^K%_#LYXv7c8e z=vGa#hyxfcmO0B{UVkpiG+<$zvOo;WqJY`6)K6l6B8Kp~K2ezpCd|@8%tl_2EiSSo zFA^|v1uq>WUSe{a+%Cnisy&!<^nU5?i#QLL2@C+6O z9mvZ6hkhC(4R=nr5iF#GH6&3&)`F6DcbF}Sh6I^7IhzV|9hOnAbbP~0)_aTc?G-T zUOp0`CmZu63}>tmJ`@(Gu)SWMGnfEAsi4IU)bR<5*jr~_#!;-Z^EjQ<&VItC4B8MT z8B`^L%rDim_gH$+=1MruU~n)H8CPxfm(bCv7eR<84hDk()HUc0oPGxaFZ!1Rx^{U0 z&VK*U?e~RBheyXbhhXsb4|_d`A?>3*L0l+t&uz4z32}iM0zT**`+0@&e*in8G#?BP F000|7$0Ps% literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer_DRD/data/index.htm b/examples/ESP32_FSWebServer_DRD/data/index.htm new file mode 100644 index 0000000..9cb560c --- /dev/null +++ b/examples/ESP32_FSWebServer_DRD/data/index.htm @@ -0,0 +1,97 @@ + + + + + + ESP Monitor + + + + +
+ + + + +
+
+
+
+ + \ No newline at end of file diff --git a/examples/ESP32_FSWebServer_DRD/pics/async-esp32fs.local.png b/examples/ESP32_FSWebServer_DRD/pics/async-esp32fs.local.png new file mode 100644 index 0000000000000000000000000000000000000000..05e9f2474a25de0c6111edc9a26040d4b430b5d6 GIT binary patch literal 20520 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 T6qn6}hxb-a6;Lem;q(6mKu|tN literal 0 HcmV?d00001 diff --git a/examples/ESP32_FSWebServer_DRD/pics/async-esp32fs.local_edit.png b/examples/ESP32_FSWebServer_DRD/pics/async-esp32fs.local_edit.png new file mode 100644 index 0000000000000000000000000000000000000000..7deb17a4b9445b89f4c0e9836cdd83774429e06f GIT binary patch literal 76964 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
q(8#tZ`282vcnoZ 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 E1&k*zmjD0& literal 0 HcmV?d00001 diff --git a/keywords.txt b/keywords.txt new file mode 100644 index 0000000..43f4d5f --- /dev/null +++ b/keywords.txt @@ -0,0 +1,92 @@ +########################################## +# Syntax Coloring Map For ESP_WifiManager +########################################## + +####################################### +# Datatypes (KEYWORD1) +####################################### + +ESP32_SC_W6100_Manager KEYWORD1 +ESP32_EMParameter KEYWORD1 + +ETH_STA_IPConfig KEYWORD1 + +####################################### +# Methods and Functions (KEYWORD2) +####################################### + +getID KEYWORD2 +getValue KEYWORD2 +getPlaceholder KEYWORD2 +getValueLength KEYWORD2 +getLabelPlacement KEYWORD2 +getCustomHTML KEYWORD2 +startConfigPortal KEYWORD2 +setConfigPortalTimeout KEYWORD2 +setTimeout KEYWORD2 +setConnectTimeout KEYWORD2 +setDebugOutput KEYWORD2 +setSTAStaticIPConfig KEYWORD2 +getSTAStaticIPConfig KEYWORD2 +setSaveConfigCallback KEYWORD2 +addParameter KEYWORD2 +setBreakAfterConfig KEYWORD2 +setCustomHeadElement KEYWORD2 +setCORSHeader KEYWORD2 +getCORSHeader KEYWORD2 +getParameters KEYWORD2 +setHostname KEYWORD2 +getTimezoneName KEYWORD2 +setTimezoneName KEYWORD2 +getTZ KEYWORD2 + +####################################### + +getChipID KEYWORD2 +getChipOUI KEYWORD2 + +ESP_getChipId KEYWORD2 +ESP_getChipOUI KEYWORD2 + +####################################### +# Constants (LITERAL1) +####################################### + +# LITERAL1 + +ESP32_SC_W6100_MANAGER_VERSION LITERAL1 +ESP32_SC_W6100_MANAGER_VERSION_MAJOR LITERAL1 +ESP32_SC_W6100_MANAGER_VERSION_MINOR LITERAL1 +ESP32_SC_W6100_MANAGER_VERSION_PATCH LITERAL1 +ESP32_SC_W6100_MANAGER_VERSION_INT LITERAL1 + +EM_HTTP_200 LITERAL1 +EM_HTTP_HEAD_START LITERAL1 +EM_HTTP_STYLE LITERAL1 +EM_HTTP_SCRIPT LITERAL1 +EM_HTTP_SCRIPT_NTP_MSG LITERAL1 +EM_HTTP_SCRIPT_NTP_HIDDEN LITERAL1 +EM_HTTP_SCRIPT_NTP LITERAL1 +EM_HTTP_HEAD_END LITERAL1 +EM_FLDSET_START LITERAL1 +EM_FLDSET_END LITERAL1 +EM_HTTP_PORTAL_OPTIONS LITERAL1 +EM_HTTP_ITEM LITERAL1 +JSON_ITEM LITERAL1 +EM_HTTP_FORM_LABEL_BEFORE LITERAL1 +EM_HTTP_FORM_LABEL_AFTER LITERAL1 +EM_HTTP_FORM_LABEL LITERAL1 +EM_HTTP_FORM_PARAM LITERAL1 +EM_HTTP_FORM_END LITERAL1 +EM_HTTP_SAVED LITERAL1 +EM_HTTP_END LITERAL1 +EM_HTTP_HEAD_CL LITERAL1 +EM_HTTP_HEAD_CT LITERAL1 +EM_HTTP_HEAD_CT2 LITERAL1 +EM_HTTP_CACHE_CONTROL LITERAL1 +EM_HTTP_PRAGMA LITERAL1 +EM_HTTP_NO_CACHE LITERAL1 +EM_HTTP_EXPIRES LITERAL1 +EM_HTTP_CORS LITERAL1 +EM_HTTP_CORS_ALLOW_ALL LITERAL1 +EM_HTTP_AVAILABLE_PAGES LITERAL1 diff --git a/library.json b/library.json new file mode 100644 index 0000000..e831b23 --- /dev/null +++ b/library.json @@ -0,0 +1,44 @@ +{ + "name": "ESP32_SC_W6100_Manager", + "version": "1.0.0", + "keywords": "ethernet, WiFiManager, esp32, esp32-s2, esp32-s3, esp32-c3, lwip, w6100, lwip-w6100, lwip-ethernet, WebServer, Communication, Credentials, Config-Portal, DoubleReset, MultiReset, littlefs, spiffs, dns-server, iot, eeprom", + "description": "ESP32_S2/S3/C3 + LwIP W6100 Connection and Credentials Manager, with enhanced GUI and fallback Web ConfigPortal. This Library is used for configuring ESP32_S2/S3/C3 + LwIP W6100 Credentials Manager at runtime. You can also specify static DNS servers, personalized HostName, static or DHCP IP. With configurable CORS Header and auto-Timezone features. Now using correct ESP32 chipIP", + "authors": + { + "name": "Khoi Hoang", + "url": "https://github.com/khoih-prog", + "maintainer": true + }, + "repository": + { + "type": "git", + "url": "https://github.com/khoih-prog/ESP32_SC_W6100_Manager" + }, + "homepage": "https://github.com/khoih-prog/ESP32_SC_W6100_Manager", + "export": { + "exclude": [ + "linux", + "extras", + "tests" + ] + }, + "dependencies": [ + { + "owner": "khoih-prog", + "name": "WebServer_ESP32_SC_W6100", + "version": ">=1.2.1", + "platforms": ["espressif32"] + }, + { + "owner": "khoih-prog", + "name": "ESP_DoubleResetDetector", + "version": ">=1.3.2", + "platforms": ["espressif32"] + } + ], + "license": "MIT", + "frameworks": "*", + "platforms": ["espressif32"], + "examples": "examples/*/*/*.ino", + "headers": ["ESP32_SC_W6100_Manager.h", "ESP32_SC_W6100_Manager.hpp"] +} diff --git a/library.properties b/library.properties new file mode 100644 index 0000000..3023fc0 --- /dev/null +++ b/library.properties @@ -0,0 +1,12 @@ +name=ESP32_SC_W6100_Manager +version=1.0.0 +author=Khoi Hoang +maintainer=Khoi Hoang +license=MIT +sentence=ESP32_S2/S3/C3 + LwIP W6100 Connection and Credentials Manager, with enhanced GUI and fallback Web ConfigPortal. +paragraph=This Library is used for configuring ESP32_S2/S3/C3 + LwIP W6100 Credentials Manager at runtime. You can also specify static DNS servers, personalized HostName, static or DHCP IP. With configurable CORS Header and auto-Timezone features. Now using correct ESP32 chipIP +category=Communication +url=https://github.com/khoih-prog/ESP32_SC_W6100_Manager +architectures=esp32 +depends=ESP_DoubleResetDetector, WebServer_ESP32_SC_W6100 +includes=ESP32_SC_W6100_Manager.h, ESP32_SC_W6100_Manager.hpp diff --git a/platformio/platformio.ini b/platformio/platformio.ini new file mode 100644 index 0000000..323183b --- /dev/null +++ b/platformio/platformio.ini @@ -0,0 +1,166 @@ +;PlatformIO Project Configuration File +; +; Build options: build flags, source filter +; Upload options: custom upload port, speed and extra flags +; Library options: dependencies, extra library storages +; Advanced options: extra scripting +; +; Please visit documentation for the other options and examples +; https://docs.platformio.org/page/projectconf.html + +platformio] +; ============================================================ +; chose environment: +; ESP32 +; esp32s2 +; esp32s3 +; esp32c3 + +; ============================================================ +default_envs = esp32s3 + +; ============================================================ +[env] +; ============================================================ +; Serial configuration +; choose upload speed, serial-monitor speed +; ============================================================ +upload_speed = 921600 +;upload_port = COM11 +;monitor_speed = 9600 +;monitor_port = COM11 + +; ============================================================ +; Checks for the compatibility with frameworks and dev/platforms +lib_compat_mode = strict +lib_ldf_mode = chain+ +;lib_ldf_mode = deep+ + +; ============================================================ +lib_deps = +; PlatformIO 4.x +; ESP_DoubleResetDetector@>=1.3.2 +; WebServer_ESP32_SC_W6100@>=1.2.1 + +; PlatformIO 5.x + khoih-prog/ESP_DoubleResetDetector@>=1.3.2 + khoih-prog/WebServer_ESP32_SC_W6100@>=1.2.1 + +; ============================================================ +build_flags = +; set your build_flags + +; ============================================================ +[env:ESP32] +platform = espressif32 +framework = arduino + +; ============================================================ +; Board configuration +; choose your board by uncommenting one of the following lines +; ============================================================ +;board = esp32cam +;board = alksesp32 +;board = featheresp32 +;board = espea32 +;board = bpi-bit +;board = d-duino-32 +board = esp32doit-devkit-v1 +;board = pocket_32 +;board = fm-devkit +;board = pico32 +;board = esp32-evb +;board = esp32-gateway +;board = esp32-pro +;board = esp32-poe +;board = oroca_edubot +;board = onehorse32dev +;board = lopy +;board = lopy4 +;board = wesp32 +;board = esp32thing +;board = sparkfun_lora_gateway_1-channel +;board = ttgo-lora32-v1 +;board = ttgo-t-beam +;board = turta_iot_node +;board = lolin_d32 +;board = lolin_d32_pro +;board = lolin32 +;board = wemosbat +;board = widora-air +;board = xinabox_cw02 +;board = iotbusio +;board = iotbusproteus +;board = nina_w10 + +; ============================================================ +[env:esp32s2] +platform = espressif32 +framework = arduino + +; toolchain download links see +; refer "name": "xtensa-esp32s2-elf-gcc","version": "gcc8_4_0-esp-2021r1" section of +; https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_dev_index.json +; e.g. Windows: https://github.com/espressif/crosstool-NG/releases/download/esp-2021r1/xtensa-esp32s2-elf-gcc8_4_0-esp-2021r1-win32.zip +platform_packages = + toolchain-xtensa32s2@file://C:\Users\Max\Downloads\xtensa-esp32s2-elf + framework-arduinoespressif32@https://github.com/espressif/arduino-esp32.git#a4118ea88987c28aac3a49bcb9cc5d6c0acc6f3f + platformio/tool-esptoolpy @ ~1.30100 +framework = arduino +board = esp32dev +board_build.mcu = esp32s2 +board_build.partitions = huge_app.csv +board_build.variant = esp32s2 +board_build.f_cpu = 240000000L +board_build.f_flash = 80000000L +board_build.flash_mode = qio +board_build.arduino.ldscript = esp32s2_out.ld +build_unflags = + -DARDUINO_ESP32_DEV + -DARDUINO_VARIANT="esp32" +build_flags = + -DARDUINO_ESP32S2_DEV + -DARDUINO_VARIANT="esp32s2" + + +; ============================================================ +[env:esp32s3] +platform = espressif32 +framework = arduino + +board_build.mcu = esp32s3 +board_build.partitions = huge_app.csv +board_build.variant = esp32s3 +board_build.f_cpu = 240000000L +board_build.f_flash = 80000000L +board_build.flash_mode = qio +board_build.arduino.ldscript = esp32s3_out.ld +build_unflags = + -DARDUINO_ESP32_DEV + -DARDUINO_VARIANT="esp32" +build_flags = + -DARDUINO_ESP32S3_DEV + -DARDUINO_VARIANT="esp32s3" + + +; ============================================================ +[env:esp32c3] +platform = espressif32 +framework = arduino + +board_build.mcu = esp32c3 +board_build.partitions = huge_app.csv +board_build.variant = esp32c3 +board_build.f_cpu = 160000000L +board_build.f_flash = 80000000L +board_build.flash_mode = qio +board_build.arduino.ldscript = esp32c3_out.ld +build_unflags = + -DARDUINO_ESP32_DEV + -DARDUINO_VARIANT="esp32" +build_flags = + -DARDUINO_ESP32S3_DEV + -DARDUINO_VARIANT="esp32c3" + + +; ============================================================ diff --git a/src/ESP32_SC_W6100_Manager.h b/src/ESP32_SC_W6100_Manager.h new file mode 100644 index 0000000..a040049 --- /dev/null +++ b/src/ESP32_SC_W6100_Manager.h @@ -0,0 +1,30 @@ +/**************************************************************************************************************************** + ESP32_SC_W6100_Manager.h + + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + + Version: 1.0.0 + + Version Modified By Date Comments + ------- ----------- ---------- ----------- + 1.0.0 K Hoang 14/01/2023 Initial coding for ESP32_SC_W6100 (ESP32_S2/S3/C3 + LwIP W6100) + *****************************************************************************************************************************/ + +#pragma once + +#ifndef ESP32_SC_W6100_Manager_h +#define ESP32_SC_W6100_Manager_h + +#include //https://github.com/khoih-prog/ESP32_SC_W6100_Manager +#include //https://github.com/khoih-prog/ESP32_SC_W6100_Manager + +#endif // ESP32_SC_W6100_Manager_h + diff --git a/src/ESP32_SC_W6100_Manager.hpp b/src/ESP32_SC_W6100_Manager.hpp new file mode 100644 index 0000000..ff77b02 --- /dev/null +++ b/src/ESP32_SC_W6100_Manager.hpp @@ -0,0 +1,627 @@ +/**************************************************************************************************************************** + ESP32_SC_W6100_Manager.hpp + + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + + Version: 1.0.0 + + Version Modified By Date Comments + ------- ----------- ---------- ----------- + 1.0.0 K Hoang 14/01/2023 Initial coding for ESP32_SC_W6100 (ESP32_S2/S3/C3 + LwIP W6100) + *****************************************************************************************************************************/ + +#pragma once + +#ifndef ESP32_SC_W6100_Manager_hpp +#define ESP32_SC_W6100_Manager_hpp + +//////////////////////////////////////////////////// + +#if !( defined(ESP32) ) + #error This code is intended to run on the ESP32 platform! Please check your Tools->Board setting. +#elif ( ARDUINO_ESP32S2_DEV || ARDUINO_FEATHERS2 || ARDUINO_ESP32S2_THING_PLUS || ARDUINO_MICROS2 || \ + ARDUINO_METRO_ESP32S2 || ARDUINO_MAGTAG29_ESP32S2 || ARDUINO_FUNHOUSE_ESP32S2 || \ + ARDUINO_ADAFRUIT_FEATHER_ESP32S2_NOPSRAM ) + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32_S2. To follow library instructions to install esp32-s2 core and WebServer Patch + #warning You have to select HUGE APP or 1.9-2.0 MB APP to be able to run Config Portal. Must use PSRAM + #endif + + #define USING_ESP32_S2 true + +#elif ( defined(ARDUINO_ESP32C3_DEV) ) + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #if ( defined(ESP_ARDUINO_VERSION_MAJOR) && (ESP_ARDUINO_VERSION_MAJOR >= 2) ) + #warning Using ESP32_C3 using core v2.0.0+. Either LittleFS, SPIFFS or EEPROM OK + #else + #warning Using ESP32_C3 using core v1.0.6-. To follow library instructions to install esp32-c3 core. Only SPIFFS and EEPROM OK + #endif + + #warning You have to select Flash size 2MB and Minimal APP (1.3MB + 700KB) for some boards + + #endif + + #define USING_ESP32_C3 true + +#elif ( defined(ARDUINO_ESP32S3_DEV) || defined(ARDUINO_ESP32_S3_BOX) || defined(ARDUINO_TINYS3) || \ + defined(ARDUINO_PROS3) || defined(ARDUINO_FEATHERS3) ) + + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using ESP32_S3. To install esp32-s3-support branch if using core v2.0.2- + #endif + + #define USING_ESP32_S3 true +#endif + +//////////////////////////////////////////////////// + +#define ESP32_SC_W6100_MANAGER_VERSION "ESP32_SC_W6100_Manager v1.0.0" + +#define ESP32_SC_W6100_MANAGER_VERSION_MAJOR 1 +#define ESP32_SC_W6100_MANAGER_VERSION_MINOR 0 +#define ESP32_SC_W6100_MANAGER_VERSION_PATCH 0 + +#define ESP32_SC_W6100_MANAGER_VERSION_INT 1000000 + +//////////////////////////////////////////////////// + +#include "ESP32_SC_W6100_Manager_Debug.h" + +//////////////////////////////////////////////////// + +#if ( defined(HTTP_PORT) && (HTTP_PORT < 65536) && (HTTP_PORT > 0) ) + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using custom HTTP_PORT + #endif + + #define HTTP_PORT_TO_USE HTTP_PORT +#else + #if (_ESP32_ETH_MGR_LOGLEVEL_ > 3) + #warning Using default HTTP_PORT = 80 + #endif + + #define HTTP_PORT_TO_USE 80 +#endif + +//////////////////////////////////////////////////// + +#include + +#include + +#include + +#include +#undef min +#undef max + +#include + +//////////////////////////////////////////////////// + +//KH, for ESP32 +#include + +uint32_t getChipID(); +uint32_t getChipOUI(); + +#if defined(ESP_getChipId) + #undef ESP_getChipId +#endif + +#define ESP_getChipId() getChipID() +#define ESP_getChipOUI() getChipOUI() + +//////////////////////////////////////////////////// + +// Thanks to @Amorphous for the feature and code +// (https://community.blynk.cc/t/esp-wifimanager-for-esp32-and-esp8266/42257/13) +// To enable to configure from sketch +#if !defined(USE_CONFIGURABLE_DNS) + #define USE_CONFIGURABLE_DNS false +#endif + +//////////////////////////////////////////////////// + +typedef struct +{ + IPAddress _sta_static_ip; + IPAddress _sta_static_gw; + IPAddress _sta_static_sn; + IPAddress _sta_static_dns1; + IPAddress _sta_static_dns2; +} ETH_STA_IPConfig; + +//////////////////////////////////////////////////// + +#define WFM_LABEL_BEFORE 1 +#define WFM_LABEL_AFTER 2 +#define WFM_NO_LABEL 0 + +//////////////////////////////////////////////////// + +/** Handle CORS in pages */ +// Default false for using only whenever necessary to avoid security issue when using CORS (Cross-Origin Resource Sharing) +#ifndef USING_CORS_FEATURE + // Contributed by AlesSt (https://github.com/AlesSt) to solve AJAX CORS protection problem of API redirects on client side + // See more in https://github.com/khoih-prog/ESP_WiFiManager/issues/27 and https://en.wikipedia.org/wiki/Cross-origin_resource_sharing + #define USING_CORS_FEATURE false +#endif + +//////////////////////////////////////////////////// + +//KH +// Mofidy HTTP_HEAD to EM_HTTP_HEAD_START to avoid conflict in Arduino esp8266 core 2.6.0+ +const char EM_HTTP_200[] PROGMEM = "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n"; +const char EM_HTTP_HEAD_START[] PROGMEM = "{v}"; + +//////////////////////////////////////////////////// + +const char EM_HTTP_STYLE[] PROGMEM = ""; + +//////////////////////////////////////////////////// + +const char EM_HTTP_SCRIPT[] PROGMEM = ""; + +//////////////////////////////////////////////////// +//////////////////////////////////////////////////// + +// To permit disable or configure NTP from sketch +#ifndef USE_ESP_ETH_MANAGER_NTP + // To enable NTP config + #define USE_ESP_ETH_MANAGER_NTP true +#endif + +//////////////////////////////////////////////////// + +#if USE_ESP_ETH_MANAGER_NTP + +#include "utils/TZ.h" + +const char EM_HTTP_SCRIPT_NTP_MSG[] PROGMEM = "

Your Timezone is :

"; +const char EM_HTTP_SCRIPT_NTP_HIDDEN[] PROGMEM = "

"; + +//////////////////////////////////////////////////// + +// To permit disable or configure NTP from sketch +#ifndef USE_CLOUDFLARE_NTP + #define USE_CLOUDFLARE_NTP false +#endif + +//////////////////////////////////////////////////// + +#if USE_CLOUDFLARE_NTP +const char EM_HTTP_SCRIPT_NTP[] PROGMEM = ""; +#else +const char EM_HTTP_SCRIPT_NTP[] PROGMEM = ""; +#endif + +#else + const char EM_HTTP_SCRIPT_NTP_MSG[] PROGMEM = ""; + const char EM_HTTP_SCRIPT_NTP_HIDDEN[] PROGMEM = ""; + const char EM_HTTP_SCRIPT_NTP[] PROGMEM = ""; +#endif + +//////////////////////////////////////////////////// +//////////////////////////////////////////////////// + +const char EM_HTTP_HEAD_END[] PROGMEM = "
"; + +const char EM_FLDSET_START[] PROGMEM = "
"; +const char EM_FLDSET_END[] PROGMEM = "
"; + +//////////////////////////////////////////////////// + +const char EM_HTTP_PORTAL_OPTIONS[] PROGMEM = "



"; +const char EM_HTTP_ITEM[] PROGMEM = "
{v} {r}%
"; +const char JSON_ITEM[] PROGMEM = "{\"SSID\":\"{v}\", \"Encryption\":{i}, \"Quality\":\"{r}\"}"; + +//////////////////////////////////////////////////// + +// To permit display stored Credentials on CP +#ifndef DISPLAY_STORED_CREDENTIALS_IN_CP + #define DISPLAY_STORED_CREDENTIALS_IN_CP true +#endif + +#if ( (_ESP32_ETH_MGR_LOGLEVEL_ > 3) && DISPLAY_STORED_CREDENTIALS_IN_CP ) + #warning Enable DISPLAY_STORED_CREDENTIALS_IN_CP +#endif + +#if DISPLAY_STORED_CREDENTIALS_IN_CP +const char EM_HTTP_FORM_START[] PROGMEM = "
"; +#else +const char EM_HTTP_FORM_START[] PROGMEM = ""; +#endif + +//////////////////////////////////////////////////// + +const char EM_HTTP_FORM_LABEL_BEFORE[] PROGMEM = "
"; +const char EM_HTTP_FORM_LABEL_AFTER[] PROGMEM = "
"; + +//////////////////////////////////////////////////// + +const char EM_HTTP_FORM_LABEL[] PROGMEM = ""; +const char EM_HTTP_FORM_PARAM[] PROGMEM = ""; + +const char EM_HTTP_FORM_END[] PROGMEM = "
"; + +//////////////////////////////////////////////////// + +const char EM_HTTP_SAVED[] PROGMEM = "
Credentials Saved
"; + +//////////////////////////////////////////////////// + +const char EM_HTTP_END[] PROGMEM = "
"; + +//////////////////////////////////////////////////// + +const char EM_HTTP_HEAD_CL[] = "Content-Length"; +const char EM_HTTP_HEAD_CT[] = "text/html"; +const char EM_HTTP_HEAD_CT2[] = "text/plain"; + +const char EM_HTTP_HEAD_JSON[] ="application/json"; + +//KH Add repeatedly used const +const char EM_HTTP_CACHE_CONTROL[] = "Cache-Control"; +const char EM_HTTP_NO_STORE[] = "no-cache, no-store, must-revalidate"; +const char EM_HTTP_PRAGMA[] = "Pragma"; +const char EM_HTTP_NO_CACHE[] = "no-cache"; +const char EM_HTTP_EXPIRES[] = "Expires"; +const char EM_HTTP_CORS[] = "Access-Control-Allow-Origin"; +const char EM_HTTP_CORS_ALLOW_ALL[] = "*"; + +//////////////////////////////////////////////////// + +#if USE_AVAILABLE_PAGES + const char EM_HTTP_AVAILABLE_PAGES[] PROGMEM = "

Available Pages

PageFunction
/Menu page.
/ethEnter ETH Config Page
/ethsaveSave Config. Portal Info with supplied variables.
/closeClose the Config Portal.
/iThis Info page.
/rDelete ETH configuration and reboot.
/stateCurrent device state in JSON format. Interface for ETH configuration.
"; +#else + const char EM_HTTP_AVAILABLE_PAGES[] PROGMEM = ""; +#endif + +//////////////////////////////////////////////////// + +#define ETH_MANAGER_MAX_PARAMS 20 + +//////////////////////////////////////////////////// + +// To permit autoConnect() to use STA static IP or DHCP IP. +#ifndef AUTOCONNECT_NO_INVALIDATE + #define AUTOCONNECT_NO_INVALIDATE true +#endif + +//////////////////////////////////////////////////// + +typedef struct +{ + const char *_id; + const char *_placeholder; + char *_value; + int _length; + int _labelPlacement; +} EMParam_Data; + + +//////////////////////////////////////////////////// +//////////////////////////////////////////////////// + +class ESP32_EMParameter +{ + public: + + ESP32_EMParameter(const char *custom); + ESP32_EMParameter(const char *id, const char *placeholder, const char *defaultValue, const int& length, + const char *custom = "", const int& labelPlacement = WFM_LABEL_BEFORE); + + ESP32_EMParameter(const EMParam_Data& EMParam_data); + + ~ESP32_EMParameter(); + + void setEMParam_Data(const EMParam_Data& EMParam_data); + void getEMParam_Data(EMParam_Data& EMParam_data); + + const char *getID(); + const char *getValue(); + const char *getPlaceholder(); + int getValueLength(); + int getLabelPlacement(); + const char *getCustomHTML(); + + private: + + EMParam_Data _EMParam_data; + + const char *_customHTML; + + void init(const char *id, const char *placeholder, const char *defaultValue, const int& length, + const char *custom, const int& labelPlacement); + + friend class ESP32_SC_W6100_Manager; +}; + +//////////////////////////////////////////////////// + +#define USE_DYNAMIC_PARAMS true +#define DEFAULT_PORTAL_TIMEOUT 60000L + +// To permit disable/enable StaticIP configuration in Config Portal from sketch. Valid only if DHCP is used. +// You have to explicitly specify false to disable the feature. +#ifndef USE_STATIC_IP_CONFIG_IN_CP + #define USE_STATIC_IP_CONFIG_IN_CP true +#endif + +//////////////////////////////////////////////////// +//////////////////////////////////////////////////// + +class ESP32_SC_W6100_Manager +{ + public: + + ESP32_SC_W6100_Manager(const char *iHostname = ""); + + ~ESP32_SC_W6100_Manager(); + + // If you want to start the config portal + bool startConfigPortal(); + + //sets timeout before webserver loop ends and exits even if there has been no setup. + //usefully for devices that failed to connect at some point and got stuck in a webserver loop + //in seconds setConfigPortalTimeout is a new name for setTimeout + void setConfigPortalTimeout(const unsigned long& seconds); + void setTimeout(const unsigned long& seconds); + + //sets timeout for which to attempt connecting, usefull if you get a lot of failed connects + void setConnectTimeout(const unsigned long& seconds); + + void setDebugOutput(bool debug); + + //sets config for a static IP + void setSTAStaticIPConfig(const IPAddress& ip, const IPAddress& gw, const IPAddress& sn); + + void setSTAStaticIPConfig(const ETH_STA_IPConfig& EM_STA_IPconfig); + void getSTAStaticIPConfig(ETH_STA_IPConfig& EM_STA_IPconfig); + +#if USE_CONFIGURABLE_DNS + void setSTAStaticIPConfig(const IPAddress& ip, const IPAddress& gw, const IPAddress& sn, + const IPAddress& dns_address_1, const IPAddress& dns_address_2); +#endif + + //called when settings have been changed and connection was successful + void setSaveConfigCallback(void(*func)()); + +#if USE_DYNAMIC_PARAMS + //adds a custom parameter + bool addParameter(ESP32_EMParameter *p); +#else + //adds a custom parameter + void addParameter(ESP32_EMParameter *p); +#endif + + //if this is set, it will exit after config, even if connection is unsucessful. + void setBreakAfterConfig(bool shouldBreak); + + //if this is set, try WPS setup when starting (this will delay config portal for up to 2 mins) + //TODO + //if this is set, customise style + void setCustomHeadElement(const char* element); + +//////////////////////////////////////////////////// + + // For configuring CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" +#if USING_CORS_FEATURE + void setCORSHeader(const char* CORSHeaders) + { + _CORS_Header = CORSHeaders; + + LOGWARN1(F("Set CORS Header to : "), _CORS_Header); + } + + /////////////////////////// + + inline const char* getCORSHeader() + { + return _CORS_Header; + } +#endif + + /////////////////////////// + + //returns the list of Parameters + ESP32_EMParameter** getParameters(); + + // returns the Parameters Count + int getParametersCount(); + + /////////////////////////// + + void setHostname() + { + if (RFC952_hostname[0] != 0) + { + ETH.setHostname(RFC952_hostname); + } + } + +//////////////////////////////////////////////////// + +#if USE_ESP_ETH_MANAGER_NTP + + inline String getTimezoneName() + { + return _timezoneName; + } + + /////////////////////////// + + inline void setTimezoneName(const String& inTimezoneName) + { + _timezoneName = inTimezoneName; + } + + /////////////////////////// + + //See: https://www.gnu.org/software/libc/manual/html_node/TZ-Variable.html + // EST5EDT,M3.2.0,M11.1.0 (for America/New_York) + // EST5EDT is the name of the time zone + // EST is the abbreviation used when DST is off + // 6 hours is the time difference from GMT + // EDT is the abbreviation used when DST is on + // ,M3 is the third month + // .2 is the second occurrence of the day in the month + // .0 is Sunday + // ,M11 is the eleventh month + // .1 is the first occurrence of the day in the month + // .0 is Sunday + + const char * getTZ(const char * timezoneName) + { + //const char TZ_NAME[][TIMEZONE_MAX_LEN] + for (uint16_t index = 0; index < sizeof(TZ_NAME) / TIMEZONE_MAX_LEN; index++) + { + if ( !strncmp(timezoneName, (TZ_NAME[index]), strlen((TZ_NAME[index])) ) ) + { + yield(); + + return (ESP_TZ_NAME[index]); + } + } + + return ""; + } + + /////////////////////////// + + const char * getTZ(const String& timezoneName) + { + return getTZ(timezoneName.c_str()); + } + + /////////////////////////// + +#endif + + private: + + std::unique_ptr dnsServer; + + std::unique_ptr server; + + bool needInfo = true; + String pager; + wl_status_t ethStatus; + +#define RFC952_HOSTNAME_MAXLEN 24 + + char RFC952_hostname[RFC952_HOSTNAME_MAXLEN + 1]; + + char* getRFC952_hostname(const char* iHostname); + + void setupConfigPortal(); + void startWPS(); + + //////////////////////////////////////////////////// + +#if USE_ESP_ETH_MANAGER_NTP + // Timezone info + String _timezoneName = ""; +#endif + + //////////////////////////////////////////////////// + + unsigned long _configPortalTimeout = 0; + + unsigned long _connectTimeout = 0; + unsigned long _configPortalStart = 0; + + //////////////////////////////////////////////////// + + ETH_STA_IPConfig _ETH_STA_IPconfig = { IPAddress(0, 0, 0, 0), IPAddress(192, 168, 2, 1), IPAddress(255, 255, 255, 0), + IPAddress(192, 168, 2, 1), IPAddress(8, 8, 8, 8) }; + + //////////////////////////////////////////////////// + + int _paramsCount = 0; + int _minimumQuality = -1; + bool _removeDuplicateAPs = true; + bool _shouldBreakAfterConfig = false; + bool _tryWPS = false; + + const char* _customHeadElement = ""; + + int status = WL_IDLE_STATUS; + + // For configuring CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" +#if USING_CORS_FEATURE + const char* _CORS_Header = EM_HTTP_CORS_ALLOW_ALL; //"*"; +#endif + + wl_status_t waitForConnectResult(); + + void setInfo(); + String networkListAsString(); + + void handleRoot(); + void handleETH(); + void handleETHSave(); + void handleServerClose(); + void handleInfo(); + void handleState(); + void handleReset(); + void handleNotFound(); + bool captivePortal(); + + void reportStatus(String& page); + + // DNS server + const byte DNS_PORT = 53; + + //helpers + bool isIp(const String& str); + String toStringIp(const IPAddress& ip); + + bool connect; + bool stopConfigPortal = false; + + bool _debug = false; //true; + + void(*_savecallback)() = NULL; + + //////////////////////////////////////////////////// + +#if USE_DYNAMIC_PARAMS + int _max_params; + ESP32_EMParameter** _params; +#else + ESP32_EMParameter* _params[ETH_MANAGER_MAX_PARAMS]; +#endif + + //////////////////////////////////////////////////// + + template + auto optionalIPFromString(T *obj, const char *s) -> decltype(obj->fromString(s)) + { + return obj->fromString(s); + } + + /////////////////////////// + + auto optionalIPFromString(...) -> bool + { + LOGINFO("No IPAddress.fromString(), use ESP8266 core 2.1.0+ for Custom IP configuration to work."); + + return false; + } + + /////////////////////////// + +}; + +#endif // ESP32_SC_W6100_Manager_hpp + diff --git a/src/ESP32_SC_W6100_Manager_Debug.h b/src/ESP32_SC_W6100_Manager_Debug.h new file mode 100644 index 0000000..24d06bc --- /dev/null +++ b/src/ESP32_SC_W6100_Manager_Debug.h @@ -0,0 +1,93 @@ +/**************************************************************************************************************************** + ESP32_SC_W6100_Manager_Debug.h + + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + + Version: 1.0.0 + + Version Modified By Date Comments + ------- ----------- ---------- ----------- + 1.0.0 K Hoang 14/01/2023 Initial coding for ESP32_SC_W6100 (ESP32_S2/S3/C3 + LwIP W6100) + *****************************************************************************************************************************/ + +#pragma once + +#ifndef ESP32_SC_W6100_Manager_Debug_H +#define ESP32_SC_W6100_Manager_Debug_H + +///////////////////////////////////////////////////////// + +#ifdef ESP32_ETH_MGR_DEBUG_PORT + #define DBG_PORT_ESP_EM ESP32_ETH_MGR_DEBUG_PORT +#else + #define DBG_PORT_ESP_EM Serial +#endif + +///////////////////////////////////////////////////////// + +// Change _ESP32_ETH_MGR_LOGLEVEL_ to set tracing and logging verbosity +// 0: DISABLED: no logging +// 1: ERROR: errors +// 2: WARN: errors and warnings +// 3: INFO: errors, warnings and informational (default) +// 4: DEBUG: errors, warnings, informational and debug + +#ifndef _ESP32_ETH_MGR_LOGLEVEL_ + #define _ESP32_ETH_MGR_LOGLEVEL_ 1 +#endif + +///////////////////////////////////////////////////////// + +const char ESP_EM_MARK[] = "[EM] "; +const char ESP_EM_SP[] = " "; + +#define ESP_EM_PRINT DBG_PORT_ESP_EM.print +#define ESP_EM_PRINTLN DBG_PORT_ESP_EM.println + +#define ESP_EM_PRINT_MARK ESP_EM_PRINT(ESP_EM_MARK) +#define ESP_EM_PRINT_SP ESP_EM_PRINT(ESP_EM_SP) + +///////////////////////////////////////////////////////// + +#define LOGERROR(x) if(_ESP32_ETH_MGR_LOGLEVEL_>0) { ESP_EM_PRINT_MARK; ESP_EM_PRINTLN(x); } +#define LOGERROR0(x) if(_ESP32_ETH_MGR_LOGLEVEL_>0) { ESP_EM_PRINT(x); } +#define LOGERROR1(x,y) if(_ESP32_ETH_MGR_LOGLEVEL_>0) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(y); } +#define LOGERROR2(x,y,z) if(_ESP32_ETH_MGR_LOGLEVEL_>0) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINT(y); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(z); } +#define LOGERROR3(x,y,z,w) if(_ESP32_ETH_MGR_LOGLEVEL_>0) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINT(y); ESP_EM_PRINT_SP; ESP_EM_PRINT(z); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(w); } + +///////////////////////////////////////////////////////// + +#define LOGWARN(x) if(_ESP32_ETH_MGR_LOGLEVEL_>1) { ESP_EM_PRINT_MARK; ESP_EM_PRINTLN(x); } +#define LOGWARN0(x) if(_ESP32_ETH_MGR_LOGLEVEL_>1) { ESP_EM_PRINT(x); } +#define LOGWARN1(x,y) if(_ESP32_ETH_MGR_LOGLEVEL_>1) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(y); } +#define LOGWARN2(x,y,z) if(_ESP32_ETH_MGR_LOGLEVEL_>1) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINT(y); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(z); } +#define LOGWARN3(x,y,z,w) if(_ESP32_ETH_MGR_LOGLEVEL_>1) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINT(y); ESP_EM_PRINT_SP; ESP_EM_PRINT(z); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(w); } + +///////////////////////////////////////////////////////// + +#define LOGINFO(x) if(_ESP32_ETH_MGR_LOGLEVEL_>2) { ESP_EM_PRINT_MARK; ESP_EM_PRINTLN(x); } +#define LOGINFO0(x) if(_ESP32_ETH_MGR_LOGLEVEL_>2) { ESP_EM_PRINT(x); } +#define LOGINFO1(x,y) if(_ESP32_ETH_MGR_LOGLEVEL_>2) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(y); } +#define LOGINFO2(x,y,z) if(_ESP32_ETH_MGR_LOGLEVEL_>2) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINT(y); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(z); } +#define LOGINFO3(x,y,z,w) if(_ESP32_ETH_MGR_LOGLEVEL_>2) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINT(y); ESP_EM_PRINT_SP; ESP_EM_PRINT(z); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(w); } + +///////////////////////////////////////////////////////// + +#define LOGDEBUG(x) if(_ESP32_ETH_MGR_LOGLEVEL_>3) { ESP_EM_PRINT_MARK; ESP_EM_PRINTLN(x); } +#define LOGDEBUG0(x) if(_ESP32_ETH_MGR_LOGLEVEL_>3) { ESP_EM_PRINT(x); } +#define LOGDEBUG1(x,y) if(_ESP32_ETH_MGR_LOGLEVEL_>3) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(y); } +#define LOGDEBUG2(x,y,z) if(_ESP32_ETH_MGR_LOGLEVEL_>3) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINT(y); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(z); } +#define LOGDEBUG3(x,y,z,w) if(_ESP32_ETH_MGR_LOGLEVEL_>3) { ESP_EM_PRINT_MARK; ESP_EM_PRINT(x); ESP_EM_PRINT_SP; ESP_EM_PRINT(y); ESP_EM_PRINT_SP; ESP_EM_PRINT(z); ESP_EM_PRINT_SP; ESP_EM_PRINTLN(w); } + +///////////////////////////////////////////////////////// + +#endif // ESP32_SC_W6100_Manager_Debug_H + diff --git a/src/ESP32_SC_W6100_Manager_Impl.h b/src/ESP32_SC_W6100_Manager_Impl.h new file mode 100644 index 0000000..76220c8 --- /dev/null +++ b/src/ESP32_SC_W6100_Manager_Impl.h @@ -0,0 +1,1211 @@ +/**************************************************************************************************************************** + ESP32_SC_W6100_Manager_Impl.h + + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + + Version: 1.0.0 + + Version Modified By Date Comments + ------- ----------- ---------- ----------- + 1.0.0 K Hoang 14/01/2023 Initial coding for ESP32_SC_W6100 (ESP32_S2/S3/C3 + LwIP W6100) + *****************************************************************************************************************************/ + +#pragma once + +#ifndef ESP32_SC_W6100_Manager_Impl_h +#define ESP32_SC_W6100_Manager_Impl_h + +////////////////////////////////////////// + +ESP32_EMParameter::ESP32_EMParameter(const char *custom) +{ + _EMParam_data._id = NULL; + _EMParam_data._placeholder = NULL; + _EMParam_data._length = 0; + _EMParam_data._value = NULL; + _EMParam_data._labelPlacement = WFM_LABEL_BEFORE; + + _customHTML = custom; +} + +////////////////////////////////////////// + +ESP32_EMParameter::ESP32_EMParameter(const char *id, const char *placeholder, const char *defaultValue, + const int& length, const char *custom, const int& labelPlacement) +{ + init(id, placeholder, defaultValue, length, custom, labelPlacement); +} + +////////////////////////////////////////// + +// KH, using struct +ESP32_EMParameter::ESP32_EMParameter(const EMParam_Data& EMParam_data) +{ + init(EMParam_data._id, EMParam_data._placeholder, EMParam_data._value, + EMParam_data._length, "", EMParam_data._labelPlacement); +} + +////////////////////////////////////////// + +void ESP32_EMParameter::init(const char *id, const char *placeholder, const char *defaultValue, + const int& length, const char *custom, const int& labelPlacement) +{ + _EMParam_data._id = id; + _EMParam_data._placeholder = placeholder; + _EMParam_data._length = length; + _EMParam_data._labelPlacement = labelPlacement; + + _EMParam_data._value = new char[_EMParam_data._length + 1]; + + if (_EMParam_data._value != NULL) + { + memset(_EMParam_data._value, 0, _EMParam_data._length + 1); + + if (defaultValue != NULL) + { + strncpy(_EMParam_data._value, defaultValue, _EMParam_data._length); + } + } + + _customHTML = custom; +} + +////////////////////////////////////////// + +ESP32_EMParameter::~ESP32_EMParameter() +{ + if (_EMParam_data._value != NULL) + { + delete[] _EMParam_data._value; + } +} + +////////////////////////////////////////// + +// Using Struct to get/set whole data at once +void ESP32_EMParameter::setEMParam_Data(const EMParam_Data& EMParam_data) +{ + LOGINFO(F("setEMParam_Data")); + + memcpy(&_EMParam_data, &EMParam_data, sizeof(_EMParam_data)); +} + +////////////////////////////////////////// + +void ESP32_EMParameter::getEMParam_Data(EMParam_Data& EMParam_data) +{ + LOGINFO(F("getEMParam_Data")); + + memcpy(&EMParam_data, &_EMParam_data, sizeof(EMParam_data)); +} + +////////////////////////////////////////// + +const char* ESP32_EMParameter::getValue() +{ + return _EMParam_data._value; +} + +////////////////////////////////////////// + +const char* ESP32_EMParameter::getID() +{ + return _EMParam_data._id; +} + +////////////////////////////////////////// + +const char* ESP32_EMParameter::getPlaceholder() +{ + return _EMParam_data._placeholder; +} + +////////////////////////////////////////// + +int ESP32_EMParameter::getValueLength() +{ + return _EMParam_data._length; +} + +////////////////////////////////////////// + +int ESP32_EMParameter::getLabelPlacement() +{ + return _EMParam_data._labelPlacement; +} + +////////////////////////////////////////// + +const char* ESP32_EMParameter::getCustomHTML() +{ + return _customHTML; +} + +////////////////////////////////////////// + +/** + [getParameters description] + @access public +*/ +ESP32_EMParameter** ESP32_SC_W6100_Manager::getParameters() +{ + return _params; +} + +////////////////////////////////////////// +////////////////////////////////////////// + +/** + [getParametersCount description] + @access public +*/ +int ESP32_SC_W6100_Manager::getParametersCount() +{ + return _paramsCount; +} + +////////////////////////////////////////// + +char* ESP32_SC_W6100_Manager::getRFC952_hostname(const char* iHostname) +{ + memset(RFC952_hostname, 0, sizeof(RFC952_hostname)); + + size_t len = (RFC952_HOSTNAME_MAXLEN < strlen(iHostname)) ? RFC952_HOSTNAME_MAXLEN : strlen(iHostname); + + size_t j = 0; + + for (size_t i = 0; i < len - 1; i++) + { + if (isalnum(iHostname[i]) || iHostname[i] == '-') + { + RFC952_hostname[j] = iHostname[i]; + j++; + } + } + + // no '-' as last char + if (isalnum(iHostname[len - 1]) || (iHostname[len - 1] != '-')) + RFC952_hostname[j] = iHostname[len - 1]; + + return RFC952_hostname; +} + +////////////////////////////////////////// + +ESP32_SC_W6100_Manager::ESP32_SC_W6100_Manager(const char *iHostname) +{ + + //server = webserver; + //dnsServer = dnsserver; + +#if USE_DYNAMIC_PARAMS + _max_params = ETH_MANAGER_MAX_PARAMS; + _params = (ESP32_EMParameter**) malloc(_max_params * sizeof(ESP32_EMParameter*)); +#endif + + if (iHostname[0] == 0) + { + String _hostname = "ESP32-" + String(ESP_getChipId(), HEX); + + _hostname.toUpperCase(); + + getRFC952_hostname(_hostname.c_str()); + + } + else + { + // Prepare and store the hostname only not NULL + getRFC952_hostname(iHostname); + } + + LOGWARN1(F("RFC925 Hostname ="), RFC952_hostname); + + setHostname(); +} + +////////////////////////////////////////// + +ESP32_SC_W6100_Manager::~ESP32_SC_W6100_Manager() +{ +#if USE_DYNAMIC_PARAMS + + if (_params != NULL) + { + LOGINFO(F("freeing allocated params!")); + + free(_params); + } + +#endif +} + +////////////////////////////////////////// + +#if USE_DYNAMIC_PARAMS + bool ESP32_SC_W6100_Manager::addParameter(ESP32_EMParameter *p) +#else + void ESP32_SC_W6100_Manager::addParameter(ESP32_EMParameter *p) +#endif +{ +#if USE_DYNAMIC_PARAMS + + if (_paramsCount == _max_params) + { + // rezise the params array + _max_params += ETH_MANAGER_MAX_PARAMS; + + LOGINFO1(F("Increasing _max_params to:"), _max_params); + + ESP32_EMParameter** new_params = (ESP32_EMParameter**) realloc(_params, _max_params * sizeof(ESP32_EMParameter*)); + + if (new_params != NULL) + { + _params = new_params; + } + else + { + LOGINFO(F("ERROR: failed to realloc params, size not increased!")); + + return false; + } + } + + _params[_paramsCount] = p; + _paramsCount++; + + LOGINFO1(F("Adding parameter"), p->getID()); + + return true; + +#else + + // Danger here. Better to use Tzapu way here + if (_paramsCount < (ETH_MANAGER_MAX_PARAMS)) + { + _params[_paramsCount] = p; + _paramsCount++; + + LOGINFO1(F("Adding parameter"), p->getID()); + } + else + { + LOGINFO("Can't add parameter. Full"); + } + +#endif +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setupConfigPortal() +{ + stopConfigPortal = false; //Signal not to close config portal + + dnsServer.reset(new DNSServer()); + + server.reset(new WebServer(HTTP_PORT_TO_USE)); + + /* Setup the DNS server redirecting all the domains to the apIP */ + if (dnsServer) + { + dnsServer->setErrorReplyCode(DNSReplyCode::NoError); + + // AsyncDNSServer started with "*" domain name, all DNS requests will be passsed to ETH.localIP() + if (! dnsServer->start(DNS_PORT, "*", ETH.localIP())) + { + // No socket available + LOGERROR(F("Can't start DNS Server. No available socket")); + } + } + else + { + // No space available + LOGERROR(F("Can't initiate DNS Server. No enough space")); + } + + _configPortalStart = millis(); + + LOGDEBUG1(F("_configPortalStart millis() ="), millis()); + + LOGWARN1(F("Config Portal IP address ="), ETH.localIP()); + + /* Setup web pages: root, eth config pages, SO captive portal detectors and not found. */ + + server->on("/", std::bind(&ESP32_SC_W6100_Manager::handleRoot, this)); + server->on("/eth", std::bind(&ESP32_SC_W6100_Manager::handleETH, this)); + server->on("/ethsave", std::bind(&ESP32_SC_W6100_Manager::handleETHSave, this)); + server->on("/close", std::bind(&ESP32_SC_W6100_Manager::handleServerClose, this)); + server->on("/i", std::bind(&ESP32_SC_W6100_Manager::handleInfo, this)); + server->on("/r", std::bind(&ESP32_SC_W6100_Manager::handleReset, this)); + server->on("/state", std::bind(&ESP32_SC_W6100_Manager::handleState, this)); + //Microsoft captive portal. Maybe not needed. Might be handled by notFound handler. + server->on("/fwlink", std::bind(&ESP32_SC_W6100_Manager::handleRoot, this)); + server->onNotFound( std::bind(&ESP32_SC_W6100_Manager::handleNotFound, this)); + + server->begin(); // Web server start + + LOGWARN(F("HTTP server started")); +} + +////////////////////////////////////////// + +bool ESP32_SC_W6100_Manager::startConfigPortal() +{ + connect = false; + + setupConfigPortal(); + + LOGINFO("startConfigPortal : Enter loop"); + + while (true) + { + //DNS + dnsServer->processNextRequest(); + //HTTP + server->handleClient(); + +#if ( USING_ESP32_S2 || USING_ESP32_C3 ) + // Fix ESP32-S2 issue with WebServer (https://github.com/espressif/arduino-esp32/issues/4348) + delay(1); +#endif + + if (connect) + { + if (_shouldBreakAfterConfig) + { + //flag set to exit after config after trying to connect + //notify that configuration has changed and any optional parameters should be saved + if (_savecallback != NULL) + { + //todo: check if any custom parameters actually exist, and check if they really changed maybe + _savecallback(); + } + + LOGDEBUG("Stop ConfigPortal: _shouldBreakAfterConfig"); + + break; + } + } + + if (stopConfigPortal) + { + LOGERROR("stopConfigPortal"); + + stopConfigPortal = false; + + break; + } + + if (_configPortalTimeout > 0 && ( millis() > _configPortalStart + _configPortalTimeout) ) + { + //LOGDEBUG3("startConfigPortal: timeout, _configPortalTimeout =", _configPortalTimeout, "millis() =", millis()); + + stopConfigPortal = false; + + break; + } + +#define TIME_BETWEEN_CONFIG_PORTAL_LOOP 50 + + vTaskDelay(TIME_BETWEEN_CONFIG_PORTAL_LOOP / portTICK_PERIOD_MS); + } + + //LOGDEBUG3("startConfigPortal: exit, _configPortalTimeout =", _configPortalTimeout, "millis() =", millis()); + + server->stop(); + server.reset(); + dnsServer->stop(); + dnsServer.reset(); + + return (ESP32_W6100_isConnected()); +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setTimeout(const unsigned long& seconds) +{ + setConfigPortalTimeout(seconds); +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setConfigPortalTimeout(const unsigned long& seconds) +{ + _configPortalTimeout = seconds * 1000; +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setConnectTimeout(const unsigned long& seconds) +{ + _connectTimeout = seconds * 1000; +} + +void ESP32_SC_W6100_Manager::setDebugOutput(bool debug) +{ + _debug = debug; +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setBreakAfterConfig(bool shouldBreak) +{ + _shouldBreakAfterConfig = shouldBreak; +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::reportStatus(String& page) +{ + page += FPSTR(EM_HTTP_SCRIPT_NTP_MSG); +} + + + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setSTAStaticIPConfig(const IPAddress& ip, const IPAddress& gw, const IPAddress& sn) +{ + LOGINFO(F("setSTAStaticIPConfig")); + + _ETH_STA_IPconfig._sta_static_ip = ip; + _ETH_STA_IPconfig._sta_static_gw = gw; + _ETH_STA_IPconfig._sta_static_sn = sn; +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setSTAStaticIPConfig(const ETH_STA_IPConfig& EM_STA_IPconfig) +{ + LOGINFO(F("setSTAStaticIPConfig")); + + memcpy((void *) &_ETH_STA_IPconfig, &EM_STA_IPconfig, sizeof(_ETH_STA_IPconfig)); +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::getSTAStaticIPConfig(ETH_STA_IPConfig& EM_STA_IPconfig) +{ + LOGINFO(F("getSTAStaticIPConfig")); + + memcpy((void *) &EM_STA_IPconfig, &_ETH_STA_IPconfig, sizeof(EM_STA_IPconfig)); +} + + +////////////////////////////////////////// + +#if USE_CONFIGURABLE_DNS +void ESP32_SC_W6100_Manager::setSTAStaticIPConfig(const IPAddress& ip, const IPAddress& gw, const IPAddress& sn, + const IPAddress& dns_address_1, const IPAddress& dns_address_2) +{ + LOGINFO(F("setSTAStaticIPConfig for USE_CONFIGURABLE_DNS")); + + _ETH_STA_IPconfig._sta_static_ip = ip; + _ETH_STA_IPconfig._sta_static_gw = gw; + _ETH_STA_IPconfig._sta_static_sn = sn; + _ETH_STA_IPconfig._sta_static_dns1 = dns_address_1; //***** Added argument ***** + _ETH_STA_IPconfig._sta_static_dns2 = dns_address_2; //***** Added argument ***** +} +#endif + +////////////////////////////////////////// + +// Handle root or redirect to captive portal +void ESP32_SC_W6100_Manager::handleRoot() +{ + LOGDEBUG(F("handleRoot")); + + // Disable _configPortalTimeout when someone accessing Portal to give some time to config + _configPortalTimeout = 0; + + if (captivePortal()) + { + LOGDEBUG(F("handleRoot: captive portal exit")); + + // If captive portal redirect instead of displaying the error page. + return; + } + + server->sendHeader(FPSTR(EM_HTTP_CACHE_CONTROL), FPSTR(EM_HTTP_NO_STORE)); + +#if USING_CORS_FEATURE + // For configure CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + + server->sendHeader(FPSTR(EM_HTTP_PRAGMA), FPSTR(EM_HTTP_NO_CACHE)); + server->sendHeader(FPSTR(EM_HTTP_EXPIRES), "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + + page.replace("{v}", "Options"); + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_SCRIPT_NTP); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + + page += FPSTR(EM_HTTP_PORTAL_OPTIONS); + page += F("
"); + reportStatus(page); + page += F("
"); + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); +} + +////////////////////////////////////////// + +// ETH config page handler +void ESP32_SC_W6100_Manager::handleETH() +{ + LOGDEBUG(F("Handle ETH")); + + // Disable _configPortalTimeout when someone accessing Portal to give some time to config + _configPortalTimeout = 0; + + server->sendHeader(FPSTR(EM_HTTP_CACHE_CONTROL), FPSTR(EM_HTTP_NO_STORE)); + +#if USING_CORS_FEATURE + // For configure CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + + server->sendHeader(FPSTR(EM_HTTP_PRAGMA), FPSTR(EM_HTTP_NO_CACHE)); + server->sendHeader(FPSTR(EM_HTTP_EXPIRES), "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + + page.replace("{v}", "Config ESP"); + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_SCRIPT_NTP); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + page += F("

Configuration

"); + + page += FPSTR(EM_HTTP_FORM_START); + + char parLength[2]; + + page += FPSTR(EM_FLDSET_START); + + // add the extra parameters to the form + for (int i = 0; i < _paramsCount; i++) + { + if (_params[i] == NULL) + { + break; + } + + String pitem; + + switch (_params[i]->getLabelPlacement()) + { + case WFM_LABEL_BEFORE: + pitem = FPSTR(EM_HTTP_FORM_LABEL_BEFORE); + break; + + case WFM_LABEL_AFTER: + pitem = FPSTR(EM_HTTP_FORM_LABEL_AFTER); + break; + + default: + // WFM_NO_LABEL + pitem = FPSTR(EM_HTTP_FORM_PARAM); + break; + } + + if (_params[i]->getID() != NULL) + { + pitem.replace("{i}", _params[i]->getID()); + pitem.replace("{n}", _params[i]->getID()); + pitem.replace("{p}", _params[i]->getPlaceholder()); + + snprintf(parLength, 2, "%d", _params[i]->getValueLength()); + + pitem.replace("{l}", parLength); + pitem.replace("{v}", _params[i]->getValue()); + pitem.replace("{c}", _params[i]->getCustomHTML()); + } + else + { + pitem = _params[i]->getCustomHTML(); + } + + page += pitem; + } + + if (_paramsCount > 0) + { + page += FPSTR(EM_FLDSET_END); + } + + if (_params[0] != NULL) + { + page += "
"; + } + + LOGDEBUG1(F("Static IP ="), _ETH_STA_IPconfig._sta_static_ip.toString()); + + // KH, Comment out to permit changing from DHCP to static IP, or vice versa + // and add staticIP label in CP + + // To permit disable/enable StaticIP configuration in Config Portal from sketch. Valid only if DHCP is used. + // You'll loose the feature of dynamically changing from DHCP to static IP, or vice versa + // You have to explicitly specify false to disable the feature. + +#if !USE_STATIC_IP_CONFIG_IN_CP + + if (_ETH_STA_IPconfig._sta_static_ip) +#endif + { + page += FPSTR(EM_FLDSET_START); + + String item = FPSTR(EM_HTTP_FORM_LABEL); + + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "ip"); + item.replace("{n}", "ip"); + item.replace("{p}", "Static IP"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_ip.toString()); + + page += item; + + item = FPSTR(EM_HTTP_FORM_LABEL); + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "gw"); + item.replace("{n}", "gw"); + item.replace("{p}", "Gateway IP"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_gw.toString()); + + page += item; + + item = FPSTR(EM_HTTP_FORM_LABEL); + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "sn"); + item.replace("{n}", "sn"); + item.replace("{p}", "Subnet"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_sn.toString()); + +#if USE_CONFIGURABLE_DNS + //***** Added for DNS address options ***** + page += item; + + item = FPSTR(EM_HTTP_FORM_LABEL); + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "dns1"); + item.replace("{n}", "dns1"); + item.replace("{p}", "DNS1 IP"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_dns1.toString()); + + page += item; + + item = FPSTR(EM_HTTP_FORM_LABEL); + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "dns2"); + item.replace("{n}", "dns2"); + item.replace("{p}", "DNS2 IP"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_dns2.toString()); + //***** End added for DNS address options ***** +#endif + + page += item; + + page += FPSTR(EM_FLDSET_END); + + page += "
"; + } + + page += FPSTR(EM_HTTP_SCRIPT_NTP_HIDDEN); + + page += FPSTR(EM_HTTP_FORM_END); + + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + LOGDEBUG(F("Sent config page")); +} + +////////////////////////////////////////// + +// Handle the WLAN save form and redirect to WLAN config page again +void ESP32_SC_W6100_Manager::handleETHSave() +{ + LOGDEBUG(F("ETH save")); + +#if USING_CORS_FEATURE + // For configuring CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + +#if USE_ESP_ETH_MANAGER_NTP + + if (server->arg("timezone") != "") + { + _timezoneName = server->arg("timezone"); + LOGDEBUG1(F("TZ name ="), _timezoneName); + } + else + { + LOGDEBUG(F("No TZ arg")); + } + +#endif + + /////////////////////// + + //parameters + for (int i = 0; i < _paramsCount; i++) + { + if (_params[i] == NULL) + { + break; + } + + //read parameter + String value = server->arg(_params[i]->getID()).c_str(); + + //store it in array + value.toCharArray(_params[i]->_EMParam_data._value, _params[i]->_EMParam_data._length); + + LOGDEBUG2(F("Parameter and value :"), _params[i]->getID(), value); + } + + + if (server->arg("ip") != "") + { + String ip = server->arg("ip"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_ip, ip.c_str()); + + LOGDEBUG1(F("New Static IP ="), _ETH_STA_IPconfig._sta_static_ip.toString()); + } + + if (server->arg("gw") != "") + { + String gw = server->arg("gw"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_gw, gw.c_str()); + + LOGDEBUG1(F("New Static Gateway ="), _ETH_STA_IPconfig._sta_static_gw.toString()); + } + + if (server->arg("sn") != "") + { + String sn = server->arg("sn"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_sn, sn.c_str()); + + LOGDEBUG1(F("New Static Netmask ="), _ETH_STA_IPconfig._sta_static_sn.toString()); + } + +#if USE_CONFIGURABLE_DNS + + //***** Added for DNS Options ***** + if (server->arg("dns1") != "") + { + String dns1 = server->arg("dns1"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_dns1, dns1.c_str()); + + LOGDEBUG1(F("New Static DNS1 ="), _ETH_STA_IPconfig._sta_static_dns1.toString()); + } + + if (server->arg("dns2") != "") + { + String dns2 = server->arg("dns2"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_dns2, dns2.c_str()); + + LOGDEBUG1(F("New Static DNS2 ="), _ETH_STA_IPconfig._sta_static_dns2.toString()); + } + + //***** End added for DNS Options ***** +#endif + + String page = FPSTR(EM_HTTP_HEAD_START); + page.replace("{v}", "Credentials Saved"); + + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + page += FPSTR(EM_HTTP_SAVED); + + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + LOGDEBUG(F("Sent eth save page")); + + connect = true; //signal ready to connect/reset + + stopConfigPortal = true; //signal ready to shutdown config portal + + // Restore when Press Save WiFi + _configPortalTimeout = DEFAULT_PORTAL_TIMEOUT; +} + +////////////////////////////////////////// + +// Handle shut down the server page +void ESP32_SC_W6100_Manager::handleServerClose() +{ + LOGDEBUG(F("Server Close")); + + server->sendHeader(FPSTR(EM_HTTP_CACHE_CONTROL), FPSTR(EM_HTTP_NO_STORE)); + + +#if USING_CORS_FEATURE + // For configuring CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + + server->sendHeader(FPSTR(EM_HTTP_PRAGMA), FPSTR(EM_HTTP_NO_CACHE)); + server->sendHeader(FPSTR(EM_HTTP_EXPIRES), "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + + page.replace("{v}", "Close Server"); + + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + page += F("
"); + page += F("
"); + page += F("IP address is "); + page += ETH.localIP().toString(); + page += F("

"); + page += F("Portal closed...

"); + + //page += F("Push button on device to restart configuration server!"); + + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + stopConfigPortal = true; //signal ready to shutdown config portal + + LOGDEBUG(F("Sent server close page")); + + // Restore when Press Save WiFi + _configPortalTimeout = DEFAULT_PORTAL_TIMEOUT; +} + +////////////////////////////////////////// + +// Handle the info page +void ESP32_SC_W6100_Manager::handleInfo() +{ + LOGDEBUG(F("Info")); + + // Disable _configPortalTimeout when someone accessing Portal to give some time to config + _configPortalTimeout = 0; + + server->sendHeader(FPSTR(EM_HTTP_CACHE_CONTROL), FPSTR(EM_HTTP_NO_STORE)); + +#if USING_CORS_FEATURE + // For configuring CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + + server->sendHeader(FPSTR(EM_HTTP_PRAGMA), FPSTR(EM_HTTP_NO_CACHE)); + server->sendHeader(FPSTR(EM_HTTP_EXPIRES), "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + page.replace("{v}", "Info"); + + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_SCRIPT_NTP); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + + if (connect) + page += F(""); + + page += FPSTR(EM_HTTP_HEAD_END); + + page += F("
"); + + if (connect) + { + page += F("
Trying to connect
"); + page += ethStatus; + page += F("
"); + } + + page += pager; + page += F("

Information

"); + + reportStatus(page); + + page += FPSTR(EM_FLDSET_START); + page += F("

Device Data

"); + page += F(""); + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + page += F("
NameValue
Chip ID"); + + page += String(ESP_getChipId(), HEX); + page += F("
Chip OUI"); + page += F("0x"); + page += String(getChipOUI(), HEX); + page += F("
Chip Model"); + page += ESP.getChipModel(); + page += F(" Rev"); + page += ESP.getChipRevision(); + + page += F("
Flash Chip ID"); + + // TODO + page += F("TODO"); + + page += F("
IDE Flash Size"); + page += ESP.getFlashChipSize(); + page += F(" bytes
Real Flash Size"); + + // TODO + page += F("TODO"); + + page += F(" bytes
Station IP"); + page += ETH.localIP().toString(); + page += F("
Station MAC"); + page += ETH.macAddress(); + page += F("
"); + + page += FPSTR(EM_FLDSET_END); + +#if USE_AVAILABLE_PAGES + page += FPSTR(EM_FLDSET_START); + page += FPSTR(EM_HTTP_AVAILABLE_PAGES); + page += FPSTR(EM_FLDSET_END); +#endif + + page += F("

More information about ESP32_SC_W6100_Manager at"); + page += F("

https://github.com/khoih-prog/ESP32_SC_W6100_Manager"); + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + LOGDEBUG(F("Sent info page")); +} + +////////////////////////////////////////// + +// Handle the state page +void ESP32_SC_W6100_Manager::handleState() +{ + LOGDEBUG(F("State-Json")); + + LOGDEBUG(F("Sent state page in json format")); +} + +////////////////////////////////////////// + +// Handle the reset page +void ESP32_SC_W6100_Manager::handleReset() +{ + LOGDEBUG(F("Reset")); + + server->sendHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + server->sendHeader("Pragma", "no-cache"); + server->sendHeader("Expires", "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + + page.replace("{v}", "ETH Information"); + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + page += F("Resetting"); + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + LOGDEBUG(F("Sent reset page")); + delay(5000); + + ESP.restart(); + + delay(2000); +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::handleNotFound() +{ + if (captivePortal()) + { + LOGDEBUG(F("handleNotFound: captive portal exit")); + + // If captive portal redirect instead of displaying the error page. + return; + } + + String message = "File Not Found\n\n"; + + message += "URI: "; + message += server->uri(); + message += "\nMethod: "; + message += (server->method() == HTTP_GET) ? "GET" : "POST"; + message += "\nArguments: "; + message += server->args(); + message += "\n"; + + for (uint8_t i = 0; i < server->args(); i++) + { + message += " " + server->argName(i) + ": " + server->arg(i) + "\n"; + } + + server->sendHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + server->sendHeader("Pragma", "no-cache"); + server->sendHeader("Expires", "-1"); + + server->send(404, "text/plain", message); +} + +////////////////////////////////////////// + +/** + HTTPD redirector + Redirect to captive portal if we got a request for another domain. + Return true in that case so the page handler do not try to handle the request again. +*/ +bool ESP32_SC_W6100_Manager::captivePortal() +{ + LOGDEBUG1(F("captivePortal: hostHeader = "), server->hostHeader()); + + if (!isIp(server->hostHeader())) + { + LOGINFO1(F("Request redirected to captive portal : "), server->client().localIP()); + + server->sendHeader(F("Location"), (String)F("http://") + toStringIp(server->client().localIP()), true); + + // Empty content inhibits Content-length header so we have to close the socket ourselves. + server->send(302, FPSTR(EM_HTTP_HEAD_CT2), ""); + + server->client().stop(); // Stop is needed because we sent no content length + + return true; + } + + return false; +} + +////////////////////////////////////////// + +// start up save config callback +void ESP32_SC_W6100_Manager::setSaveConfigCallback(void(*func)()) +{ + _savecallback = func; +} + +////////////////////////////////////////// + +// sets a custom element to add to head, like a new style tag +void ESP32_SC_W6100_Manager::setCustomHeadElement(const char* element) +{ + _customHeadElement = element; +} + +////////////////////////////////////////// + +// Is this an IP? +bool ESP32_SC_W6100_Manager::isIp(const String& str) +{ + for (unsigned int i = 0; i < str.length(); i++) + { + int c = str.charAt(i); + + if ( (c != '.') && (c != ':') && ( (c < '0') || (c > '9') ) ) + { + return false; + } + } + + return true; +} + +////////////////////////////////////////// + +// IP to String +String ESP32_SC_W6100_Manager::toStringIp(const IPAddress& ip) +{ + String res = ""; + + for (int i = 0; i < 3; i++) + { + res += String((ip >> (8 * i)) & 0xFF) + "."; + } + + res += String(((ip >> 8 * 3)) & 0xFF); + + return res; +} + +////////////////////////////////////////// + +uint32_t getChipID() +{ + uint64_t chipId64 = 0; + + for (int i = 0; i < 6; i++) + { + chipId64 |= ( ( (uint64_t) ESP.getEfuseMac() >> (40 - (i * 8)) ) & 0xff ) << (i * 8); + } + + return (uint32_t) (chipId64 & 0xFFFFFF); +} + +////////////////////////////////////////// + +uint32_t getChipOUI() +{ + uint64_t chipId64 = 0; + + for (int i = 0; i < 6; i++) + { + chipId64 |= ( ( (uint64_t) ESP.getEfuseMac() >> (40 - (i * 8)) ) & 0xff ) << (i * 8); + } + + return (uint32_t) (chipId64 >> 24); +} + +////////////////////////////////////////// + +#endif // ESP32_SC_W6100_Manager_Impl_h diff --git a/src/ESP32_SC_W6100_Manager_Manager_Impl.h b/src/ESP32_SC_W6100_Manager_Manager_Impl.h new file mode 100644 index 0000000..7f0b32c --- /dev/null +++ b/src/ESP32_SC_W6100_Manager_Manager_Impl.h @@ -0,0 +1,1217 @@ +/**************************************************************************************************************************** + ESP32_SC_W6100_Manager_Impl.h + + For Ethernet shields using ESP32_SC_W6100 (ESP32_S2/3, ESP32_C3 + LwIP W6100) + + Modified from + 1. Tzapu (https://github.com/tzapu/WiFiManager) + 2. Ken Taylor (https://github.com/kentaylor) + 3. Khoi Hoang (https://github.com/khoih-prog/ESP_WiFiManager) + + Built by Khoi Hoang https://github.com/khoih-prog/ESP32_SC_W6100_Manager + Licensed under MIT license + + Version: 1.0.0 + + Version Modified By Date Comments + ------- ----------- ---------- ----------- + 1.0.0 K Hoang 14/01/2023 Initial coding for ESP32_SC_W6100 (ESP32_S2/S3/C3 + LwIP W6100) + *****************************************************************************************************************************/ + +#pragma once + +#ifndef ESP32_SC_W6100_Manager_Impl_h +#define ESP32_SC_W6100_Manager_Impl_h + +////////////////////////////////////////// + +ESP32_EMParameter::ESP32_EMParameter(const char *custom) +{ + _EMParam_data._id = NULL; + _EMParam_data._placeholder = NULL; + _EMParam_data._length = 0; + _EMParam_data._value = NULL; + _EMParam_data._labelPlacement = WFM_LABEL_BEFORE; + + _customHTML = custom; +} + +////////////////////////////////////////// + +ESP32_EMParameter::ESP32_EMParameter(const char *id, const char *placeholder, const char *defaultValue, + const int& length, const char *custom, const int& labelPlacement) +{ + init(id, placeholder, defaultValue, length, custom, labelPlacement); +} + +////////////////////////////////////////// + +// KH, using struct +ESP32_EMParameter::ESP32_EMParameter(const EMParam_Data& EMParam_data) +{ + init(EMParam_data._id, EMParam_data._placeholder, EMParam_data._value, + EMParam_data._length, "", EMParam_data._labelPlacement); +} + +////////////////////////////////////////// + +void ESP32_EMParameter::init(const char *id, const char *placeholder, const char *defaultValue, + const int& length, const char *custom, const int& labelPlacement) +{ + _EMParam_data._id = id; + _EMParam_data._placeholder = placeholder; + _EMParam_data._length = length; + _EMParam_data._labelPlacement = labelPlacement; + + _EMParam_data._value = new char[_EMParam_data._length + 1]; + + if (_EMParam_data._value != NULL) + { + memset(_EMParam_data._value, 0, _EMParam_data._length + 1); + + if (defaultValue != NULL) + { + strncpy(_EMParam_data._value, defaultValue, _EMParam_data._length); + } + } + + _customHTML = custom; +} + +////////////////////////////////////////// + +ESP32_EMParameter::~ESP32_EMParameter() +{ + if (_EMParam_data._value != NULL) + { + delete[] _EMParam_data._value; + } +} + +////////////////////////////////////////// + +// Using Struct to get/set whole data at once +void ESP32_EMParameter::setEMParam_Data(const EMParam_Data& EMParam_data) +{ + LOGINFO(F("setEMParam_Data")); + + memcpy(&_EMParam_data, &EMParam_data, sizeof(_EMParam_data)); +} + +////////////////////////////////////////// + +void ESP32_EMParameter::getEMParam_Data(EMParam_Data& EMParam_data) +{ + LOGINFO(F("getEMParam_Data")); + + memcpy(&EMParam_data, &_EMParam_data, sizeof(EMParam_data)); +} + +////////////////////////////////////////// + +const char* ESP32_EMParameter::getValue() +{ + return _EMParam_data._value; +} + +////////////////////////////////////////// + +const char* ESP32_EMParameter::getID() +{ + return _EMParam_data._id; +} + +////////////////////////////////////////// + +const char* ESP32_EMParameter::getPlaceholder() +{ + return _EMParam_data._placeholder; +} + +////////////////////////////////////////// + +int ESP32_EMParameter::getValueLength() +{ + return _EMParam_data._length; +} + +////////////////////////////////////////// + +int ESP32_EMParameter::getLabelPlacement() +{ + return _EMParam_data._labelPlacement; +} + +////////////////////////////////////////// + +const char* ESP32_EMParameter::getCustomHTML() +{ + return _customHTML; +} + +////////////////////////////////////////// + +/** + [getParameters description] + @access public +*/ +ESP32_EMParameter** ESP32_SC_W6100_Manager::getParameters() +{ + return _params; +} + +////////////////////////////////////////// +////////////////////////////////////////// + +/** + [getParametersCount description] + @access public +*/ +int ESP32_SC_W6100_Manager::getParametersCount() +{ + return _paramsCount; +} + +////////////////////////////////////////// + +char* ESP32_SC_W6100_Manager::getRFC952_hostname(const char* iHostname) +{ + memset(RFC952_hostname, 0, sizeof(RFC952_hostname)); + + size_t len = (RFC952_HOSTNAME_MAXLEN < strlen(iHostname)) ? RFC952_HOSTNAME_MAXLEN : strlen(iHostname); + + size_t j = 0; + + for (size_t i = 0; i < len - 1; i++) + { + if (isalnum(iHostname[i]) || iHostname[i] == '-') + { + RFC952_hostname[j] = iHostname[i]; + j++; + } + } + + // no '-' as last char + if (isalnum(iHostname[len - 1]) || (iHostname[len - 1] != '-')) + RFC952_hostname[j] = iHostname[len - 1]; + + return RFC952_hostname; +} + +////////////////////////////////////////// + +ESP32_SC_W6100_Manager::ESP32_SC_W6100_Manager(const char *iHostname) +{ + + //server = webserver; + //dnsServer = dnsserver; + +#if USE_DYNAMIC_PARAMS + _max_params = ETH_MANAGER_MAX_PARAMS; + _params = (ESP32_EMParameter**) malloc(_max_params * sizeof(ESP32_EMParameter*)); +#endif + + if (iHostname[0] == 0) + { + String _hostname = "ESP32-" + String(ESP_getChipId(), HEX); + + _hostname.toUpperCase(); + + getRFC952_hostname(_hostname.c_str()); + + } + else + { + // Prepare and store the hostname only not NULL + getRFC952_hostname(iHostname); + } + + LOGWARN1(F("RFC925 Hostname ="), RFC952_hostname); + + setHostname(); +} + +////////////////////////////////////////// + +ESP32_SC_W6100_Manager::~ESP32_SC_W6100_Manager() +{ +#if USE_DYNAMIC_PARAMS + + if (_params != NULL) + { + LOGINFO(F("freeing allocated params!")); + + free(_params); + } + +#endif +} + +////////////////////////////////////////// + +#if USE_DYNAMIC_PARAMS + bool ESP32_SC_W6100_Manager::addParameter(ESP32_EMParameter *p) +#else + void ESP32_SC_W6100_Manager::addParameter(ESP32_EMParameter *p) +#endif +{ +#if USE_DYNAMIC_PARAMS + + if (_paramsCount == _max_params) + { + // rezise the params array + _max_params += ETH_MANAGER_MAX_PARAMS; + + LOGINFO1(F("Increasing _max_params to:"), _max_params); + + ESP32_EMParameter** new_params = (ESP32_EMParameter**) realloc(_params, _max_params * sizeof(ESP32_EMParameter*)); + + if (new_params != NULL) + { + _params = new_params; + } + else + { + LOGINFO(F("ERROR: failed to realloc params, size not increased!")); + + return false; + } + } + + _params[_paramsCount] = p; + _paramsCount++; + + LOGINFO1(F("Adding parameter"), p->getID()); + + return true; + +#else + + // Danger here. Better to use Tzapu way here + if (_paramsCount < (ETH_MANAGER_MAX_PARAMS)) + { + _params[_paramsCount] = p; + _paramsCount++; + + LOGINFO1(F("Adding parameter"), p->getID()); + } + else + { + LOGINFO("Can't add parameter. Full"); + } + +#endif +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setupConfigPortal() +{ + stopConfigPortal = false; //Signal not to close config portal + + dnsServer.reset(new DNSServer()); + + server.reset(new WebServer(HTTP_PORT_TO_USE)); + + /* Setup the DNS server redirecting all the domains to the apIP */ + if (dnsServer) + { + dnsServer->setErrorReplyCode(DNSReplyCode::NoError); + + // AsyncDNSServer started with "*" domain name, all DNS requests will be passsed to ETH.localIP() + if (! dnsServer->start(DNS_PORT, "*", ETH.localIP())) + { + // No socket available + LOGERROR(F("Can't start DNS Server. No available socket")); + } + } + else + { + // No space available + LOGERROR(F("Can't initiate DNS Server. No enough space")); + } + + _configPortalStart = millis(); + + LOGDEBUG1(F("_configPortalStart millis() ="), millis()); + + LOGWARN1(F("Config Portal IP address ="), ETH.localIP()); + + /* Setup web pages: root, eth config pages, SO captive portal detectors and not found. */ + + server->on("/", std::bind(&ESP32_SC_W6100_Manager::handleRoot, this)); + server->on("/eth", std::bind(&ESP32_SC_W6100_Manager::handleETH, this)); + server->on("/ethsave", std::bind(&ESP32_SC_W6100_Manager::handleETHSave, this)); + server->on("/close", std::bind(&ESP32_SC_W6100_Manager::handleServerClose, this)); + server->on("/i", std::bind(&ESP32_SC_W6100_Manager::handleInfo, this)); + server->on("/r", std::bind(&ESP32_SC_W6100_Manager::handleReset, this)); + server->on("/state", std::bind(&ESP32_SC_W6100_Manager::handleState, this)); + //Microsoft captive portal. Maybe not needed. Might be handled by notFound handler. + server->on("/fwlink", std::bind(&ESP32_SC_W6100_Manager::handleRoot, this)); + server->onNotFound( std::bind(&ESP32_SC_W6100_Manager::handleNotFound, this)); + + server->begin(); // Web server start + + LOGWARN(F("HTTP server started")); +} + +////////////////////////////////////////// + +bool ESP32_SC_W6100_Manager::startConfigPortal() +{ + connect = false; + + setupConfigPortal(); + + bool TimedOut = true; + + LOGINFO("startConfigPortal : Enter loop"); + + while (true) + { + //DNS + dnsServer->processNextRequest(); + //HTTP + server->handleClient(); + +#if ( USING_ESP32_S2 || USING_ESP32_C3 ) + // Fix ESP32-S2 issue with WebServer (https://github.com/espressif/arduino-esp32/issues/4348) + delay(1); +#endif + + if (connect) + { + TimedOut = false; + + if (_shouldBreakAfterConfig) + { + //flag set to exit after config after trying to connect + //notify that configuration has changed and any optional parameters should be saved + if (_savecallback != NULL) + { + //todo: check if any custom parameters actually exist, and check if they really changed maybe + _savecallback(); + } + + LOGDEBUG("Stop ConfigPortal: _shouldBreakAfterConfig"); + + break; + } + } + + if (stopConfigPortal) + { + TimedOut = false; + + LOGERROR("stopConfigPortal"); + + stopConfigPortal = false; + + break; + } + + if (_configPortalTimeout > 0 && ( millis() > _configPortalStart + _configPortalTimeout) ) + { + //LOGDEBUG3("startConfigPortal: timeout, _configPortalTimeout =", _configPortalTimeout, "millis() =", millis()); + + stopConfigPortal = false; + + break; + } + +#define TIME_BETWEEN_CONFIG_PORTAL_LOOP 50 + + vTaskDelay(TIME_BETWEEN_CONFIG_PORTAL_LOOP / portTICK_PERIOD_MS); + } + + //LOGDEBUG3("startConfigPortal: exit, _configPortalTimeout =", _configPortalTimeout, "millis() =", millis()); + + server->stop(); + server.reset(); + dnsServer->stop(); + dnsServer.reset(); + + return (ESP32_W6100_isConnected()); +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setTimeout(const unsigned long& seconds) +{ + setConfigPortalTimeout(seconds); +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setConfigPortalTimeout(const unsigned long& seconds) +{ + _configPortalTimeout = seconds * 1000; +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setConnectTimeout(const unsigned long& seconds) +{ + _connectTimeout = seconds * 1000; +} + +void ESP32_SC_W6100_Manager::setDebugOutput(bool debug) +{ + _debug = debug; +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setBreakAfterConfig(bool shouldBreak) +{ + _shouldBreakAfterConfig = shouldBreak; +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::reportStatus(String& page) +{ + page += FPSTR(EM_HTTP_SCRIPT_NTP_MSG); +} + + + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setSTAStaticIPConfig(const IPAddress& ip, const IPAddress& gw, const IPAddress& sn) +{ + LOGINFO(F("setSTAStaticIPConfig")); + + _ETH_STA_IPconfig._sta_static_ip = ip; + _ETH_STA_IPconfig._sta_static_gw = gw; + _ETH_STA_IPconfig._sta_static_sn = sn; +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::setSTAStaticIPConfig(const ETH_STA_IPConfig& EM_STA_IPconfig) +{ + LOGINFO(F("setSTAStaticIPConfig")); + + memcpy((void *) &_ETH_STA_IPconfig, &EM_STA_IPconfig, sizeof(_ETH_STA_IPconfig)); +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::getSTAStaticIPConfig(ETH_STA_IPConfig& EM_STA_IPconfig) +{ + LOGINFO(F("getSTAStaticIPConfig")); + + memcpy((void *) &EM_STA_IPconfig, &_ETH_STA_IPconfig, sizeof(EM_STA_IPconfig)); +} + + +////////////////////////////////////////// + +#if USE_CONFIGURABLE_DNS +void ESP32_SC_W6100_Manager::setSTAStaticIPConfig(const IPAddress& ip, const IPAddress& gw, const IPAddress& sn, + const IPAddress& dns_address_1, const IPAddress& dns_address_2) +{ + LOGINFO(F("setSTAStaticIPConfig for USE_CONFIGURABLE_DNS")); + + _ETH_STA_IPconfig._sta_static_ip = ip; + _ETH_STA_IPconfig._sta_static_gw = gw; + _ETH_STA_IPconfig._sta_static_sn = sn; + _ETH_STA_IPconfig._sta_static_dns1 = dns_address_1; //***** Added argument ***** + _ETH_STA_IPconfig._sta_static_dns2 = dns_address_2; //***** Added argument ***** +} +#endif + +////////////////////////////////////////// + +// Handle root or redirect to captive portal +void ESP32_SC_W6100_Manager::handleRoot() +{ + LOGDEBUG(F("handleRoot")); + + // Disable _configPortalTimeout when someone accessing Portal to give some time to config + _configPortalTimeout = 0; + + if (captivePortal()) + { + LOGDEBUG(F("handleRoot: captive portal exit")); + + // If captive portal redirect instead of displaying the error page. + return; + } + + server->sendHeader(FPSTR(EM_HTTP_CACHE_CONTROL), FPSTR(EM_HTTP_NO_STORE)); + +#if USING_CORS_FEATURE + // For configure CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + + server->sendHeader(FPSTR(EM_HTTP_PRAGMA), FPSTR(EM_HTTP_NO_CACHE)); + server->sendHeader(FPSTR(EM_HTTP_EXPIRES), "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + + page.replace("{v}", "Options"); + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_SCRIPT_NTP); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + + page += FPSTR(EM_HTTP_PORTAL_OPTIONS); + page += F("

"); + reportStatus(page); + page += F("
"); + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); +} + +////////////////////////////////////////// + +// ETH config page handler +void ESP32_SC_W6100_Manager::handleETH() +{ + LOGDEBUG(F("Handle ETH")); + + // Disable _configPortalTimeout when someone accessing Portal to give some time to config + _configPortalTimeout = 0; + + server->sendHeader(FPSTR(EM_HTTP_CACHE_CONTROL), FPSTR(EM_HTTP_NO_STORE)); + +#if USING_CORS_FEATURE + // For configure CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + + server->sendHeader(FPSTR(EM_HTTP_PRAGMA), FPSTR(EM_HTTP_NO_CACHE)); + server->sendHeader(FPSTR(EM_HTTP_EXPIRES), "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + + page.replace("{v}", "Config ESP"); + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_SCRIPT_NTP); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + page += F("

Configuration

"); + + page += FPSTR(EM_HTTP_FORM_START); + + char parLength[2]; + + page += FPSTR(EM_FLDSET_START); + + // add the extra parameters to the form + for (int i = 0; i < _paramsCount; i++) + { + if (_params[i] == NULL) + { + break; + } + + String pitem; + + switch (_params[i]->getLabelPlacement()) + { + case WFM_LABEL_BEFORE: + pitem = FPSTR(EM_HTTP_FORM_LABEL_BEFORE); + break; + + case WFM_LABEL_AFTER: + pitem = FPSTR(EM_HTTP_FORM_LABEL_AFTER); + break; + + default: + // WFM_NO_LABEL + pitem = FPSTR(EM_HTTP_FORM_PARAM); + break; + } + + if (_params[i]->getID() != NULL) + { + pitem.replace("{i}", _params[i]->getID()); + pitem.replace("{n}", _params[i]->getID()); + pitem.replace("{p}", _params[i]->getPlaceholder()); + + snprintf(parLength, 2, "%d", _params[i]->getValueLength()); + + pitem.replace("{l}", parLength); + pitem.replace("{v}", _params[i]->getValue()); + pitem.replace("{c}", _params[i]->getCustomHTML()); + } + else + { + pitem = _params[i]->getCustomHTML(); + } + + page += pitem; + } + + if (_paramsCount > 0) + { + page += FPSTR(EM_FLDSET_END); + } + + if (_params[0] != NULL) + { + page += "
"; + } + + LOGDEBUG1(F("Static IP ="), _ETH_STA_IPconfig._sta_static_ip.toString()); + + // KH, Comment out to permit changing from DHCP to static IP, or vice versa + // and add staticIP label in CP + + // To permit disable/enable StaticIP configuration in Config Portal from sketch. Valid only if DHCP is used. + // You'll loose the feature of dynamically changing from DHCP to static IP, or vice versa + // You have to explicitly specify false to disable the feature. + +#if !USE_STATIC_IP_CONFIG_IN_CP + + if (_ETH_STA_IPconfig._sta_static_ip) +#endif + { + page += FPSTR(EM_FLDSET_START); + + String item = FPSTR(EM_HTTP_FORM_LABEL); + + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "ip"); + item.replace("{n}", "ip"); + item.replace("{p}", "Static IP"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_ip.toString()); + + page += item; + + item = FPSTR(EM_HTTP_FORM_LABEL); + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "gw"); + item.replace("{n}", "gw"); + item.replace("{p}", "Gateway IP"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_gw.toString()); + + page += item; + + item = FPSTR(EM_HTTP_FORM_LABEL); + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "sn"); + item.replace("{n}", "sn"); + item.replace("{p}", "Subnet"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_sn.toString()); + +#if USE_CONFIGURABLE_DNS + //***** Added for DNS address options ***** + page += item; + + item = FPSTR(EM_HTTP_FORM_LABEL); + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "dns1"); + item.replace("{n}", "dns1"); + item.replace("{p}", "DNS1 IP"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_dns1.toString()); + + page += item; + + item = FPSTR(EM_HTTP_FORM_LABEL); + item += FPSTR(EM_HTTP_FORM_PARAM); + + item.replace("{i}", "dns2"); + item.replace("{n}", "dns2"); + item.replace("{p}", "DNS2 IP"); + item.replace("{l}", "15"); + item.replace("{v}", _ETH_STA_IPconfig._sta_static_dns2.toString()); + //***** End added for DNS address options ***** +#endif + + page += item; + + page += FPSTR(EM_FLDSET_END); + + page += "
"; + } + + page += FPSTR(EM_HTTP_SCRIPT_NTP_HIDDEN); + + page += FPSTR(EM_HTTP_FORM_END); + + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + LOGDEBUG(F("Sent config page")); +} + +////////////////////////////////////////// + +// Handle the WLAN save form and redirect to WLAN config page again +void ESP32_SC_W6100_Manager::handleETHSave() +{ + LOGDEBUG(F("ETH save")); + +#if USING_CORS_FEATURE + // For configuring CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + +#if USE_ESP_ETH_MANAGER_NTP + + if (server->arg("timezone") != "") + { + _timezoneName = server->arg("timezone"); + LOGDEBUG1(F("TZ name ="), _timezoneName); + } + else + { + LOGDEBUG(F("No TZ arg")); + } + +#endif + + /////////////////////// + + //parameters + for (int i = 0; i < _paramsCount; i++) + { + if (_params[i] == NULL) + { + break; + } + + //read parameter + String value = server->arg(_params[i]->getID()).c_str(); + + //store it in array + value.toCharArray(_params[i]->_EMParam_data._value, _params[i]->_EMParam_data._length); + + LOGDEBUG2(F("Parameter and value :"), _params[i]->getID(), value); + } + + + if (server->arg("ip") != "") + { + String ip = server->arg("ip"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_ip, ip.c_str()); + + LOGDEBUG1(F("New Static IP ="), _ETH_STA_IPconfig._sta_static_ip.toString()); + } + + if (server->arg("gw") != "") + { + String gw = server->arg("gw"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_gw, gw.c_str()); + + LOGDEBUG1(F("New Static Gateway ="), _ETH_STA_IPconfig._sta_static_gw.toString()); + } + + if (server->arg("sn") != "") + { + String sn = server->arg("sn"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_sn, sn.c_str()); + + LOGDEBUG1(F("New Static Netmask ="), _ETH_STA_IPconfig._sta_static_sn.toString()); + } + +#if USE_CONFIGURABLE_DNS + + //***** Added for DNS Options ***** + if (server->arg("dns1") != "") + { + String dns1 = server->arg("dns1"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_dns1, dns1.c_str()); + + LOGDEBUG1(F("New Static DNS1 ="), _ETH_STA_IPconfig._sta_static_dns1.toString()); + } + + if (server->arg("dns2") != "") + { + String dns2 = server->arg("dns2"); + + optionalIPFromString(&_ETH_STA_IPconfig._sta_static_dns2, dns2.c_str()); + + LOGDEBUG1(F("New Static DNS2 ="), _ETH_STA_IPconfig._sta_static_dns2.toString()); + } + + //***** End added for DNS Options ***** +#endif + + String page = FPSTR(EM_HTTP_HEAD_START); + page.replace("{v}", "Credentials Saved"); + + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + page += FPSTR(EM_HTTP_SAVED); + + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + LOGDEBUG(F("Sent eth save page")); + + connect = true; //signal ready to connect/reset + + stopConfigPortal = true; //signal ready to shutdown config portal + + // Restore when Press Save WiFi + _configPortalTimeout = DEFAULT_PORTAL_TIMEOUT; +} + +////////////////////////////////////////// + +// Handle shut down the server page +void ESP32_SC_W6100_Manager::handleServerClose() +{ + LOGDEBUG(F("Server Close")); + + server->sendHeader(FPSTR(EM_HTTP_CACHE_CONTROL), FPSTR(EM_HTTP_NO_STORE)); + + +#if USING_CORS_FEATURE + // For configuring CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + + server->sendHeader(FPSTR(EM_HTTP_PRAGMA), FPSTR(EM_HTTP_NO_CACHE)); + server->sendHeader(FPSTR(EM_HTTP_EXPIRES), "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + + page.replace("{v}", "Close Server"); + + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + page += F("
"); + page += F("
"); + page += F("IP address is "); + page += ETH.localIP().toString(); + page += F("

"); + page += F("Portal closed...

"); + + //page += F("Push button on device to restart configuration server!"); + + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + stopConfigPortal = true; //signal ready to shutdown config portal + + LOGDEBUG(F("Sent server close page")); + + // Restore when Press Save WiFi + _configPortalTimeout = DEFAULT_PORTAL_TIMEOUT; +} + +////////////////////////////////////////// + +// Handle the info page +void ESP32_SC_W6100_Manager::handleInfo() +{ + LOGDEBUG(F("Info")); + + // Disable _configPortalTimeout when someone accessing Portal to give some time to config + _configPortalTimeout = 0; + + server->sendHeader(FPSTR(EM_HTTP_CACHE_CONTROL), FPSTR(EM_HTTP_NO_STORE)); + +#if USING_CORS_FEATURE + // For configuring CORS Header, default to EM_HTTP_CORS_ALLOW_ALL = "*" + server->sendHeader(FPSTR(EM_HTTP_CORS), _CORS_Header); +#endif + + server->sendHeader(FPSTR(EM_HTTP_PRAGMA), FPSTR(EM_HTTP_NO_CACHE)); + server->sendHeader(FPSTR(EM_HTTP_EXPIRES), "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + page.replace("{v}", "Info"); + + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_SCRIPT_NTP); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + + if (connect) + page += F(""); + + page += FPSTR(EM_HTTP_HEAD_END); + + page += F("
"); + + if (connect) + { + page += F("
Trying to connect
"); + page += ethStatus; + page += F("
"); + } + + page += pager; + page += F("

Information

"); + + reportStatus(page); + + page += FPSTR(EM_FLDSET_START); + page += F("

Device Data

"); + page += F(""); + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + + page += F(""); + page += F("
NameValue
Chip ID"); + + page += String(ESP_getChipId(), HEX); + page += F("
Chip OUI"); + page += F("0x"); + page += String(getChipOUI(), HEX); + page += F("
Chip Model"); + page += ESP.getChipModel(); + page += F(" Rev"); + page += ESP.getChipRevision(); + + page += F("
Flash Chip ID"); + + // TODO + page += F("TODO"); + + page += F("
IDE Flash Size"); + page += ESP.getFlashChipSize(); + page += F(" bytes
Real Flash Size"); + + // TODO + page += F("TODO"); + + page += F(" bytes
Station IP"); + page += ETH.localIP().toString(); + page += F("
Station MAC"); + page += ETH.macAddress(); + page += F("
"); + + page += FPSTR(EM_FLDSET_END); + +#if USE_AVAILABLE_PAGES + page += FPSTR(EM_FLDSET_START); + page += FPSTR(EM_HTTP_AVAILABLE_PAGES); + page += FPSTR(EM_FLDSET_END); +#endif + + page += F("

More information about ESP32_SC_W6100_Manager at"); + page += F("

https://github.com/khoih-prog/ESP32_SC_W6100_Manager"); + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + LOGDEBUG(F("Sent info page")); +} + +////////////////////////////////////////// + +// Handle the state page +void ESP32_SC_W6100_Manager::handleState() +{ + LOGDEBUG(F("State-Json")); + + LOGDEBUG(F("Sent state page in json format")); +} + +////////////////////////////////////////// + +// Handle the reset page +void ESP32_SC_W6100_Manager::handleReset() +{ + LOGDEBUG(F("Reset")); + + server->sendHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + server->sendHeader("Pragma", "no-cache"); + server->sendHeader("Expires", "-1"); + + String page = FPSTR(EM_HTTP_HEAD_START); + + page.replace("{v}", "ETH Information"); + page += FPSTR(EM_HTTP_SCRIPT); + page += FPSTR(EM_HTTP_STYLE); + page += _customHeadElement; + page += FPSTR(EM_HTTP_HEAD_END); + page += F("Resetting"); + page += FPSTR(EM_HTTP_END); + + server->send(200, "text/html", page); + + LOGDEBUG(F("Sent reset page")); + delay(5000); + + ESP.restart(); + + delay(2000); +} + +////////////////////////////////////////// + +void ESP32_SC_W6100_Manager::handleNotFound() +{ + if (captivePortal()) + { + LOGDEBUG(F("handleNotFound: captive portal exit")); + + // If captive portal redirect instead of displaying the error page. + return; + } + + String message = "File Not Found\n\n"; + + message += "URI: "; + message += server->uri(); + message += "\nMethod: "; + message += (server->method() == HTTP_GET) ? "GET" : "POST"; + message += "\nArguments: "; + message += server->args(); + message += "\n"; + + for (uint8_t i = 0; i < server->args(); i++) + { + message += " " + server->argName(i) + ": " + server->arg(i) + "\n"; + } + + server->sendHeader("Cache-Control", "no-cache, no-store, must-revalidate"); + server->sendHeader("Pragma", "no-cache"); + server->sendHeader("Expires", "-1"); + + server->send(404, "text/plain", message); +} + +////////////////////////////////////////// + +/** + HTTPD redirector + Redirect to captive portal if we got a request for another domain. + Return true in that case so the page handler do not try to handle the request again. +*/ +bool ESP32_SC_W6100_Manager::captivePortal() +{ + LOGDEBUG1(F("captivePortal: hostHeader = "), server->hostHeader()); + + if (!isIp(server->hostHeader())) + { + LOGINFO1(F("Request redirected to captive portal : "), server->client().localIP()); + + server->sendHeader(F("Location"), (String)F("http://") + toStringIp(server->client().localIP()), true); + + // Empty content inhibits Content-length header so we have to close the socket ourselves. + server->send(302, FPSTR(EM_HTTP_HEAD_CT2), ""); + + server->client().stop(); // Stop is needed because we sent no content length + + return true; + } + + return false; +} + +////////////////////////////////////////// + +// start up save config callback +void ESP32_SC_W6100_Manager::setSaveConfigCallback(void(*func)()) +{ + _savecallback = func; +} + +////////////////////////////////////////// + +// sets a custom element to add to head, like a new style tag +void ESP32_SC_W6100_Manager::setCustomHeadElement(const char* element) +{ + _customHeadElement = element; +} + +////////////////////////////////////////// + +// Is this an IP? +bool ESP32_SC_W6100_Manager::isIp(const String& str) +{ + for (unsigned int i = 0; i < str.length(); i++) + { + int c = str.charAt(i); + + if ( (c != '.') && (c != ':') && ( (c < '0') || (c > '9') ) ) + { + return false; + } + } + + return true; +} + +////////////////////////////////////////// + +// IP to String +String ESP32_SC_W6100_Manager::toStringIp(const IPAddress& ip) +{ + String res = ""; + + for (int i = 0; i < 3; i++) + { + res += String((ip >> (8 * i)) & 0xFF) + "."; + } + + res += String(((ip >> 8 * 3)) & 0xFF); + + return res; +} + +////////////////////////////////////////// + +uint32_t getChipID() +{ + uint64_t chipId64 = 0; + + for (int i = 0; i < 6; i++) + { + chipId64 |= ( ( (uint64_t) ESP.getEfuseMac() >> (40 - (i * 8)) ) & 0xff ) << (i * 8); + } + + return (uint32_t) (chipId64 & 0xFFFFFF); +} + +////////////////////////////////////////// + +uint32_t getChipOUI() +{ + uint64_t chipId64 = 0; + + for (int i = 0; i < 6; i++) + { + chipId64 |= ( ( (uint64_t) ESP.getEfuseMac() >> (40 - (i * 8)) ) & 0xff ) << (i * 8); + } + + return (uint32_t) (chipId64 >> 24); +} + +////////////////////////////////////////// + +#endif // ESP32_SC_W6100_Manager_Impl_h diff --git a/src/utils/TZ.h b/src/utils/TZ.h new file mode 100644 index 0000000..e96b0c7 --- /dev/null +++ b/src/utils/TZ.h @@ -0,0 +1,1526 @@ + +// autogenerated from https://raw.githubusercontent.com/nayarsystems/posix_tz_db/master/zones.csv +// by script /tools/TZupdate.sh +// Thu Nov 12 04:07:03 UTC 2020 +// +// This database is autogenerated from IANA timezone database +// https://raw.githubusercontent.com/nayarsystems/posix_tz_db/master/zones.csv +// (using https://www.iana.org/time-zones) +// and can be updated on demand in this repository +// or by yourself using the above script + +#ifndef TZDB_H +#define TZDB_H + +//See: https://www.gnu.org/software/libc/manual/html_node/TZ-Variable.html +// EST5EDT,M3.2.0,M11.1.0 (for America/New_York) +// EST5EDT is the name of the time zone +// EST is the abbreviation used when DST is off +// 6 hours is the time difference from GMT +// EDT is the abbreviation used when DST is on +// ,M3 is the third month +// .2 is the second occurrence of the day in the month +// .0 is Sunday +// ,M11 is the eleventh month +// .1 is the first occurrence of the day in the month +// .0 is Sunday + + +#if !defined(USING_AFRICA) + #define USING_AFRICA false +#endif + +#if !defined(USING_AMERICA) + #define USING_AMERICA true +#endif + +#if !defined(USING_ANTARCTICA) + #define USING_ANTARCTICA false +#endif + +#if !defined(USING_ASIA) + #define USING_ASIA false +#endif + +#if !defined(USING_ATLANTIC) + #define USING_ATLANTIC false +#endif + +#if !defined(USING_AUSTRALIA) + #define USING_AUSTRALIA true +#endif + +#if !defined(USING_EUROPE) + #define USING_EUROPE false +#endif + +#if !defined(USING_INDIAN) + #define USING_INDIAN false +#endif + +#if !defined(USING_PACIFIC) + #define USING_PACIFIC false +#endif + +#if !defined(USING_ETC_GMT) + #define USING_ETC_GMT false +#endif + +//////////////////////////////////////////////////// + +#define TZ_Africa_Abidjan ("GMT0") +#define TZ_Africa_Accra ("GMT0") +#define TZ_Africa_Addis_Ababa ("EAT-3") +#define TZ_Africa_Algiers ("CET-1") +#define TZ_Africa_Asmara ("EAT-3") +#define TZ_Africa_Bamako ("GMT0") +#define TZ_Africa_Bangui ("WAT-1") +#define TZ_Africa_Banjul ("GMT0") +#define TZ_Africa_Bissau ("GMT0") +#define TZ_Africa_Blantyre ("CAT-2") +#define TZ_Africa_Brazzaville ("WAT-1") +#define TZ_Africa_Bujumbura ("CAT-2") +#define TZ_Africa_Cairo ("EET-2") +#define TZ_Africa_Casablanca ("<+01>-1") +#define TZ_Africa_Ceuta ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Africa_Conakry ("GMT0") +#define TZ_Africa_Dakar ("GMT0") +#define TZ_Africa_Dar_es_Salaam ("EAT-3") +#define TZ_Africa_Djibouti ("EAT-3") +#define TZ_Africa_Douala ("WAT-1") +#define TZ_Africa_El_Aaiun ("<+01>-1") +#define TZ_Africa_Freetown ("GMT0") +#define TZ_Africa_Gaborone ("CAT-2") +#define TZ_Africa_Harare ("CAT-2") +#define TZ_Africa_Johannesburg ("SAST-2") +#define TZ_Africa_Juba ("EAT-3") +#define TZ_Africa_Kampala ("EAT-3") +#define TZ_Africa_Khartoum ("CAT-2") +#define TZ_Africa_Kigali ("CAT-2") +#define TZ_Africa_Kinshasa ("WAT-1") +#define TZ_Africa_Lagos ("WAT-1") +#define TZ_Africa_Libreville ("WAT-1") +#define TZ_Africa_Lome ("GMT0") +#define TZ_Africa_Luanda ("WAT-1") +#define TZ_Africa_Lubumbashi ("CAT-2") +#define TZ_Africa_Lusaka ("CAT-2") +#define TZ_Africa_Malabo ("WAT-1") +#define TZ_Africa_Maputo ("CAT-2") +#define TZ_Africa_Maseru ("SAST-2") +#define TZ_Africa_Mbabane ("SAST-2") +#define TZ_Africa_Mogadishu ("EAT-3") +#define TZ_Africa_Monrovia ("GMT0") +#define TZ_Africa_Nairobi ("EAT-3") +#define TZ_Africa_Ndjamena ("WAT-1") +#define TZ_Africa_Niamey ("WAT-1") +#define TZ_Africa_Nouakchott ("GMT0") +#define TZ_Africa_Ouagadougou ("GMT0") +#define TZ_Africa_PortomNovo ("WAT-1") +#define TZ_Africa_Sao_Tome ("GMT0") +#define TZ_Africa_Tripoli ("EET-2") +#define TZ_Africa_Tunis ("CET-1") +#define TZ_Africa_Windhoek ("CAT-2") +#define TZ_America_Adak ("HST10HDT,M3.2.0,M11.1.0") +#define TZ_America_Anchorage ("AKST9AKDT,M3.2.0,M11.1.0") +#define TZ_America_Anguilla ("AST4") +#define TZ_America_Antigua ("AST4") +#define TZ_America_Araguaina ("<-03>3") +#define TZ_America_Argentina_Buenos_Aires ("<-03>3") +#define TZ_America_Argentina_Catamarca ("<-03>3") +#define TZ_America_Argentina_Cordoba ("<-03>3") +#define TZ_America_Argentina_Jujuy ("<-03>3") +#define TZ_America_Argentina_La_Rioja ("<-03>3") +#define TZ_America_Argentina_Mendoza ("<-03>3") +#define TZ_America_Argentina_Rio_Gallegos ("<-03>3") +#define TZ_America_Argentina_Salta ("<-03>3") +#define TZ_America_Argentina_San_Juan ("<-03>3") +#define TZ_America_Argentina_San_Luis ("<-03>3") +#define TZ_America_Argentina_Tucuman ("<-03>3") +#define TZ_America_Argentina_Ushuaia ("<-03>3") +#define TZ_America_Aruba ("AST4") +#define TZ_America_Asuncion ("<-04>4<-03>,M10.1.0/0,M3.4.0/0") +#define TZ_America_Atikokan ("EST5") +#define TZ_America_Bahia ("<-03>3") +#define TZ_America_Bahia_Banderas ("CST6CDT,M4.1.0,M10.5.0") +#define TZ_America_Barbados ("AST4") +#define TZ_America_Belem ("<-03>3") +#define TZ_America_Belize ("CST6") +#define TZ_America_BlancmSablon ("AST4") +#define TZ_America_Boa_Vista ("<-04>4") +#define TZ_America_Bogota ("<-05>5") +#define TZ_America_Boise ("MST7MDT,M3.2.0,M11.1.0") +#define TZ_America_Cambridge_Bay ("MST7MDT,M3.2.0,M11.1.0") +#define TZ_America_Campo_Grande ("<-04>4") +#define TZ_America_Cancun ("EST5") +#define TZ_America_Caracas ("<-04>4") +#define TZ_America_Cayenne ("<-03>3") +#define TZ_America_Cayman ("EST5") +#define TZ_America_Chicago ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Chihuahua ("MST7MDT,M4.1.0,M10.5.0") +#define TZ_America_Costa_Rica ("CST6") +#define TZ_America_Creston ("MST7") +#define TZ_America_Cuiaba ("<-04>4") +#define TZ_America_Curacao ("AST4") +#define TZ_America_Danmarkshavn ("GMT0") +#define TZ_America_Dawson ("MST7") +#define TZ_America_Dawson_Creek ("MST7") +#define TZ_America_Denver ("MST7MDT,M3.2.0,M11.1.0") +#define TZ_America_Detroit ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Dominica ("AST4") +#define TZ_America_Edmonton ("MST7MDT,M3.2.0,M11.1.0") +#define TZ_America_Eirunepe ("<-05>5") +#define TZ_America_El_Salvador ("CST6") +#define TZ_America_Fortaleza ("<-03>3") +#define TZ_America_Fort_Nelson ("MST7") +#define TZ_America_Glace_Bay ("AST4ADT,M3.2.0,M11.1.0") +#define TZ_America_Godthab ("<-03>3<-02>,M3.5.0/-2,M10.5.0/-1") +#define TZ_America_Goose_Bay ("AST4ADT,M3.2.0,M11.1.0") +#define TZ_America_Grand_Turk ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Grenada ("AST4") +#define TZ_America_Guadeloupe ("AST4") +#define TZ_America_Guatemala ("CST6") +#define TZ_America_Guayaquil ("<-05>5") +#define TZ_America_Guyana ("<-04>4") +#define TZ_America_Halifax ("AST4ADT,M3.2.0,M11.1.0") +#define TZ_America_Havana ("CST5CDT,M3.2.0/0,M11.1.0/1") +#define TZ_America_Hermosillo ("MST7") +#define TZ_America_Indiana_Indianapolis ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Indiana_Knox ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Indiana_Marengo ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Indiana_Petersburg ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Indiana_Tell_City ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Indiana_Vevay ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Indiana_Vincennes ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Indiana_Winamac ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Inuvik ("MST7MDT,M3.2.0,M11.1.0") +#define TZ_America_Iqaluit ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Jamaica ("EST5") +#define TZ_America_Juneau ("AKST9AKDT,M3.2.0,M11.1.0") +#define TZ_America_Kentucky_Louisville ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Kentucky_Monticello ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Kralendijk ("AST4") +#define TZ_America_La_Paz ("<-04>4") +#define TZ_America_Lima ("<-05>5") +#define TZ_America_Los_Angeles ("PST8PDT,M3.2.0,M11.1.0") +#define TZ_America_Lower_Princes ("AST4") +#define TZ_America_Maceio ("<-03>3") +#define TZ_America_Managua ("CST6") +#define TZ_America_Manaus ("<-04>4") +#define TZ_America_Marigot ("AST4") +#define TZ_America_Martinique ("AST4") +#define TZ_America_Matamoros ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Mazatlan ("MST7MDT,M4.1.0,M10.5.0") +#define TZ_America_Menominee ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Merida ("CST6CDT,M4.1.0,M10.5.0") +#define TZ_America_Metlakatla ("AKST9AKDT,M3.2.0,M11.1.0") +#define TZ_America_Mexico_City ("CST6CDT,M4.1.0,M10.5.0") +#define TZ_America_Miquelon ("<-03>3<-02>,M3.2.0,M11.1.0") +#define TZ_America_Moncton ("AST4ADT,M3.2.0,M11.1.0") +#define TZ_America_Monterrey ("CST6CDT,M4.1.0,M10.5.0") +#define TZ_America_Montevideo ("<-03>3") +#define TZ_America_Montreal ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Montserrat ("AST4") +#define TZ_America_Nassau ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_New_York ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Nipigon ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Nome ("AKST9AKDT,M3.2.0,M11.1.0") +#define TZ_America_Noronha ("<-02>2") +#define TZ_America_North_Dakota_Beulah ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_North_Dakota_Center ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_North_Dakota_New_Salem ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Ojinaga ("MST7MDT,M3.2.0,M11.1.0") +#define TZ_America_Panama ("EST5") +#define TZ_America_Pangnirtung ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Paramaribo ("<-03>3") +#define TZ_America_Phoenix ("MST7") +#define TZ_America_PortmaumPrince ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Port_of_Spain ("AST4") +#define TZ_America_Porto_Velho ("<-04>4") +#define TZ_America_Puerto_Rico ("AST4") +#define TZ_America_Punta_Arenas ("<-03>3") +#define TZ_America_Rainy_River ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Rankin_Inlet ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Recife ("<-03>3") +#define TZ_America_Regina ("CST6") +#define TZ_America_Resolute ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Rio_Branco ("<-05>5") +#define TZ_America_Santarem ("<-03>3") +#define TZ_America_Santiago ("<-04>4<-03>,M9.1.6/24,M4.1.6/24") +#define TZ_America_Santo_Domingo ("AST4") +#define TZ_America_Sao_Paulo ("<-03>3") +#define TZ_America_Scoresbysund ("<-01>1<+00>,M3.5.0/0,M10.5.0/1") +#define TZ_America_Sitka ("AKST9AKDT,M3.2.0,M11.1.0") +#define TZ_America_St_Barthelemy ("AST4") +#define TZ_America_St_Johns ("NST3:30NDT,M3.2.0,M11.1.0") +#define TZ_America_St_Kitts ("AST4") +#define TZ_America_St_Lucia ("AST4") +#define TZ_America_St_Thomas ("AST4") +#define TZ_America_St_Vincent ("AST4") +#define TZ_America_Swift_Current ("CST6") +#define TZ_America_Tegucigalpa ("CST6") +#define TZ_America_Thule ("AST4ADT,M3.2.0,M11.1.0") +#define TZ_America_Thunder_Bay ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Tijuana ("PST8PDT,M3.2.0,M11.1.0") +#define TZ_America_Toronto ("EST5EDT,M3.2.0,M11.1.0") +#define TZ_America_Tortola ("AST4") +#define TZ_America_Vancouver ("PST8PDT,M3.2.0,M11.1.0") +#define TZ_America_Whitehorse ("MST7") +#define TZ_America_Winnipeg ("CST6CDT,M3.2.0,M11.1.0") +#define TZ_America_Yakutat ("AKST9AKDT,M3.2.0,M11.1.0") +#define TZ_America_Yellowknife ("MST7MDT,M3.2.0,M11.1.0") +#define TZ_Antarctica_Casey ("<+11>-11") +#define TZ_Antarctica_Davis ("<+07>-7") +#define TZ_Antarctica_DumontDUrville ("<+10>-10") +#define TZ_Antarctica_Macquarie ("AEST-10AEDT,M10.1.0,M4.1.0/3") +#define TZ_Antarctica_Mawson ("<+05>-5") +#define TZ_Antarctica_McMurdo ("NZST-12NZDT,M9.5.0,M4.1.0/3") +#define TZ_Antarctica_Palmer ("<-03>3") +#define TZ_Antarctica_Rothera ("<-03>3") +#define TZ_Antarctica_Syowa ("<+03>-3") +#define TZ_Antarctica_Troll ("<+00>0<+02>-2,M3.5.0/1,M10.5.0/3") +#define TZ_Antarctica_Vostok ("<+06>-6") +#define TZ_Arctic_Longyearbyen ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Asia_Aden ("<+03>-3") +#define TZ_Asia_Almaty ("<+06>-6") +#define TZ_Asia_Amman ("EET-2EEST,M3.5.4/24,M10.5.5/1") +#define TZ_Asia_Anadyr ("<+12>-12") +#define TZ_Asia_Aqtau ("<+05>-5") +#define TZ_Asia_Aqtobe ("<+05>-5") +#define TZ_Asia_Ashgabat ("<+05>-5") +#define TZ_Asia_Atyrau ("<+05>-5") +#define TZ_Asia_Baghdad ("<+03>-3") +#define TZ_Asia_Bahrain ("<+03>-3") +#define TZ_Asia_Baku ("<+04>-4") +#define TZ_Asia_Bangkok ("<+07>-7") +#define TZ_Asia_Barnaul ("<+07>-7") +#define TZ_Asia_Beirut ("EET-2EEST,M3.5.0/0,M10.5.0/0") +#define TZ_Asia_Bishkek ("<+06>-6") +#define TZ_Asia_Brunei ("<+08>-8") +#define TZ_Asia_Chita ("<+09>-9") +#define TZ_Asia_Choibalsan ("<+08>-8") +#define TZ_Asia_Colombo ("<+0530>-5:30") +#define TZ_Asia_Damascus ("EET-2EEST,M3.5.5/0,M10.5.5/0") +#define TZ_Asia_Dhaka ("<+06>-6") +#define TZ_Asia_Dili ("<+09>-9") +#define TZ_Asia_Dubai ("<+04>-4") +#define TZ_Asia_Dushanbe ("<+05>-5") +#define TZ_Asia_Famagusta ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Asia_Gaza ("EET-2EEST,M3.4.4/48,M10.4.4/49") +#define TZ_Asia_Hebron ("EET-2EEST,M3.4.4/48,M10.4.4/49") +#define TZ_Asia_Ho_Chi_Minh ("<+07>-7") +#define TZ_Asia_Hong_Kong ("HKT-8") +#define TZ_Asia_Hovd ("<+07>-7") +#define TZ_Asia_Irkutsk ("<+08>-8") +#define TZ_Asia_Jakarta ("WIB-7") +#define TZ_Asia_Jayapura ("WIT-9") +#define TZ_Asia_Jerusalem ("IST-2IDT,M3.4.4/26,M10.5.0") +#define TZ_Asia_Kabul ("<+0430>-4:30") +#define TZ_Asia_Kamchatka ("<+12>-12") +#define TZ_Asia_Karachi ("PKT-5") +#define TZ_Asia_Kathmandu ("<+0545>-5:45") +#define TZ_Asia_Khandyga ("<+09>-9") +#define TZ_Asia_Kolkata ("IST-5:30") +#define TZ_Asia_Krasnoyarsk ("<+07>-7") +#define TZ_Asia_Kuala_Lumpur ("<+08>-8") +#define TZ_Asia_Kuching ("<+08>-8") +#define TZ_Asia_Kuwait ("<+03>-3") +#define TZ_Asia_Macau ("CST-8") +#define TZ_Asia_Magadan ("<+11>-11") +#define TZ_Asia_Makassar ("WITA-8") +#define TZ_Asia_Manila ("PST-8") +#define TZ_Asia_Muscat ("<+04>-4") +#define TZ_Asia_Nicosia ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Asia_Novokuznetsk ("<+07>-7") +#define TZ_Asia_Novosibirsk ("<+07>-7") +#define TZ_Asia_Omsk ("<+06>-6") +#define TZ_Asia_Oral ("<+05>-5") +#define TZ_Asia_Phnom_Penh ("<+07>-7") +#define TZ_Asia_Pontianak ("WIB-7") +#define TZ_Asia_Pyongyang ("KST-9") +#define TZ_Asia_Qatar ("<+03>-3") +#define TZ_Asia_Qyzylorda ("<+05>-5") +#define TZ_Asia_Riyadh ("<+03>-3") +#define TZ_Asia_Sakhalin ("<+11>-11") +#define TZ_Asia_Samarkand ("<+05>-5") +#define TZ_Asia_Seoul ("KST-9") +#define TZ_Asia_Shanghai ("CST-8") +#define TZ_Asia_Singapore ("<+08>-8") +#define TZ_Asia_Srednekolymsk ("<+11>-11") +#define TZ_Asia_Taipei ("CST-8") +#define TZ_Asia_Tashkent ("<+05>-5") +#define TZ_Asia_Tbilisi ("<+04>-4") +#define TZ_Asia_Tehran ("<+0330>-3:30<+0430>,J79/24,J263/24") +#define TZ_Asia_Thimphu ("<+06>-6") +#define TZ_Asia_Tokyo ("JST-9") +#define TZ_Asia_Tomsk ("<+07>-7") +#define TZ_Asia_Ulaanbaatar ("<+08>-8") +#define TZ_Asia_Urumqi ("<+06>-6") +#define TZ_Asia_UstmNera ("<+10>-10") +#define TZ_Asia_Vientiane ("<+07>-7") +#define TZ_Asia_Vladivostok ("<+10>-10") +#define TZ_Asia_Yakutsk ("<+09>-9") +#define TZ_Asia_Yangon ("<+0630>-6:30") +#define TZ_Asia_Yekaterinburg ("<+05>-5") +#define TZ_Asia_Yerevan ("<+04>-4") +#define TZ_Atlantic_Azores ("<-01>1<+00>,M3.5.0/0,M10.5.0/1") +#define TZ_Atlantic_Bermuda ("AST4ADT,M3.2.0,M11.1.0") +#define TZ_Atlantic_Canary ("WET0WEST,M3.5.0/1,M10.5.0") +#define TZ_Atlantic_Cape_Verde ("<-01>1") +#define TZ_Atlantic_Faroe ("WET0WEST,M3.5.0/1,M10.5.0") +#define TZ_Atlantic_Madeira ("WET0WEST,M3.5.0/1,M10.5.0") +#define TZ_Atlantic_Reykjavik ("GMT0") +#define TZ_Atlantic_South_Georgia ("<-02>2") +#define TZ_Atlantic_Stanley ("<-03>3") +#define TZ_Atlantic_St_Helena ("GMT0") +#define TZ_Australia_Adelaide ("ACST-9:30ACDT,M10.1.0,M4.1.0/3") +#define TZ_Australia_Brisbane ("AEST-10") +#define TZ_Australia_Broken_Hill ("ACST-9:30ACDT,M10.1.0,M4.1.0/3") +#define TZ_Australia_Currie ("AEST-10AEDT,M10.1.0,M4.1.0/3") +#define TZ_Australia_Darwin ("ACST-9:30") +#define TZ_Australia_Eucla ("<+0845>-8:45") +#define TZ_Australia_Hobart ("AEST-10AEDT,M10.1.0,M4.1.0/3") +#define TZ_Australia_Lindeman ("AEST-10") +#define TZ_Australia_Lord_Howe ("<+1030>-10:30<+11>-11,M10.1.0,M4.1.0") +#define TZ_Australia_Melbourne ("AEST-10AEDT,M10.1.0,M4.1.0/3") +#define TZ_Australia_Perth ("AWST-8") +#define TZ_Australia_Sydney ("AEST-10AEDT,M10.1.0,M4.1.0/3") +#define TZ_Europe_Amsterdam ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Andorra ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Astrakhan ("<+04>-4") +#define TZ_Europe_Athens ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Belgrade ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Berlin ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Bratislava ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Brussels ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Bucharest ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Budapest ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Busingen ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Chisinau ("EET-2EEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Copenhagen ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Dublin ("IST-1GMT0,M10.5.0,M3.5.0/1") +#define TZ_Europe_Gibraltar ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Guernsey ("GMT0BST,M3.5.0/1,M10.5.0") +#define TZ_Europe_Helsinki ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Isle_of_Man ("GMT0BST,M3.5.0/1,M10.5.0") +#define TZ_Europe_Istanbul ("<+03>-3") +#define TZ_Europe_Jersey ("GMT0BST,M3.5.0/1,M10.5.0") +#define TZ_Europe_Kaliningrad ("EET-2") +#define TZ_Europe_Kiev ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Kirov ("<+03>-3") +#define TZ_Europe_Lisbon ("WET0WEST,M3.5.0/1,M10.5.0") +#define TZ_Europe_Ljubljana ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_London ("GMT0BST,M3.5.0/1,M10.5.0") +#define TZ_Europe_Luxembourg ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Madrid ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Malta ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Mariehamn ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Minsk ("<+03>-3") +#define TZ_Europe_Monaco ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Moscow ("MSK-3") +#define TZ_Europe_Oslo ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Paris ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Podgorica ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Prague ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Riga ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Rome ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Samara ("<+04>-4") +#define TZ_Europe_San_Marino ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Sarajevo ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Saratov ("<+04>-4") +#define TZ_Europe_Simferopol ("MSK-3") +#define TZ_Europe_Skopje ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Sofia ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Stockholm ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Tallinn ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Tirane ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Ulyanovsk ("<+04>-4") +#define TZ_Europe_Uzhgorod ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Vaduz ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Vatican ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Vienna ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Vilnius ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Volgograd ("<+04>-4") +#define TZ_Europe_Warsaw ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Zagreb ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Europe_Zaporozhye ("EET-2EEST,M3.5.0/3,M10.5.0/4") +#define TZ_Europe_Zurich ("CET-1CEST,M3.5.0,M10.5.0/3") +#define TZ_Indian_Antananarivo ("EAT-3") +#define TZ_Indian_Chagos ("<+06>-6") +#define TZ_Indian_Christmas ("<+07>-7") +#define TZ_Indian_Cocos ("<+0630>-6:30") +#define TZ_Indian_Comoro ("EAT-3") +#define TZ_Indian_Kerguelen ("<+05>-5") +#define TZ_Indian_Mahe ("<+04>-4") +#define TZ_Indian_Maldives ("<+05>-5") +#define TZ_Indian_Mauritius ("<+04>-4") +#define TZ_Indian_Mayotte ("EAT-3") +#define TZ_Indian_Reunion ("<+04>-4") +#define TZ_Pacific_Apia ("<+13>-13<+14>,M9.5.0/3,M4.1.0/4") +#define TZ_Pacific_Auckland ("NZST-12NZDT,M9.5.0,M4.1.0/3") +#define TZ_Pacific_Bougainville ("<+11>-11") +#define TZ_Pacific_Chatham ("<+1245>-12:45<+1345>,M9.5.0/2:45,M4.1.0/3:45") +#define TZ_Pacific_Chuuk ("<+10>-10") +#define TZ_Pacific_Easter ("<-06>6<-05>,M9.1.6/22,M4.1.6/22") +#define TZ_Pacific_Efate ("<+11>-11") +#define TZ_Pacific_Enderbury ("<+13>-13") +#define TZ_Pacific_Fakaofo ("<+13>-13") +#define TZ_Pacific_Fiji ("<+12>-12<+13>,M11.2.0,M1.2.3/99") +#define TZ_Pacific_Funafuti ("<+12>-12") +#define TZ_Pacific_Galapagos ("<-06>6") +#define TZ_Pacific_Gambier ("<-09>9") +#define TZ_Pacific_Guadalcanal ("<+11>-11") +#define TZ_Pacific_Guam ("ChST-10") +#define TZ_Pacific_Honolulu ("HST10") +#define TZ_Pacific_Kiritimati ("<+14>-14") +#define TZ_Pacific_Kosrae ("<+11>-11") +#define TZ_Pacific_Kwajalein ("<+12>-12") +#define TZ_Pacific_Majuro ("<+12>-12") +#define TZ_Pacific_Marquesas ("<-0930>9:30") +#define TZ_Pacific_Midway ("SST11") +#define TZ_Pacific_Nauru ("<+12>-12") +#define TZ_Pacific_Niue ("<-11>11") +#define TZ_Pacific_Norfolk ("<+11>-11<+12>,M10.1.0,M4.1.0/3") +#define TZ_Pacific_Noumea ("<+11>-11") +#define TZ_Pacific_Pago_Pago ("SST11") +#define TZ_Pacific_Palau ("<+09>-9") +#define TZ_Pacific_Pitcairn ("<-08>8") +#define TZ_Pacific_Pohnpei ("<+11>-11") +#define TZ_Pacific_Port_Moresby ("<+10>-10") +#define TZ_Pacific_Rarotonga ("<-10>10") +#define TZ_Pacific_Saipan ("ChST-10") +#define TZ_Pacific_Tahiti ("<-10>10") +#define TZ_Pacific_Tarawa ("<+12>-12") +#define TZ_Pacific_Tongatapu ("<+13>-13") +#define TZ_Pacific_Wake ("<+12>-12") +#define TZ_Pacific_Wallis ("<+12>-12") +#define TZ_Etc_GMT ("GMT0") +#define TZ_Etc_GMTm0 ("GMT0") +#define TZ_Etc_GMTm1 ("<+01>-1") +#define TZ_Etc_GMTm2 ("<+02>-2") +#define TZ_Etc_GMTm3 ("<+03>-3") +#define TZ_Etc_GMTm4 ("<+04>-4") +#define TZ_Etc_GMTm5 ("<+05>-5") +#define TZ_Etc_GMTm6 ("<+06>-6") +#define TZ_Etc_GMTm7 ("<+07>-7") +#define TZ_Etc_GMTm8 ("<+08>-8") +#define TZ_Etc_GMTm9 ("<+09>-9") +#define TZ_Etc_GMTm10 ("<+10>-10") +#define TZ_Etc_GMTm11 ("<+11>-11") +#define TZ_Etc_GMTm12 ("<+12>-12") +#define TZ_Etc_GMTm13 ("<+13>-13") +#define TZ_Etc_GMTm14 ("<+14>-14") +#define TZ_Etc_GMT0 ("GMT0") +#define TZ_Etc_GMTp0 ("GMT0") +#define TZ_Etc_GMTp1 ("<-01>1") +#define TZ_Etc_GMTp2 ("<-02>2") +#define TZ_Etc_GMTp3 ("<-03>3") +#define TZ_Etc_GMTp4 ("<-04>4") +#define TZ_Etc_GMTp5 ("<-05>5") +#define TZ_Etc_GMTp6 ("<-06>6") +#define TZ_Etc_GMTp7 ("<-07>7") +#define TZ_Etc_GMTp8 ("<-08>8") +#define TZ_Etc_GMTp9 ("<-09>9") +#define TZ_Etc_GMTp10 ("<-10>10") +#define TZ_Etc_GMTp11 ("<-11>11") +#define TZ_Etc_GMTp12 ("<-12>12") +#define TZ_Etc_UCT ("UTC0") +#define TZ_Etc_UTC ("UTC0") +#define TZ_Etc_Greenwich ("GMT0") +#define TZ_Etc_Universal ("UTC0") +#define TZ_Etc_Zulu ("UTC0") + +//////////////////////////////////////////////////////////// + +#define TIMEZONE_MAX_LEN 50 + +static const char TZ_NAME[][TIMEZONE_MAX_LEN] /*PROGMEM*/ = +{ +#if USING_AFRICA + "Africa/Abidjan", //PSTR("GMT0") + "Africa/Accra", //PSTR("GMT0") + "Africa/Addis_Ababa", //PSTR("EAT-3") + "Africa/Algiers", //PSTR("CET-1") + "Africa/Asmara", //PSTR("EAT-3") + "Africa/Bamako", //PSTR("GMT0") + "Africa/Bangui", //PSTR("WAT-1") + "Africa/Banjul", //PSTR("GMT0") + "Africa/Bissau", //PSTR("GMT0") + "Africa/Blantyre", //PSTR("CAT-2") + "Africa/Brazzaville", //PSTR("WAT-1") + "Africa/Bujumbura", //PSTR("CAT-2") + "Africa/Cairo", //PSTR("EET-2") + "Africa/Casablanca", //PSTR("<+01>-1") + "Africa/Ceuta", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Africa/Conakry", //PSTR("GMT0") + "Africa/Dakar", //PSTR("GMT0") + "Africa/Dar_es_Salaam", //PSTR("EAT-3") + "Africa/Djibouti", //PSTR("EAT-3") + "Africa/Douala", //PSTR("WAT-1") + "Africa/El_Aaiun", //PSTR("<+01>-1") + "Africa/Freetown", //PSTR("GMT0") + "Africa/Gaborone", //PSTR("CAT-2") + "Africa/Harare", //PSTR("CAT-2") + "Africa/Johannesburg", //PSTR("SAST-2") + "Africa/Juba", //PSTR("EAT-3") + "Africa/Kampala", //PSTR("EAT-3") + "Africa/Khartoum", //PSTR("CAT-2") + "Africa/Kigali", //PSTR("CAT-2") + "Africa/Kinshasa", //PSTR("WAT-1") + "Africa/Lagos", //PSTR("WAT-1") + "Africa/Libreville", //PSTR("WAT-1") + "Africa/Lome", //PSTR("GMT0") + "Africa/Luanda", //PSTR("WAT-1") + "Africa/Lubumbashi", //PSTR("CAT-2") + "Africa/Lusaka", //PSTR("CAT-2") + "Africa/Malabo", //PSTR("WAT-1") + "Africa/Maputo", //PSTR("CAT-2") + "Africa/Maseru", //PSTR("SAST-2") + "Africa/Mbabane", //PSTR("SAST-2") + "Africa/Mogadishu", //PSTR("EAT-3") + "Africa/Monrovia", //PSTR("GMT0") + "Africa/Nairobi", //PSTR("EAT-3") + "Africa/Ndjamena", //PSTR("WAT-1") + "Africa/Niamey", //PSTR("WAT-1") + "Africa/Nouakchott", //PSTR("GMT0") + "Africa/Ouagadougou", //PSTR("GMT0") + "Africa/PortomNovo", //PSTR("WAT-1") + "Africa/Sao_Tome", //PSTR("GMT0") + "Africa/Tripoli", //PSTR("EET-2") + "Africa/Tunis", //PSTR("CET-1") + "Africa/Windhoek", //PSTR("CAT-2") +#endif + + +#if USING_AMERICA + "America/Adak", //PSTR("HST10HDT",M3.2.0",M11.1.0") + "America/Anchorage", //PSTR("AKST9AKDT",M3.2.0",M11.1.0") + "America/Anguilla", //PSTR("AST4") + "America/Antigua", //PSTR("AST4") + "America/Araguaina", //PSTR("<-03>3") + "America/Argentina/Buenos_Aires", //PSTR("<-03>3") + "America/Argentina/Catamarca", //PSTR("<-03>3") + "America/Argentina/Cordoba", //PSTR("<-03>3") + "America/Argentina/Jujuy", //PSTR("<-03>3") + "America/Argentina/La_Rioja", //PSTR("<-03>3") + "America/Argentina/Mendoza", //PSTR("<-03>3") + "America/Argentina/Rio_Gallegos", //PSTR("<-03>3") + "America/Argentina/Salta", //PSTR("<-03>3") + "America/Argentina/San_Juan", //PSTR("<-03>3") + "America/Argentina/San_Luis", //PSTR("<-03>3") + "America/Argentina/Tucuman", //PSTR("<-03>3") + "America/Argentina/Ushuaia", //PSTR("<-03>3") + "America/Aruba", //PSTR("AST4") + "America/Asuncion", //PSTR("<-04>4<-03>",M10.1.0/0",M3.4.0/0") + "America/Atikokan", //PSTR("EST5") + "America/Bahia", //PSTR("<-03>3") + "America/Bahia_Banderas", //PSTR("CST6CDT",M4.1.0",M10.5.0") + "America/Barbados", //PSTR("AST4") + "America/Belem", //PSTR("<-03>3") + "America/Belize", //PSTR("CST6") + "America/BlancmSablon", //PSTR("AST4") + "America/Boa_Vista", //PSTR("<-04>4") + "America/Bogota", //PSTR("<-05>5") + "America/Boise", //PSTR("MST7MDT",M3.2.0",M11.1.0") + "America/Cambridge_Bay", //PSTR("MST7MDT",M3.2.0",M11.1.0") + "America/Campo_Grande", //PSTR("<-04>4") + "America/Cancun", //PSTR("EST5") + "America/Caracas", //PSTR("<-04>4") + "America/Cayenne", //PSTR("<-03>3") + "America/Cayman", //PSTR("EST5") + "America/Chicago", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Chihuahua", //PSTR("MST7MDT",M4.1.0",M10.5.0") + "America/Costa_Rica", //PSTR("CST6") + "America/Creston", //PSTR("MST7") + "America/Cuiaba", //PSTR("<-04>4") + "America/Curacao", //PSTR("AST4") + "America/Danmarkshavn", //PSTR("GMT0") + "America/Dawson", //PSTR("MST7") + "America/Dawson_Creek", //PSTR("MST7") + "America/Denver", //PSTR("MST7MDT",M3.2.0",M11.1.0") + "America/Detroit", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Dominica", //PSTR("AST4") + "America/Edmonton", //PSTR("MST7MDT",M3.2.0",M11.1.0") + "America/Eirunepe", //PSTR("<-05>5") + "America/El_Salvador", //PSTR("CST6") + "America/Fortaleza", //PSTR("<-03>3") + "America/Fort_Nelson", //PSTR("MST7") + "America/Glace_Bay", //PSTR("AST4ADT",M3.2.0",M11.1.0") + "America/Godthab", //PSTR("<-03>3<-02>",M3.5.0/-2",M10.5.0/-1") + "America/Goose_Bay", //PSTR("AST4ADT",M3.2.0",M11.1.0") + "America/Grand_Turk", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Grenada", //PSTR("AST4") + "America/Guadeloupe", //PSTR("AST4") + "America/Guatemala", //PSTR("CST6") + "America/Guayaquil", //PSTR("<-05>5") + "America/Guyana", //PSTR("<-04>4") + "America/Halifax", //PSTR("AST4ADT",M3.2.0",M11.1.0") + "America/Havana", //PSTR("CST5CDT",M3.2.0/0",M11.1.0/1") + "America/Hermosillo", //PSTR("MST7") + "America/Indiana_Indianapolis", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Indiana_Knox", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Indiana_Marengo", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Indiana_Petersburg", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Indiana_Tell_City", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Indiana_Vevay", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Indiana_Vincennes", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Indiana_Winamac", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Inuvik", //PSTR("MST7MDT",M3.2.0",M11.1.0") + "America/Iqaluit", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Jamaica", //PSTR("EST5") + "America/Juneau", //PSTR("AKST9AKDT",M3.2.0",M11.1.0") + "America/Kentucky_Louisville", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Kentucky_Monticello", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Kralendijk", //PSTR("AST4") + "America/La_Paz", //PSTR("<-04>4") + "America/Lima", //PSTR("<-05>5") + "America/Los_Angeles", //PSTR("PST8PDT",M3.2.0",M11.1.0") + "America/Lower_Princes", //PSTR("AST4") + "America/Maceio", //PSTR("<-03>3") + "America/Managua", //PSTR("CST6") + "America/Manaus", //PSTR("<-04>4") + "America/Marigot", //PSTR("AST4") + "America/Martinique", //PSTR("AST4") + "America/Matamoros", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Mazatlan", //PSTR("MST7MDT",M4.1.0",M10.5.0") + "America/Menominee", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Merida", //PSTR("CST6CDT",M4.1.0",M10.5.0") + "America/Metlakatla", //PSTR("AKST9AKDT",M3.2.0",M11.1.0") + "America/Mexico_City", //PSTR("CST6CDT",M4.1.0",M10.5.0") + "America/Miquelon", //PSTR("<-03>3<-02>",M3.2.0",M11.1.0") + "America/Moncton", //PSTR("AST4ADT",M3.2.0",M11.1.0") + "America/Monterrey", //PSTR("CST6CDT",M4.1.0",M10.5.0") + "America/Montevideo", //PSTR("<-03>3") + "America/Montreal", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Montserrat", //PSTR("AST4") + "America/Nassau", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/New_York", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Nipigon", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Nome", //PSTR("AKST9AKDT",M3.2.0",M11.1.0") + "America/Noronha", //PSTR("<-02>2") + "America/North_Dakota_Beulah", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/North_Dakota_Center", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/North_Dakota_New_Salem", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Ojinaga", //PSTR("MST7MDT",M3.2.0",M11.1.0") + "America/Panama", //PSTR("EST5") + "America/Pangnirtung", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Paramaribo", //PSTR("<-03>3") + "America/Phoenix", //PSTR("MST7") + "America/PortmaumPrince", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Port_of_Spain", //PSTR("AST4") + "America/Porto_Velho", //PSTR("<-04>4") + "America/Puerto_Rico", //PSTR("AST4") + "America/Punta_Arenas", //PSTR("<-03>3") + "America/Rainy_River", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Rankin_Inlet", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Recife", //PSTR("<-03>3") + "America/Regina", //PSTR("CST6") + "America/Resolute", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Rio_Branco", //PSTR("<-05>5") + "America/Santarem", //PSTR("<-03>3") + "America/Santiago", //PSTR("<-04>4<-03>",M9.1.6/24",M4.1.6/24") + "America/Santo_Domingo", //PSTR("AST4") + "America/Sao_Paulo", //PSTR("<-03>3") + "America/Scoresbysund", //PSTR("<-01>1<+00>",M3.5.0/0",M10.5.0/1") + "America/Sitka", //PSTR("AKST9AKDT",M3.2.0",M11.1.0") + "America/St_Barthelemy", //PSTR("AST4") + "America/St_Johns", //PSTR("NST3:30NDT",M3.2.0",M11.1.0") + "America/St_Kitts", //PSTR("AST4") + "America/St_Lucia", //PSTR("AST4") + "America/St_Thomas", //PSTR("AST4") + "America/St_Vincent", //PSTR("AST4") + "America/Swift_Current", //PSTR("CST6") + "America/Tegucigalpa", //PSTR("CST6") + "America/Thule", //PSTR("AST4ADT",M3.2.0",M11.1.0") + "America/Thunder_Bay", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Tijuana", //PSTR("PST8PDT",M3.2.0",M11.1.0") + "America/Toronto", //PSTR("EST5EDT",M3.2.0",M11.1.0") + "America/Tortola", //PSTR("AST4") + "America/Vancouver", //PSTR("PST8PDT",M3.2.0",M11.1.0") + "America/Whitehorse", //PSTR("MST7") + "America/Winnipeg", //PSTR("CST6CDT",M3.2.0",M11.1.0") + "America/Yakutat", //PSTR("AKST9AKDT",M3.2.0",M11.1.0") + "America/Yellowknife", //PSTR("MST7MDT",M3.2.0",M11.1.0") +#endif + +#if USING_ANTARCTICA + "Antarctica/Casey", //PSTR("<+11>-11") + "Antarctica/Davis", //PSTR("<+07>-7") + "Antarctica/DumontDUrville", //PSTR("<+10>-10") + "Antarctica/Macquarie", //PSTR("AEST-10AEDT",M10.1.0",M4.1.0/3") + "Antarctica/Mawson", //PSTR("<+05>-5") + "Antarctica/McMurdo", //PSTR("NZST-12NZDT",M9.5.0",M4.1.0/3") + "Antarctica/Palmer", //PSTR("<-03>3") + "Antarctica/Rothera", //PSTR("<-03>3") + "Antarctica/Syowa", //PSTR("<+03>-3") + "Antarctica/Troll", //PSTR("<+00>0<+02>-2",M3.5.0/1",M10.5.0/3") + "Antarctica/Vostok", //PSTR("<+06>-6") + "Arctic/Longyearbyen", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") +#endif + +#if USING_ASIA + "Asia/Aden", //PSTR("<+03>-3") + "Asia/Almaty", //PSTR("<+06>-6") + "Asia/Amman", //PSTR("EET-2EEST",M3.5.4/24",M10.5.5/1") + "Asia/Anadyr", //PSTR("<+12>-12") + "Asia/Aqtau", //PSTR("<+05>-5") + "Asia/Aqtobe", //PSTR("<+05>-5") + "Asia/Ashgabat", //PSTR("<+05>-5") + "Asia/Atyrau", //PSTR("<+05>-5") + "Asia/Baghdad", //PSTR("<+03>-3") + "Asia/Bahrain", //PSTR("<+03>-3") + "Asia/Baku", //PSTR("<+04>-4") + "Asia/Bangkok", //PSTR("<+07>-7") + "Asia/Barnaul", //PSTR("<+07>-7") + "Asia/Beirut", //PSTR("EET-2EEST",M3.5.0/0",M10.5.0/0") + "Asia/Bishkek", //PSTR("<+06>-6") + "Asia/Brunei", //PSTR("<+08>-8") + "Asia/Chita", //PSTR("<+09>-9") + "Asia/Choibalsan", //PSTR("<+08>-8") + "Asia/Colombo", //PSTR("<+0530>-5:30") + "Asia/Damascus", //PSTR("EET-2EEST",M3.5.5/0",M10.5.5/0") + "Asia/Dhaka", //PSTR("<+06>-6") + "Asia/Dili", //PSTR("<+09>-9") + "Asia/Dubai", //PSTR("<+04>-4") + "Asia/Dushanbe", //PSTR("<+05>-5") + "Asia/Famagusta", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Asia/Gaza", //PSTR("EET-2EEST",M3.4.4/48",M10.4.4/49") + "Asia/Hebron", //PSTR("EET-2EEST",M3.4.4/48",M10.4.4/49") + "Asia/Ho_Chi_Minh", //PSTR("<+07>-7") + "Asia/Hong_Kong", //PSTR("HKT-8") + "Asia/Hovd", //PSTR("<+07>-7") + "Asia/Irkutsk", //PSTR("<+08>-8") + "Asia/Jakarta", //PSTR("WIB-7") + "Asia/Jayapura", //PSTR("WIT-9") + "Asia/Jerusalem", //PSTR("IST-2IDT",M3.4.4/26",M10.5.0") + "Asia/Kabul", //PSTR("<+0430>-4:30") + "Asia/Kamchatka", //PSTR("<+12>-12") + "Asia/Karachi", //PSTR("PKT-5") + "Asia/Kathmandu", //PSTR("<+0545>-5:45") + "Asia/Khandyga", //PSTR("<+09>-9") + "Asia/Kolkata", //PSTR("IST-5:30") + "Asia/Krasnoyarsk", //PSTR("<+07>-7") + "Asia/Kuala_Lumpur", //PSTR("<+08>-8") + "Asia/Kuching", //PSTR("<+08>-8") + "Asia/Kuwait", //PSTR("<+03>-3") + "Asia/Macau", //PSTR("CST-8") + "Asia/Magadan", //PSTR("<+11>-11") + "Asia/Makassar", //PSTR("WITA-8") + "Asia/Manila", //PSTR("PST-8") + "Asia/Muscat", //PSTR("<+04>-4") + "Asia/Nicosia", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Asia/Novokuznetsk", //PSTR("<+07>-7") + "Asia/Novosibirsk", //PSTR("<+07>-7") + "Asia/Omsk", //PSTR("<+06>-6") + "Asia/Oral", //PSTR("<+05>-5") + "Asia/Phnom_Penh", //PSTR("<+07>-7") + "Asia/Pontianak", //PSTR("WIB-7") + "Asia/Pyongyang", //PSTR("KST-9") + "Asia/Qatar", //PSTR("<+03>-3") + "Asia/Qyzylorda", //PSTR("<+05>-5") + "Asia/Riyadh", //PSTR("<+03>-3") + "Asia/Sakhalin", //PSTR("<+11>-11") + "Asia/Samarkand", //PSTR("<+05>-5") + "Asia/Seoul", //PSTR("KST-9") + "Asia/Shanghai", //PSTR("CST-8") + "Asia/Singapore", //PSTR("<+08>-8") + "Asia/Srednekolymsk", //PSTR("<+11>-11") + "Asia/Taipei", //PSTR("CST-8") + "Asia/Tashkent", //PSTR("<+05>-5") + "Asia/Tbilisi", //PSTR("<+04>-4") + "Asia/Tehran", //PSTR("<+0330>-3:30<+0430>",J79/24",J263/24") + "Asia/Thimphu", //PSTR("<+06>-6") + "Asia/Tokyo", //PSTR("JST-9") + "Asia/Tomsk", //PSTR("<+07>-7") + "Asia/Ulaanbaatar", //PSTR("<+08>-8") + "Asia/Urumqi", //PSTR("<+06>-6") + "Asia/UstmNera", //PSTR("<+10>-10") + "Asia/Vientiane", //PSTR("<+07>-7") + "Asia/Vladivostok", //PSTR("<+10>-10") + "Asia/Yakutsk", //PSTR("<+09>-9") + "Asia/Yangon", //PSTR("<+0630>-6:30") + "Asia/Yekaterinburg", //PSTR("<+05>-5") + "Asia/Yerevan", //PSTR("<+04>-4") +#endif + +#if USING_ATLANTIC + "Atlantic/Azores", //PSTR("<-01>1<+00>",M3.5.0/0",M10.5.0/1") + "Atlantic/Bermuda", //PSTR("AST4ADT",M3.2.0",M11.1.0") + "Atlantic/Canary", //PSTR("WET0WEST",M3.5.0/1",M10.5.0") + "Atlantic/Cape_Verde", //PSTR("<-01>1") + "Atlantic/Faroe", //PSTR("WET0WEST",M3.5.0/1",M10.5.0") + "Atlantic/Madeira", //PSTR("WET0WEST",M3.5.0/1",M10.5.0") + "Atlantic/Reykjavik", //PSTR("GMT0") + "Atlantic/South_Georgia", //PSTR("<-02>2") + "Atlantic/Stanley", //PSTR("<-03>3") + "Atlantic/St_Helena", //PSTR("GMT0") +#endif + +#if USING_AUSTRALIA + "Australia/Adelaide", //PSTR("ACST-9:30ACDT",M10.1.0",M4.1.0/3") + "Australia/Brisbane", //PSTR("AEST-10") + "Australia/Broken_Hill", //PSTR("ACST-9:30ACDT",M10.1.0",M4.1.0/3") + "Australia/Currie", //PSTR("AEST-10AEDT",M10.1.0",M4.1.0/3") + "Australia/Darwin", //PSTR("ACST-9:30") + "Australia/Eucla", //PSTR("<+0845>-8:45") + "Australia/Hobart", //PSTR("AEST-10AEDT",M10.1.0",M4.1.0/3") + "Australia/Lindeman", //PSTR("AEST-10") + "Australia/Lord_Howe", //PSTR("<+1030>-10:30<+11>-11",M10.1.0",M4.1.0") + "Australia/Melbourne", //PSTR("AEST-10AEDT",M10.1.0",M4.1.0/3") + "Australia/Perth", //PSTR("AWST-8") + "Australia/Sydney", //PSTR("AEST-10AEDT",M10.1.0",M4.1.0/3") +#endif + +#if USING_EUROPE + "Europe/Amsterdam", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Andorra", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Astrakhan", //PSTR("<+04>-4") + "Europe/Athens", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Belgrade", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Berlin", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Bratislava", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Brussels", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Bucharest", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Budapest", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Busingen", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Chisinau", //PSTR("EET-2EEST",M3.5.0",M10.5.0/3") + "Europe/Copenhagen", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Dublin", //PSTR("IST-1GMT0",M10.5.0",M3.5.0/1") + "Europe/Gibraltar", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Guernsey", //PSTR("GMT0BST",M3.5.0/1",M10.5.0") + "Europe/Helsinki", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Isle_of_Man", //PSTR("GMT0BST",M3.5.0/1",M10.5.0") + "Europe/Istanbul", //PSTR("<+03>-3") + "Europe/Jersey", //PSTR("GMT0BST",M3.5.0/1",M10.5.0") + "Europe/Kaliningrad", //PSTR("EET-2") + "Europe/Kiev", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Kirov", //PSTR("<+03>-3") + "Europe/Lisbon", //PSTR("WET0WEST",M3.5.0/1",M10.5.0") + "Europe/Ljubljana", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/London", //PSTR("GMT0BST",M3.5.0/1",M10.5.0") + "Europe/Luxembourg", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Madrid", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Malta", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Mariehamn", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Minsk", //PSTR("<+03>-3") + "Europe/Monaco", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Moscow", //PSTR("MSK-3") + "Europe/Oslo", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Paris", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Podgorica", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Prague", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Riga", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Rome", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Samara", //PSTR("<+04>-4") + "Europe/San_Marino", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Sarajevo", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Saratov", //PSTR("<+04>-4") + "Europe/Simferopol", //PSTR("MSK-3") + "Europe/Skopje", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Sofia", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Stockholm", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Tallinn", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Tirane", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Ulyanovsk", //PSTR("<+04>-4") + "Europe/Uzhgorod", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Vaduz", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Vatican", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Vienna", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Vilnius", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Volgograd", //PSTR("<+04>-4") + "Europe/Warsaw", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Zagreb", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") + "Europe/Zaporozhye", //PSTR("EET-2EEST",M3.5.0/3",M10.5.0/4") + "Europe/Zurich", //PSTR("CET-1CEST",M3.5.0",M10.5.0/3") +#endif + +#if USING_INDIAN + "Indian/Antananarivo", //PSTR("EAT-3") + "Indian/Chagos", //PSTR("<+06>-6") + "Indian/Christmas", //PSTR("<+07>-7") + "Indian/Cocos", //PSTR("<+0630>-6:30") + "Indian/Comoro", //PSTR("EAT-3") + "Indian/Kerguelen", //PSTR("<+05>-5") + "Indian/Mahe", //PSTR("<+04>-4") + "Indian/Maldives", //PSTR("<+05>-5") + "Indian/Mauritius", //PSTR("<+04>-4") + "Indian/Mayotte", //PSTR("EAT-3") + "Indian/Reunion", //PSTR("<+04>-4") +#endif + +#if USING_PACIFIC + "Pacific/Apia", //PSTR("<+13>-13<+14>",M9.5.0/3",M4.1.0/4") + "Pacific/Auckland", //PSTR("NZST-12NZDT",M9.5.0",M4.1.0/3") + "Pacific/Bougainville", //PSTR("<+11>-11") + "Pacific/Chatham", //PSTR("<+1245>-12:45<+1345>",M9.5.0/2:45",M4.1.0/3:45") + "Pacific/Chuuk", //PSTR("<+10>-10") + "Pacific/Easter", //PSTR("<-06>6<-05>",M9.1.6/22",M4.1.6/22") + "Pacific/Efate", //PSTR("<+11>-11") + "Pacific/Enderbury", //PSTR("<+13>-13") + "Pacific/Fakaofo", //PSTR("<+13>-13") + "Pacific/Fiji", //PSTR("<+12>-12<+13>",M11.2.0",M1.2.3/99") + "Pacific/Funafuti", //PSTR("<+12>-12") + "Pacific/Galapagos", //PSTR("<-06>6") + "Pacific/Gambier", //PSTR("<-09>9") + "Pacific/Guadalcanal", //PSTR("<+11>-11") + "Pacific/Guam", //PSTR("ChST-10") + "Pacific/Honolulu", //PSTR("HST10") + "Pacific/Kiritimati", //PSTR("<+14>-14") + "Pacific/Kosrae", //PSTR("<+11>-11") + "Pacific/Kwajalein", //PSTR("<+12>-12") + "Pacific/Majuro", //PSTR("<+12>-12") + "Pacific/Marquesas", //PSTR("<-0930>9:30") + "Pacific/Midway", //PSTR("SST11") + "Pacific/Nauru", //PSTR("<+12>-12") + "Pacific/Niue", //PSTR("<-11>11") + "Pacific/Norfolk", //PSTR("<+11>-11<+12>",M10.1.0",M4.1.0/3") + "Pacific/Noumea", //PSTR("<+11>-11") + "Pacific/Pago_Pago", //PSTR("SST11") + "Pacific/Palau", //PSTR("<+09>-9") + "Pacific/Pitcairn", //PSTR("<-08>8") + "Pacific/Pohnpei", //PSTR("<+11>-11") + "Pacific/Port_Moresby", //PSTR("<+10>-10") + "Pacific/Rarotonga", //PSTR("<-10>10") + "Pacific/Saipan", //PSTR("ChST-10") + "Pacific/Tahiti", //PSTR("<-10>10") + "Pacific/Tarawa", //PSTR("<+12>-12") + "Pacific/Tongatapu", //PSTR("<+13>-13") + "Pacific/Wake", //PSTR("<+12>-12") + "Pacific/Wallis", //PSTR("<+12>-12") +#endif + +#if USING_ETC_GMT + "Etc/GMT", //PSTR("GMT0") + "Etc/GMTm0", //PSTR("GMT0") + "Etc/GMTm1", //PSTR("<+01>-1") + "Etc/GMTm2", //PSTR("<+02>-2") + "Etc/GMTm3", //PSTR("<+03>-3") + "Etc/GMTm4", //PSTR("<+04>-4") + "Etc/GMTm5", //PSTR("<+05>-5") + "Etc/GMTm6", //PSTR("<+06>-6") + "Etc/GMTm7", //PSTR("<+07>-7") + "Etc/GMTm8", //PSTR("<+08>-8") + "Etc/GMTm9", //PSTR("<+09>-9") + "Etc/GMTm10", //PSTR("<+10>-10") + "Etc/GMTm11", //PSTR("<+11>-11") + "Etc/GMTm12", //PSTR("<+12>-12") + "Etc/GMTm13", //PSTR("<+13>-13") + "Etc/GMTm14", //PSTR("<+14>-14") + "Etc/GMT0", //PSTR("GMT0") + "Etc/GMTp0", //PSTR("GMT0") + "Etc/GMTp1", //PSTR("<-01>1") + "Etc/GMTp2", //PSTR("<-02>2") + "Etc/GMTp3", //PSTR("<-03>3") + "Etc/GMTp4", //PSTR("<-04>4") + "Etc/GMTp5", //PSTR("<-05>5") + "Etc/GMTp6", //PSTR("<-06>6") + "Etc/GMTp7", //PSTR("<-07>7") + "Etc/GMTp8", //PSTR("<-08>8") + "Etc/GMTp9", //PSTR("<-09>9") + "Etc/GMTp10", //PSTR("<-10>10") + "Etc/GMTp11", //PSTR("<-11>11") + "Etc/GMTp12", //PSTR("<-12>12") + "Etc/UCT", //PSTR("UTC0") + "Etc/UTC", //PSTR("UTC0") + "Etc/Greenwich", //PSTR("GMT0") + "Etc/Universal", //PSTR("UTC0") + "Etc/Zulu", //PSTR("UTC0") +#endif +}; + +//////////////////////////////////////////////////////////// + +static const char ESP_TZ_NAME[][TIMEZONE_MAX_LEN] /*PROGMEM*/ = +{ +#if USING_AFRICA + TZ_Africa_Abidjan, //PSTR("GMT0") + TZ_Africa_Accra, //PSTR("GMT0") + TZ_Africa_Addis_Ababa, //PSTR("EAT-3") + TZ_Africa_Algiers, //PSTR("CET-1") + TZ_Africa_Asmara, //PSTR("EAT-3") + TZ_Africa_Bamako, //PSTR("GMT0") + TZ_Africa_Bangui, //PSTR("WAT-1") + TZ_Africa_Banjul, //PSTR("GMT0") + TZ_Africa_Bissau, //PSTR("GMT0") + TZ_Africa_Blantyre, //PSTR("CAT-2") + TZ_Africa_Brazzaville, //PSTR("WAT-1") + TZ_Africa_Bujumbura, //PSTR("CAT-2") + TZ_Africa_Cairo, //PSTR("EET-2") + TZ_Africa_Casablanca, //PSTR("<+01>-1") + TZ_Africa_Ceuta, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Africa_Conakry, //PSTR("GMT0") + TZ_Africa_Dakar, //PSTR("GMT0") + TZ_Africa_Dar_es_Salaam, //PSTR("EAT-3") + TZ_Africa_Djibouti, //PSTR("EAT-3") + TZ_Africa_Douala, //PSTR("WAT-1") + TZ_Africa_El_Aaiun, //PSTR("<+01>-1") + TZ_Africa_Freetown, //PSTR("GMT0") + TZ_Africa_Gaborone, //PSTR("CAT-2") + TZ_Africa_Harare, //PSTR("CAT-2") + TZ_Africa_Johannesburg, //PSTR("SAST-2") + TZ_Africa_Juba, //PSTR("EAT-3") + TZ_Africa_Kampala, //PSTR("EAT-3") + TZ_Africa_Khartoum, //PSTR("CAT-2") + TZ_Africa_Kigali, //PSTR("CAT-2") + TZ_Africa_Kinshasa, //PSTR("WAT-1") + TZ_Africa_Lagos, //PSTR("WAT-1") + TZ_Africa_Libreville, //PSTR("WAT-1") + TZ_Africa_Lome, //PSTR("GMT0") + TZ_Africa_Luanda, //PSTR("WAT-1") + TZ_Africa_Lubumbashi, //PSTR("CAT-2") + TZ_Africa_Lusaka, //PSTR("CAT-2") + TZ_Africa_Malabo, //PSTR("WAT-1") + TZ_Africa_Maputo, //PSTR("CAT-2") + TZ_Africa_Maseru, //PSTR("SAST-2") + TZ_Africa_Mbabane, //PSTR("SAST-2") + TZ_Africa_Mogadishu, //PSTR("EAT-3") + TZ_Africa_Monrovia, //PSTR("GMT0") + TZ_Africa_Nairobi, //PSTR("EAT-3") + TZ_Africa_Ndjamena, //PSTR("WAT-1") + TZ_Africa_Niamey, //PSTR("WAT-1") + TZ_Africa_Nouakchott, //PSTR("GMT0") + TZ_Africa_Ouagadougou, //PSTR("GMT0") + TZ_Africa_PortomNovo, //PSTR("WAT-1") + TZ_Africa_Sao_Tome, //PSTR("GMT0") + TZ_Africa_Tripoli, //PSTR("EET-2") + TZ_Africa_Tunis, //PSTR("CET-1") + TZ_Africa_Windhoek, //PSTR("CAT-2") +#endif + +#if USING_AMERICA + TZ_America_Adak, //PSTR("HST10HDT,M3.2.0,M11.1.0") + TZ_America_Anchorage, //PSTR("AKST9AKDT,M3.2.0,M11.1.0") + TZ_America_Anguilla, //PSTR("AST4") + TZ_America_Antigua, //PSTR("AST4") + TZ_America_Araguaina, //PSTR("<-03>3") + TZ_America_Argentina_Buenos_Aires, //PSTR("<-03>3") + TZ_America_Argentina_Catamarca, //PSTR("<-03>3") + TZ_America_Argentina_Cordoba, //PSTR("<-03>3") + TZ_America_Argentina_Jujuy, //PSTR("<-03>3") + TZ_America_Argentina_La_Rioja, //PSTR("<-03>3") + TZ_America_Argentina_Mendoza, //PSTR("<-03>3") + TZ_America_Argentina_Rio_Gallegos, //PSTR("<-03>3") + TZ_America_Argentina_Salta, //PSTR("<-03>3") + TZ_America_Argentina_San_Juan, //PSTR("<-03>3") + TZ_America_Argentina_San_Luis, //PSTR("<-03>3") + TZ_America_Argentina_Tucuman, //PSTR("<-03>3") + TZ_America_Argentina_Ushuaia, //PSTR("<-03>3") + TZ_America_Aruba, //PSTR("AST4") + TZ_America_Asuncion, //PSTR("<-04>4<-03>,M10.1.0/0,M3.4.0/0") + TZ_America_Atikokan, //PSTR("EST5") + TZ_America_Bahia, //PSTR("<-03>3") + TZ_America_Bahia_Banderas, //PSTR("CST6CDT,M4.1.0,M10.5.0") + TZ_America_Barbados, //PSTR("AST4") + TZ_America_Belem, //PSTR("<-03>3") + TZ_America_Belize, //PSTR("CST6") + TZ_America_BlancmSablon, //PSTR("AST4") + TZ_America_Boa_Vista, //PSTR("<-04>4") + TZ_America_Bogota, //PSTR("<-05>5") + TZ_America_Boise, //PSTR("MST7MDT,M3.2.0,M11.1.0") + TZ_America_Cambridge_Bay, //PSTR("MST7MDT,M3.2.0,M11.1.0") + TZ_America_Campo_Grande, //PSTR("<-04>4") + TZ_America_Cancun, //PSTR("EST5") + TZ_America_Caracas, //PSTR("<-04>4") + TZ_America_Cayenne, //PSTR("<-03>3") + TZ_America_Cayman, //PSTR("EST5") + TZ_America_Chicago, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Chihuahua, //PSTR("MST7MDT,M4.1.0,M10.5.0") + TZ_America_Costa_Rica, //PSTR("CST6") + TZ_America_Creston, //PSTR("MST7") + TZ_America_Cuiaba, //PSTR("<-04>4") + TZ_America_Curacao, //PSTR("AST4") + TZ_America_Danmarkshavn, //PSTR("GMT0") + TZ_America_Dawson, //PSTR("MST7") + TZ_America_Dawson_Creek, //PSTR("MST7") + TZ_America_Denver, //PSTR("MST7MDT,M3.2.0,M11.1.0") + TZ_America_Detroit, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Dominica, //PSTR("AST4") + TZ_America_Edmonton, //PSTR("MST7MDT,M3.2.0,M11.1.0") + TZ_America_Eirunepe, //PSTR("<-05>5") + TZ_America_El_Salvador, //PSTR("CST6") + TZ_America_Fortaleza, //PSTR("<-03>3") + TZ_America_Fort_Nelson, //PSTR("MST7") + TZ_America_Glace_Bay, //PSTR("AST4ADT,M3.2.0,M11.1.0") + TZ_America_Godthab, //PSTR("<-03>3<-02>,M3.5.0/-2,M10.5.0/-1") + TZ_America_Goose_Bay, //PSTR("AST4ADT,M3.2.0,M11.1.0") + TZ_America_Grand_Turk, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Grenada, //PSTR("AST4") + TZ_America_Guadeloupe, //PSTR("AST4") + TZ_America_Guatemala, //PSTR("CST6") + TZ_America_Guayaquil, //PSTR("<-05>5") + TZ_America_Guyana, //PSTR("<-04>4") + TZ_America_Halifax, //PSTR("AST4ADT,M3.2.0,M11.1.0") + TZ_America_Havana, //PSTR("CST5CDT,M3.2.0/0,M11.1.0/1") + TZ_America_Hermosillo, //PSTR("MST7") + TZ_America_Indiana_Indianapolis, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Indiana_Knox, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Indiana_Marengo, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Indiana_Petersburg, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Indiana_Tell_City, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Indiana_Vevay, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Indiana_Vincennes, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Indiana_Winamac, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Inuvik, //PSTR("MST7MDT,M3.2.0,M11.1.0") + TZ_America_Iqaluit, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Jamaica, //PSTR("EST5") + TZ_America_Juneau, //PSTR("AKST9AKDT,M3.2.0,M11.1.0") + TZ_America_Kentucky_Louisville, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Kentucky_Monticello, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Kralendijk, //PSTR("AST4") + TZ_America_La_Paz, //PSTR("<-04>4") + TZ_America_Lima, //PSTR("<-05>5") + TZ_America_Los_Angeles, //PSTR("PST8PDT,M3.2.0,M11.1.0") + TZ_America_Lower_Princes, //PSTR("AST4") + TZ_America_Maceio, //PSTR("<-03>3") + TZ_America_Managua, //PSTR("CST6") + TZ_America_Manaus, //PSTR("<-04>4") + TZ_America_Marigot, //PSTR("AST4") + TZ_America_Martinique, //PSTR("AST4") + TZ_America_Matamoros, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Mazatlan, //PSTR("MST7MDT,M4.1.0,M10.5.0") + TZ_America_Menominee, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Merida, //PSTR("CST6CDT,M4.1.0,M10.5.0") + TZ_America_Metlakatla, //PSTR("AKST9AKDT,M3.2.0,M11.1.0") + TZ_America_Mexico_City, //PSTR("CST6CDT,M4.1.0,M10.5.0") + TZ_America_Miquelon, //PSTR("<-03>3<-02>,M3.2.0,M11.1.0") + TZ_America_Moncton, //PSTR("AST4ADT,M3.2.0,M11.1.0") + TZ_America_Monterrey, //PSTR("CST6CDT,M4.1.0,M10.5.0") + TZ_America_Montevideo, //PSTR("<-03>3") + TZ_America_Montreal, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Montserrat, //PSTR("AST4") + TZ_America_Nassau, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_New_York, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Nipigon, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Nome, //PSTR("AKST9AKDT,M3.2.0,M11.1.0") + TZ_America_Noronha, //PSTR("<-02>2") + TZ_America_North_Dakota_Beulah, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_North_Dakota_Center, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_North_Dakota_New_Salem, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Ojinaga, //PSTR("MST7MDT,M3.2.0,M11.1.0") + TZ_America_Panama, //PSTR("EST5") + TZ_America_Pangnirtung, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Paramaribo, //PSTR("<-03>3") + TZ_America_Phoenix, //PSTR("MST7") + TZ_America_PortmaumPrince, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Port_of_Spain, //PSTR("AST4") + TZ_America_Porto_Velho, //PSTR("<-04>4") + TZ_America_Puerto_Rico, //PSTR("AST4") + TZ_America_Punta_Arenas, //PSTR("<-03>3") + TZ_America_Rainy_River, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Rankin_Inlet, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Recife, //PSTR("<-03>3") + TZ_America_Regina, //PSTR("CST6") + TZ_America_Resolute, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Rio_Branco, //PSTR("<-05>5") + TZ_America_Santarem, //PSTR("<-03>3") + TZ_America_Santiago, //PSTR("<-04>4<-03>,M9.1.6/24,M4.1.6/24") + TZ_America_Santo_Domingo, //PSTR("AST4") + TZ_America_Sao_Paulo, //PSTR("<-03>3") + TZ_America_Scoresbysund, //PSTR("<-01>1<+00>,M3.5.0/0,M10.5.0/1") + TZ_America_Sitka, //PSTR("AKST9AKDT,M3.2.0,M11.1.0") + TZ_America_St_Barthelemy, //PSTR("AST4") + TZ_America_St_Johns, //PSTR("NST3:30NDT,M3.2.0,M11.1.0") + TZ_America_St_Kitts, //PSTR("AST4") + TZ_America_St_Lucia, //PSTR("AST4") + TZ_America_St_Thomas, //PSTR("AST4") + TZ_America_St_Vincent, //PSTR("AST4") + TZ_America_Swift_Current, //PSTR("CST6") + TZ_America_Tegucigalpa, //PSTR("CST6") + TZ_America_Thule, //PSTR("AST4ADT,M3.2.0,M11.1.0") + TZ_America_Thunder_Bay, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Tijuana, //PSTR("PST8PDT,M3.2.0,M11.1.0") + TZ_America_Toronto, //PSTR("EST5EDT,M3.2.0,M11.1.0") + TZ_America_Tortola, //PSTR("AST4") + TZ_America_Vancouver, //PSTR("PST8PDT,M3.2.0,M11.1.0") + TZ_America_Whitehorse, //PSTR("MST7") + TZ_America_Winnipeg, //PSTR("CST6CDT,M3.2.0,M11.1.0") + TZ_America_Yakutat, //PSTR("AKST9AKDT,M3.2.0,M11.1.0") + TZ_America_Yellowknife, //PSTR("MST7MDT,M3.2.0,M11.1.0") +#endif + +#if USING_ANTARCTICA + TZ_Antarctica_Casey, //PSTR("<+11>-11") + TZ_Antarctica_Davis, //PSTR("<+07>-7") + TZ_Antarctica_DumontDUrville, //PSTR("<+10>-10") + TZ_Antarctica_Macquarie, //PSTR("AEST-10AEDT,M10.1.0,M4.1.0/3") + TZ_Antarctica_Mawson, //PSTR("<+05>-5") + TZ_Antarctica_McMurdo, //PSTR("NZST-12NZDT,M9.5.0,M4.1.0/3") + TZ_Antarctica_Palmer, //PSTR("<-03>3") + TZ_Antarctica_Rothera, //PSTR("<-03>3") + TZ_Antarctica_Syowa, //PSTR("<+03>-3") + TZ_Antarctica_Troll, //PSTR("<+00>0<+02>-2,M3.5.0/1,M10.5.0/3") + TZ_Antarctica_Vostok, //PSTR("<+06>-6") + TZ_Arctic_Longyearbyen, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") +#endif + + +#if USING_ASIA + TZ_Asia_Aden, //PSTR("<+03>-3") + TZ_Asia_Almaty, //PSTR("<+06>-6") + TZ_Asia_Amman, //PSTR("EET-2EEST,M3.5.4/24,M10.5.5/1") + TZ_Asia_Anadyr, //PSTR("<+12>-12") + TZ_Asia_Aqtau, //PSTR("<+05>-5") + TZ_Asia_Aqtobe, //PSTR("<+05>-5") + TZ_Asia_Ashgabat, //PSTR("<+05>-5") + TZ_Asia_Atyrau, //PSTR("<+05>-5") + TZ_Asia_Baghdad, //PSTR("<+03>-3") + TZ_Asia_Bahrain, //PSTR("<+03>-3") + TZ_Asia_Baku, //PSTR("<+04>-4") + TZ_Asia_Bangkok, //PSTR("<+07>-7") + TZ_Asia_Barnaul, //PSTR("<+07>-7") + TZ_Asia_Beirut, //PSTR("EET-2EEST,M3.5.0/0,M10.5.0/0") + TZ_Asia_Bishkek, //PSTR("<+06>-6") + TZ_Asia_Brunei, //PSTR("<+08>-8") + TZ_Asia_Chita, //PSTR("<+09>-9") + TZ_Asia_Choibalsan, //PSTR("<+08>-8") + TZ_Asia_Colombo, //PSTR("<+0530>-5:30") + TZ_Asia_Damascus, //PSTR("EET-2EEST,M3.5.5/0,M10.5.5/0") + TZ_Asia_Dhaka, //PSTR("<+06>-6") + TZ_Asia_Dili, //PSTR("<+09>-9") + TZ_Asia_Dubai, //PSTR("<+04>-4") + TZ_Asia_Dushanbe, //PSTR("<+05>-5") + TZ_Asia_Famagusta, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Asia_Gaza, //PSTR("EET-2EEST,M3.4.4/48,M10.4.4/49") + TZ_Asia_Hebron, //PSTR("EET-2EEST,M3.4.4/48,M10.4.4/49") + TZ_Asia_Ho_Chi_Minh, //PSTR("<+07>-7") + TZ_Asia_Hong_Kong, //PSTR("HKT-8") + TZ_Asia_Hovd, //PSTR("<+07>-7") + TZ_Asia_Irkutsk, //PSTR("<+08>-8") + TZ_Asia_Jakarta, //PSTR("WIB-7") + TZ_Asia_Jayapura, //PSTR("WIT-9") + TZ_Asia_Jerusalem, //PSTR("IST-2IDT,M3.4.4/26,M10.5.0") + TZ_Asia_Kabul, //PSTR("<+0430>-4:30") + TZ_Asia_Kamchatka, //PSTR("<+12>-12") + TZ_Asia_Karachi, //PSTR("PKT-5") + TZ_Asia_Kathmandu, //PSTR("<+0545>-5:45") + TZ_Asia_Khandyga, //PSTR("<+09>-9") + TZ_Asia_Kolkata, //PSTR("IST-5:30") + TZ_Asia_Krasnoyarsk, //PSTR("<+07>-7") + TZ_Asia_Kuala_Lumpur, //PSTR("<+08>-8") + TZ_Asia_Kuching, //PSTR("<+08>-8") + TZ_Asia_Kuwait, //PSTR("<+03>-3") + TZ_Asia_Macau, //PSTR("CST-8") + TZ_Asia_Magadan, //PSTR("<+11>-11") + TZ_Asia_Makassar, //PSTR("WITA-8") + TZ_Asia_Manila, //PSTR("PST-8") + TZ_Asia_Muscat, //PSTR("<+04>-4") + TZ_Asia_Nicosia, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Asia_Novokuznetsk, //PSTR("<+07>-7") + TZ_Asia_Novosibirsk, //PSTR("<+07>-7") + TZ_Asia_Omsk, //PSTR("<+06>-6") + TZ_Asia_Oral, //PSTR("<+05>-5") + TZ_Asia_Phnom_Penh, //PSTR("<+07>-7") + TZ_Asia_Pontianak, //PSTR("WIB-7") + TZ_Asia_Pyongyang, //PSTR("KST-9") + TZ_Asia_Qatar, //PSTR("<+03>-3") + TZ_Asia_Qyzylorda, //PSTR("<+05>-5") + TZ_Asia_Riyadh, //PSTR("<+03>-3") + TZ_Asia_Sakhalin, //PSTR("<+11>-11") + TZ_Asia_Samarkand, //PSTR("<+05>-5") + TZ_Asia_Seoul, //PSTR("KST-9") + TZ_Asia_Shanghai, //PSTR("CST-8") + TZ_Asia_Singapore, //PSTR("<+08>-8") + TZ_Asia_Srednekolymsk, //PSTR("<+11>-11") + TZ_Asia_Taipei, //PSTR("CST-8") + TZ_Asia_Tashkent, //PSTR("<+05>-5") + TZ_Asia_Tbilisi, //PSTR("<+04>-4") + TZ_Asia_Tehran, //PSTR("<+0330>-3:30<+0430>,J79/24,J263/24") + TZ_Asia_Thimphu, //PSTR("<+06>-6") + TZ_Asia_Tokyo, //PSTR("JST-9") + TZ_Asia_Tomsk, //PSTR("<+07>-7") + TZ_Asia_Ulaanbaatar, //PSTR("<+08>-8") + TZ_Asia_Urumqi, //PSTR("<+06>-6") + TZ_Asia_UstmNera, //PSTR("<+10>-10") + TZ_Asia_Vientiane, //PSTR("<+07>-7") + TZ_Asia_Vladivostok, //PSTR("<+10>-10") + TZ_Asia_Yakutsk, //PSTR("<+09>-9") + TZ_Asia_Yangon, //PSTR("<+0630>-6:30") + TZ_Asia_Yekaterinburg, //PSTR("<+05>-5") + TZ_Asia_Yerevan, //PSTR("<+04>-4") +#endif + +#if USING_ATLANTIC + TZ_Atlantic_Azores, //PSTR("<-01>1<+00>,M3.5.0/0,M10.5.0/1") + TZ_Atlantic_Bermuda, //PSTR("AST4ADT,M3.2.0,M11.1.0") + TZ_Atlantic_Canary, //PSTR("WET0WEST,M3.5.0/1,M10.5.0") + TZ_Atlantic_Cape_Verde, //PSTR("<-01>1") + TZ_Atlantic_Faroe, //PSTR("WET0WEST,M3.5.0/1,M10.5.0") + TZ_Atlantic_Madeira, //PSTR("WET0WEST,M3.5.0/1,M10.5.0") + TZ_Atlantic_Reykjavik, //PSTR("GMT0") + TZ_Atlantic_South_Georgia, //PSTR("<-02>2") + TZ_Atlantic_Stanley, //PSTR("<-03>3") + TZ_Atlantic_St_Helena, //PSTR("GMT0") +#endif + +#if USING_AUSTRALIA + TZ_Australia_Adelaide, //PSTR("ACST-9:30ACDT,M10.1.0,M4.1.0/3") + TZ_Australia_Brisbane, //PSTR("AEST-10") + TZ_Australia_Broken_Hill, //PSTR("ACST-9:30ACDT,M10.1.0,M4.1.0/3") + TZ_Australia_Currie, //PSTR("AEST-10AEDT,M10.1.0,M4.1.0/3") + TZ_Australia_Darwin, //PSTR("ACST-9:30") + TZ_Australia_Eucla, //PSTR("<+0845>-8:45") + TZ_Australia_Hobart, //PSTR("AEST-10AEDT,M10.1.0,M4.1.0/3") + TZ_Australia_Lindeman, //PSTR("AEST-10") + TZ_Australia_Lord_Howe, //PSTR("<+1030>-10:30<+11>-11,M10.1.0,M4.1.0") + TZ_Australia_Melbourne, //PSTR("AEST-10AEDT,M10.1.0,M4.1.0/3") + TZ_Australia_Perth, //PSTR("AWST-8") + TZ_Australia_Sydney, //PSTR("AEST-10AEDT,M10.1.0,M4.1.0/3") +#endif + +#if USING_EUROPE + TZ_Europe_Amsterdam, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Andorra, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Astrakhan, //PSTR("<+04>-4") + TZ_Europe_Athens, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Belgrade, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Berlin, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Bratislava, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Brussels, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Bucharest, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Budapest, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Busingen, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Chisinau, //PSTR("EET-2EEST,M3.5.0,M10.5.0/3") + TZ_Europe_Copenhagen, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Dublin, //PSTR("IST-1GMT0,M10.5.0,M3.5.0/1") + TZ_Europe_Gibraltar, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Guernsey, //PSTR("GMT0BST,M3.5.0/1,M10.5.0") + TZ_Europe_Helsinki, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Isle_of_Man, //PSTR("GMT0BST,M3.5.0/1,M10.5.0") + TZ_Europe_Istanbul, //PSTR("<+03>-3") + TZ_Europe_Jersey, //PSTR("GMT0BST,M3.5.0/1,M10.5.0") + TZ_Europe_Kaliningrad, //PSTR("EET-2") + TZ_Europe_Kiev, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Kirov, //PSTR("<+03>-3") + TZ_Europe_Lisbon, //PSTR("WET0WEST,M3.5.0/1,M10.5.0") + TZ_Europe_Ljubljana, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_London, //PSTR("GMT0BST,M3.5.0/1,M10.5.0") + TZ_Europe_Luxembourg, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Madrid, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Malta, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Mariehamn, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Minsk, //PSTR("<+03>-3") + TZ_Europe_Monaco, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Moscow, //PSTR("MSK-3") + TZ_Europe_Oslo, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Paris, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Podgorica, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Prague, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Riga, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Rome, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Samara, //PSTR("<+04>-4") + TZ_Europe_San_Marino, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Sarajevo, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Saratov, //PSTR("<+04>-4") + TZ_Europe_Simferopol, //PSTR("MSK-3") + TZ_Europe_Skopje, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Sofia, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Stockholm, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Tallinn, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Tirane, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Ulyanovsk, //PSTR("<+04>-4") + TZ_Europe_Uzhgorod, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Vaduz, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Vatican, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Vienna, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Vilnius, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Volgograd, //PSTR("<+04>-4") + TZ_Europe_Warsaw, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Zagreb, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") + TZ_Europe_Zaporozhye, //PSTR("EET-2EEST,M3.5.0/3,M10.5.0/4") + TZ_Europe_Zurich, //PSTR("CET-1CEST,M3.5.0,M10.5.0/3") +#endif + +#if USING_INDIAN + TZ_Indian_Antananarivo, //PSTR("EAT-3") + TZ_Indian_Chagos, //PSTR("<+06>-6") + TZ_Indian_Christmas, //PSTR("<+07>-7") + TZ_Indian_Cocos, //PSTR("<+0630>-6:30") + TZ_Indian_Comoro, //PSTR("EAT-3") + TZ_Indian_Kerguelen, //PSTR("<+05>-5") + TZ_Indian_Mahe, //PSTR("<+04>-4") + TZ_Indian_Maldives, //PSTR("<+05>-5") + TZ_Indian_Mauritius, //PSTR("<+04>-4") + TZ_Indian_Mayotte, //PSTR("EAT-3") + TZ_Indian_Reunion, //PSTR("<+04>-4") +#endif + +#if USING_PACIFIC + TZ_Pacific_Apia, //PSTR("<+13>-13<+14>,M9.5.0/3,M4.1.0/4") + TZ_Pacific_Auckland, //PSTR("NZST-12NZDT,M9.5.0,M4.1.0/3") + TZ_Pacific_Bougainville, //PSTR("<+11>-11") + TZ_Pacific_Chatham, //PSTR("<+1245>-12:45<+1345>,M9.5.0/2:45,M4.1.0/3:45") + TZ_Pacific_Chuuk, //PSTR("<+10>-10") + TZ_Pacific_Easter, //PSTR("<-06>6<-05>,M9.1.6/22,M4.1.6/22") + TZ_Pacific_Efate, //PSTR("<+11>-11") + TZ_Pacific_Enderbury, //PSTR("<+13>-13") + TZ_Pacific_Fakaofo, //PSTR("<+13>-13") + TZ_Pacific_Fiji, //PSTR("<+12>-12<+13>,M11.2.0,M1.2.3/99") + TZ_Pacific_Funafuti, //PSTR("<+12>-12") + TZ_Pacific_Galapagos, //PSTR("<-06>6") + TZ_Pacific_Gambier, //PSTR("<-09>9") + TZ_Pacific_Guadalcanal, //PSTR("<+11>-11") + TZ_Pacific_Guam, //PSTR("ChST-10") + TZ_Pacific_Honolulu, //PSTR("HST10") + TZ_Pacific_Kiritimati, //PSTR("<+14>-14") + TZ_Pacific_Kosrae, //PSTR("<+11>-11") + TZ_Pacific_Kwajalein, //PSTR("<+12>-12") + TZ_Pacific_Majuro, //PSTR("<+12>-12") + TZ_Pacific_Marquesas, //PSTR("<-0930>9:30") + TZ_Pacific_Midway, //PSTR("SST11") + TZ_Pacific_Nauru, //PSTR("<+12>-12") + TZ_Pacific_Niue, //PSTR("<-11>11") + TZ_Pacific_Norfolk, //PSTR("<+11>-11<+12>,M10.1.0,M4.1.0/3") + TZ_Pacific_Noumea, //PSTR("<+11>-11") + TZ_Pacific_Pago_Pago, //PSTR("SST11") + TZ_Pacific_Palau, //PSTR("<+09>-9") + TZ_Pacific_Pitcairn, //PSTR("<-08>8") + TZ_Pacific_Pohnpei, //PSTR("<+11>-11") + TZ_Pacific_Port_Moresby, //PSTR("<+10>-10") + TZ_Pacific_Rarotonga, //PSTR("<-10>10") + TZ_Pacific_Saipan, //PSTR("ChST-10") + TZ_Pacific_Tahiti, //PSTR("<-10>10") + TZ_Pacific_Tarawa, //PSTR("<+12>-12") + TZ_Pacific_Tongatapu, //PSTR("<+13>-13") + TZ_Pacific_Wake, //PSTR("<+12>-12") + TZ_Pacific_Wallis, //PSTR("<+12>-12") +#endif + +#if USING_ETC_GMT + TZ_Etc_GMT, //PSTR("GMT0") + TZ_Etc_GMTm0, //PSTR("GMT0") + TZ_Etc_GMTm1, //PSTR("<+01>-1") + TZ_Etc_GMTm2, //PSTR("<+02>-2") + TZ_Etc_GMTm3, //PSTR("<+03>-3") + TZ_Etc_GMTm4, //PSTR("<+04>-4") + TZ_Etc_GMTm5, //PSTR("<+05>-5") + TZ_Etc_GMTm6, //PSTR("<+06>-6") + TZ_Etc_GMTm7, //PSTR("<+07>-7") + TZ_Etc_GMTm8, //PSTR("<+08>-8") + TZ_Etc_GMTm9, //PSTR("<+09>-9") + TZ_Etc_GMTm10, //PSTR("<+10>-10") + TZ_Etc_GMTm11, //PSTR("<+11>-11") + TZ_Etc_GMTm12, //PSTR("<+12>-12") + TZ_Etc_GMTm13, //PSTR("<+13>-13") + TZ_Etc_GMTm14, //PSTR("<+14>-14") + TZ_Etc_GMT0, //PSTR("GMT0") + TZ_Etc_GMTp0, //PSTR("GMT0") + TZ_Etc_GMTp1, //PSTR("<-01>1") + TZ_Etc_GMTp2, //PSTR("<-02>2") + TZ_Etc_GMTp3, //PSTR("<-03>3") + TZ_Etc_GMTp4, //PSTR("<-04>4") + TZ_Etc_GMTp5, //PSTR("<-05>5") + TZ_Etc_GMTp6, //PSTR("<-06>6") + TZ_Etc_GMTp7, //PSTR("<-07>7") + TZ_Etc_GMTp8, //PSTR("<-08>8") + TZ_Etc_GMTp9, //PSTR("<-09>9") + TZ_Etc_GMTp10, //PSTR("<-10>10") + TZ_Etc_GMTp11, //PSTR("<-11>11") + TZ_Etc_GMTp12, //PSTR("<-12>12") + TZ_Etc_UCT, //PSTR("UTC0") + TZ_Etc_UTC, //PSTR("UTC0") + TZ_Etc_Greenwich, //PSTR("GMT0") + TZ_Etc_Universal, //PSTR("UTC0") + TZ_Etc_Zulu, //PSTR("UTC0") +#endif +}; + +#endif // TZDB_H diff --git a/travis/common.sh b/travis/common.sh new file mode 100644 index 0000000..d115085 --- /dev/null +++ b/travis/common.sh @@ -0,0 +1,51 @@ +#!/bin/bash + +function build_examples() +{ + # track the exit code for this platform + local exit_code=0 + # loop through results and add them to the array + examples=($(find $PWD/examples/ -name "*.pde" -o -name "*.ino")) + + # get the last example in the array + local last="${examples[@]:(-1)}" + + # loop through example sketches + for example in "${examples[@]}"; do + + # store the full path to the example's sketch directory + local example_dir=$(dirname $example) + + # store the filename for the example without the path + local example_file=$(basename $example) + + echo "$example_file: " + local sketch="$example_dir/$example_file" + echo "$sketch" + #arduino -v --verbose-build --verify $sketch + + # verify the example, and save stdout & stderr to a variable + # we have to avoid reading the exit code of local: + # "when declaring a local variable in a function, the local acts as a command in its own right" + local build_stdout + build_stdout=$(arduino --verify $sketch 2>&1) + + # echo output if the build failed + if [ $? -ne 0 ]; then + # heavy X + echo -e "\xe2\x9c\x96" + echo -e "----------------------------- DEBUG OUTPUT -----------------------------\n" + echo "$build_stdout" + echo -e "\n------------------------------------------------------------------------\n" + + # mark as fail + exit_code=1 + + else + # heavy checkmark + echo -e "\xe2\x9c\x93" + fi + done + + return $exit_code +} diff --git a/utils/astyle_library.conf b/utils/astyle_library.conf new file mode 100644 index 0000000..8a73bc2 --- /dev/null +++ b/utils/astyle_library.conf @@ -0,0 +1,70 @@ +# Code formatting rules for Arduino libraries, modified from for KH libraries: +# +# https://github.com/arduino/Arduino/blob/master/build/shared/examples_formatter.conf +# + +# astyle --style=allman -s2 -t2 -C -S -xW -Y -M120 -f -p -xg -H -xb -c --xC120 -xL *.h *.cpp *.ino + +--mode=c +--lineend=linux +--style=allman + +# -r or -R +#--recursive + +# -c => Converts tabs into spaces +convert-tabs + +# -s2 => 2 spaces indentation +--indent=spaces=2 + +# -t2 => tab =2 spaces +#--indent=tab=2 + +# -C +--indent-classes + +# -S +--indent-switches + +# -xW +--indent-preproc-block + +# -Y => indent classes, switches (and cases), comments starting at column 1 +--indent-col1-comments + +# -M120 => maximum of 120 spaces to indent a continuation line +--max-continuation-indent=120 + +# -xC120 => max‑code‑length will break a line if the code exceeds # characters +--max-code-length=120 + +# -f => +--break-blocks + +# -p => put a space around operators +--pad-oper + +# -xg => Insert space padding after commas +--pad-comma + +# -H => put a space after if/for/while +pad-header + +# -xb => Break one line headers (e.g. if/for/while) +--break-one-line-headers + +# -c => Converts tabs into spaces +#--convert-tabs + +# if you like one-liners, keep them +#keep-one-line-statements + +# -xV +--attach-closing-while + +#unpad-paren + +# -xp +remove-comment-prefix + diff --git a/utils/restyle.sh b/utils/restyle.sh new file mode 100644 index 0000000..bcd846f --- /dev/null +++ b/utils/restyle.sh @@ -0,0 +1,6 @@ +#!/bin/bash + +for dir in . ; do + find $dir -type f \( -name "*.c" -o -name "*.h" -o -name "*.cpp" -o -name "*.ino" \) -exec astyle --suffix=none --options=./utils/astyle_library.conf \{\} \; +done +