├── .gitattributes ├── CMakeLists.txt ├── LICENSE.md ├── README.md ├── README_CN.md ├── docs └── pics │ ├── build_ok.png │ ├── cmake_cross_gcc_cfg.png │ ├── cmake_err.png │ ├── cmake_err2.png │ ├── cmake_flags.png │ ├── cmake_sel_src_and_build.png │ ├── cmake_wizard1.png │ ├── test-application-build.png │ └── test-application-monitor.png ├── idf_component.yml ├── include └── forteinit.h ├── lib ├── esp32 │ └── src │ │ ├── .gitignore │ │ └── libforte-static.a ├── esp32c3 │ └── src │ │ └── .gitignore ├── esp32s2 │ └── src │ │ └── .gitignore └── esp32s3 │ └── src │ └── .gitignore └── test_apps └── TestApplication ├── .gitignore ├── .vscode ├── c_cpp_properties.json └── settings.json ├── CMakeLists.txt ├── README.md ├── components ├── Network_softAP │ ├── CMakeLists.txt │ ├── Kconfig.projbuild │ └── softap_example_main.c └── forte_main │ ├── CMakeLists.txt │ ├── forte_Init.h │ ├── forte_main.cpp │ └── forteinit.h ├── main ├── CMakeLists.txt └── main.c ├── partitions.csv ├── sdkconfig └── sdkconfig.defaults /.gitattributes: -------------------------------------------------------------------------------- 1 | *.a filter=lfs diff=lfs merge=lfs -text 2 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- 1 | idf_component_register(INCLUDE_DIRS .) 2 | 3 | # add_prebuilt_library(forte "lib/${CONFIG_IDF_TARGET}/src/libforte-static.a" 4 | # PRIV_REQUIRES 5 | # log 6 | # button 7 | # led_strip 8 | # forte_main 9 | # lua 10 | # nvs_flash) 11 | 12 | add_prebuilt_library(forte "lib/${CONFIG_IDF_TARGET}/src/libforte-static.a" 13 | PRIV_REQUIRES 14 | log) 15 | 16 | target_link_libraries(${COMPONENT_LIB} INTERFACE forte) 17 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | Eclipse Public License - v 2.0 2 | 3 | THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE 4 | PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION 5 | OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. 6 | 7 | 1. DEFINITIONS 8 | 9 | "Contribution" means: 10 | 11 | a) in the case of the initial Contributor, the initial content 12 | Distributed under this Agreement, and 13 | 14 | b) in the case of each subsequent Contributor: 15 | i) changes to the Program, and 16 | ii) additions to the Program; 17 | where such changes and/or additions to the Program originate from 18 | and are Distributed by that particular Contributor. A Contribution 19 | "originates" from a Contributor if it was added to the Program by 20 | such Contributor itself or anyone acting on such Contributor's behalf. 21 | Contributions do not include changes or additions to the Program that 22 | are not Modified Works. 23 | 24 | "Contributor" means any person or entity that Distributes the Program. 25 | 26 | "Licensed Patents" mean patent claims licensable by a Contributor which 27 | are necessarily infringed by the use or sale of its Contribution alone 28 | or when combined with the Program. 29 | 30 | "Program" means the Contributions Distributed in accordance with this 31 | Agreement. 32 | 33 | "Recipient" means anyone who receives the Program under this Agreement 34 | or any Secondary License (as applicable), including Contributors. 35 | 36 | "Derivative Works" shall mean any work, whether in Source Code or other 37 | form, that is based on (or derived from) the Program and for which the 38 | editorial revisions, annotations, elaborations, or other modifications 39 | represent, as a whole, an original work of authorship. 40 | 41 | "Modified Works" shall mean any work in Source Code or other form that 42 | results from an addition to, deletion from, or modification of the 43 | contents of the Program, including, for purposes of clarity any new file 44 | in Source Code form that contains any contents of the Program. Modified 45 | Works shall not include works that contain only declarations, 46 | interfaces, types, classes, structures, or files of the Program solely 47 | in each case in order to link to, bind by name, or subclass the Program 48 | or Modified Works thereof. 49 | 50 | "Distribute" means the acts of a) distributing or b) making available 51 | in any manner that enables the transfer of a copy. 52 | 53 | "Source Code" means the form of a Program preferred for making 54 | modifications, including but not limited to software source code, 55 | documentation source, and configuration files. 56 | 57 | "Secondary License" means either the GNU General Public License, 58 | Version 2.0, or any later versions of that license, including any 59 | exceptions or additional permissions as identified by the initial 60 | Contributor. 61 | 62 | 2. GRANT OF RIGHTS 63 | 64 | a) Subject to the terms of this Agreement, each Contributor hereby 65 | grants Recipient a non-exclusive, worldwide, royalty-free copyright 66 | license to reproduce, prepare Derivative Works of, publicly display, 67 | publicly perform, Distribute and sublicense the Contribution of such 68 | Contributor, if any, and such Derivative Works. 69 | 70 | b) Subject to the terms of this Agreement, each Contributor hereby 71 | grants Recipient a non-exclusive, worldwide, royalty-free patent 72 | license under Licensed Patents to make, use, sell, offer to sell, 73 | import and otherwise transfer the Contribution of such Contributor, 74 | if any, in Source Code or other form. This patent license shall 75 | apply to the combination of the Contribution and the Program if, at 76 | the time the Contribution is added by the Contributor, such addition 77 | of the Contribution causes such combination to be covered by the 78 | Licensed Patents. The patent license shall not apply to any other 79 | combinations which include the Contribution. No hardware per se is 80 | licensed hereunder. 81 | 82 | c) Recipient understands that although each Contributor grants the 83 | licenses to its Contributions set forth herein, no assurances are 84 | provided by any Contributor that the Program does not infringe the 85 | patent or other intellectual property rights of any other entity. 86 | Each Contributor disclaims any liability to Recipient for claims 87 | brought by any other entity based on infringement of intellectual 88 | property rights or otherwise. As a condition to exercising the 89 | rights and licenses granted hereunder, each Recipient hereby 90 | assumes sole responsibility to secure any other intellectual 91 | property rights needed, if any. For example, if a third party 92 | patent license is required to allow Recipient to Distribute the 93 | Program, it is Recipient's responsibility to acquire that license 94 | before distributing the Program. 95 | 96 | d) Each Contributor represents that to its knowledge it has 97 | sufficient copyright rights in its Contribution, if any, to grant 98 | the copyright license set forth in this Agreement. 99 | 100 | e) Notwithstanding the terms of any Secondary License, no 101 | Contributor makes additional grants to any Recipient (other than 102 | those set forth in this Agreement) as a result of such Recipient's 103 | receipt of the Program under the terms of a Secondary License 104 | (if permitted under the terms of Section 3). 105 | 106 | 3. REQUIREMENTS 107 | 108 | 3.1 If a Contributor Distributes the Program in any form, then: 109 | 110 | a) the Program must also be made available as Source Code, in 111 | accordance with section 3.2, and the Contributor must accompany 112 | the Program with a statement that the Source Code for the Program 113 | is available under this Agreement, and informs Recipients how to 114 | obtain it in a reasonable manner on or through a medium customarily 115 | used for software exchange; and 116 | 117 | b) the Contributor may Distribute the Program under a license 118 | different than this Agreement, provided that such license: 119 | i) effectively disclaims on behalf of all other Contributors all 120 | warranties and conditions, express and implied, including 121 | warranties or conditions of title and non-infringement, and 122 | implied warranties or conditions of merchantability and fitness 123 | for a particular purpose; 124 | 125 | ii) effectively excludes on behalf of all other Contributors all 126 | liability for damages, including direct, indirect, special, 127 | incidental and consequential damages, such as lost profits; 128 | 129 | iii) does not attempt to limit or alter the recipients' rights 130 | in the Source Code under section 3.2; and 131 | 132 | iv) requires any subsequent distribution of the Program by any 133 | party to be under a license that satisfies the requirements 134 | of this section 3. 135 | 136 | 3.2 When the Program is Distributed as Source Code: 137 | 138 | a) it must be made available under this Agreement, or if the 139 | Program (i) is combined with other material in a separate file or 140 | files made available under a Secondary License, and (ii) the initial 141 | Contributor attached to the Source Code the notice described in 142 | Exhibit A of this Agreement, then the Program may be made available 143 | under the terms of such Secondary Licenses, and 144 | 145 | b) a copy of this Agreement must be included with each copy of 146 | the Program. 147 | 148 | 3.3 Contributors may not remove or alter any copyright, patent, 149 | trademark, attribution notices, disclaimers of warranty, or limitations 150 | of liability ("notices") contained within the Program from any copy of 151 | the Program which they Distribute, provided that Contributors may add 152 | their own appropriate notices. 153 | 154 | 4. COMMERCIAL DISTRIBUTION 155 | 156 | Commercial distributors of software may accept certain responsibilities 157 | with respect to end users, business partners and the like. While this 158 | license is intended to facilitate the commercial use of the Program, 159 | the Contributor who includes the Program in a commercial product 160 | offering should do so in a manner which does not create potential 161 | liability for other Contributors. Therefore, if a Contributor includes 162 | the Program in a commercial product offering, such Contributor 163 | ("Commercial Contributor") hereby agrees to defend and indemnify every 164 | other Contributor ("Indemnified Contributor") against any losses, 165 | damages and costs (collectively "Losses") arising from claims, lawsuits 166 | and other legal actions brought by a third party against the Indemnified 167 | Contributor to the extent caused by the acts or omissions of such 168 | Commercial Contributor in connection with its distribution of the Program 169 | in a commercial product offering. The obligations in this section do not 170 | apply to any claims or Losses relating to any actual or alleged 171 | intellectual property infringement. In order to qualify, an Indemnified 172 | Contributor must: a) promptly notify the Commercial Contributor in 173 | writing of such claim, and b) allow the Commercial Contributor to control, 174 | and cooperate with the Commercial Contributor in, the defense and any 175 | related settlement negotiations. The Indemnified Contributor may 176 | participate in any such claim at its own expense. 177 | 178 | For example, a Contributor might include the Program in a commercial 179 | product offering, Product X. That Contributor is then a Commercial 180 | Contributor. If that Commercial Contributor then makes performance 181 | claims, or offers warranties related to Product X, those performance 182 | claims and warranties are such Commercial Contributor's responsibility 183 | alone. Under this section, the Commercial Contributor would have to 184 | defend claims against the other Contributors related to those performance 185 | claims and warranties, and if a court requires any other Contributor to 186 | pay any damages as a result, the Commercial Contributor must pay 187 | those damages. 188 | 189 | 5. NO WARRANTY 190 | 191 | EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT 192 | PERMITTED BY APPLICABLE LAW, THE PROGRAM IS PROVIDED ON AN "AS IS" 193 | BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR 194 | IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF 195 | TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR 196 | PURPOSE. Each Recipient is solely responsible for determining the 197 | appropriateness of using and distributing the Program and assumes all 198 | risks associated with its exercise of rights under this Agreement, 199 | including but not limited to the risks and costs of program errors, 200 | compliance with applicable laws, damage to or loss of data, programs 201 | or equipment, and unavailability or interruption of operations. 202 | 203 | 6. DISCLAIMER OF LIABILITY 204 | 205 | EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, AND TO THE EXTENT 206 | PERMITTED BY APPLICABLE LAW, NEITHER RECIPIENT NOR ANY CONTRIBUTORS 207 | SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 208 | EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST 209 | PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 210 | CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 211 | ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE 212 | EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE 213 | POSSIBILITY OF SUCH DAMAGES. 214 | 215 | 7. GENERAL 216 | 217 | If any provision of this Agreement is invalid or unenforceable under 218 | applicable law, it shall not affect the validity or enforceability of 219 | the remainder of the terms of this Agreement, and without further 220 | action by the parties hereto, such provision shall be reformed to the 221 | minimum extent necessary to make such provision valid and enforceable. 222 | 223 | If Recipient institutes patent litigation against any entity 224 | (including a cross-claim or counterclaim in a lawsuit) alleging that the 225 | Program itself (excluding combinations of the Program with other software 226 | or hardware) infringes such Recipient's patent(s), then such Recipient's 227 | rights granted under Section 2(b) shall terminate as of the date such 228 | litigation is filed. 229 | 230 | All Recipient's rights under this Agreement shall terminate if it 231 | fails to comply with any of the material terms or conditions of this 232 | Agreement and does not cure such failure in a reasonable period of 233 | time after becoming aware of such noncompliance. If all Recipient's 234 | rights under this Agreement terminate, Recipient agrees to cease use 235 | and distribution of the Program as soon as reasonably practicable. 236 | However, Recipient's obligations under this Agreement and any licenses 237 | granted by Recipient relating to the Program shall continue and survive. 238 | 239 | Everyone is permitted to copy and distribute copies of this Agreement, 240 | but in order to avoid inconsistency the Agreement is copyrighted and 241 | may only be modified in the following manner. The Agreement Steward 242 | reserves the right to publish new versions (including revisions) of 243 | this Agreement from time to time. No one other than the Agreement 244 | Steward has the right to modify this Agreement. The Eclipse Foundation 245 | is the initial Agreement Steward. The Eclipse Foundation may assign the 246 | responsibility to serve as the Agreement Steward to a suitable separate 247 | entity. Each new version of the Agreement will be given a distinguishing 248 | version number. The Program (including Contributions) may always be 249 | Distributed subject to the version of the Agreement under which it was 250 | received. In addition, after a new version of the Agreement is published, 251 | Contributor may elect to Distribute the Program (including its 252 | Contributions) under the new version. 253 | 254 | Except as expressly stated in Sections 2(a) and 2(b) above, Recipient 255 | receives no rights or licenses to the intellectual property of any 256 | Contributor under this Agreement, whether expressly, by implication, 257 | estoppel or otherwise. All rights in the Program not expressly granted 258 | under this Agreement are reserved. Nothing in this Agreement is intended 259 | to be enforceable by any entity that is not a Contributor or Recipient. 260 | No third-party beneficiary rights are created under this Agreement. 261 | 262 | Exhibit A - Form of Secondary Licenses Notice 263 | 264 | "This Source Code may also be made available under the following 265 | Secondary Licenses when the conditions for such availability set forth 266 | in the Eclipse Public License, v. 2.0 are satisfied: {name license(s), 267 | version(s), and exceptions or additional permissions here}." 268 | 269 | Simply including a copy of this Agreement, including this Exhibit A 270 | is not sufficient to license the Source Code under Secondary Licenses. 271 | 272 | If it is not possible or desirable to put the notice in a particular 273 | file, then You may include the notice in a location (such as a LICENSE 274 | file in a relevant directory) where a recipient would be likely to 275 | look for such a notice. 276 | 277 | You may add additional accurate notices of copyright ownership. -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ESP 4diac FORTE Library 2 | 3 | [中文](README_CN.md) 4 | 5 | - [ESP 4diac FORTE Library](#esp-4diac-forte-library) 6 | - [Overview](#overview) 7 | - [Requirements](#requirements) 8 | - [Step 1. Compile 4diac FORTE to a static library](#step-1-compile-4diac-forte-to-a-static-library) 9 | - [Step 1.1. Get source code](#step-11-get-source-code) 10 | - [Step 1.2. Set CMake](#step-12-set-cmake) 11 | - [Step 1.3. Configure the compilation](#step-13-configure-the-compilation) 12 | - [Step 1.5. Generate files](#step-15-generate-files) 13 | - [Step 1.6. Build 4diac FORTE](#step-16-build-4diac-forte) 14 | - [Step 2. Add 4diac FORTE static library to `ESP 4diac FORTE` component](#step-2-add-4diac-forte-static-library-to-esp-4diac-forte-component) 15 | - [Step 2.1. Clone this repository](#step-21-clone-this-repository) 16 | - [Step 2.2. Add the FORTE library](#step-22-add-the-forte-library) 17 | - [Step 3. TestApplication - A Sample 4diac FORTE application](#step-3-testapplication---a-sample-4diac-forte-application) 18 | 19 | ## Overview 20 | 21 | [ESP-4diac-FORTE](https://github.com/hikiku/esp-4diac-forte) is a standard [ESP-IDF](https://github.com/espressif/esp-idf) component. 22 | 23 | 4diac FORTE is an open source PLC runtime framework based on IEC 61499 standard. This how-to describes how to run it on esp32 or esp32s2 mcu. For more details about 4diac FORTE please visit https://www.eclipse.org/4diac/en_rte.php. 24 | 25 | This library is based on: 26 | 27 | - [**4diac FORTE for FreeRTOS + LwIP**](https://eclipse.dev/4diac/en_help.php?helppage=html/installation/freeRTOSLwIP.html) 28 | - [**4diac FORTE ESP32 Component**](https://gitlab.com/meisterschulen-am-ostbahnhof-munchen/4diac-forte-esp32-component) 29 | - [**ESP32 4diac Example Application**](https://gitlab.com/meisterschulen-am-ostbahnhof-munchen/esp32-4diac-example-application) 30 | 31 | ## Requirements 32 | - Linux operating system - Ubuntu / Debian / Arch. 33 | - Visual Studio Code. 34 | - with Espressif plugin for ESP32 chips support - `Espressif IDF`, [install and setup the extension](https://github.com/espressif/vscode-esp-idf-extension/blob/HEAD/docs/tutorial/install.md). 35 | - ESP-IDF - should be installed by VS Code plugin. 36 | - Git, make, cmake and cmake-gui: 37 | `sudo apt-get install git make cmake cmake-gui` 38 | 39 | **Also it is assumed that user has basic knowledge about C/C++ programming, esp32 platform and required toolchains.** 40 | 41 | It is good to test all nessecery tools before proced this instruction. 42 | 43 | ## Step 1. Compile 4diac FORTE to a static library 44 | 45 | ### Step 1.1. Get source code 46 | Clone latest 4diac FORTE repository: 47 | 48 | ```bash 49 | $ git clone https://git.eclipse.org/r/4diac/org.eclipse.4diac.forte.git 50 | ``` 51 | 52 | It is important to have it in some accesible place so we can easly come back to it. For propose of this text, `/home/liangz/secret/wrk/` has been used. 53 | 54 | ### Step 1.2. Set CMake 55 | 56 | 1. Open CMake-GUI 57 | In next step in forte root folder create build directory and launch cmake gui tool. It can be done via terminal command 58 | 59 | ```bash 60 | $ cmake-gui 61 | ``` 62 | 63 | 1. Complete as shown in the image 64 | 1. Set the 4diac FORTE source path where you cloned the Git repository, e.g.:`/home/liangz/secret/wrk/org.eclipse.4diac.forte`. 65 | 1. Set path for binaries where you want to create the library, e.g.:`/home/liangz/secret/wrk/org.eclipse.4diac.forte/build`. ~~Normally, bin/freeRTOS is used.~~ 66 | 1. Press Configure and new window will appear with configuration wizard. 67 | 68 | ![select path of source code and build](./docs/pics/cmake_sel_src_and_build.png) 69 | 70 | 1. In new window, select the correct option 71 | 1. Select the tool you normally use to compile your programs. This example follows using `UNIX Makefiles` from the list. 72 | 1. Select `Specify options for cross-compiling`. 73 | 1. Press Next-> 74 | 75 | ![](./docs/pics/cmake_wizard1.png) 76 | 77 | 1. Setup for cross-compilation. You have to select GCC and G++ compilers for xtensa atchitecture 78 | 1. Write Operating System to **Generic** (normally freeRTOS, it won't affect the compilation) 79 | 1. Write Processor to **esp32** or **esp32s2** 80 | 1. Select the path of the C cross-compiler to **/home/liangz/.espressif/tools/xtensa-esp32-elf/esp-12.2.0_20230208/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc** 81 | 1. Select the path of the C++ cross-compiler to **/home/liangz/.espressif/tools/xtensa-esp32-elf/esp-12.2.0_20230208/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++** 82 | 1. The target root field can be left empty. 83 | 1. Click Finish 84 | 85 | ![](./docs/pics/cmake_cross_gcc_cfg.png) 86 | 87 | ### Step 1.3. Configure the compilation 88 | A list with all variables of 4diac FORTE in red should be shown in CMake. 89 | ![](./docs/pics/cmake_err.png) 90 | 91 | 1. For esp32 we have to set the `FORTE_ARCHITECTURE` variable to `FreeRTOSLwIP`. Now when click Configure, most errors should dissapear. 92 | ![](./docs/pics/cmake_err2.png) 93 | 2. Check the information that appears in CMake about the LwIP configuration. 94 | 3. The variable `FORTE_FreeRTOSLwIP_INCLUDES` should appear now and it is the most important one. You should set it to the several paths where the freeRTOS and LwIP headers are, each separated by a semicolon. For example: `${MAIN_DIRECTORY}/FreeRTOS/portable;${MAIN_DIRECTORY}/include;${MAIN_DIRECTORY}/lwip/src/include;${MAIN_DIRECTORY}/lwip/port` where `${MAIN_DIRECTORY}` is the path where you have your freeRTOS and LwIP code. When you later compile and it fails with an error saying that some "includes" are missing, this variable should be updated where the folders where the missing files are located. 95 | Parameter `FORTE_FreeRTOSLwIP_INCLUDES` has to be set. It takes string with semicolon separated paths to include folders in esp-idf. There is quite a lot of paths that have to be added as include paths. Below there is a working configuration, please note that all of those paths are **absolue** so you need to modify all of them. In most cases it should be enought to repleace all occurrences of `/home/liangz/esp/esp-idf` with your ESP-IDF root directory path. For example with `/home/my_user/my_projects/my-idf_path`. 96 | 97 | 98 | ```bash 99 | /home/liangz/test/blink/build/config;/home/liangz/esp/esp-idf/components/newlib/platform_include;/home/liangz/esp/esp-idf/components/freertos/FreeRTOS-Kernel/include;/home/liangz/esp/esp-idf/components/freertos/FreeRTOS-Kernel/include/freertos;/home/liangz/esp/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa/include;/home/liangz/esp/esp-idf/components/freertos/esp_additions/include/freertos;/home/liangz/esp/esp-idf/components/freertos/esp_additions/include;/home/liangz/esp/esp-idf/components/freertos/esp_additions/arch/xtensa/include;/home/liangz/esp/esp-idf/components/esp_hw_support/include;/home/liangz/esp/esp-idf/components/esp_hw_support/include/soc;/home/liangz/esp/esp-idf/components/esp_hw_support/include/soc/esp32;/home/liangz/esp/esp-idf/components/esp_hw_support/port/esp32/.;/home/liangz/esp/esp-idf/components/esp_hw_support/port/esp32/private_include;/home/liangz/esp/esp-idf/components/heap/include;/home/liangz/esp/esp-idf/components/log/include;/home/liangz/esp/esp-idf/components/soc/include;/home/liangz/esp/esp-idf/components/soc/esp32;/home/liangz/esp/esp-idf/components/soc/esp32/include;/home/liangz/esp/esp-idf/components/hal/esp32/include;/home/liangz/esp/esp-idf/components/hal/include;/home/liangz/esp/esp-idf/components/hal/platform_port/include;/home/liangz/esp/esp-idf/components/esp_rom/include;/home/liangz/esp/esp-idf/components/esp_rom/include/esp32;/home/liangz/esp/esp-idf/components/esp_rom/esp32;/home/liangz/esp/esp-idf/components/esp_common/include;/home/liangz/esp/esp-idf/components/esp_system/include;/home/liangz/esp/esp-idf/components/esp_system/port/soc;/home/liangz/esp/esp-idf/components/esp_system/port/include/private;/home/liangz/esp/esp-idf/components/xtensa/include;/home/liangz/esp/esp-idf/components/xtensa/esp32/include;/home/liangz/esp/esp-idf/components/lwip/include;/home/liangz/esp/esp-idf/components/lwip/include/apps;/home/liangz/esp/esp-idf/components/lwip/include/apps/sntp;/home/liangz/esp/esp-idf/components/lwip/lwip/src/include;/home/liangz/esp/esp-idf/components/lwip/port/include;/home/liangz/esp/esp-idf/components/lwip/port/freertos/include;/home/liangz/esp/esp-idf/components/lwip/port/esp32xx/include;/home/liangz/esp/esp-idf/components/lwip/port/esp32xx/include/arch 100 | ``` 101 | 102 | **Note**: replace `/home/liangz/test/blink/build/config` with your path of `sdkconfig.h`. 103 | 104 | 109 | 110 | 111 | 112 | 4. It might be the case that you also need to set the `CMAKE_C_FLAGS` and `CMAKE_CXX_FLAGS` variables with the flags needed for your hardware. You can check which flags you need from the proeperties of your example project in your cross-IDE. 113 | 114 | Once you have filed freertos includes you have add few additional *compiler flags*. To do this you need to activate `Advanced` checkbox in upper right corner of cmake program. Once you have it, you will be able to see much more options that you can tweak. 115 | 116 | *Flags* that you have to add: 117 | `-mlongcalls -ffunction-sections -fdata-sections -fno-threadsafe-statics -fno-rtti -fno-exceptions -DconfigMINIMAL_STACK_SIZE_FORTE=15000` 118 | 119 | All of them have to be added to all variants of `CMAKE_C_FLAGS` and `CMAKE_CXX_FLAGS`. There are: `DEBUG, MINISIZEREL RELEASE, REALWITHDEBINFO` 120 | 121 | It should looks similar to picture below. 122 | 123 | ![](./docs/pics/cmake_flags.png) 124 | 125 | 5. Next option to set is the `FORTE_TicksPerSecond` option to **100** instead of 1000. It is also visible in advanced mode. 126 | 6. We also need to tell cmake that we want to build static library instead of execurable. To do this you have to set `FORTE_BUILD_EXECUTABLE` to *false/deselect* and `FORTE_BUILD_STATIC_LIBRARY` to *true/select*. 127 | 7. For first tests, it is good to enable debug feature in FORTE so we can see more logs. That is very usefull during first run so we can see that everything works as it should. To do this, in `CMAKE_BUILD_TYPE` type: `DEBUG` and switch `FORTE_LOGLEVEL` to `LOGDEBUG`. **Unfortunetly** `FORTE_LOGLEVEL` options automaticly switch back to `NOLOG` everytime we trigger configuration, so it's important to remember about it when we do some changes and we expect to have logs. 128 | 134 | 135 | 8. Click Configure and the variables that need revision will appear again in red and the rest in white. ~~Check these variables and press Configure until no variable is shown in red. Here you can add the modules that you want FORTE to have, but from the freeRTOS point of view, there's nothing else you need.~~ 136 | 137 | **Just to highlight changes that we have done here:** 138 | - `FORTE_ARCHITECTURE` set to `FreeRTOSLwIP` 139 | - `FORTE_FreeRTOSLwIP_INCLUDES` fillup all FreeRTOS include paths 140 | - `CMAKE_C_FLAGS`, `CMAKE_CXX_FLAGS` and their variations with `DEBUG, MINISIZEREL RELEASE, REALWITHDEBINFO` - add compilers flags. 141 | - `FORTE_TicksPerSecond` set to 100 142 | - `FORTE_BUILD_EXECUTABLE` deselect 143 | - `FORTE_BUILD_STATIC_LIBRARY` select 144 | - `CMAKE_BUILD_TYPE` type `DEBUG`, `FORTE_LOGLEVEL` set to `LOGDEBUG` 145 | 146 | 147 | 172 | 173 | ### Step 1.5. Generate files 174 | 175 | * Click Generate 176 | 177 | ### Step 1.6. Build 4diac FORTE 178 | * Go to the recently generated folder (e.g.: `${FORTE_ROOT}/build/src`) and type `make -j` your make tool should start doing all the jobs and as a result, 179 | 180 | ```bash 181 | $ cd ${FORTE_ROOT}/build/src # cd bin/freeRTOS 182 | $ make -j 183 | ``` 184 | 185 | * If you got an error, check again the variables in CMake, specially `FORTE_FreeRTOSLwIP_INCLUDES`, `CMAKE_C_FLAGS` and `CMAKE_CXX_FLAGS`. 186 | 187 | * If no error occurred, after some small amount of time, you should have builded FORTE static library like on the picture below: 188 | 189 | ![build_ok](./docs/pics/build_ok.png) 190 | 191 | * Now you can find your static library in `${FORTE_ROOT}/build/src` ~~`bin/freeRTOS/src`~~ with name `libforte-static.a`. We will use this library to prepare our ESP component so it can be used directly in the esp project. 192 | 193 | ## Step 2. Add 4diac FORTE static library to `ESP 4diac FORTE` component 194 | 195 | ### Step 2.1. Clone this repository 196 | 197 | Go to your working directory and type: 198 | 199 | ```bash 200 | $ cd 201 | $ git clone https://github.com/hikiku/esp-4diac-forte.git 202 | ``` 203 | 204 | 205 | 206 | ### Step 2.2. Add the FORTE library 207 | 208 | At this moment you can copy you static library to the FORTE component folder. 209 | 210 | It's good to make a symbolic link instead of hard copy of static library. To do this you can use ln command in your shell. 211 | 212 | `ln -s [soruce file] [destination file]` 213 | 214 | for example: 215 | 216 | ```bash 217 | $ cd /esp32-4diac-forte/lib/esp32/src 218 | $ mv libforte-static.a libforte-static.a.origin 219 | $ ln -s /org.eclipse.4diac.forte/build/src/libforte-static.a libforte-static.a 220 | ``` 221 | 222 | 227 | 228 | 229 | 230 | In this way you don't have to copy the library everytime you rebuild it. 231 | 232 | 233 | ## Step 3. TestApplication - A Sample 4diac FORTE application 234 | 235 | To test you FORTE buld, you need eighter prepare your sample aplication from scratch or use the one that has been already prepared. This how-to will not cover how to make new project from scratch, instead we will use here an already prepared example - `/esp-4diac-forte/test_apps/TestApplication/`. 236 | 237 | 243 | 244 | Open your Visual Studio Code, and load this 4diac FORTE example application project. 245 | 246 | If you have everything properly installed project should build without any issues. Once you build it, flash and turn on ESP-IDF Monitor device. 247 | 248 | Once it's done you should see your 4diac FORTE up and running. 249 | 250 | * CTRL+Shift+P -> `ESP-IDF:>Set Espressif device target` 251 | 252 | * (Optional) Configure your SPI Flash: CTRL+Shift+P -> `ESP-IDF:>SDK Configuration Editor (menuconfig)`: 253 | ```menuconfig 254 | Serial flasher config 255 | -> Flash SPI speed (40 MHz) 256 | -> Flash size (4 MB) 257 | ``` 258 | 259 | * (Optional) Edit your partion file of SPI flash - `partion.csv`: 260 | 261 | ```csv 262 | # Name, Type, SubType, Offset, Size, Flags 263 | # Note: if you have increased the bootloader size, make sure to update the offsets to avoid overlap 264 | nvs, data, nvs, 0x9000, 0x6000, 265 | phy_init, data, phy, 0xf000, 0x1000, 266 | factory, app, factory, 0x10000, 3M, 267 | storage, data, spiffs, , 0xF0000, 268 | ``` 269 | 270 | * CTRL+Shift+P -> `ESP-IDF:>Build your project` 271 | 272 | ![](./docs/pics/test-application-build.png) 273 | 274 | * CTRL+Shift+P -> `ESP-IDF:>Select Port to Use(COM,tty,usbserial)` 275 | 276 | * CTRL+Shift+P -> `ESP-IDF:>Flash your project` 277 | 278 | * CTRL+Shift+P -> `ESP-IDF:>Monitor your project` 279 | 280 | ![](./docs/pics/test-application-monitor.png ) 281 | 282 | 283 | ```info 284 | ets Jun 8 2016 00:22:57 285 | 286 | rst:0x1 (POWERON_RESET),boot:0x1f (SPI_FAST_FLASH_BOOT) 287 | configsip: 0, SPIWP:0xee 288 | clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 289 | mode:DIO, clock div:2 290 | load:0x3fff0030,len:7084 291 | ho 0 tail 12 room 4 292 | load:0x40078000,len:15584 293 | load:0x40080400,len:4 294 | 0x40080400: _init at ??:? 295 | 296 | load:0x40080404,len:3876 297 | entry 0x4008064c 298 | I (31) boot: ESP-IDF v5.1.2-dirty 2nd stage bootloader 299 | I (31) boot: compile time Feb 4 2024 12:55:18 300 | I (31) boot: Multicore bootloader 301 | I (36) boot: chip revision: v1.0 302 | I (40) boot.esp32: SPI Speed : 40MHz 303 | I (44) boot.esp32: SPI Mode : DIO 304 | I (49) boot.esp32: SPI Flash Size : 4MB 305 | I (54) boot: Enabling RNG early entropy source... 306 | I (59) boot: Partition Table: 307 | I (63) boot: ## Label Usage Type ST Offset Length 308 | I (70) boot: 0 nvs WiFi data 01 02 00009000 00006000 309 | I (77) boot: 1 phy_init RF data 01 01 0000f000 00001000 310 | I (85) boot: 2 factory factory app 00 00 00010000 00300000 311 | I (92) boot: 3 storage Unknown data 01 82 00310000 000f0000 312 | I (100) boot: End of partition table 313 | I (104) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=26954h (158036) map 314 | I (170) esp_image: segment 1: paddr=0003697c vaddr=3ffb0000 size=03c4ch ( 15436) load 315 | I (176) esp_image: segment 2: paddr=0003a5d0 vaddr=40080000 size=05a48h ( 23112) load 316 | I (186) esp_image: segment 3: paddr=00040020 vaddr=400d0020 size=aa750h (698192) map 317 | I (438) esp_image: segment 4: paddr=000ea778 vaddr=40085a48 size=10838h ( 67640) load 318 | I (478) boot: Loaded app from partition at offset 0x10000 319 | I (478) boot: Disabling RNG early entropy source... 320 | I (489) cpu_start: Multicore app 321 | I (490) cpu_start: Pro cpu up. 322 | I (490) cpu_start: Starting app cpu, entry point is 0x400813fc 323 | 0x400813fc: call_start_cpu1 at /home/liangz/esp/esp-idf/components/esp_system/port/cpu_start.c:157 324 | 325 | I (0) cpu_start: App cpu up. 326 | I (507) cpu_start: Pro cpu start user code 327 | I (508) cpu_start: cpu freq: 160000000 Hz 328 | I (508) cpu_start: Application information: 329 | I (512) cpu_start: Project name: TestApplication 330 | I (518) cpu_start: App version: 14d6a8b-dirty 331 | I (523) cpu_start: Compile time: Feb 4 2024 13:27:56 332 | I (529) cpu_start: ELF file SHA256: 41063bad2d5194cf... 333 | I (535) cpu_start: ESP-IDF: v5.1.2-dirty 334 | I (541) cpu_start: Min chip rev: v0.0 335 | I (545) cpu_start: Max chip rev: v3.99 336 | I (550) cpu_start: Chip rev: v1.0 337 | I (555) heap_init: Initializing. RAM available for dynamic allocation: 338 | I (562) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM 339 | I (568) heap_init: At 3FFB8610 len 000279F0 (158 KiB): DRAM 340 | I (575) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM 341 | I (581) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM 342 | I (587) heap_init: At 40096280 len 00009D80 (39 KiB): IRAM 343 | I (595) spi_flash: detected chip: generic 344 | I (598) spi_flash: flash io: dio 345 | I (606) app_start: Starting scheduler on CPU0 346 | I (607) app_start: Starting scheduler on CPU1 347 | I (607) main_task: Started on CPU0 348 | I (617) main_task: Calling app_main() 349 | sample without isobus! 350 | This is esp32 chip with 2 CPU core(s), WiFi/BT/BLE, silicon revision v1.0, 4MB external flash 351 | Minimum free heap size: 274828 bytes 352 | CONFIG_FREERTOS_HZ: 1000 must be 1000 !!!! (200Hz at least for 5ms ) 353 | app_main starting 354 | I (664) wifi softAP: ESP_WIFI_MODE_AP 355 | I (669) wifi:wifi driver task: 3ffc0f90, prio:23, stack:6656, core=0 356 | I (680) wifi:wifi firmware version: 91b9630 357 | I (681) wifi:wifi certification version: v7.0 358 | I (681) wifi:config NVS flash: enabled 359 | I (681) wifi:config nano formating: disabled 360 | I (685) wifi:Init data frame dynamic rx buffer num: 32 361 | I (690) wifi:Init static rx mgmt buffer num: 5 362 | I (694) wifi:Init management short buffer num: 32 363 | I (698) wifi:Init dynamic tx buffer num: 32 364 | I (702) wifi:Init static rx buffer size: 1600 365 | I (706) wifi:Init static rx buffer num: 10 366 | I (710) wifi:Init dynamic rx buffer num: 32 367 | I (715) wifi_init: rx ba win: 6 368 | I (718) wifi_init: tcpip mbox: 32 369 | I (722) wifi_init: udp mbox: 6 370 | I (726) wifi_init: tcp mbox: 6 371 | I (729) wifi_init: tcp tx win: 5744 372 | I (733) wifi_init: tcp rx win: 5744 373 | I (738) wifi_init: tcp mss: 1440 374 | I (742) wifi_init: WiFi IRAM OP enabled 375 | I (746) wifi_init: WiFi RX IRAM OP enabled 376 | W (1003) wifi:Configuring PMF required implicitly for authmode WIFI_AUTH_WPA3_PSK 377 | I (1006) phy_init: phy_version 4780,16b31a7,Sep 22 2023,20:42:16 378 | I (1083) wifi:mode : softAP (bc:dd:c2:d1:be:b1) 379 | I (1222) wifi:Total power save buffer number: 16 380 | I (1223) wifi:Init max length of beacon: 752/752 381 | I (1224) wifi:Init max length of beacon: 752/752 382 | I (1227) wifi softAP: wifi_init_softap finished. SSID:ESP_D1BEB1 password:esp32_pwd channel:1 383 | I (1228) esp_netif_lwip: DHCP server started on interface WIFI_AP_DEF with IP: 192.168.4.1 384 | I (1243) MAIN: Executing forte... 385 | I (1257) MAIN: OK 0 , Could start forte 386 | 387 | forte_main done 388 | I (3243) main_task: Returned from app_main() 389 | ``` 390 | 391 | Now you can deploy your sample application. To build your sample application with FORTE please refer to FORTE documentation : [Step 1 - Use 4diac Locally (Blinking Tutorial)]( https://www.eclipse.org/4diac/en_help.php?helppage=html/4diacIDE/use4diacLocally.html") 392 | 393 | If everything is done correctly you should succesfully deploy your application. Enjoy! 394 | -------------------------------------------------------------------------------- /README_CN.md: -------------------------------------------------------------------------------- 1 | # ESP 4diac FORTE Library 2 | 3 | [English](README.md) 4 | 5 | - [ESP 4diac FORTE Library](#esp-4diac-forte-library) 6 | - [概述](#概述) 7 | - [需求](#需求) 8 | - [Step 1. 将 4diac FORTE 编译为静态库](#step-1-将-4diac-forte-编译为静态库) 9 | - [Step 1.1. 获取源代码](#step-11-获取源代码) 10 | - [Step 1.2. 设置 CMake](#step-12-设置-cmake) 11 | - [Step 1.3. 配置编译器](#step-13-配置编译器) 12 | - [Step 1.5. 生成文件](#step-15-生成文件) 13 | - [Step 1.6. 构建 4diac FORTE](#step-16-构建-4diac-forte) 14 | - [Step 2. 将 4diac FORTE 静态库添加到 `ESP 4diac FORTE` 组件](#step-2-将-4diac-forte-静态库添加到-esp-4diac-forte-组件) 15 | - [Step 2.1. 克隆这个存储库](#step-21-克隆这个存储库) 16 | - [Step 2.2. 添加 FORTE 库](#step-22-添加-forte-库) 17 | - [Step 3. TestApplication - 示例 4diac FORTE 应用程序](#step-3-testapplication---示例-4diac-forte-应用程序) 18 | 19 | ## 概述 20 | 21 | [ESP-4diac-FORTE](https://github.com/hikiku/esp-4diac-forte) 是一个标准的 [ESP-IDF](https://github.com/espressif/esp-idf) 组件。 22 | 23 | 4diac FORTE 是一个基于 IEC 61499 标准的开源 PLC 运行时框架。 本指南介绍了如何在 esp32 或 esp32s2 MCU 上运行它。 有关 4diac FORTE 的更多详细信息,请访问 https://www.eclipse.org/4diac/en_rte.php。 24 | 25 | 本库基于: 26 | 27 | - [**4diac FORTE for FreeRTOS + LwIP**](https://eclipse.dev/4diac/en_help.php?helppage=html/installation/freeRTOSLwIP.html) 28 | - [**4diac FORTE ESP32 Component**](https://gitlab.com/meisterschulen-am-ostbahnhof-munchen/4diac-forte-esp32-component) 29 | - [**ESP32 4diac Example Application**](https://gitlab.com/meisterschulen-am-ostbahnhof-munchen/esp32-4diac-example-application) 30 | 31 | ## 需求 32 | - Linux 操作系统 - Ubuntu / Debian / Arch。 33 | - Visual Studio Code。 34 | - 支持 ESP32 芯片 的 Espressif 插件 - `Espressif IDF`, [安装并设置扩展](https://github.com/espressif/vscode-esp-idf-extension/blob/HEAD/docs/tutorial/install.md)。 35 | - ESP-IDF - 应该已通过 VS Code 插件安装。 36 | - Git, make, cmake 和 cmake-gui: 37 | `sudo apt-get install git make cmake cmake-gui` 38 | 39 | **另外,假设用户具有 C/C++ 编程、ESP32 平台和所需工具链的基本知识。** 40 | 41 | 在执行此说明之前最好先测试所有必需的工具。 42 | 43 | ## Step 1. 将 4diac FORTE 编译为静态库 44 | 45 | ### Step 1.1. 获取源代码 46 | 克隆最新的 4diac FORTE 存储库: 47 | 48 | ```bash 49 | $ git clone https://git.eclipse.org/r/4diac/org.eclipse.4diac.forte.git 50 | ``` 51 | 52 | 本文的工作目录是`/home/liang/secret/work/`。记住它,等下我们会多次用到它。 53 | 54 | ### Step 1.2. 设置 CMake 55 | 56 | 1. 打开 CMake-GUI 57 | 下一步在 forte 根文件夹中,创建构建目录并启动 cmake gui 工具。 它可以通过终端命令完成 58 | 59 | ```bash 60 | $ cmake-gui 61 | ``` 62 | 63 | 2. 完成如图所示操作 64 | 1. 设置 4diac FORTE 源代码路径,例如: `/home/liangz/secret/wrk/org.eclipse.4diac.forte`。 65 | 2. 设置你想要创建的二进制库的路径,例如:`/home/liangz/secret/wrk/org.eclipse.4diac.forte/build`。 ~~通常使用 `bin/freeRTOS`。~~ 66 | 3. 按Configure,将出现带有配置向导的新窗口。 67 | 68 | ![选择源代码路径](./docs/pics/cmake_sel_src_and_build.png) 69 | 70 | 3. 在新窗口中选择正确的选项 71 | 1. 选择您通常用来编译程序的工具。 此示例使用列表中的 `UNIX Makefiles`。 72 | 2. 选择 `Specify options for cross-compiling`. 73 | 3. 按下 Next-> 74 | 75 | ![](./docs/pics/cmake_wizard1.png) 76 | 77 | 4. 设置交叉编译。 您必须为 xtensa 架构选择 GCC 和 G++ 编译器 78 | 1. 在 Operating System 写入**Generic**(一般是freeRTOS,不会影响编译) 79 | 2. 在 Processor 写入 **esp32** 或 **esp32s2** 80 | 3. 选择 C 交叉编译器的路径 **/home/liangz/.espressif/tools/xtensa-esp32-elf/esp-12.2.0_20230208/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc** 81 | 4. 选择 C++ 交叉编译器的路径 **/home/liangz/.espressif/tools/xtensa-esp32-elf/esp-12.2.0_20230208/xtensa-esp32-elf/bin/xtensa-esp32-elf-g++** 82 | 5. 目标根字段可以留空。 83 | 6. 按下 Finish 84 | 85 | ![](./docs/pics/cmake_cross_gcc_cfg.png) 86 | 87 | ### Step 1.3. 配置编译器 88 | 89 | CMake 中应显示以红色显示 4diac FORTE 的所有变量的列表。 90 | ![](./docs/pics/cmake_err.png) 91 | 92 | 1. 对于 esp32,我们必须将 `FORTE_ARCHITECTURE` 变量设置为 `FreeRTOSLwIP`。 现在,当单击Configure时,大多数错误应该消失。 93 | ![](./docs/pics/cmake_err2.png) 94 | 2. 检查 CMake 中显示的有关 LwIP 配置的信息。 95 | 3. 变量 `FORTE_FreeRTOSLwIP_INCLUDES` 现在应该出现,它是最重要的一个。 您应该将其设置为 freeRTOS 和 LwIP 标头所在的多个路径,每个路径用分号分隔。 例如: `${MAIN_DIRECTORY}/FreeRTOS/portable;${MAIN_DIRECTORY}/include;${MAIN_DIRECTORY}/lwip/src/include;${MAIN_DIRECTORY}/lwip/port` 其中 `${MAIN_DIRECTORY}` 是路径 其中有 freeRTOS 和 LwIP 代码。 当您稍后编译并失败并显示错误指出缺少某些 `includes` 时,应在缺少文件所在的文件夹中更新此变量。 96 | 97 | 必须设置参数 `FORTE_FreeRTOSLwIP_INCLUDES`。 它需要用分号分隔路径的字符串来包含 esp-idf 中的文件夹。 有相当多的路径需要添加为包含路径。 下面是一个工作配置,请注意,所有这些路径都是**绝对**,因此您需要修改所有这些路径。 在大多数情况下,用 ESP-IDF 根目录路径替换所有出现的 `/home/liangz/esp/esp-idf` 就足够了。 例如使用 `/home/my_user/my_projects/my-idf_path`。 98 | 99 | ```bash 100 | /home/liangz/test/blink/build/config;/home/liangz/esp/esp-idf/components/newlib/platform_include;/home/liangz/esp/esp-idf/components/freertos/FreeRTOS-Kernel/include;/home/liangz/esp/esp-idf/components/freertos/FreeRTOS-Kernel/include/freertos;/home/liangz/esp/esp-idf/components/freertos/FreeRTOS-Kernel/portable/xtensa/include;/home/liangz/esp/esp-idf/components/freertos/esp_additions/include/freertos;/home/liangz/esp/esp-idf/components/freertos/esp_additions/include;/home/liangz/esp/esp-idf/components/freertos/esp_additions/arch/xtensa/include;/home/liangz/esp/esp-idf/components/esp_hw_support/include;/home/liangz/esp/esp-idf/components/esp_hw_support/include/soc;/home/liangz/esp/esp-idf/components/esp_hw_support/include/soc/esp32;/home/liangz/esp/esp-idf/components/esp_hw_support/port/esp32/.;/home/liangz/esp/esp-idf/components/esp_hw_support/port/esp32/private_include;/home/liangz/esp/esp-idf/components/heap/include;/home/liangz/esp/esp-idf/components/log/include;/home/liangz/esp/esp-idf/components/soc/include;/home/liangz/esp/esp-idf/components/soc/esp32;/home/liangz/esp/esp-idf/components/soc/esp32/include;/home/liangz/esp/esp-idf/components/hal/esp32/include;/home/liangz/esp/esp-idf/components/hal/include;/home/liangz/esp/esp-idf/components/hal/platform_port/include;/home/liangz/esp/esp-idf/components/esp_rom/include;/home/liangz/esp/esp-idf/components/esp_rom/include/esp32;/home/liangz/esp/esp-idf/components/esp_rom/esp32;/home/liangz/esp/esp-idf/components/esp_common/include;/home/liangz/esp/esp-idf/components/esp_system/include;/home/liangz/esp/esp-idf/components/esp_system/port/soc;/home/liangz/esp/esp-idf/components/esp_system/port/include/private;/home/liangz/esp/esp-idf/components/xtensa/include;/home/liangz/esp/esp-idf/components/xtensa/esp32/include;/home/liangz/esp/esp-idf/components/lwip/include;/home/liangz/esp/esp-idf/components/lwip/include/apps;/home/liangz/esp/esp-idf/components/lwip/include/apps/sntp;/home/liangz/esp/esp-idf/components/lwip/lwip/src/include;/home/liangz/esp/esp-idf/components/lwip/port/include;/home/liangz/esp/esp-idf/components/lwip/port/freertos/include;/home/liangz/esp/esp-idf/components/lwip/port/esp32xx/include;/home/liangz/esp/esp-idf/components/lwip/port/esp32xx/include/arch 101 | ``` 102 | 103 | **注意**:用你的 `sdkconfig.h` 文件所在的路径,替换 `/home/liangz/test/blink/build/config`。 104 | 105 | 110 | 111 | 112 | 113 | 4. 您可能还需要使用硬件所需的标志来设置 `CMAKE_C_FLAGS` 和 `CMAKE_CXX_FLAGS` 变量。 您可以从跨 IDE 中示例项目的属性中检查需要哪些标志。 114 | 115 | 一旦您提交了 freertos 包含文件,您就需要添加一些额外的*compiler flags*。 为此,您需要激活 cmake 程序右上角的 `Advanced` 复选框。 一旦你拥有它,你将能够看到更多可以调整的选项。 116 | 117 | 您必须添加的*Flags*: 118 | `-mlongcalls -ffunction-sections -fdata-sections -fno-threadsafe-statics -fno-rtti -fno-exceptions -DconfigMINIMAL_STACK_SIZE_FORTE=15000` 119 | 120 | 所有这些都必须添加到 `CMAKE_C_FLAGS` 和 `CMAKE_CXX_FLAGS` 的所有变体中。 有:`DEBUG、MINISIZEREL RELEASE、REALWITHDEBINFO` 121 | 122 | 它看起来应该类似于下图: 123 | 124 | ![](./docs/pics/cmake_flags.png) 125 | 126 | 5. 下一个要设置的选项是将 `FORTE_TicksPerSecond` 选项设置为 **100** 而不是 1000。它在 advanced 模式下也可见。 127 | 6. 我们还需要告诉 cmake 我们想要构建静态库而不是可执行文件。 为此,您必须将 `FORTE_BUILD_EXECUTABLE` 设置为 *false/deselect* ,并将 `FORTE_BUILD_STATIC_LIBRARY` 设置为 *true/select*。 128 | 7. 对于第一次测试,最好在 FORTE 中启用调试功能,这样我们就可以看到更多日志。 这在第一次运行时非常有用,因此我们可以看到一切都按预期运行。 为此,请在 `CMAKE_BUILD_TYPE` 中输入:`DEBUG` 并将 `FORTE_LOGLEVEL` 切换为 `LOGDEBUG`。 **不幸的是** 每次我们触发配置时,`FORTE_LOGLEVEL` 选项都会自动切换回 `NOLOG` ,因此当我们进行一些更改并且希望获得日志时,记住这一点很重要。 129 | 135 | 136 | 8. 单击Configure,需要修改的变量将再次显示为红色,其余变量显示为白色。 ~~检查这些变量并按Configure,直到没有变量显示为红色。 在这里你可以添加你想要 FORTE 拥有的模块,但是从 freeRTOS 的角度来看,没有其他你需要的了~~ 137 | 138 | **汇总我们在这里所做的更改:** 139 | 140 | - `FORTE_ARCHITECTURE` 设置为 `FreeRTOSLwIP` 141 | - `FORTE_FreeRTOSLwIP_INCLUDES` 填入所有 FreeRTOS include 路径 142 | - `CMAKE_C_FLAGS`, `CMAKE_CXX_FLAGS` 和它们所有带有 `DEBUG, MINISIZEREL RELEASE, REALWITHDEBINFO` 的变体 - 添加 compilers flags 143 | - `FORTE_TicksPerSecond` 设置为 100 144 | - `FORTE_BUILD_EXECUTABLE` 取消选择 145 | - `FORTE_BUILD_STATIC_LIBRARY` 选中 146 | - `CMAKE_BUILD_TYPE` 输入 `DEBUG`, `FORTE_LOGLEVEL` 设置为 `LOGDEBUG` 147 | 148 | 149 | 174 | 175 | ### Step 1.5. 生成文件 176 | 177 | * 按下 Generate 178 | 179 | ### Step 1.6. 构建 4diac FORTE 180 | * 转到最近生成的文件夹(例如: `${FORTE_ROOT}/build/src`)并输入 `make -j`,你的 make 工具应该开始执行所有工作: 181 | 182 | ```bash 183 | $ cd ${FORTE_ROOT}/build/src # cd bin/freeRTOS 184 | $ make -j 185 | ``` 186 | 187 | * 如果出现错误,请再次检查 CMake 中的变量,特别是 `FORTE_FreeRTOSLwIP_INCLUDES`、`CMAKE_C_FLAGS` 和 `CMAKE_CXX_FLAGS`。 188 | 189 | * 如果没有发生错误,经过一段时间后,您应该已经构建了 FORTE 静态库,如下图所示: 190 | 191 | ![build_ok](./docs/pics/build_ok.png) 192 | 193 | * 现在你可以在 `${FORTE_ROOT}/build/src` ~~`bin/freeRTOS/src`~~ 中找到名为 `libforte-static.a` 的静态库。 我们将使用这个库来准备我们的 ESP 组件,以便它可以直接在 esp 项目中使用。 194 | 195 | ## Step 2. 将 4diac FORTE 静态库添加到 `ESP 4diac FORTE` 组件 196 | 197 | ### Step 2.1. 克隆这个存储库 198 | 199 | 转到您的工作目录并输入: 200 | 201 | ```bash 202 | $ cd 203 | $ git clone https://github.com/hikiku/esp-4diac-forte.git 204 | ``` 205 | 206 | 207 | 208 | ### Step 2.2. 添加 FORTE 库 209 | 210 | 此时您可以将静态库复制到 FORTE 组件文件夹中。 211 | 212 | 最好创建一个符号链接而不是静态库的硬拷贝。 为此,您可以在 shell 中使用 `ln` 命令。 213 | 214 | `ln -s [soruce file] [destination file]` 215 | 216 | 例如: 217 | 218 | ```bash 219 | $ cd /esp32-4diac-forte/lib/esp32/src 220 | $ mv libforte-static.a libforte-static.a.origin 221 | $ ln -s /org.eclipse.4diac.forte/build/src/libforte-static.a libforte-static.a 222 | ``` 223 | 224 | 229 | 230 | 231 | 232 | 这样您就不必每次重建库时都复制它。 233 | 234 | ## Step 3. TestApplication - 示例 4diac FORTE 应用程序 235 | 236 | 要测试您的 FORTE buld,您需要从头开始准备示例应用程序或使用已经准备好的示例应用程序。 本指南不会介绍如何从头开始创建新项目,而是我们将在此处使用一个已经准备好的示例 - `/esp-4diac-forte/test_apps/TestApplication/`。 237 | 238 | 243 | 244 | 打开 Visual Studio Code,然后加载此 4diac FORTE 示例应用程序项目。 245 | 246 | 如果一切都正确安装,项目应该可以毫无问题地构建。 构建完成后,刷新并打开 ESP-IDF 监视设备。 247 | 248 | 完成后,您应该会看到 4diac FORTE 已启动并正在运行。 249 | 250 | * CTRL+Shift+P -> `ESP-IDF:>Set Espressif device target` 251 | 252 | * (可选) 配置你的 SPI Flash: CTRL+Shift+P -> `ESP-IDF:>SDK Configuration Editor (menuconfig)`: 253 | ```menuconfig 254 | Serial flasher config 255 | -> Flash SPI speed (40 MHz) 256 | -> Flash size (4 MB) 257 | ``` 258 | 259 | * (可选) 修改你的 SPI flash 分区表 - `partion.csv`: 260 | 261 | ```csv 262 | # Name, Type, SubType, Offset, Size, Flags 263 | # Note: if you have increased the bootloader size, make sure to update the offsets to avoid overlap 264 | nvs, data, nvs, 0x9000, 0x6000, 265 | phy_init, data, phy, 0xf000, 0x1000, 266 | factory, app, factory, 0x10000, 3M, 267 | storage, data, spiffs, , 0xF0000, 268 | ``` 269 | 270 | * CTRL+Shift+P -> `ESP-IDF:>Build your project` 271 | 272 | ![](./docs/pics/test-application-build.png) 273 | 274 | * CTRL+Shift+P -> `ESP-IDF:>Select Port to Use(COM,tty,usbserial)` 275 | 276 | * CTRL+Shift+P -> `ESP-IDF:>Flash your project` 277 | 278 | * CTRL+Shift+P -> `ESP-IDF:>Monitor your project` 279 | 280 | ![](./docs/pics/test-application-monitor.png ) 281 | 282 | 283 | ```info 284 | ets Jun 8 2016 00:22:57 285 | 286 | rst:0x1 (POWERON_RESET),boot:0x1f (SPI_FAST_FLASH_BOOT) 287 | configsip: 0, SPIWP:0xee 288 | clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 289 | mode:DIO, clock div:2 290 | load:0x3fff0030,len:7084 291 | ho 0 tail 12 room 4 292 | load:0x40078000,len:15584 293 | load:0x40080400,len:4 294 | 0x40080400: _init at ??:? 295 | 296 | load:0x40080404,len:3876 297 | entry 0x4008064c 298 | I (31) boot: ESP-IDF v5.1.2-dirty 2nd stage bootloader 299 | I (31) boot: compile time Feb 4 2024 12:55:18 300 | I (31) boot: Multicore bootloader 301 | I (36) boot: chip revision: v1.0 302 | I (40) boot.esp32: SPI Speed : 40MHz 303 | I (44) boot.esp32: SPI Mode : DIO 304 | I (49) boot.esp32: SPI Flash Size : 4MB 305 | I (54) boot: Enabling RNG early entropy source... 306 | I (59) boot: Partition Table: 307 | I (63) boot: ## Label Usage Type ST Offset Length 308 | I (70) boot: 0 nvs WiFi data 01 02 00009000 00006000 309 | I (77) boot: 1 phy_init RF data 01 01 0000f000 00001000 310 | I (85) boot: 2 factory factory app 00 00 00010000 00300000 311 | I (92) boot: 3 storage Unknown data 01 82 00310000 000f0000 312 | I (100) boot: End of partition table 313 | I (104) esp_image: segment 0: paddr=00010020 vaddr=3f400020 size=26954h (158036) map 314 | I (170) esp_image: segment 1: paddr=0003697c vaddr=3ffb0000 size=03c4ch ( 15436) load 315 | I (176) esp_image: segment 2: paddr=0003a5d0 vaddr=40080000 size=05a48h ( 23112) load 316 | I (186) esp_image: segment 3: paddr=00040020 vaddr=400d0020 size=aa750h (698192) map 317 | I (438) esp_image: segment 4: paddr=000ea778 vaddr=40085a48 size=10838h ( 67640) load 318 | I (478) boot: Loaded app from partition at offset 0x10000 319 | I (478) boot: Disabling RNG early entropy source... 320 | I (489) cpu_start: Multicore app 321 | I (490) cpu_start: Pro cpu up. 322 | I (490) cpu_start: Starting app cpu, entry point is 0x400813fc 323 | 0x400813fc: call_start_cpu1 at /home/liangz/esp/esp-idf/components/esp_system/port/cpu_start.c:157 324 | 325 | I (0) cpu_start: App cpu up. 326 | I (507) cpu_start: Pro cpu start user code 327 | I (508) cpu_start: cpu freq: 160000000 Hz 328 | I (508) cpu_start: Application information: 329 | I (512) cpu_start: Project name: TestApplication 330 | I (518) cpu_start: App version: 14d6a8b-dirty 331 | I (523) cpu_start: Compile time: Feb 4 2024 13:27:56 332 | I (529) cpu_start: ELF file SHA256: 41063bad2d5194cf... 333 | I (535) cpu_start: ESP-IDF: v5.1.2-dirty 334 | I (541) cpu_start: Min chip rev: v0.0 335 | I (545) cpu_start: Max chip rev: v3.99 336 | I (550) cpu_start: Chip rev: v1.0 337 | I (555) heap_init: Initializing. RAM available for dynamic allocation: 338 | I (562) heap_init: At 3FFAE6E0 len 00001920 (6 KiB): DRAM 339 | I (568) heap_init: At 3FFB8610 len 000279F0 (158 KiB): DRAM 340 | I (575) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM 341 | I (581) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM 342 | I (587) heap_init: At 40096280 len 00009D80 (39 KiB): IRAM 343 | I (595) spi_flash: detected chip: generic 344 | I (598) spi_flash: flash io: dio 345 | I (606) app_start: Starting scheduler on CPU0 346 | I (607) app_start: Starting scheduler on CPU1 347 | I (607) main_task: Started on CPU0 348 | I (617) main_task: Calling app_main() 349 | sample without isobus! 350 | This is esp32 chip with 2 CPU core(s), WiFi/BT/BLE, silicon revision v1.0, 4MB external flash 351 | Minimum free heap size: 274828 bytes 352 | CONFIG_FREERTOS_HZ: 1000 must be 1000 !!!! (200Hz at least for 5ms ) 353 | app_main starting 354 | I (664) wifi softAP: ESP_WIFI_MODE_AP 355 | I (669) wifi:wifi driver task: 3ffc0f90, prio:23, stack:6656, core=0 356 | I (680) wifi:wifi firmware version: 91b9630 357 | I (681) wifi:wifi certification version: v7.0 358 | I (681) wifi:config NVS flash: enabled 359 | I (681) wifi:config nano formating: disabled 360 | I (685) wifi:Init data frame dynamic rx buffer num: 32 361 | I (690) wifi:Init static rx mgmt buffer num: 5 362 | I (694) wifi:Init management short buffer num: 32 363 | I (698) wifi:Init dynamic tx buffer num: 32 364 | I (702) wifi:Init static rx buffer size: 1600 365 | I (706) wifi:Init static rx buffer num: 10 366 | I (710) wifi:Init dynamic rx buffer num: 32 367 | I (715) wifi_init: rx ba win: 6 368 | I (718) wifi_init: tcpip mbox: 32 369 | I (722) wifi_init: udp mbox: 6 370 | I (726) wifi_init: tcp mbox: 6 371 | I (729) wifi_init: tcp tx win: 5744 372 | I (733) wifi_init: tcp rx win: 5744 373 | I (738) wifi_init: tcp mss: 1440 374 | I (742) wifi_init: WiFi IRAM OP enabled 375 | I (746) wifi_init: WiFi RX IRAM OP enabled 376 | W (1003) wifi:Configuring PMF required implicitly for authmode WIFI_AUTH_WPA3_PSK 377 | I (1006) phy_init: phy_version 4780,16b31a7,Sep 22 2023,20:42:16 378 | I (1083) wifi:mode : softAP (bc:dd:c2:d1:be:b1) 379 | I (1222) wifi:Total power save buffer number: 16 380 | I (1223) wifi:Init max length of beacon: 752/752 381 | I (1224) wifi:Init max length of beacon: 752/752 382 | I (1227) wifi softAP: wifi_init_softap finished. SSID:ESP_D1BEB1 password:esp32_pwd channel:1 383 | I (1228) esp_netif_lwip: DHCP server started on interface WIFI_AP_DEF with IP: 192.168.4.1 384 | I (1243) MAIN: Executing forte... 385 | I (1257) MAIN: OK 0 , Could start forte 386 | 387 | forte_main done 388 | I (3243) main_task: Returned from app_main() 389 | ``` 390 | 391 | 现在您可以部署示例应用程序。要使用 FORTE 构建示例应用程序,请参阅 FORTE 文档:[Step 1 - Use 4diac Locally (Blinking Tutorial)]( https://www.eclipse.org/4diac/en_help.php?helppage=html/4diacIDE/use4diacLocally.html")。 392 | 393 | 如果一切都正确完成,您应该成功部署您的应用程序。Enjoy! 394 | -------------------------------------------------------------------------------- /docs/pics/build_ok.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/docs/pics/build_ok.png -------------------------------------------------------------------------------- /docs/pics/cmake_cross_gcc_cfg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/docs/pics/cmake_cross_gcc_cfg.png -------------------------------------------------------------------------------- /docs/pics/cmake_err.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/docs/pics/cmake_err.png -------------------------------------------------------------------------------- /docs/pics/cmake_err2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/docs/pics/cmake_err2.png -------------------------------------------------------------------------------- /docs/pics/cmake_flags.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/docs/pics/cmake_flags.png -------------------------------------------------------------------------------- /docs/pics/cmake_sel_src_and_build.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/docs/pics/cmake_sel_src_and_build.png -------------------------------------------------------------------------------- /docs/pics/cmake_wizard1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/docs/pics/cmake_wizard1.png -------------------------------------------------------------------------------- /docs/pics/test-application-build.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/docs/pics/test-application-build.png -------------------------------------------------------------------------------- /docs/pics/test-application-monitor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/docs/pics/test-application-monitor.png -------------------------------------------------------------------------------- /idf_component.yml: -------------------------------------------------------------------------------- 1 | version: "1.0.0" 2 | description: esp-4diac-forte 3 | dependencies: 4 | idf: 5 | version: ">=5.0" -------------------------------------------------------------------------------- /include/forteinit.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2011 Profactor GmbH 3 | * This program and the accompanying materials are made available under the 4 | * terms of the Eclipse Public License 2.0 which is available at 5 | * http://www.eclipse.org/legal/epl-2.0. 6 | * 7 | * SPDX-License-Identifier: EPL-2.0 8 | * 9 | * Contributors: 10 | * Gerhard Ebenhofer 11 | * - initial API and implementation and/or initial documentation 12 | *******************************************************************************/ 13 | 14 | //!!!autogenerated code - DO NOT EDIT!!! 15 | #ifndef FORTEINIT_H_ 16 | #define FORTEINIT_H_ 17 | 18 | #ifdef __cplusplus 19 | extern "C" { 20 | #endif 21 | 22 | void initForte(); 23 | 24 | 25 | #ifdef __cplusplus 26 | } 27 | #endif 28 | 29 | #endif /*FORTEINIT_H_*/ 30 | -------------------------------------------------------------------------------- /lib/esp32/src/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/lib/esp32/src/.gitignore -------------------------------------------------------------------------------- /lib/esp32/src/libforte-static.a: -------------------------------------------------------------------------------- 1 | version https://git-lfs.github.com/spec/v1 2 | oid sha256:3ec77303f3ee3a88d0b34ec4bd4ad82592c25c84c99deb0a3a535a6d719a36a2 3 | size 37126592 4 | -------------------------------------------------------------------------------- /lib/esp32c3/src/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/lib/esp32c3/src/.gitignore -------------------------------------------------------------------------------- /lib/esp32s2/src/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/lib/esp32s2/src/.gitignore -------------------------------------------------------------------------------- /lib/esp32s3/src/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/lib/esp32s3/src/.gitignore -------------------------------------------------------------------------------- /test_apps/TestApplication/.gitignore: -------------------------------------------------------------------------------- 1 | /build/ 2 | /dependencies.lock 3 | -------------------------------------------------------------------------------- /test_apps/TestApplication/.vscode/c_cpp_properties.json: -------------------------------------------------------------------------------- 1 | { 2 | "configurations": [ 3 | { 4 | "name": "ESP-IDF", 5 | "compilerPath": "${config:idf.toolsPath}/tools/xtensa-esp32-elf/esp-12.2.0_20230208/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc", 6 | "includePath": [ 7 | "${config:idf.espIdfPath}/components/**", 8 | "${config:idf.espIdfPathWin}/components/**", 9 | "${config:idf.espAdfPath}/components/**", 10 | "${config:idf.espAdfPathWin}/components/**", 11 | // "/home/liangz/secret/wrk/org.eclipse.4diac.forte/build/src/**", 12 | "${workspaceFolder}/**" 13 | ], 14 | "browse": { 15 | "path": [ 16 | "${config:idf.espIdfPath}/components", 17 | "${config:idf.espIdfPathWin}/components", 18 | "${config:idf.espAdfPath}/components/**", 19 | "${config:idf.espAdfPathWin}/components/**", 20 | // "/home/liangz/secret/wrk/org.eclipse.4diac.forte/build/src/**", 21 | "${workspaceFolder}" 22 | ], 23 | "limitSymbolsToIncludedHeaders": false 24 | } 25 | } 26 | ], 27 | "version": 4 28 | } 29 | -------------------------------------------------------------------------------- /test_apps/TestApplication/.vscode/settings.json: -------------------------------------------------------------------------------- 1 | { 2 | "idf.adapterTargetName": "esp32", 3 | "idf.openOcdConfigs": [ 4 | "board/esp32-bridge.cfg" 5 | ], 6 | "idf.flashType": "UART", 7 | "idf.port": "/dev/ttyUSB0" 8 | } -------------------------------------------------------------------------------- /test_apps/TestApplication/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | # The following lines of boilerplate have to be in your project's 2 | # CMakeLists in this exact order for cmake to work correctly 3 | cmake_minimum_required(VERSION 3.5) 4 | 5 | # ../.. : esp-4diac-forte/ 6 | set(EXTRA_COMPONENT_DIRS ../.. components/forte_main) 7 | 8 | include($ENV{IDF_PATH}/tools/cmake/project.cmake) 9 | project(TestApplication) 10 | -------------------------------------------------------------------------------- /test_apps/TestApplication/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hikiku/esp-4diac-forte/52d54f24dca8edac985640ead482542bef9bc7bb/test_apps/TestApplication/README.md -------------------------------------------------------------------------------- /test_apps/TestApplication/components/Network_softAP/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | idf_component_register(SRCS "softap_example_main.c" 2 | INCLUDE_DIRS "." 3 | PRIV_REQUIRES nvs_flash esp_wifi) -------------------------------------------------------------------------------- /test_apps/TestApplication/components/Network_softAP/Kconfig.projbuild: -------------------------------------------------------------------------------- 1 | menu "Network_softAP" 2 | 3 | config ESP_WIFI_AP_PASSWORD 4 | string "SoftAP Password" 5 | default "esp32_pwd" 6 | help 7 | WiFi password (WPA or WPA2) for the example to use for the softAP. 8 | config ESP_WIFI_AP_CHANNEL 9 | int "WiFi Channel" 10 | range 1 13 11 | default 1 12 | help 13 | WiFi channel (network channel) for the example to use. 14 | 15 | config ESP_MAX_STA_CONN 16 | int "Maximal STA connections" 17 | default 4 18 | help 19 | Max number of the STA connects to AP. 20 | endmenu 21 | -------------------------------------------------------------------------------- /test_apps/TestApplication/components/Network_softAP/softap_example_main.c: -------------------------------------------------------------------------------- 1 | /* WiFi softAP Example 2 | 3 | This example code is in the Public Domain (or CC0 licensed, at your option.) 4 | 5 | Unless required by applicable law or agreed to in writing, this 6 | software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 7 | CONDITIONS OF ANY KIND, either express or implied. 8 | */ 9 | #include 10 | #include "freertos/FreeRTOS.h" 11 | #include "freertos/task.h" 12 | #include "esp_mac.h" 13 | #include "esp_wifi.h" 14 | #include "esp_event.h" 15 | #include "esp_log.h" 16 | #include "nvs_flash.h" 17 | 18 | #include "lwip/err.h" 19 | #include "lwip/sys.h" 20 | 21 | 22 | extern void Network_softAP_main(void); 23 | 24 | /* The examples use WiFi configuration that you can set via project configuration menu. 25 | 26 | If you'd rather not, just change the below entries to strings with 27 | the config you want - ie #define EXAMPLE_WIFI_SSID "mywifissid" 28 | */ 29 | #define EXAMPLE_ESP_WIFI_PASS CONFIG_ESP_WIFI_AP_PASSWORD 30 | #define EXAMPLE_ESP_WIFI_CHANNEL CONFIG_ESP_WIFI_AP_CHANNEL 31 | #define EXAMPLE_MAX_STA_CONN CONFIG_ESP_MAX_STA_CONN 32 | 33 | static const char *TAG = "wifi softAP"; 34 | 35 | static void wifi_event_handler(void* arg, esp_event_base_t event_base, 36 | int32_t event_id, void* event_data) 37 | { 38 | if (event_id == WIFI_EVENT_AP_STACONNECTED) { 39 | wifi_event_ap_staconnected_t* event = (wifi_event_ap_staconnected_t*) event_data; 40 | ESP_LOGI(TAG, "station "MACSTR" join, AID=%d", 41 | MAC2STR(event->mac), event->aid); 42 | } else if (event_id == WIFI_EVENT_AP_STADISCONNECTED) { 43 | wifi_event_ap_stadisconnected_t* event = (wifi_event_ap_stadisconnected_t*) event_data; 44 | ESP_LOGI(TAG, "station "MACSTR" leave, AID=%d", 45 | MAC2STR(event->mac), event->aid); 46 | } 47 | } 48 | 49 | void wifi_init_softap(void) 50 | { 51 | ESP_ERROR_CHECK(esp_netif_init()); 52 | ESP_ERROR_CHECK(esp_event_loop_create_default()); 53 | esp_netif_create_default_wifi_ap(); 54 | 55 | wifi_init_config_t cfg = WIFI_INIT_CONFIG_DEFAULT(); 56 | ESP_ERROR_CHECK(esp_wifi_init(&cfg)); 57 | 58 | ESP_ERROR_CHECK(esp_event_handler_instance_register(WIFI_EVENT, 59 | ESP_EVENT_ANY_ID, 60 | &wifi_event_handler, 61 | NULL, 62 | NULL)); 63 | 64 | wifi_config_t wifi_config = { 65 | .ap = { 66 | .ssid = "XX", 67 | .ssid_len = 2, 68 | .channel = EXAMPLE_ESP_WIFI_CHANNEL, 69 | .password = EXAMPLE_ESP_WIFI_PASS, 70 | .max_connection = EXAMPLE_MAX_STA_CONN, 71 | #ifdef CONFIG_ESP_WIFI_SOFTAP_SAE_SUPPORT 72 | .authmode = WIFI_AUTH_WPA3_PSK, 73 | .sae_pwe_h2e = WPA3_SAE_PWE_BOTH, 74 | #else /* CONFIG_ESP_WIFI_SOFTAP_SAE_SUPPORT */ 75 | .authmode = WIFI_AUTH_WPA_WPA2_PSK, 76 | #endif 77 | .pmf_cfg = { 78 | .required = false, 79 | }, 80 | }, 81 | }; 82 | 83 | wifi_config.ap.ssid[0] = 0XFF; 84 | wifi_config.ap.ssid[1] = 0XFF; 85 | 86 | if (strlen(EXAMPLE_ESP_WIFI_PASS) == 0) { 87 | wifi_config.ap.authmode = WIFI_AUTH_OPEN; 88 | } 89 | 90 | ESP_ERROR_CHECK(esp_wifi_set_mode(WIFI_MODE_AP)); 91 | ESP_ERROR_CHECK(esp_wifi_set_config(WIFI_IF_AP, &wifi_config)); 92 | ESP_ERROR_CHECK(esp_wifi_start()); 93 | 94 | esp_wifi_get_config(WIFI_IF_AP, &wifi_config); 95 | 96 | ESP_LOGI(TAG, "wifi_init_softap finished. SSID:%s password:%s channel:%d", 97 | wifi_config.ap.ssid, wifi_config.ap.password, wifi_config.ap.channel); 98 | } 99 | 100 | void Network_softAP_main(void) 101 | { 102 | //Initialize NVS 103 | esp_err_t ret = nvs_flash_init(); 104 | if (ret == ESP_ERR_NVS_NO_FREE_PAGES || ret == ESP_ERR_NVS_NEW_VERSION_FOUND) { 105 | ESP_ERROR_CHECK(nvs_flash_erase()); 106 | ret = nvs_flash_init(); 107 | } 108 | ESP_ERROR_CHECK(ret); 109 | 110 | ESP_LOGI(TAG, "ESP_WIFI_MODE_AP"); 111 | wifi_init_softap(); 112 | } 113 | -------------------------------------------------------------------------------- /test_apps/TestApplication/components/forte_main/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | idf_component_register( SRCS "forte_main.cpp" 2 | INCLUDE_DIRS ".") 3 | 4 | -------------------------------------------------------------------------------- /test_apps/TestApplication/components/forte_main/forte_Init.h: -------------------------------------------------------------------------------- 1 | /************************************************************************************ 2 | * Copyright (c) 2017 fortiss GmbH 3 | * This program and the accompanying materials are made available under the 4 | * terms of the Eclipse Public License 2.0 which is available at 5 | * http://www.eclipse.org/legal/epl-2.0. 6 | * 7 | * SPDX-License-Identifier: EPL-2.0 8 | * 9 | * Contributors: 10 | * Milan Vathoopan - initial API and implementation and/or initial documentation 11 | ************************************************************************************/ 12 | 13 | #ifndef SRC_ARCH_FREERTOS_FORTE_INIT_H_ 14 | #define SRC_ARCH_FREERTOS_FORTE_INIT_H_ 15 | 16 | /* When moving this file to the outside of the architecture, 17 | * the corresponding defines for exporting in windows or other platform 18 | * must be added here 19 | * 20 | */ 21 | #ifndef FORTE_SHARED_PREFIX 22 | # define FORTE_SHARED_PREFIX 23 | #endif 24 | 25 | #ifndef FORTE_SHARED_CALL 26 | # define FORTE_SHARED_CALL 27 | #endif 28 | 29 | #ifdef __cplusplus 30 | extern "C" { 31 | #endif 32 | 33 | enum FORTE_STATUS { 34 | FORTE_OK, 35 | FORTE_DEVICE_ALREADY_STARTED, 36 | FORTE_WRONG_ENDIANESS, 37 | FORTE_WRONG_PARAMETERS, 38 | FORTE_ARCHITECTURE_NOT_READY, 39 | }; 40 | 41 | typedef void* TForteInstance; 42 | 43 | /** 44 | * \brief Start forte instance 45 | * @param paPort The port on which to forte will listen. Use 0 for default (normally 61499) 46 | * @param paResultInstance Address of an instance of forte where the new instance is stored 47 | * @return FORTE_OK if no error occurred, other values otherwise 48 | */ 49 | FORTE_SHARED_PREFIX int FORTE_SHARED_CALL forteStartInstance(unsigned int paPort, TForteInstance* paResultInstance); 50 | 51 | /** 52 | * \brief Start forte instance with possibilities of more arguments 53 | * @param paArgc Number of arguments in arg 54 | * @param paArgv Arguments 55 | * @param paResultInstance Address of an instance of forte where the new instance is stored 56 | * @return FORTE_OK if no error occurred, other values otherwise 57 | */ 58 | FORTE_SHARED_PREFIX int FORTE_SHARED_CALL forteStartInstanceGeneric(int paArgc, char *paArgv[], TForteInstance* paResultInstance); 59 | 60 | /** 61 | * \brief Terminates a Forte instance 62 | * @param paSignal Signal value to terminate instance 63 | * @param paInstance Instance to terminate 64 | */ 65 | FORTE_SHARED_PREFIX void FORTE_SHARED_CALL forteStopInstance(int paSignal, TForteInstance paInstance); 66 | 67 | /** 68 | * \brief Terminates a Forte instance 69 | * @param paInstance Instance to terminate 70 | */ 71 | FORTE_SHARED_PREFIX void FORTE_SHARED_CALL forteJoinInstance(TForteInstance paInstance); 72 | 73 | /** 74 | * \brief Initializes the architecture. Prepare all resources needed by the Forte's instances. Must be called once before the first Forte instance is started 75 | */ 76 | FORTE_SHARED_PREFIX void FORTE_SHARED_CALL forteGlobalInitialize(void); 77 | 78 | /** 79 | * \brief Deinitializes the architecture. Frees all resources used by Forte's instances. Must be called after the last instance is ended 80 | */ 81 | FORTE_SHARED_PREFIX void FORTE_SHARED_CALL forteGlobalDeinitialize(void); 82 | 83 | #ifdef __cplusplus 84 | } 85 | #endif 86 | 87 | #endif /* SRC_ARCH_FREERTOS_FORTE_INIT_H_ */ 88 | -------------------------------------------------------------------------------- /test_apps/TestApplication/components/forte_main/forte_main.cpp: -------------------------------------------------------------------------------- 1 | #include 2 | #include "freertos/FreeRTOS.h" 3 | #include "freertos/task.h" 4 | 5 | 6 | 7 | #include "esp_log.h" 8 | 9 | 10 | 11 | #include "forteinit.h" 12 | #include "forte_Init.h" 13 | 14 | 15 | static const char *const TAG = "MAIN"; 16 | 17 | extern "C" { 18 | void forte_main(void); 19 | void wifi_init_sta(void); 20 | } 21 | 22 | 23 | 24 | static uint8_t ucParameterToPass; 25 | TaskHandle_t xHandle = NULL; 26 | 27 | void MyForteTask(void *pvParameters) 28 | { 29 | 30 | ESP_LOGI(TAG, "Executing forte..."); 31 | 32 | forteGlobalInitialize(); 33 | TForteInstance forteInstance = 0; 34 | int resultForte = forteStartInstanceGeneric(0, 0, &forteInstance); 35 | if (FORTE_OK == resultForte) 36 | { 37 | ESP_LOGI(TAG,"OK %d , Could start forte\n", resultForte); 38 | forteJoinInstance(forteInstance); 39 | } 40 | else 41 | { 42 | ESP_LOGE(TAG,"Error %d: Couldn't start forte\n", resultForte); 43 | } 44 | forteGlobalDeinitialize(); 45 | vTaskDelete(NULL); 46 | } 47 | 48 | 49 | void forte_main(void) 50 | { 51 | 52 | xTaskCreate( MyForteTask, "MY_FORTE", 10000, &ucParameterToPass, tskIDLE_PRIORITY, &xHandle ); 53 | 54 | configASSERT(xHandle); 55 | } 56 | 57 | void vApplicationMallocFailedHook____() 58 | { 59 | for (;;) 60 | { 61 | vTaskDelay(pdMS_TO_TICKS(1000)); 62 | ESP_LOGE(TAG, "vApplicationMallocFailedHook"); 63 | } 64 | } 65 | 66 | void vApplicationStackOverflowHook____(TaskHandle_t xTask, char *pcTaskName) 67 | { 68 | for (;;) 69 | { 70 | vTaskDelay(pdMS_TO_TICKS(1000)); 71 | ESP_LOGE(TAG, "vApplicationStackOverflowHook"); 72 | } 73 | } 74 | 75 | 76 | enum E_MsgLevel { 77 | E_INFO, 78 | E_WARNING, 79 | E_ERROR, 80 | E_DEBUG, 81 | E_TRACE 82 | }; 83 | 84 | static const char *const FTAG = "forte"; 85 | 86 | 87 | //TODO !!! 88 | // if Forte is to DEBUG and ESP-IDF to Info, 89 | // DEBUG Information gets lost. 90 | 91 | /*! \brief print the given log message with the error level and a time stamp 92 | * 93 | * @param pa_ecLevel the message's log level 94 | * @param pa_acMessage the message to log 95 | */ 96 | void printLogMessage(E_MsgLevel paLevel, char * const paMessage) 97 | { 98 | size_t strlen0 = strlen(paMessage); 99 | size_t strlen1 = strlen0 - 1; 100 | 101 | if (paMessage[strlen1] == '\n') { 102 | paMessage[strlen1] = '\0'; 103 | } 104 | 105 | 106 | 107 | switch (paLevel) 108 | { 109 | case E_INFO: 110 | ESP_LOGI(FTAG, "%s", paMessage); 111 | break; 112 | case E_WARNING: 113 | ESP_LOGW(FTAG, "%s", paMessage); 114 | break; 115 | case E_ERROR: 116 | ESP_LOGE(FTAG, "%s", paMessage); 117 | break; 118 | case E_DEBUG: 119 | ESP_LOGI(FTAG, "%s", paMessage); //TODO find a better way. 120 | break; 121 | case E_TRACE: 122 | ESP_LOGI(FTAG, "%s", paMessage); //TODO find a better way. 123 | break; 124 | } 125 | 126 | 127 | 128 | 129 | 130 | } 131 | 132 | -------------------------------------------------------------------------------- /test_apps/TestApplication/components/forte_main/forteinit.h: -------------------------------------------------------------------------------- 1 | /******************************************************************************* 2 | * Copyright (c) 2011 Profactor GmbH 3 | * This program and the accompanying materials are made available under the 4 | * terms of the Eclipse Public License 2.0 which is available at 5 | * http://www.eclipse.org/legal/epl-2.0. 6 | * 7 | * SPDX-License-Identifier: EPL-2.0 8 | * 9 | * Contributors: 10 | * Gerhard Ebenhofer 11 | * - initial API and implementation and/or initial documentation 12 | *******************************************************************************/ 13 | 14 | //!!!autogenerated code - DO NOT EDIT!!! 15 | #ifndef FORTEINIT_H_ 16 | #define FORTEINIT_H_ 17 | 18 | #ifdef __cplusplus 19 | extern "C" { 20 | #endif 21 | 22 | void initForte(); 23 | 24 | 25 | #ifdef __cplusplus 26 | } 27 | #endif 28 | 29 | #endif /*FORTEINIT_H_*/ 30 | -------------------------------------------------------------------------------- /test_apps/TestApplication/main/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | idf_component_register(SRCS "main.c" 2 | INCLUDE_DIRS "") 3 | -------------------------------------------------------------------------------- /test_apps/TestApplication/main/main.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | #include 4 | #include "sdkconfig.h" 5 | #include "freertos/FreeRTOS.h" 6 | #include "freertos/task.h" 7 | #include "esp_chip_info.h" 8 | #include "esp_flash.h" 9 | 10 | #include "esp_err.h" 11 | 12 | //extern int isobus_main(void); 13 | extern void Network_softAP_main(void); 14 | extern void forte_main(void); 15 | //extern void file_server_main1(void); 16 | //extern void file_server_main2(void); 17 | 18 | void app_main(void) 19 | { 20 | printf("sample without isobus!\n"); 21 | 22 | /* Print chip information */ 23 | esp_chip_info_t chip_info; 24 | uint32_t flash_size; 25 | esp_chip_info(&chip_info); 26 | printf("This is %s chip with %d CPU core(s), WiFi%s%s%s, ", 27 | CONFIG_IDF_TARGET, 28 | chip_info.cores, 29 | (chip_info.features & CHIP_FEATURE_BT) ? "/BT" : "", 30 | (chip_info.features & CHIP_FEATURE_BLE) ? "/BLE" : "", 31 | (chip_info.features & CHIP_FEATURE_IEEE802154) ? ", 802.15.4 (Zigbee/Thread)" : ""); 32 | 33 | unsigned major_rev = chip_info.revision / 100; 34 | unsigned minor_rev = chip_info.revision % 100; 35 | printf("silicon revision v%d.%d, ", major_rev, minor_rev); 36 | if(esp_flash_get_size(NULL, &flash_size) != ESP_OK) { 37 | printf("Get flash size failed"); 38 | return; 39 | } 40 | 41 | printf("%" PRIu32 "MB %s flash\n", flash_size / (uint32_t)(1024 * 1024), 42 | (chip_info.features & CHIP_FEATURE_EMB_FLASH) ? "embedded" : "external"); 43 | 44 | printf("Minimum free heap size: %" PRIu32 " bytes\n", esp_get_minimum_free_heap_size()); 45 | 46 | printf("CONFIG_FREERTOS_HZ: %d must be 1000 !!!! (200Hz at least for 5ms )\n", CONFIG_FREERTOS_HZ); 47 | 48 | assert(CONFIG_FREERTOS_HZ == 1000); 49 | 50 | printf("app_main starting \n"); 51 | 52 | 53 | Network_softAP_main(); 54 | 55 | //file_server_main1(); 56 | //file_server_main2(); 57 | forte_main(); 58 | vTaskDelay(2000 / portTICK_PERIOD_MS); 59 | printf("forte_main done \n"); 60 | } 61 | -------------------------------------------------------------------------------- /test_apps/TestApplication/partitions.csv: -------------------------------------------------------------------------------- 1 | # Name, Type, SubType, Offset, Size, Flags 2 | # Note: if you have increased the bootloader size, make sure to update the offsets to avoid overlap 3 | nvs, data, nvs, 0x9000, 0x6000, 4 | phy_init, data, phy, 0xf000, 0x1000, 5 | factory, app, factory, 0x10000, 3M, 6 | storage, data, spiffs, , 0xF0000, 7 | -------------------------------------------------------------------------------- /test_apps/TestApplication/sdkconfig: -------------------------------------------------------------------------------- 1 | # 2 | # Automatically generated file. DO NOT EDIT. 3 | # Espressif IoT Development Framework (ESP-IDF) 5.1.2 Project Configuration 4 | # 5 | CONFIG_SOC_BROWNOUT_RESET_SUPPORTED="Not determined" 6 | CONFIG_SOC_TWAI_BRP_DIV_SUPPORTED="Not determined" 7 | CONFIG_SOC_DPORT_WORKAROUND="Not determined" 8 | CONFIG_SOC_CAPS_ECO_VER_MAX=301 9 | CONFIG_SOC_ADC_SUPPORTED=y 10 | CONFIG_SOC_DAC_SUPPORTED=y 11 | CONFIG_SOC_UART_SUPPORTED=y 12 | CONFIG_SOC_MCPWM_SUPPORTED=y 13 | CONFIG_SOC_GPTIMER_SUPPORTED=y 14 | CONFIG_SOC_SDMMC_HOST_SUPPORTED=y 15 | CONFIG_SOC_BT_SUPPORTED=y 16 | CONFIG_SOC_PCNT_SUPPORTED=y 17 | CONFIG_SOC_WIFI_SUPPORTED=y 18 | CONFIG_SOC_SDIO_SLAVE_SUPPORTED=y 19 | CONFIG_SOC_TWAI_SUPPORTED=y 20 | CONFIG_SOC_EMAC_SUPPORTED=y 21 | CONFIG_SOC_ULP_SUPPORTED=y 22 | CONFIG_SOC_CCOMP_TIMER_SUPPORTED=y 23 | CONFIG_SOC_RTC_FAST_MEM_SUPPORTED=y 24 | CONFIG_SOC_RTC_SLOW_MEM_SUPPORTED=y 25 | CONFIG_SOC_RTC_MEM_SUPPORTED=y 26 | CONFIG_SOC_I2S_SUPPORTED=y 27 | CONFIG_SOC_RMT_SUPPORTED=y 28 | CONFIG_SOC_SDM_SUPPORTED=y 29 | CONFIG_SOC_GPSPI_SUPPORTED=y 30 | CONFIG_SOC_LEDC_SUPPORTED=y 31 | CONFIG_SOC_I2C_SUPPORTED=y 32 | CONFIG_SOC_SUPPORT_COEXISTENCE=y 33 | CONFIG_SOC_AES_SUPPORTED=y 34 | CONFIG_SOC_MPI_SUPPORTED=y 35 | CONFIG_SOC_SHA_SUPPORTED=y 36 | CONFIG_SOC_FLASH_ENC_SUPPORTED=y 37 | CONFIG_SOC_SECURE_BOOT_SUPPORTED=y 38 | CONFIG_SOC_TOUCH_SENSOR_SUPPORTED=y 39 | CONFIG_SOC_BOD_SUPPORTED=y 40 | CONFIG_SOC_ULP_FSM_SUPPORTED=y 41 | CONFIG_SOC_DPORT_WORKAROUND_DIS_INTERRUPT_LVL=5 42 | CONFIG_SOC_XTAL_SUPPORT_26M=y 43 | CONFIG_SOC_XTAL_SUPPORT_40M=y 44 | CONFIG_SOC_XTAL_SUPPORT_AUTO_DETECT=y 45 | CONFIG_SOC_ADC_RTC_CTRL_SUPPORTED=y 46 | CONFIG_SOC_ADC_DIG_CTRL_SUPPORTED=y 47 | CONFIG_SOC_ADC_DMA_SUPPORTED=y 48 | CONFIG_SOC_ADC_PERIPH_NUM=2 49 | CONFIG_SOC_ADC_MAX_CHANNEL_NUM=10 50 | CONFIG_SOC_ADC_ATTEN_NUM=4 51 | CONFIG_SOC_ADC_DIGI_CONTROLLER_NUM=2 52 | CONFIG_SOC_ADC_PATT_LEN_MAX=16 53 | CONFIG_SOC_ADC_DIGI_MIN_BITWIDTH=9 54 | CONFIG_SOC_ADC_DIGI_MAX_BITWIDTH=12 55 | CONFIG_SOC_ADC_DIGI_RESULT_BYTES=2 56 | CONFIG_SOC_ADC_DIGI_DATA_BYTES_PER_CONV=4 57 | CONFIG_SOC_ADC_SAMPLE_FREQ_THRES_HIGH=2 58 | CONFIG_SOC_ADC_SAMPLE_FREQ_THRES_LOW=20 59 | CONFIG_SOC_ADC_RTC_MIN_BITWIDTH=9 60 | CONFIG_SOC_ADC_RTC_MAX_BITWIDTH=12 61 | CONFIG_SOC_SHARED_IDCACHE_SUPPORTED=y 62 | CONFIG_SOC_IDCACHE_PER_CORE=y 63 | CONFIG_SOC_CPU_CORES_NUM=2 64 | CONFIG_SOC_CPU_INTR_NUM=32 65 | CONFIG_SOC_CPU_HAS_FPU=y 66 | CONFIG_SOC_CPU_BREAKPOINTS_NUM=2 67 | CONFIG_SOC_CPU_WATCHPOINTS_NUM=2 68 | CONFIG_SOC_CPU_WATCHPOINT_SIZE=64 69 | CONFIG_SOC_DAC_CHAN_NUM=2 70 | CONFIG_SOC_DAC_RESOLUTION=8 71 | CONFIG_SOC_DAC_DMA_16BIT_ALIGN=y 72 | CONFIG_SOC_GPIO_PORT=1 73 | CONFIG_SOC_GPIO_PIN_COUNT=40 74 | CONFIG_SOC_GPIO_VALID_GPIO_MASK=0xFFFFFFFFFF 75 | CONFIG_SOC_GPIO_VALID_DIGITAL_IO_PAD_MASK=0xEF0FEA 76 | CONFIG_SOC_I2C_NUM=2 77 | CONFIG_SOC_I2C_FIFO_LEN=32 78 | CONFIG_SOC_I2C_CMD_REG_NUM=16 79 | CONFIG_SOC_I2C_SUPPORT_SLAVE=y 80 | CONFIG_SOC_I2C_SUPPORT_APB=y 81 | CONFIG_SOC_I2S_NUM=2 82 | CONFIG_SOC_I2S_HW_VERSION_1=y 83 | CONFIG_SOC_I2S_SUPPORTS_APLL=y 84 | CONFIG_SOC_I2S_SUPPORTS_PLL_F160M=y 85 | CONFIG_SOC_I2S_SUPPORTS_PDM=y 86 | CONFIG_SOC_I2S_SUPPORTS_PDM_TX=y 87 | CONFIG_SOC_I2S_PDM_MAX_TX_LINES=1 88 | CONFIG_SOC_I2S_SUPPORTS_PDM_RX=y 89 | CONFIG_SOC_I2S_PDM_MAX_RX_LINES=1 90 | CONFIG_SOC_I2S_SUPPORTS_ADC_DAC=y 91 | CONFIG_SOC_I2S_SUPPORTS_ADC=y 92 | CONFIG_SOC_I2S_SUPPORTS_DAC=y 93 | CONFIG_SOC_I2S_SUPPORTS_LCD_CAMERA=y 94 | CONFIG_SOC_I2S_TRANS_SIZE_ALIGN_WORD=y 95 | CONFIG_SOC_I2S_LCD_I80_VARIANT=y 96 | CONFIG_SOC_LCD_I80_SUPPORTED=y 97 | CONFIG_SOC_LCD_I80_BUSES=2 98 | CONFIG_SOC_LCD_I80_BUS_WIDTH=24 99 | CONFIG_SOC_LEDC_HAS_TIMER_SPECIFIC_MUX=y 100 | CONFIG_SOC_LEDC_SUPPORT_APB_CLOCK=y 101 | CONFIG_SOC_LEDC_SUPPORT_REF_TICK=y 102 | CONFIG_SOC_LEDC_SUPPORT_HS_MODE=y 103 | CONFIG_SOC_LEDC_CHANNEL_NUM=8 104 | CONFIG_SOC_LEDC_TIMER_BIT_WIDTH=20 105 | CONFIG_SOC_MCPWM_GROUPS=2 106 | CONFIG_SOC_MCPWM_TIMERS_PER_GROUP=3 107 | CONFIG_SOC_MCPWM_OPERATORS_PER_GROUP=3 108 | CONFIG_SOC_MCPWM_COMPARATORS_PER_OPERATOR=2 109 | CONFIG_SOC_MCPWM_GENERATORS_PER_OPERATOR=2 110 | CONFIG_SOC_MCPWM_TRIGGERS_PER_OPERATOR=2 111 | CONFIG_SOC_MCPWM_GPIO_FAULTS_PER_GROUP=3 112 | CONFIG_SOC_MCPWM_CAPTURE_TIMERS_PER_GROUP=y 113 | CONFIG_SOC_MCPWM_CAPTURE_CHANNELS_PER_TIMER=3 114 | CONFIG_SOC_MCPWM_GPIO_SYNCHROS_PER_GROUP=3 115 | CONFIG_SOC_MMU_PERIPH_NUM=2 116 | CONFIG_SOC_MMU_LINEAR_ADDRESS_REGION_NUM=3 117 | CONFIG_SOC_MPU_MIN_REGION_SIZE=0x20000000 118 | CONFIG_SOC_MPU_REGIONS_MAX_NUM=8 119 | CONFIG_SOC_PCNT_GROUPS=1 120 | CONFIG_SOC_PCNT_UNITS_PER_GROUP=8 121 | CONFIG_SOC_PCNT_CHANNELS_PER_UNIT=2 122 | CONFIG_SOC_PCNT_THRES_POINT_PER_UNIT=2 123 | CONFIG_SOC_RMT_GROUPS=1 124 | CONFIG_SOC_RMT_TX_CANDIDATES_PER_GROUP=8 125 | CONFIG_SOC_RMT_RX_CANDIDATES_PER_GROUP=8 126 | CONFIG_SOC_RMT_CHANNELS_PER_GROUP=8 127 | CONFIG_SOC_RMT_MEM_WORDS_PER_CHANNEL=64 128 | CONFIG_SOC_RMT_SUPPORT_REF_TICK=y 129 | CONFIG_SOC_RMT_SUPPORT_APB=y 130 | CONFIG_SOC_RMT_CHANNEL_CLK_INDEPENDENT=y 131 | CONFIG_SOC_RTCIO_PIN_COUNT=18 132 | CONFIG_SOC_RTCIO_INPUT_OUTPUT_SUPPORTED=y 133 | CONFIG_SOC_RTCIO_HOLD_SUPPORTED=y 134 | CONFIG_SOC_RTCIO_WAKE_SUPPORTED=y 135 | CONFIG_SOC_SDM_GROUPS=1 136 | CONFIG_SOC_SDM_CHANNELS_PER_GROUP=8 137 | CONFIG_SOC_SDM_CLK_SUPPORT_APB=y 138 | CONFIG_SOC_SPI_HD_BOTH_INOUT_SUPPORTED=y 139 | CONFIG_SOC_SPI_AS_CS_SUPPORTED=y 140 | CONFIG_SOC_SPI_PERIPH_NUM=3 141 | CONFIG_SOC_SPI_DMA_CHAN_NUM=2 142 | CONFIG_SOC_SPI_MAX_CS_NUM=3 143 | CONFIG_SOC_SPI_SUPPORT_CLK_APB=y 144 | CONFIG_SOC_SPI_MAXIMUM_BUFFER_SIZE=64 145 | CONFIG_SOC_SPI_MAX_PRE_DIVIDER=8192 146 | CONFIG_SOC_MEMSPI_SRC_FREQ_80M_SUPPORTED=y 147 | CONFIG_SOC_MEMSPI_SRC_FREQ_40M_SUPPORTED=y 148 | CONFIG_SOC_MEMSPI_SRC_FREQ_26M_SUPPORTED=y 149 | CONFIG_SOC_MEMSPI_SRC_FREQ_20M_SUPPORTED=y 150 | CONFIG_SOC_TIMER_GROUPS=2 151 | CONFIG_SOC_TIMER_GROUP_TIMERS_PER_GROUP=2 152 | CONFIG_SOC_TIMER_GROUP_COUNTER_BIT_WIDTH=64 153 | CONFIG_SOC_TIMER_GROUP_TOTAL_TIMERS=4 154 | CONFIG_SOC_TIMER_GROUP_SUPPORT_APB=y 155 | CONFIG_SOC_TOUCH_VERSION_1=y 156 | CONFIG_SOC_TOUCH_SENSOR_NUM=10 157 | CONFIG_SOC_TOUCH_PAD_MEASURE_WAIT_MAX=0xFF 158 | CONFIG_SOC_TWAI_CONTROLLER_NUM=1 159 | CONFIG_SOC_TWAI_BRP_MIN=2 160 | CONFIG_SOC_TWAI_CLK_SUPPORT_APB=y 161 | CONFIG_SOC_TWAI_SUPPORT_MULTI_ADDRESS_LAYOUT=y 162 | CONFIG_SOC_UART_NUM=3 163 | CONFIG_SOC_UART_SUPPORT_APB_CLK=y 164 | CONFIG_SOC_UART_SUPPORT_REF_TICK=y 165 | CONFIG_SOC_UART_FIFO_LEN=128 166 | CONFIG_SOC_UART_BITRATE_MAX=5000000 167 | CONFIG_SOC_SPIRAM_SUPPORTED=y 168 | CONFIG_SOC_SPI_MEM_SUPPORT_CONFIG_GPIO_BY_EFUSE=y 169 | CONFIG_SOC_SHA_SUPPORT_PARALLEL_ENG=y 170 | CONFIG_SOC_SHA_SUPPORT_SHA1=y 171 | CONFIG_SOC_SHA_SUPPORT_SHA256=y 172 | CONFIG_SOC_SHA_SUPPORT_SHA384=y 173 | CONFIG_SOC_SHA_SUPPORT_SHA512=y 174 | CONFIG_SOC_RSA_MAX_BIT_LEN=4096 175 | CONFIG_SOC_AES_SUPPORT_AES_128=y 176 | CONFIG_SOC_AES_SUPPORT_AES_192=y 177 | CONFIG_SOC_AES_SUPPORT_AES_256=y 178 | CONFIG_SOC_SECURE_BOOT_V1=y 179 | CONFIG_SOC_EFUSE_SECURE_BOOT_KEY_DIGESTS=y 180 | CONFIG_SOC_FLASH_ENCRYPTED_XTS_AES_BLOCK_MAX=32 181 | CONFIG_SOC_PHY_DIG_REGS_MEM_SIZE=21 182 | CONFIG_SOC_PM_SUPPORT_EXT0_WAKEUP=y 183 | CONFIG_SOC_PM_SUPPORT_EXT1_WAKEUP=y 184 | CONFIG_SOC_PM_SUPPORT_EXT_WAKEUP=y 185 | CONFIG_SOC_PM_SUPPORT_TOUCH_SENSOR_WAKEUP=y 186 | CONFIG_SOC_PM_SUPPORT_RTC_PERIPH_PD=y 187 | CONFIG_SOC_PM_SUPPORT_RTC_FAST_MEM_PD=y 188 | CONFIG_SOC_PM_SUPPORT_RTC_SLOW_MEM_PD=y 189 | CONFIG_SOC_PM_SUPPORT_RC_FAST_PD=y 190 | CONFIG_SOC_PM_SUPPORT_VDDSDIO_PD=y 191 | CONFIG_SOC_PM_SUPPORT_MODEM_PD=y 192 | CONFIG_SOC_CONFIGURABLE_VDDSDIO_SUPPORTED=y 193 | CONFIG_SOC_CLK_APLL_SUPPORTED=y 194 | CONFIG_SOC_APLL_MULTIPLIER_OUT_MIN_HZ=350000000 195 | CONFIG_SOC_APLL_MULTIPLIER_OUT_MAX_HZ=500000000 196 | CONFIG_SOC_APLL_MIN_HZ=5303031 197 | CONFIG_SOC_APLL_MAX_HZ=125000000 198 | CONFIG_SOC_CLK_RC_FAST_D256_SUPPORTED=y 199 | CONFIG_SOC_RTC_SLOW_CLK_SUPPORT_RC_FAST_D256=y 200 | CONFIG_SOC_CLK_RC_FAST_SUPPORT_CALIBRATION=y 201 | CONFIG_SOC_CLK_XTAL32K_SUPPORTED=y 202 | CONFIG_SOC_SDMMC_USE_IOMUX=y 203 | CONFIG_SOC_SDMMC_NUM_SLOTS=2 204 | CONFIG_SOC_WIFI_WAPI_SUPPORT=y 205 | CONFIG_SOC_WIFI_CSI_SUPPORT=y 206 | CONFIG_SOC_WIFI_MESH_SUPPORT=y 207 | CONFIG_SOC_WIFI_SUPPORT_VARIABLE_BEACON_WINDOW=y 208 | CONFIG_SOC_WIFI_NAN_SUPPORT=y 209 | CONFIG_SOC_BLE_SUPPORTED=y 210 | CONFIG_SOC_BLE_MESH_SUPPORTED=y 211 | CONFIG_SOC_BT_CLASSIC_SUPPORTED=y 212 | CONFIG_SOC_BLUFI_SUPPORTED=y 213 | CONFIG_SOC_ULP_HAS_ADC=y 214 | CONFIG_SOC_PHY_COMBO_MODULE=y 215 | CONFIG_IDF_CMAKE=y 216 | CONFIG_IDF_TARGET_ARCH_XTENSA=y 217 | CONFIG_IDF_TARGET_ARCH="xtensa" 218 | CONFIG_IDF_TARGET="esp32" 219 | CONFIG_IDF_TARGET_ESP32=y 220 | CONFIG_IDF_FIRMWARE_CHIP_ID=0x0000 221 | 222 | # 223 | # Build type 224 | # 225 | CONFIG_APP_BUILD_TYPE_APP_2NDBOOT=y 226 | # CONFIG_APP_BUILD_TYPE_RAM is not set 227 | CONFIG_APP_BUILD_GENERATE_BINARIES=y 228 | CONFIG_APP_BUILD_BOOTLOADER=y 229 | CONFIG_APP_BUILD_USE_FLASH_SECTIONS=y 230 | # CONFIG_APP_REPRODUCIBLE_BUILD is not set 231 | # CONFIG_APP_NO_BLOBS is not set 232 | # CONFIG_APP_COMPATIBLE_PRE_V2_1_BOOTLOADERS is not set 233 | # CONFIG_APP_COMPATIBLE_PRE_V3_1_BOOTLOADERS is not set 234 | # end of Build type 235 | 236 | # 237 | # Bootloader config 238 | # 239 | CONFIG_BOOTLOADER_OFFSET_IN_FLASH=0x1000 240 | CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_SIZE=y 241 | # CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_DEBUG is not set 242 | # CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_PERF is not set 243 | # CONFIG_BOOTLOADER_COMPILER_OPTIMIZATION_NONE is not set 244 | # CONFIG_BOOTLOADER_LOG_LEVEL_NONE is not set 245 | # CONFIG_BOOTLOADER_LOG_LEVEL_ERROR is not set 246 | # CONFIG_BOOTLOADER_LOG_LEVEL_WARN is not set 247 | CONFIG_BOOTLOADER_LOG_LEVEL_INFO=y 248 | # CONFIG_BOOTLOADER_LOG_LEVEL_DEBUG is not set 249 | # CONFIG_BOOTLOADER_LOG_LEVEL_VERBOSE is not set 250 | CONFIG_BOOTLOADER_LOG_LEVEL=3 251 | # CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_8V is not set 252 | CONFIG_BOOTLOADER_VDDSDIO_BOOST_1_9V=y 253 | # CONFIG_BOOTLOADER_FACTORY_RESET is not set 254 | # CONFIG_BOOTLOADER_APP_TEST is not set 255 | CONFIG_BOOTLOADER_REGION_PROTECTION_ENABLE=y 256 | CONFIG_BOOTLOADER_WDT_ENABLE=y 257 | # CONFIG_BOOTLOADER_WDT_DISABLE_IN_USER_CODE is not set 258 | CONFIG_BOOTLOADER_WDT_TIME_MS=9000 259 | # CONFIG_BOOTLOADER_APP_ROLLBACK_ENABLE is not set 260 | # CONFIG_BOOTLOADER_SKIP_VALIDATE_IN_DEEP_SLEEP is not set 261 | # CONFIG_BOOTLOADER_SKIP_VALIDATE_ON_POWER_ON is not set 262 | # CONFIG_BOOTLOADER_SKIP_VALIDATE_ALWAYS is not set 263 | CONFIG_BOOTLOADER_RESERVE_RTC_SIZE=0 264 | # CONFIG_BOOTLOADER_CUSTOM_RESERVE_RTC is not set 265 | CONFIG_BOOTLOADER_FLASH_XMC_SUPPORT=y 266 | # end of Bootloader config 267 | 268 | # 269 | # Security features 270 | # 271 | CONFIG_SECURE_BOOT_V1_SUPPORTED=y 272 | # CONFIG_SECURE_SIGNED_APPS_NO_SECURE_BOOT is not set 273 | # CONFIG_SECURE_BOOT is not set 274 | # CONFIG_SECURE_FLASH_ENC_ENABLED is not set 275 | # end of Security features 276 | 277 | # 278 | # Application manager 279 | # 280 | CONFIG_APP_COMPILE_TIME_DATE=y 281 | # CONFIG_APP_EXCLUDE_PROJECT_VER_VAR is not set 282 | # CONFIG_APP_EXCLUDE_PROJECT_NAME_VAR is not set 283 | # CONFIG_APP_PROJECT_VER_FROM_CONFIG is not set 284 | CONFIG_APP_RETRIEVE_LEN_ELF_SHA=16 285 | # end of Application manager 286 | 287 | CONFIG_ESP_ROM_HAS_CRC_LE=y 288 | CONFIG_ESP_ROM_HAS_CRC_BE=y 289 | CONFIG_ESP_ROM_HAS_MZ_CRC32=y 290 | CONFIG_ESP_ROM_HAS_JPEG_DECODE=y 291 | CONFIG_ESP_ROM_HAS_UART_BUF_SWITCH=y 292 | CONFIG_ESP_ROM_NEEDS_SWSETUP_WORKAROUND=y 293 | CONFIG_ESP_ROM_HAS_NEWLIB_NANO_FORMAT=y 294 | 295 | # 296 | # Serial flasher config 297 | # 298 | # CONFIG_ESPTOOLPY_NO_STUB is not set 299 | # CONFIG_ESPTOOLPY_FLASHMODE_QIO is not set 300 | # CONFIG_ESPTOOLPY_FLASHMODE_QOUT is not set 301 | CONFIG_ESPTOOLPY_FLASHMODE_DIO=y 302 | # CONFIG_ESPTOOLPY_FLASHMODE_DOUT is not set 303 | CONFIG_ESPTOOLPY_FLASH_SAMPLE_MODE_STR=y 304 | CONFIG_ESPTOOLPY_FLASHMODE="dio" 305 | # CONFIG_ESPTOOLPY_FLASHFREQ_80M is not set 306 | CONFIG_ESPTOOLPY_FLASHFREQ_40M=y 307 | # CONFIG_ESPTOOLPY_FLASHFREQ_26M is not set 308 | # CONFIG_ESPTOOLPY_FLASHFREQ_20M is not set 309 | CONFIG_ESPTOOLPY_FLASHFREQ="40m" 310 | # CONFIG_ESPTOOLPY_FLASHSIZE_1MB is not set 311 | # CONFIG_ESPTOOLPY_FLASHSIZE_2MB is not set 312 | CONFIG_ESPTOOLPY_FLASHSIZE_4MB=y 313 | # CONFIG_ESPTOOLPY_FLASHSIZE_8MB is not set 314 | # CONFIG_ESPTOOLPY_FLASHSIZE_16MB is not set 315 | # CONFIG_ESPTOOLPY_FLASHSIZE_32MB is not set 316 | # CONFIG_ESPTOOLPY_FLASHSIZE_64MB is not set 317 | # CONFIG_ESPTOOLPY_FLASHSIZE_128MB is not set 318 | CONFIG_ESPTOOLPY_FLASHSIZE="4MB" 319 | # CONFIG_ESPTOOLPY_HEADER_FLASHSIZE_UPDATE is not set 320 | CONFIG_ESPTOOLPY_BEFORE_RESET=y 321 | # CONFIG_ESPTOOLPY_BEFORE_NORESET is not set 322 | CONFIG_ESPTOOLPY_BEFORE="default_reset" 323 | CONFIG_ESPTOOLPY_AFTER_RESET=y 324 | # CONFIG_ESPTOOLPY_AFTER_NORESET is not set 325 | CONFIG_ESPTOOLPY_AFTER="hard_reset" 326 | CONFIG_ESPTOOLPY_MONITOR_BAUD=115200 327 | # end of Serial flasher config 328 | 329 | # 330 | # Partition Table 331 | # 332 | # CONFIG_PARTITION_TABLE_SINGLE_APP is not set 333 | # CONFIG_PARTITION_TABLE_SINGLE_APP_LARGE is not set 334 | # CONFIG_PARTITION_TABLE_TWO_OTA is not set 335 | CONFIG_PARTITION_TABLE_CUSTOM=y 336 | CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv" 337 | CONFIG_PARTITION_TABLE_FILENAME="partitions.csv" 338 | CONFIG_PARTITION_TABLE_OFFSET=0x8000 339 | CONFIG_PARTITION_TABLE_MD5=y 340 | # end of Partition Table 341 | 342 | # 343 | # Network_softAP 344 | # 345 | CONFIG_ESP_WIFI_AP_PASSWORD="esp32_pwd" 346 | CONFIG_ESP_WIFI_AP_CHANNEL=1 347 | CONFIG_ESP_MAX_STA_CONN=4 348 | # end of Network_softAP 349 | 350 | # 351 | # Compiler options 352 | # 353 | CONFIG_COMPILER_OPTIMIZATION_DEFAULT=y 354 | # CONFIG_COMPILER_OPTIMIZATION_SIZE is not set 355 | # CONFIG_COMPILER_OPTIMIZATION_PERF is not set 356 | # CONFIG_COMPILER_OPTIMIZATION_NONE is not set 357 | CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_ENABLE=y 358 | # CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_SILENT is not set 359 | # CONFIG_COMPILER_OPTIMIZATION_ASSERTIONS_DISABLE is not set 360 | CONFIG_COMPILER_FLOAT_LIB_FROM_GCCLIB=y 361 | CONFIG_COMPILER_OPTIMIZATION_ASSERTION_LEVEL=2 362 | # CONFIG_COMPILER_OPTIMIZATION_CHECKS_SILENT is not set 363 | CONFIG_COMPILER_HIDE_PATHS_MACROS=y 364 | # CONFIG_COMPILER_CXX_EXCEPTIONS is not set 365 | # CONFIG_COMPILER_CXX_RTTI is not set 366 | CONFIG_COMPILER_STACK_CHECK_MODE_NONE=y 367 | # CONFIG_COMPILER_STACK_CHECK_MODE_NORM is not set 368 | # CONFIG_COMPILER_STACK_CHECK_MODE_STRONG is not set 369 | # CONFIG_COMPILER_STACK_CHECK_MODE_ALL is not set 370 | # CONFIG_COMPILER_WARN_WRITE_STRINGS is not set 371 | # CONFIG_COMPILER_DISABLE_GCC12_WARNINGS is not set 372 | # CONFIG_COMPILER_DUMP_RTL_FILES is not set 373 | # end of Compiler options 374 | 375 | # 376 | # Component config 377 | # 378 | 379 | # 380 | # Application Level Tracing 381 | # 382 | # CONFIG_APPTRACE_DEST_JTAG is not set 383 | CONFIG_APPTRACE_DEST_NONE=y 384 | # CONFIG_APPTRACE_DEST_UART1 is not set 385 | # CONFIG_APPTRACE_DEST_UART2 is not set 386 | CONFIG_APPTRACE_DEST_UART_NONE=y 387 | CONFIG_APPTRACE_UART_TASK_PRIO=1 388 | CONFIG_APPTRACE_LOCK_ENABLE=y 389 | # end of Application Level Tracing 390 | 391 | # 392 | # Bluetooth 393 | # 394 | # CONFIG_BT_ENABLED is not set 395 | # end of Bluetooth 396 | 397 | # 398 | # Driver Configurations 399 | # 400 | 401 | # 402 | # Legacy ADC Configuration 403 | # 404 | CONFIG_ADC_DISABLE_DAC=y 405 | # CONFIG_ADC_SUPPRESS_DEPRECATE_WARN is not set 406 | 407 | # 408 | # Legacy ADC Calibration Configuration 409 | # 410 | CONFIG_ADC_CAL_EFUSE_TP_ENABLE=y 411 | CONFIG_ADC_CAL_EFUSE_VREF_ENABLE=y 412 | CONFIG_ADC_CAL_LUT_ENABLE=y 413 | # CONFIG_ADC_CALI_SUPPRESS_DEPRECATE_WARN is not set 414 | # end of Legacy ADC Calibration Configuration 415 | # end of Legacy ADC Configuration 416 | 417 | # 418 | # SPI Configuration 419 | # 420 | # CONFIG_SPI_MASTER_IN_IRAM is not set 421 | CONFIG_SPI_MASTER_ISR_IN_IRAM=y 422 | # CONFIG_SPI_SLAVE_IN_IRAM is not set 423 | CONFIG_SPI_SLAVE_ISR_IN_IRAM=y 424 | # end of SPI Configuration 425 | 426 | # 427 | # TWAI Configuration 428 | # 429 | # CONFIG_TWAI_ISR_IN_IRAM is not set 430 | CONFIG_TWAI_ERRATA_FIX_BUS_OFF_REC=y 431 | CONFIG_TWAI_ERRATA_FIX_TX_INTR_LOST=y 432 | CONFIG_TWAI_ERRATA_FIX_RX_FRAME_INVALID=y 433 | CONFIG_TWAI_ERRATA_FIX_RX_FIFO_CORRUPT=y 434 | CONFIG_TWAI_ERRATA_FIX_LISTEN_ONLY_DOM=y 435 | # end of TWAI Configuration 436 | 437 | # 438 | # UART Configuration 439 | # 440 | # CONFIG_UART_ISR_IN_IRAM is not set 441 | # end of UART Configuration 442 | 443 | # 444 | # GPIO Configuration 445 | # 446 | # CONFIG_GPIO_ESP32_SUPPORT_SWITCH_SLP_PULL is not set 447 | # CONFIG_GPIO_CTRL_FUNC_IN_IRAM is not set 448 | # end of GPIO Configuration 449 | 450 | # 451 | # Sigma Delta Modulator Configuration 452 | # 453 | # CONFIG_SDM_CTRL_FUNC_IN_IRAM is not set 454 | # CONFIG_SDM_SUPPRESS_DEPRECATE_WARN is not set 455 | # CONFIG_SDM_ENABLE_DEBUG_LOG is not set 456 | # end of Sigma Delta Modulator Configuration 457 | 458 | # 459 | # GPTimer Configuration 460 | # 461 | CONFIG_GPTIMER_ISR_HANDLER_IN_IRAM=y 462 | # CONFIG_GPTIMER_CTRL_FUNC_IN_IRAM is not set 463 | # CONFIG_GPTIMER_ISR_IRAM_SAFE is not set 464 | # CONFIG_GPTIMER_SUPPRESS_DEPRECATE_WARN is not set 465 | # CONFIG_GPTIMER_ENABLE_DEBUG_LOG is not set 466 | # end of GPTimer Configuration 467 | 468 | # 469 | # PCNT Configuration 470 | # 471 | # CONFIG_PCNT_CTRL_FUNC_IN_IRAM is not set 472 | # CONFIG_PCNT_ISR_IRAM_SAFE is not set 473 | # CONFIG_PCNT_SUPPRESS_DEPRECATE_WARN is not set 474 | # CONFIG_PCNT_ENABLE_DEBUG_LOG is not set 475 | # end of PCNT Configuration 476 | 477 | # 478 | # RMT Configuration 479 | # 480 | # CONFIG_RMT_ISR_IRAM_SAFE is not set 481 | # CONFIG_RMT_SUPPRESS_DEPRECATE_WARN is not set 482 | # CONFIG_RMT_ENABLE_DEBUG_LOG is not set 483 | # end of RMT Configuration 484 | 485 | # 486 | # MCPWM Configuration 487 | # 488 | # CONFIG_MCPWM_ISR_IRAM_SAFE is not set 489 | # CONFIG_MCPWM_CTRL_FUNC_IN_IRAM is not set 490 | # CONFIG_MCPWM_SUPPRESS_DEPRECATE_WARN is not set 491 | # CONFIG_MCPWM_ENABLE_DEBUG_LOG is not set 492 | # end of MCPWM Configuration 493 | 494 | # 495 | # I2S Configuration 496 | # 497 | # CONFIG_I2S_ISR_IRAM_SAFE is not set 498 | # CONFIG_I2S_SUPPRESS_DEPRECATE_WARN is not set 499 | # CONFIG_I2S_ENABLE_DEBUG_LOG is not set 500 | # end of I2S Configuration 501 | 502 | # 503 | # DAC Configuration 504 | # 505 | # CONFIG_DAC_CTRL_FUNC_IN_IRAM is not set 506 | # CONFIG_DAC_ISR_IRAM_SAFE is not set 507 | # CONFIG_DAC_SUPPRESS_DEPRECATE_WARN is not set 508 | # CONFIG_DAC_ENABLE_DEBUG_LOG is not set 509 | CONFIG_DAC_DMA_AUTO_16BIT_ALIGN=y 510 | # end of DAC Configuration 511 | # end of Driver Configurations 512 | 513 | # 514 | # eFuse Bit Manager 515 | # 516 | # CONFIG_EFUSE_CUSTOM_TABLE is not set 517 | # CONFIG_EFUSE_VIRTUAL is not set 518 | # CONFIG_EFUSE_CODE_SCHEME_COMPAT_NONE is not set 519 | CONFIG_EFUSE_CODE_SCHEME_COMPAT_3_4=y 520 | # CONFIG_EFUSE_CODE_SCHEME_COMPAT_REPEAT is not set 521 | CONFIG_EFUSE_MAX_BLK_LEN=192 522 | # end of eFuse Bit Manager 523 | 524 | # 525 | # ESP-TLS 526 | # 527 | CONFIG_ESP_TLS_USING_MBEDTLS=y 528 | # CONFIG_ESP_TLS_USE_SECURE_ELEMENT is not set 529 | # CONFIG_ESP_TLS_CLIENT_SESSION_TICKETS is not set 530 | # CONFIG_ESP_TLS_SERVER is not set 531 | # CONFIG_ESP_TLS_PSK_VERIFICATION is not set 532 | # CONFIG_ESP_TLS_INSECURE is not set 533 | # end of ESP-TLS 534 | 535 | # 536 | # ADC and ADC Calibration 537 | # 538 | # CONFIG_ADC_ONESHOT_CTRL_FUNC_IN_IRAM is not set 539 | # CONFIG_ADC_CONTINUOUS_ISR_IRAM_SAFE is not set 540 | 541 | # 542 | # ADC Calibration Configurations 543 | # 544 | CONFIG_ADC_CALI_EFUSE_TP_ENABLE=y 545 | CONFIG_ADC_CALI_EFUSE_VREF_ENABLE=y 546 | CONFIG_ADC_CALI_LUT_ENABLE=y 547 | # end of ADC Calibration Configurations 548 | 549 | CONFIG_ADC_DISABLE_DAC_OUTPUT=y 550 | # end of ADC and ADC Calibration 551 | 552 | # 553 | # Wireless Coexistence 554 | # 555 | # end of Wireless Coexistence 556 | 557 | # 558 | # Common ESP-related 559 | # 560 | CONFIG_ESP_ERR_TO_NAME_LOOKUP=y 561 | # end of Common ESP-related 562 | 563 | # 564 | # Ethernet 565 | # 566 | CONFIG_ETH_ENABLED=y 567 | CONFIG_ETH_USE_ESP32_EMAC=y 568 | CONFIG_ETH_PHY_INTERFACE_RMII=y 569 | CONFIG_ETH_RMII_CLK_INPUT=y 570 | # CONFIG_ETH_RMII_CLK_OUTPUT is not set 571 | CONFIG_ETH_RMII_CLK_IN_GPIO=0 572 | CONFIG_ETH_DMA_BUFFER_SIZE=512 573 | CONFIG_ETH_DMA_RX_BUFFER_NUM=10 574 | CONFIG_ETH_DMA_TX_BUFFER_NUM=10 575 | # CONFIG_ETH_IRAM_OPTIMIZATION is not set 576 | CONFIG_ETH_USE_SPI_ETHERNET=y 577 | # CONFIG_ETH_SPI_ETHERNET_DM9051 is not set 578 | # CONFIG_ETH_SPI_ETHERNET_W5500 is not set 579 | # CONFIG_ETH_SPI_ETHERNET_KSZ8851SNL is not set 580 | # CONFIG_ETH_USE_OPENETH is not set 581 | # CONFIG_ETH_TRANSMIT_MUTEX is not set 582 | # end of Ethernet 583 | 584 | # 585 | # Event Loop Library 586 | # 587 | # CONFIG_ESP_EVENT_LOOP_PROFILING is not set 588 | CONFIG_ESP_EVENT_POST_FROM_ISR=y 589 | CONFIG_ESP_EVENT_POST_FROM_IRAM_ISR=y 590 | # end of Event Loop Library 591 | 592 | # 593 | # GDB Stub 594 | # 595 | # end of GDB Stub 596 | 597 | # 598 | # ESP HTTP client 599 | # 600 | CONFIG_ESP_HTTP_CLIENT_ENABLE_HTTPS=y 601 | # CONFIG_ESP_HTTP_CLIENT_ENABLE_BASIC_AUTH is not set 602 | # CONFIG_ESP_HTTP_CLIENT_ENABLE_DIGEST_AUTH is not set 603 | # end of ESP HTTP client 604 | 605 | # 606 | # HTTP Server 607 | # 608 | CONFIG_HTTPD_MAX_REQ_HDR_LEN=512 609 | CONFIG_HTTPD_MAX_URI_LEN=512 610 | CONFIG_HTTPD_ERR_RESP_NO_DELAY=y 611 | CONFIG_HTTPD_PURGE_BUF_LEN=32 612 | # CONFIG_HTTPD_LOG_PURGE_DATA is not set 613 | # CONFIG_HTTPD_WS_SUPPORT is not set 614 | # CONFIG_HTTPD_QUEUE_WORK_BLOCKING is not set 615 | # end of HTTP Server 616 | 617 | # 618 | # ESP HTTPS OTA 619 | # 620 | # CONFIG_ESP_HTTPS_OTA_DECRYPT_CB is not set 621 | # CONFIG_ESP_HTTPS_OTA_ALLOW_HTTP is not set 622 | # end of ESP HTTPS OTA 623 | 624 | # 625 | # ESP HTTPS server 626 | # 627 | # CONFIG_ESP_HTTPS_SERVER_ENABLE is not set 628 | # end of ESP HTTPS server 629 | 630 | # 631 | # Hardware Settings 632 | # 633 | 634 | # 635 | # Chip revision 636 | # 637 | CONFIG_ESP32_REV_MIN_0=y 638 | # CONFIG_ESP32_REV_MIN_1 is not set 639 | # CONFIG_ESP32_REV_MIN_1_1 is not set 640 | # CONFIG_ESP32_REV_MIN_2 is not set 641 | # CONFIG_ESP32_REV_MIN_3 is not set 642 | # CONFIG_ESP32_REV_MIN_3_1 is not set 643 | CONFIG_ESP32_REV_MIN=0 644 | CONFIG_ESP32_REV_MIN_FULL=0 645 | CONFIG_ESP_REV_MIN_FULL=0 646 | 647 | # 648 | # Maximum Supported ESP32 Revision (Rev v3.99) 649 | # 650 | CONFIG_ESP32_REV_MAX_FULL=399 651 | CONFIG_ESP_REV_MAX_FULL=399 652 | # end of Chip revision 653 | 654 | # 655 | # MAC Config 656 | # 657 | CONFIG_ESP_MAC_ADDR_UNIVERSE_WIFI_STA=y 658 | CONFIG_ESP_MAC_ADDR_UNIVERSE_WIFI_AP=y 659 | CONFIG_ESP_MAC_ADDR_UNIVERSE_BT=y 660 | CONFIG_ESP_MAC_ADDR_UNIVERSE_ETH=y 661 | CONFIG_ESP_MAC_UNIVERSAL_MAC_ADDRESSES_FOUR=y 662 | # CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_TWO is not set 663 | CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES_FOUR=y 664 | CONFIG_ESP32_UNIVERSAL_MAC_ADDRESSES=4 665 | # CONFIG_ESP_MAC_IGNORE_MAC_CRC_ERROR is not set 666 | # end of MAC Config 667 | 668 | # 669 | # Sleep Config 670 | # 671 | # CONFIG_ESP_SLEEP_POWER_DOWN_FLASH is not set 672 | CONFIG_ESP_SLEEP_FLASH_LEAKAGE_WORKAROUND=y 673 | # CONFIG_ESP_SLEEP_MSPI_NEED_ALL_IO_PU is not set 674 | CONFIG_ESP_SLEEP_RTC_BUS_ISO_WORKAROUND=y 675 | # CONFIG_ESP_SLEEP_GPIO_RESET_WORKAROUND is not set 676 | CONFIG_ESP_SLEEP_DEEP_SLEEP_WAKEUP_DELAY=2000 677 | CONFIG_ESP_SLEEP_GPIO_ENABLE_INTERNAL_RESISTORS=y 678 | # end of Sleep Config 679 | 680 | # 681 | # RTC Clock Config 682 | # 683 | CONFIG_RTC_CLK_SRC_INT_RC=y 684 | # CONFIG_RTC_CLK_SRC_EXT_CRYS is not set 685 | # CONFIG_RTC_CLK_SRC_EXT_OSC is not set 686 | # CONFIG_RTC_CLK_SRC_INT_8MD256 is not set 687 | CONFIG_RTC_CLK_CAL_CYCLES=1024 688 | # end of RTC Clock Config 689 | 690 | # 691 | # Peripheral Control 692 | # 693 | CONFIG_PERIPH_CTRL_FUNC_IN_IRAM=y 694 | # end of Peripheral Control 695 | 696 | # 697 | # Main XTAL Config 698 | # 699 | # CONFIG_XTAL_FREQ_26 is not set 700 | CONFIG_XTAL_FREQ_40=y 701 | # CONFIG_XTAL_FREQ_AUTO is not set 702 | CONFIG_XTAL_FREQ=40 703 | # end of Main XTAL Config 704 | # end of Hardware Settings 705 | 706 | # 707 | # LCD and Touch Panel 708 | # 709 | 710 | # 711 | # LCD Touch Drivers are maintained in the IDF Component Registry 712 | # 713 | 714 | # 715 | # LCD Peripheral Configuration 716 | # 717 | CONFIG_LCD_PANEL_IO_FORMAT_BUF_SIZE=32 718 | # CONFIG_LCD_ENABLE_DEBUG_LOG is not set 719 | # end of LCD Peripheral Configuration 720 | # end of LCD and Touch Panel 721 | 722 | # 723 | # ESP NETIF Adapter 724 | # 725 | CONFIG_ESP_NETIF_IP_LOST_TIMER_INTERVAL=120 726 | CONFIG_ESP_NETIF_TCPIP_LWIP=y 727 | # CONFIG_ESP_NETIF_LOOPBACK is not set 728 | CONFIG_ESP_NETIF_USES_TCPIP_WITH_BSD_API=y 729 | # CONFIG_ESP_NETIF_RECEIVE_REPORT_ERRORS is not set 730 | # CONFIG_ESP_NETIF_L2_TAP is not set 731 | # CONFIG_ESP_NETIF_BRIDGE_EN is not set 732 | # end of ESP NETIF Adapter 733 | 734 | # 735 | # Partition API Configuration 736 | # 737 | # end of Partition API Configuration 738 | 739 | # 740 | # PHY 741 | # 742 | CONFIG_ESP_PHY_CALIBRATION_AND_DATA_STORAGE=y 743 | # CONFIG_ESP_PHY_INIT_DATA_IN_PARTITION is not set 744 | CONFIG_ESP_PHY_MAX_WIFI_TX_POWER=20 745 | CONFIG_ESP_PHY_MAX_TX_POWER=20 746 | # CONFIG_ESP_PHY_REDUCE_TX_POWER is not set 747 | CONFIG_ESP_PHY_RF_CAL_PARTIAL=y 748 | # CONFIG_ESP_PHY_RF_CAL_NONE is not set 749 | # CONFIG_ESP_PHY_RF_CAL_FULL is not set 750 | CONFIG_ESP_PHY_CALIBRATION_MODE=0 751 | # end of PHY 752 | 753 | # 754 | # Power Management 755 | # 756 | # CONFIG_PM_ENABLE is not set 757 | # end of Power Management 758 | 759 | # 760 | # ESP PSRAM 761 | # 762 | # CONFIG_SPIRAM is not set 763 | # end of ESP PSRAM 764 | 765 | # 766 | # ESP Ringbuf 767 | # 768 | # CONFIG_RINGBUF_PLACE_FUNCTIONS_INTO_FLASH is not set 769 | # end of ESP Ringbuf 770 | 771 | # 772 | # ESP System Settings 773 | # 774 | # CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_80 is not set 775 | CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_160=y 776 | # CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ_240 is not set 777 | CONFIG_ESP_DEFAULT_CPU_FREQ_MHZ=160 778 | 779 | # 780 | # Memory 781 | # 782 | # CONFIG_ESP32_USE_FIXED_STATIC_RAM_SIZE is not set 783 | 784 | # 785 | # Non-backward compatible options 786 | # 787 | # CONFIG_ESP_SYSTEM_ESP32_SRAM1_REGION_AS_IRAM is not set 788 | # end of Non-backward compatible options 789 | # end of Memory 790 | 791 | # 792 | # Trace memory 793 | # 794 | # CONFIG_ESP32_TRAX is not set 795 | CONFIG_ESP32_TRACEMEM_RESERVE_DRAM=0x0 796 | # end of Trace memory 797 | 798 | # CONFIG_ESP_SYSTEM_PANIC_PRINT_HALT is not set 799 | CONFIG_ESP_SYSTEM_PANIC_PRINT_REBOOT=y 800 | # CONFIG_ESP_SYSTEM_PANIC_SILENT_REBOOT is not set 801 | # CONFIG_ESP_SYSTEM_PANIC_GDBSTUB is not set 802 | # CONFIG_ESP_SYSTEM_GDBSTUB_RUNTIME is not set 803 | CONFIG_ESP_SYSTEM_PANIC_REBOOT_DELAY_SECONDS=0 804 | 805 | # 806 | # Memory protection 807 | # 808 | # end of Memory protection 809 | 810 | CONFIG_ESP_SYSTEM_EVENT_QUEUE_SIZE=32 811 | CONFIG_ESP_SYSTEM_EVENT_TASK_STACK_SIZE=2304 812 | CONFIG_ESP_MAIN_TASK_STACK_SIZE=3584 813 | CONFIG_ESP_MAIN_TASK_AFFINITY_CPU0=y 814 | # CONFIG_ESP_MAIN_TASK_AFFINITY_CPU1 is not set 815 | # CONFIG_ESP_MAIN_TASK_AFFINITY_NO_AFFINITY is not set 816 | CONFIG_ESP_MAIN_TASK_AFFINITY=0x0 817 | CONFIG_ESP_MINIMAL_SHARED_STACK_SIZE=2048 818 | CONFIG_ESP_CONSOLE_UART_DEFAULT=y 819 | # CONFIG_ESP_CONSOLE_UART_CUSTOM is not set 820 | # CONFIG_ESP_CONSOLE_NONE is not set 821 | CONFIG_ESP_CONSOLE_UART=y 822 | CONFIG_ESP_CONSOLE_MULTIPLE_UART=y 823 | CONFIG_ESP_CONSOLE_UART_NUM=0 824 | CONFIG_ESP_CONSOLE_UART_BAUDRATE=115200 825 | CONFIG_ESP_INT_WDT=y 826 | CONFIG_ESP_INT_WDT_TIMEOUT_MS=300 827 | CONFIG_ESP_INT_WDT_CHECK_CPU1=y 828 | CONFIG_ESP_TASK_WDT_EN=y 829 | CONFIG_ESP_TASK_WDT_INIT=y 830 | # CONFIG_ESP_TASK_WDT_PANIC is not set 831 | CONFIG_ESP_TASK_WDT_TIMEOUT_S=5 832 | CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU0=y 833 | CONFIG_ESP_TASK_WDT_CHECK_IDLE_TASK_CPU1=y 834 | # CONFIG_ESP_PANIC_HANDLER_IRAM is not set 835 | # CONFIG_ESP_DEBUG_STUBS_ENABLE is not set 836 | CONFIG_ESP_DEBUG_OCDAWARE=y 837 | # CONFIG_ESP_SYSTEM_CHECK_INT_LEVEL_5 is not set 838 | CONFIG_ESP_SYSTEM_CHECK_INT_LEVEL_4=y 839 | 840 | # 841 | # Brownout Detector 842 | # 843 | CONFIG_ESP_BROWNOUT_DET=y 844 | CONFIG_ESP_BROWNOUT_DET_LVL_SEL_0=y 845 | # CONFIG_ESP_BROWNOUT_DET_LVL_SEL_1 is not set 846 | # CONFIG_ESP_BROWNOUT_DET_LVL_SEL_2 is not set 847 | # CONFIG_ESP_BROWNOUT_DET_LVL_SEL_3 is not set 848 | # CONFIG_ESP_BROWNOUT_DET_LVL_SEL_4 is not set 849 | # CONFIG_ESP_BROWNOUT_DET_LVL_SEL_5 is not set 850 | # CONFIG_ESP_BROWNOUT_DET_LVL_SEL_6 is not set 851 | # CONFIG_ESP_BROWNOUT_DET_LVL_SEL_7 is not set 852 | CONFIG_ESP_BROWNOUT_DET_LVL=0 853 | # end of Brownout Detector 854 | 855 | # CONFIG_ESP32_DISABLE_BASIC_ROM_CONSOLE is not set 856 | CONFIG_ESP_SYSTEM_BROWNOUT_INTR=y 857 | # end of ESP System Settings 858 | 859 | # 860 | # IPC (Inter-Processor Call) 861 | # 862 | CONFIG_ESP_IPC_TASK_STACK_SIZE=1024 863 | CONFIG_ESP_IPC_USES_CALLERS_PRIORITY=y 864 | CONFIG_ESP_IPC_ISR_ENABLE=y 865 | # end of IPC (Inter-Processor Call) 866 | 867 | # 868 | # High resolution timer (esp_timer) 869 | # 870 | # CONFIG_ESP_TIMER_PROFILING is not set 871 | CONFIG_ESP_TIME_FUNCS_USE_RTC_TIMER=y 872 | CONFIG_ESP_TIME_FUNCS_USE_ESP_TIMER=y 873 | CONFIG_ESP_TIMER_TASK_STACK_SIZE=3584 874 | CONFIG_ESP_TIMER_INTERRUPT_LEVEL=1 875 | # CONFIG_ESP_TIMER_SHOW_EXPERIMENTAL is not set 876 | CONFIG_ESP_TIMER_TASK_AFFINITY=0x0 877 | CONFIG_ESP_TIMER_TASK_AFFINITY_CPU0=y 878 | CONFIG_ESP_TIMER_ISR_AFFINITY=0x1 879 | CONFIG_ESP_TIMER_ISR_AFFINITY_CPU0=y 880 | # CONFIG_ESP_TIMER_SUPPORTS_ISR_DISPATCH_METHOD is not set 881 | CONFIG_ESP_TIMER_IMPL_TG0_LAC=y 882 | # end of High resolution timer (esp_timer) 883 | 884 | # 885 | # Wi-Fi 886 | # 887 | CONFIG_ESP_WIFI_ENABLED=y 888 | CONFIG_ESP_WIFI_STATIC_RX_BUFFER_NUM=10 889 | CONFIG_ESP_WIFI_DYNAMIC_RX_BUFFER_NUM=32 890 | # CONFIG_ESP_WIFI_STATIC_TX_BUFFER is not set 891 | CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER=y 892 | CONFIG_ESP_WIFI_TX_BUFFER_TYPE=1 893 | CONFIG_ESP_WIFI_DYNAMIC_TX_BUFFER_NUM=32 894 | CONFIG_ESP_WIFI_STATIC_RX_MGMT_BUFFER=y 895 | # CONFIG_ESP_WIFI_DYNAMIC_RX_MGMT_BUFFER is not set 896 | CONFIG_ESP_WIFI_DYNAMIC_RX_MGMT_BUF=0 897 | CONFIG_ESP_WIFI_RX_MGMT_BUF_NUM_DEF=5 898 | # CONFIG_ESP_WIFI_CSI_ENABLED is not set 899 | CONFIG_ESP_WIFI_AMPDU_TX_ENABLED=y 900 | CONFIG_ESP_WIFI_TX_BA_WIN=6 901 | CONFIG_ESP_WIFI_AMPDU_RX_ENABLED=y 902 | CONFIG_ESP_WIFI_RX_BA_WIN=6 903 | CONFIG_ESP_WIFI_NVS_ENABLED=y 904 | CONFIG_ESP_WIFI_TASK_PINNED_TO_CORE_0=y 905 | # CONFIG_ESP_WIFI_TASK_PINNED_TO_CORE_1 is not set 906 | CONFIG_ESP_WIFI_SOFTAP_BEACON_MAX_LEN=752 907 | CONFIG_ESP_WIFI_MGMT_SBUF_NUM=32 908 | CONFIG_ESP_WIFI_IRAM_OPT=y 909 | # CONFIG_ESP_WIFI_EXTRA_IRAM_OPT is not set 910 | CONFIG_ESP_WIFI_RX_IRAM_OPT=y 911 | CONFIG_ESP_WIFI_ENABLE_WPA3_SAE=y 912 | CONFIG_ESP_WIFI_ENABLE_SAE_PK=y 913 | CONFIG_ESP_WIFI_SOFTAP_SAE_SUPPORT=y 914 | CONFIG_ESP_WIFI_ENABLE_WPA3_OWE_STA=y 915 | # CONFIG_ESP_WIFI_SLP_IRAM_OPT is not set 916 | CONFIG_ESP_WIFI_STA_DISCONNECTED_PM_ENABLE=y 917 | # CONFIG_ESP_WIFI_GMAC_SUPPORT is not set 918 | CONFIG_ESP_WIFI_SOFTAP_SUPPORT=y 919 | # CONFIG_ESP_WIFI_SLP_BEACON_LOST_OPT is not set 920 | CONFIG_ESP_WIFI_ESPNOW_MAX_ENCRYPT_NUM=7 921 | # CONFIG_ESP_WIFI_NAN_ENABLE is not set 922 | CONFIG_ESP_WIFI_MBEDTLS_CRYPTO=y 923 | CONFIG_ESP_WIFI_MBEDTLS_TLS_CLIENT=y 924 | # CONFIG_ESP_WIFI_WAPI_PSK is not set 925 | # CONFIG_ESP_WIFI_11KV_SUPPORT is not set 926 | # CONFIG_ESP_WIFI_MBO_SUPPORT is not set 927 | # CONFIG_ESP_WIFI_DPP_SUPPORT is not set 928 | # CONFIG_ESP_WIFI_11R_SUPPORT is not set 929 | # CONFIG_ESP_WIFI_WPS_SOFTAP_REGISTRAR is not set 930 | 931 | # 932 | # WPS Configuration Options 933 | # 934 | # CONFIG_ESP_WIFI_WPS_STRICT is not set 935 | # CONFIG_ESP_WIFI_WPS_PASSPHRASE is not set 936 | # end of WPS Configuration Options 937 | 938 | # CONFIG_ESP_WIFI_DEBUG_PRINT is not set 939 | # CONFIG_ESP_WIFI_TESTING_OPTIONS is not set 940 | CONFIG_ESP_WIFI_ENTERPRISE_SUPPORT=y 941 | # end of Wi-Fi 942 | 943 | # 944 | # Core dump 945 | # 946 | # CONFIG_ESP_COREDUMP_ENABLE_TO_FLASH is not set 947 | # CONFIG_ESP_COREDUMP_ENABLE_TO_UART is not set 948 | CONFIG_ESP_COREDUMP_ENABLE_TO_NONE=y 949 | # end of Core dump 950 | 951 | # 952 | # FAT Filesystem support 953 | # 954 | CONFIG_FATFS_VOLUME_COUNT=2 955 | CONFIG_FATFS_LFN_NONE=y 956 | # CONFIG_FATFS_LFN_HEAP is not set 957 | # CONFIG_FATFS_LFN_STACK is not set 958 | # CONFIG_FATFS_SECTOR_512 is not set 959 | CONFIG_FATFS_SECTOR_4096=y 960 | # CONFIG_FATFS_CODEPAGE_DYNAMIC is not set 961 | CONFIG_FATFS_CODEPAGE_437=y 962 | # CONFIG_FATFS_CODEPAGE_720 is not set 963 | # CONFIG_FATFS_CODEPAGE_737 is not set 964 | # CONFIG_FATFS_CODEPAGE_771 is not set 965 | # CONFIG_FATFS_CODEPAGE_775 is not set 966 | # CONFIG_FATFS_CODEPAGE_850 is not set 967 | # CONFIG_FATFS_CODEPAGE_852 is not set 968 | # CONFIG_FATFS_CODEPAGE_855 is not set 969 | # CONFIG_FATFS_CODEPAGE_857 is not set 970 | # CONFIG_FATFS_CODEPAGE_860 is not set 971 | # CONFIG_FATFS_CODEPAGE_861 is not set 972 | # CONFIG_FATFS_CODEPAGE_862 is not set 973 | # CONFIG_FATFS_CODEPAGE_863 is not set 974 | # CONFIG_FATFS_CODEPAGE_864 is not set 975 | # CONFIG_FATFS_CODEPAGE_865 is not set 976 | # CONFIG_FATFS_CODEPAGE_866 is not set 977 | # CONFIG_FATFS_CODEPAGE_869 is not set 978 | # CONFIG_FATFS_CODEPAGE_932 is not set 979 | # CONFIG_FATFS_CODEPAGE_936 is not set 980 | # CONFIG_FATFS_CODEPAGE_949 is not set 981 | # CONFIG_FATFS_CODEPAGE_950 is not set 982 | CONFIG_FATFS_CODEPAGE=437 983 | CONFIG_FATFS_FS_LOCK=0 984 | CONFIG_FATFS_TIMEOUT_MS=10000 985 | CONFIG_FATFS_PER_FILE_CACHE=y 986 | # CONFIG_FATFS_USE_FASTSEEK is not set 987 | CONFIG_FATFS_VFS_FSTAT_BLKSIZE=0 988 | # end of FAT Filesystem support 989 | 990 | # 991 | # FreeRTOS 992 | # 993 | 994 | # 995 | # Kernel 996 | # 997 | # CONFIG_FREERTOS_SMP is not set 998 | # CONFIG_FREERTOS_UNICORE is not set 999 | CONFIG_FREERTOS_HZ=1000 1000 | # CONFIG_FREERTOS_CHECK_STACKOVERFLOW_NONE is not set 1001 | # CONFIG_FREERTOS_CHECK_STACKOVERFLOW_PTRVAL is not set 1002 | CONFIG_FREERTOS_CHECK_STACKOVERFLOW_CANARY=y 1003 | CONFIG_FREERTOS_THREAD_LOCAL_STORAGE_POINTERS=1 1004 | CONFIG_FREERTOS_IDLE_TASK_STACKSIZE=1536 1005 | # CONFIG_FREERTOS_USE_IDLE_HOOK is not set 1006 | # CONFIG_FREERTOS_USE_TICK_HOOK is not set 1007 | CONFIG_FREERTOS_MAX_TASK_NAME_LEN=16 1008 | # CONFIG_FREERTOS_ENABLE_BACKWARD_COMPATIBILITY is not set 1009 | CONFIG_FREERTOS_TIMER_TASK_PRIORITY=1 1010 | CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH=2048 1011 | CONFIG_FREERTOS_TIMER_QUEUE_LENGTH=10 1012 | CONFIG_FREERTOS_QUEUE_REGISTRY_SIZE=0 1013 | CONFIG_FREERTOS_TASK_NOTIFICATION_ARRAY_ENTRIES=1 1014 | # CONFIG_FREERTOS_USE_TRACE_FACILITY is not set 1015 | # CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS is not set 1016 | # end of Kernel 1017 | 1018 | # 1019 | # Port 1020 | # 1021 | CONFIG_FREERTOS_TASK_FUNCTION_WRAPPER=y 1022 | # CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK is not set 1023 | CONFIG_FREERTOS_TLSP_DELETION_CALLBACKS=y 1024 | # CONFIG_FREERTOS_ENABLE_STATIC_TASK_CLEAN_UP is not set 1025 | CONFIG_FREERTOS_CHECK_MUTEX_GIVEN_BY_OWNER=y 1026 | CONFIG_FREERTOS_ISR_STACKSIZE=1536 1027 | CONFIG_FREERTOS_INTERRUPT_BACKTRACE=y 1028 | # CONFIG_FREERTOS_FPU_IN_ISR is not set 1029 | CONFIG_FREERTOS_TICK_SUPPORT_CORETIMER=y 1030 | CONFIG_FREERTOS_CORETIMER_0=y 1031 | # CONFIG_FREERTOS_CORETIMER_1 is not set 1032 | CONFIG_FREERTOS_SYSTICK_USES_CCOUNT=y 1033 | # CONFIG_FREERTOS_PLACE_FUNCTIONS_INTO_FLASH is not set 1034 | # CONFIG_FREERTOS_PLACE_SNAPSHOT_FUNS_INTO_FLASH is not set 1035 | # CONFIG_FREERTOS_CHECK_PORT_CRITICAL_COMPLIANCE is not set 1036 | CONFIG_FREERTOS_ENABLE_TASK_SNAPSHOT=y 1037 | # end of Port 1038 | 1039 | CONFIG_FREERTOS_NO_AFFINITY=0x7FFFFFFF 1040 | CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION=y 1041 | CONFIG_FREERTOS_DEBUG_OCDAWARE=y 1042 | # end of FreeRTOS 1043 | 1044 | # 1045 | # Hardware Abstraction Layer (HAL) and Low Level (LL) 1046 | # 1047 | CONFIG_HAL_ASSERTION_EQUALS_SYSTEM=y 1048 | # CONFIG_HAL_ASSERTION_DISABLE is not set 1049 | # CONFIG_HAL_ASSERTION_SILENT is not set 1050 | # CONFIG_HAL_ASSERTION_ENABLE is not set 1051 | CONFIG_HAL_DEFAULT_ASSERTION_LEVEL=2 1052 | CONFIG_HAL_SPI_MASTER_FUNC_IN_IRAM=y 1053 | CONFIG_HAL_SPI_SLAVE_FUNC_IN_IRAM=y 1054 | # end of Hardware Abstraction Layer (HAL) and Low Level (LL) 1055 | 1056 | # 1057 | # Heap memory debugging 1058 | # 1059 | CONFIG_HEAP_POISONING_DISABLED=y 1060 | # CONFIG_HEAP_POISONING_LIGHT is not set 1061 | # CONFIG_HEAP_POISONING_COMPREHENSIVE is not set 1062 | CONFIG_HEAP_TRACING_OFF=y 1063 | # CONFIG_HEAP_TRACING_STANDALONE is not set 1064 | # CONFIG_HEAP_TRACING_TOHOST is not set 1065 | # CONFIG_HEAP_USE_HOOKS is not set 1066 | # CONFIG_HEAP_ABORT_WHEN_ALLOCATION_FAILS is not set 1067 | # CONFIG_HEAP_PLACE_FUNCTION_INTO_FLASH is not set 1068 | # end of Heap memory debugging 1069 | 1070 | CONFIG_IEEE802154_CCA_THRESHOLD=-60 1071 | CONFIG_IEEE802154_PENDING_TABLE_SIZE=20 1072 | 1073 | # 1074 | # Log output 1075 | # 1076 | # CONFIG_LOG_DEFAULT_LEVEL_NONE is not set 1077 | # CONFIG_LOG_DEFAULT_LEVEL_ERROR is not set 1078 | # CONFIG_LOG_DEFAULT_LEVEL_WARN is not set 1079 | CONFIG_LOG_DEFAULT_LEVEL_INFO=y 1080 | # CONFIG_LOG_DEFAULT_LEVEL_DEBUG is not set 1081 | # CONFIG_LOG_DEFAULT_LEVEL_VERBOSE is not set 1082 | CONFIG_LOG_DEFAULT_LEVEL=3 1083 | CONFIG_LOG_MAXIMUM_EQUALS_DEFAULT=y 1084 | # CONFIG_LOG_MAXIMUM_LEVEL_DEBUG is not set 1085 | # CONFIG_LOG_MAXIMUM_LEVEL_VERBOSE is not set 1086 | CONFIG_LOG_MAXIMUM_LEVEL=3 1087 | CONFIG_LOG_COLORS=y 1088 | CONFIG_LOG_TIMESTAMP_SOURCE_RTOS=y 1089 | # CONFIG_LOG_TIMESTAMP_SOURCE_SYSTEM is not set 1090 | # end of Log output 1091 | 1092 | # 1093 | # LWIP 1094 | # 1095 | CONFIG_LWIP_LOCAL_HOSTNAME="espressif" 1096 | # CONFIG_LWIP_NETIF_API is not set 1097 | CONFIG_LWIP_TCPIP_TASK_PRIO=18 1098 | # CONFIG_LWIP_TCPIP_CORE_LOCKING is not set 1099 | # CONFIG_LWIP_CHECK_THREAD_SAFETY is not set 1100 | CONFIG_LWIP_DNS_SUPPORT_MDNS_QUERIES=y 1101 | # CONFIG_LWIP_L2_TO_L3_COPY is not set 1102 | # CONFIG_LWIP_IRAM_OPTIMIZATION is not set 1103 | # CONFIG_LWIP_EXTRA_IRAM_OPTIMIZATION is not set 1104 | CONFIG_LWIP_TIMERS_ONDEMAND=y 1105 | CONFIG_LWIP_ND6=y 1106 | CONFIG_LWIP_MAX_SOCKETS=10 1107 | # CONFIG_LWIP_USE_ONLY_LWIP_SELECT is not set 1108 | # CONFIG_LWIP_SO_LINGER is not set 1109 | CONFIG_LWIP_SO_REUSE=y 1110 | CONFIG_LWIP_SO_REUSE_RXTOALL=y 1111 | # CONFIG_LWIP_SO_RCVBUF is not set 1112 | # CONFIG_LWIP_NETBUF_RECVINFO is not set 1113 | CONFIG_LWIP_IP4_FRAG=y 1114 | CONFIG_LWIP_IP6_FRAG=y 1115 | # CONFIG_LWIP_IP4_REASSEMBLY is not set 1116 | # CONFIG_LWIP_IP6_REASSEMBLY is not set 1117 | CONFIG_LWIP_IP_REASS_MAX_PBUFS=10 1118 | # CONFIG_LWIP_IP_FORWARD is not set 1119 | # CONFIG_LWIP_STATS is not set 1120 | CONFIG_LWIP_ESP_GRATUITOUS_ARP=y 1121 | CONFIG_LWIP_GARP_TMR_INTERVAL=60 1122 | CONFIG_LWIP_ESP_MLDV6_REPORT=y 1123 | CONFIG_LWIP_MLDV6_TMR_INTERVAL=40 1124 | CONFIG_LWIP_TCPIP_RECVMBOX_SIZE=32 1125 | CONFIG_LWIP_DHCP_DOES_ARP_CHECK=y 1126 | # CONFIG_LWIP_DHCP_DISABLE_CLIENT_ID is not set 1127 | CONFIG_LWIP_DHCP_DISABLE_VENDOR_CLASS_ID=y 1128 | # CONFIG_LWIP_DHCP_RESTORE_LAST_IP is not set 1129 | CONFIG_LWIP_DHCP_OPTIONS_LEN=68 1130 | CONFIG_LWIP_NUM_NETIF_CLIENT_DATA=0 1131 | CONFIG_LWIP_DHCP_COARSE_TIMER_SECS=1 1132 | 1133 | # 1134 | # DHCP server 1135 | # 1136 | CONFIG_LWIP_DHCPS=y 1137 | CONFIG_LWIP_DHCPS_LEASE_UNIT=60 1138 | CONFIG_LWIP_DHCPS_MAX_STATION_NUM=8 1139 | # end of DHCP server 1140 | 1141 | # CONFIG_LWIP_AUTOIP is not set 1142 | CONFIG_LWIP_IPV4=y 1143 | CONFIG_LWIP_IPV6=y 1144 | # CONFIG_LWIP_IPV6_AUTOCONFIG is not set 1145 | CONFIG_LWIP_IPV6_NUM_ADDRESSES=3 1146 | # CONFIG_LWIP_IPV6_FORWARD is not set 1147 | # CONFIG_LWIP_NETIF_STATUS_CALLBACK is not set 1148 | CONFIG_LWIP_NETIF_LOOPBACK=y 1149 | CONFIG_LWIP_LOOPBACK_MAX_PBUFS=8 1150 | 1151 | # 1152 | # TCP 1153 | # 1154 | CONFIG_LWIP_MAX_ACTIVE_TCP=16 1155 | CONFIG_LWIP_MAX_LISTENING_TCP=16 1156 | CONFIG_LWIP_TCP_HIGH_SPEED_RETRANSMISSION=y 1157 | CONFIG_LWIP_TCP_MAXRTX=12 1158 | CONFIG_LWIP_TCP_SYNMAXRTX=12 1159 | CONFIG_LWIP_TCP_MSS=1440 1160 | CONFIG_LWIP_TCP_TMR_INTERVAL=250 1161 | CONFIG_LWIP_TCP_MSL=60000 1162 | CONFIG_LWIP_TCP_FIN_WAIT_TIMEOUT=20000 1163 | CONFIG_LWIP_TCP_SND_BUF_DEFAULT=5744 1164 | CONFIG_LWIP_TCP_WND_DEFAULT=5744 1165 | CONFIG_LWIP_TCP_RECVMBOX_SIZE=6 1166 | CONFIG_LWIP_TCP_QUEUE_OOSEQ=y 1167 | # CONFIG_LWIP_TCP_SACK_OUT is not set 1168 | CONFIG_LWIP_TCP_OVERSIZE_MSS=y 1169 | # CONFIG_LWIP_TCP_OVERSIZE_QUARTER_MSS is not set 1170 | # CONFIG_LWIP_TCP_OVERSIZE_DISABLE is not set 1171 | CONFIG_LWIP_TCP_RTO_TIME=1500 1172 | # end of TCP 1173 | 1174 | # 1175 | # UDP 1176 | # 1177 | CONFIG_LWIP_MAX_UDP_PCBS=16 1178 | CONFIG_LWIP_UDP_RECVMBOX_SIZE=6 1179 | # end of UDP 1180 | 1181 | # 1182 | # Checksums 1183 | # 1184 | # CONFIG_LWIP_CHECKSUM_CHECK_IP is not set 1185 | # CONFIG_LWIP_CHECKSUM_CHECK_UDP is not set 1186 | CONFIG_LWIP_CHECKSUM_CHECK_ICMP=y 1187 | # end of Checksums 1188 | 1189 | CONFIG_LWIP_TCPIP_TASK_STACK_SIZE=3072 1190 | CONFIG_LWIP_TCPIP_TASK_AFFINITY_NO_AFFINITY=y 1191 | # CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU0 is not set 1192 | # CONFIG_LWIP_TCPIP_TASK_AFFINITY_CPU1 is not set 1193 | CONFIG_LWIP_TCPIP_TASK_AFFINITY=0x7FFFFFFF 1194 | # CONFIG_LWIP_PPP_SUPPORT is not set 1195 | CONFIG_LWIP_IPV6_MEMP_NUM_ND6_QUEUE=3 1196 | CONFIG_LWIP_IPV6_ND6_NUM_NEIGHBORS=5 1197 | # CONFIG_LWIP_SLIP_SUPPORT is not set 1198 | 1199 | # 1200 | # ICMP 1201 | # 1202 | CONFIG_LWIP_ICMP=y 1203 | # CONFIG_LWIP_MULTICAST_PING is not set 1204 | # CONFIG_LWIP_BROADCAST_PING is not set 1205 | # end of ICMP 1206 | 1207 | # 1208 | # LWIP RAW API 1209 | # 1210 | CONFIG_LWIP_MAX_RAW_PCBS=16 1211 | # end of LWIP RAW API 1212 | 1213 | # 1214 | # SNTP 1215 | # 1216 | CONFIG_LWIP_SNTP_MAX_SERVERS=1 1217 | # CONFIG_LWIP_DHCP_GET_NTP_SRV is not set 1218 | CONFIG_LWIP_SNTP_UPDATE_DELAY=3600000 1219 | # end of SNTP 1220 | 1221 | CONFIG_LWIP_BRIDGEIF_MAX_PORTS=7 1222 | CONFIG_LWIP_ESP_LWIP_ASSERT=y 1223 | 1224 | # 1225 | # Hooks 1226 | # 1227 | # CONFIG_LWIP_HOOK_TCP_ISN_NONE is not set 1228 | CONFIG_LWIP_HOOK_TCP_ISN_DEFAULT=y 1229 | # CONFIG_LWIP_HOOK_TCP_ISN_CUSTOM is not set 1230 | CONFIG_LWIP_HOOK_IP6_ROUTE_NONE=y 1231 | # CONFIG_LWIP_HOOK_IP6_ROUTE_DEFAULT is not set 1232 | # CONFIG_LWIP_HOOK_IP6_ROUTE_CUSTOM is not set 1233 | CONFIG_LWIP_HOOK_ND6_GET_GW_NONE=y 1234 | # CONFIG_LWIP_HOOK_ND6_GET_GW_DEFAULT is not set 1235 | # CONFIG_LWIP_HOOK_ND6_GET_GW_CUSTOM is not set 1236 | CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR_NONE=y 1237 | # CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR_DEFAULT is not set 1238 | # CONFIG_LWIP_HOOK_IP6_SELECT_SRC_ADDR_CUSTOM is not set 1239 | CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_NONE=y 1240 | # CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_DEFAULT is not set 1241 | # CONFIG_LWIP_HOOK_NETCONN_EXT_RESOLVE_CUSTOM is not set 1242 | CONFIG_LWIP_HOOK_IP6_INPUT_NONE=y 1243 | # CONFIG_LWIP_HOOK_IP6_INPUT_DEFAULT is not set 1244 | # CONFIG_LWIP_HOOK_IP6_INPUT_CUSTOM is not set 1245 | # end of Hooks 1246 | 1247 | # CONFIG_LWIP_DEBUG is not set 1248 | # end of LWIP 1249 | 1250 | # 1251 | # mbedTLS 1252 | # 1253 | CONFIG_MBEDTLS_INTERNAL_MEM_ALLOC=y 1254 | # CONFIG_MBEDTLS_DEFAULT_MEM_ALLOC is not set 1255 | # CONFIG_MBEDTLS_CUSTOM_MEM_ALLOC is not set 1256 | CONFIG_MBEDTLS_ASYMMETRIC_CONTENT_LEN=y 1257 | CONFIG_MBEDTLS_SSL_IN_CONTENT_LEN=16384 1258 | CONFIG_MBEDTLS_SSL_OUT_CONTENT_LEN=4096 1259 | # CONFIG_MBEDTLS_DYNAMIC_BUFFER is not set 1260 | # CONFIG_MBEDTLS_DEBUG is not set 1261 | 1262 | # 1263 | # mbedTLS v3.x related 1264 | # 1265 | # CONFIG_MBEDTLS_SSL_PROTO_TLS1_3 is not set 1266 | # CONFIG_MBEDTLS_SSL_VARIABLE_BUFFER_LENGTH is not set 1267 | # CONFIG_MBEDTLS_X509_TRUSTED_CERT_CALLBACK is not set 1268 | # CONFIG_MBEDTLS_SSL_CONTEXT_SERIALIZATION is not set 1269 | CONFIG_MBEDTLS_SSL_KEEP_PEER_CERTIFICATE=y 1270 | CONFIG_MBEDTLS_PKCS7_C=y 1271 | # end of mbedTLS v3.x related 1272 | 1273 | # 1274 | # Certificate Bundle 1275 | # 1276 | CONFIG_MBEDTLS_CERTIFICATE_BUNDLE=y 1277 | CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_FULL=y 1278 | # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_CMN is not set 1279 | # CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_DEFAULT_NONE is not set 1280 | # CONFIG_MBEDTLS_CUSTOM_CERTIFICATE_BUNDLE is not set 1281 | CONFIG_MBEDTLS_CERTIFICATE_BUNDLE_MAX_CERTS=200 1282 | # end of Certificate Bundle 1283 | 1284 | # CONFIG_MBEDTLS_ECP_RESTARTABLE is not set 1285 | CONFIG_MBEDTLS_CMAC_C=y 1286 | CONFIG_MBEDTLS_HARDWARE_AES=y 1287 | CONFIG_MBEDTLS_HARDWARE_MPI=y 1288 | CONFIG_MBEDTLS_HARDWARE_SHA=y 1289 | CONFIG_MBEDTLS_ROM_MD5=y 1290 | # CONFIG_MBEDTLS_ATCA_HW_ECDSA_SIGN is not set 1291 | # CONFIG_MBEDTLS_ATCA_HW_ECDSA_VERIFY is not set 1292 | CONFIG_MBEDTLS_HAVE_TIME=y 1293 | # CONFIG_MBEDTLS_PLATFORM_TIME_ALT is not set 1294 | # CONFIG_MBEDTLS_HAVE_TIME_DATE is not set 1295 | CONFIG_MBEDTLS_ECDSA_DETERMINISTIC=y 1296 | CONFIG_MBEDTLS_SHA512_C=y 1297 | CONFIG_MBEDTLS_TLS_SERVER_AND_CLIENT=y 1298 | # CONFIG_MBEDTLS_TLS_SERVER_ONLY is not set 1299 | # CONFIG_MBEDTLS_TLS_CLIENT_ONLY is not set 1300 | # CONFIG_MBEDTLS_TLS_DISABLED is not set 1301 | CONFIG_MBEDTLS_TLS_SERVER=y 1302 | CONFIG_MBEDTLS_TLS_CLIENT=y 1303 | CONFIG_MBEDTLS_TLS_ENABLED=y 1304 | 1305 | # 1306 | # TLS Key Exchange Methods 1307 | # 1308 | # CONFIG_MBEDTLS_PSK_MODES is not set 1309 | CONFIG_MBEDTLS_KEY_EXCHANGE_RSA=y 1310 | CONFIG_MBEDTLS_KEY_EXCHANGE_ELLIPTIC_CURVE=y 1311 | CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_RSA=y 1312 | CONFIG_MBEDTLS_KEY_EXCHANGE_ECDHE_ECDSA=y 1313 | CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_ECDSA=y 1314 | CONFIG_MBEDTLS_KEY_EXCHANGE_ECDH_RSA=y 1315 | # end of TLS Key Exchange Methods 1316 | 1317 | CONFIG_MBEDTLS_SSL_RENEGOTIATION=y 1318 | CONFIG_MBEDTLS_SSL_PROTO_TLS1_2=y 1319 | # CONFIG_MBEDTLS_SSL_PROTO_GMTSSL1_1 is not set 1320 | # CONFIG_MBEDTLS_SSL_PROTO_DTLS is not set 1321 | CONFIG_MBEDTLS_SSL_ALPN=y 1322 | CONFIG_MBEDTLS_CLIENT_SSL_SESSION_TICKETS=y 1323 | CONFIG_MBEDTLS_SERVER_SSL_SESSION_TICKETS=y 1324 | 1325 | # 1326 | # Symmetric Ciphers 1327 | # 1328 | CONFIG_MBEDTLS_AES_C=y 1329 | # CONFIG_MBEDTLS_CAMELLIA_C is not set 1330 | # CONFIG_MBEDTLS_DES_C is not set 1331 | # CONFIG_MBEDTLS_BLOWFISH_C is not set 1332 | # CONFIG_MBEDTLS_XTEA_C is not set 1333 | CONFIG_MBEDTLS_CCM_C=y 1334 | CONFIG_MBEDTLS_GCM_C=y 1335 | # CONFIG_MBEDTLS_NIST_KW_C is not set 1336 | # end of Symmetric Ciphers 1337 | 1338 | # CONFIG_MBEDTLS_RIPEMD160_C is not set 1339 | 1340 | # 1341 | # Certificates 1342 | # 1343 | CONFIG_MBEDTLS_PEM_PARSE_C=y 1344 | CONFIG_MBEDTLS_PEM_WRITE_C=y 1345 | CONFIG_MBEDTLS_X509_CRL_PARSE_C=y 1346 | CONFIG_MBEDTLS_X509_CSR_PARSE_C=y 1347 | # end of Certificates 1348 | 1349 | CONFIG_MBEDTLS_ECP_C=y 1350 | # CONFIG_MBEDTLS_DHM_C is not set 1351 | CONFIG_MBEDTLS_ECDH_C=y 1352 | CONFIG_MBEDTLS_ECDSA_C=y 1353 | # CONFIG_MBEDTLS_ECJPAKE_C is not set 1354 | CONFIG_MBEDTLS_ECP_DP_SECP192R1_ENABLED=y 1355 | CONFIG_MBEDTLS_ECP_DP_SECP224R1_ENABLED=y 1356 | CONFIG_MBEDTLS_ECP_DP_SECP256R1_ENABLED=y 1357 | CONFIG_MBEDTLS_ECP_DP_SECP384R1_ENABLED=y 1358 | CONFIG_MBEDTLS_ECP_DP_SECP521R1_ENABLED=y 1359 | CONFIG_MBEDTLS_ECP_DP_SECP192K1_ENABLED=y 1360 | CONFIG_MBEDTLS_ECP_DP_SECP224K1_ENABLED=y 1361 | CONFIG_MBEDTLS_ECP_DP_SECP256K1_ENABLED=y 1362 | CONFIG_MBEDTLS_ECP_DP_BP256R1_ENABLED=y 1363 | CONFIG_MBEDTLS_ECP_DP_BP384R1_ENABLED=y 1364 | CONFIG_MBEDTLS_ECP_DP_BP512R1_ENABLED=y 1365 | CONFIG_MBEDTLS_ECP_DP_CURVE25519_ENABLED=y 1366 | CONFIG_MBEDTLS_ECP_NIST_OPTIM=y 1367 | CONFIG_MBEDTLS_ECP_FIXED_POINT_OPTIM=y 1368 | # CONFIG_MBEDTLS_POLY1305_C is not set 1369 | # CONFIG_MBEDTLS_CHACHA20_C is not set 1370 | # CONFIG_MBEDTLS_HKDF_C is not set 1371 | # CONFIG_MBEDTLS_THREADING_C is not set 1372 | # CONFIG_MBEDTLS_LARGE_KEY_SOFTWARE_MPI is not set 1373 | # end of mbedTLS 1374 | 1375 | # 1376 | # ESP-MQTT Configurations 1377 | # 1378 | CONFIG_MQTT_PROTOCOL_311=y 1379 | # CONFIG_MQTT_PROTOCOL_5 is not set 1380 | CONFIG_MQTT_TRANSPORT_SSL=y 1381 | CONFIG_MQTT_TRANSPORT_WEBSOCKET=y 1382 | CONFIG_MQTT_TRANSPORT_WEBSOCKET_SECURE=y 1383 | # CONFIG_MQTT_MSG_ID_INCREMENTAL is not set 1384 | # CONFIG_MQTT_SKIP_PUBLISH_IF_DISCONNECTED is not set 1385 | # CONFIG_MQTT_REPORT_DELETED_MESSAGES is not set 1386 | # CONFIG_MQTT_USE_CUSTOM_CONFIG is not set 1387 | # CONFIG_MQTT_TASK_CORE_SELECTION_ENABLED is not set 1388 | # CONFIG_MQTT_CUSTOM_OUTBOX is not set 1389 | # end of ESP-MQTT Configurations 1390 | 1391 | # 1392 | # Newlib 1393 | # 1394 | CONFIG_NEWLIB_STDOUT_LINE_ENDING_CRLF=y 1395 | # CONFIG_NEWLIB_STDOUT_LINE_ENDING_LF is not set 1396 | # CONFIG_NEWLIB_STDOUT_LINE_ENDING_CR is not set 1397 | # CONFIG_NEWLIB_STDIN_LINE_ENDING_CRLF is not set 1398 | # CONFIG_NEWLIB_STDIN_LINE_ENDING_LF is not set 1399 | CONFIG_NEWLIB_STDIN_LINE_ENDING_CR=y 1400 | # CONFIG_NEWLIB_NANO_FORMAT is not set 1401 | CONFIG_NEWLIB_TIME_SYSCALL_USE_RTC_HRT=y 1402 | # CONFIG_NEWLIB_TIME_SYSCALL_USE_RTC is not set 1403 | # CONFIG_NEWLIB_TIME_SYSCALL_USE_HRT is not set 1404 | # CONFIG_NEWLIB_TIME_SYSCALL_USE_NONE is not set 1405 | # end of Newlib 1406 | 1407 | # 1408 | # NVS 1409 | # 1410 | # CONFIG_NVS_ASSERT_ERROR_CHECK is not set 1411 | # end of NVS 1412 | 1413 | # 1414 | # OpenThread 1415 | # 1416 | # CONFIG_OPENTHREAD_ENABLED is not set 1417 | 1418 | # 1419 | # Thread Operational Dataset 1420 | # 1421 | CONFIG_OPENTHREAD_NETWORK_NAME="OpenThread-ESP" 1422 | CONFIG_OPENTHREAD_MESH_LOCAL_PREFIX="fd00:db8:a0:0::/64" 1423 | CONFIG_OPENTHREAD_NETWORK_CHANNEL=15 1424 | CONFIG_OPENTHREAD_NETWORK_PANID=0x1234 1425 | CONFIG_OPENTHREAD_NETWORK_EXTPANID="dead00beef00cafe" 1426 | CONFIG_OPENTHREAD_NETWORK_MASTERKEY="00112233445566778899aabbccddeeff" 1427 | CONFIG_OPENTHREAD_NETWORK_PSKC="104810e2315100afd6bc9215a6bfac53" 1428 | # end of Thread Operational Dataset 1429 | 1430 | CONFIG_OPENTHREAD_XTAL_ACCURACY=130 1431 | # end of OpenThread 1432 | 1433 | # 1434 | # Protocomm 1435 | # 1436 | CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_0=y 1437 | CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_1=y 1438 | CONFIG_ESP_PROTOCOMM_SUPPORT_SECURITY_VERSION_2=y 1439 | # end of Protocomm 1440 | 1441 | # 1442 | # PThreads 1443 | # 1444 | CONFIG_PTHREAD_TASK_PRIO_DEFAULT=5 1445 | CONFIG_PTHREAD_TASK_STACK_SIZE_DEFAULT=3072 1446 | CONFIG_PTHREAD_STACK_MIN=768 1447 | CONFIG_PTHREAD_DEFAULT_CORE_NO_AFFINITY=y 1448 | # CONFIG_PTHREAD_DEFAULT_CORE_0 is not set 1449 | # CONFIG_PTHREAD_DEFAULT_CORE_1 is not set 1450 | CONFIG_PTHREAD_TASK_CORE_DEFAULT=-1 1451 | CONFIG_PTHREAD_TASK_NAME_DEFAULT="pthread" 1452 | # end of PThreads 1453 | 1454 | # 1455 | # MMU Config 1456 | # 1457 | CONFIG_MMU_PAGE_SIZE_64KB=y 1458 | CONFIG_MMU_PAGE_MODE="64KB" 1459 | CONFIG_MMU_PAGE_SIZE=0x10000 1460 | # end of MMU Config 1461 | 1462 | # 1463 | # SPI Flash driver 1464 | # 1465 | # CONFIG_SPI_FLASH_VERIFY_WRITE is not set 1466 | # CONFIG_SPI_FLASH_ENABLE_COUNTERS is not set 1467 | CONFIG_SPI_FLASH_ROM_DRIVER_PATCH=y 1468 | CONFIG_SPI_FLASH_DANGEROUS_WRITE_ABORTS=y 1469 | # CONFIG_SPI_FLASH_DANGEROUS_WRITE_FAILS is not set 1470 | # CONFIG_SPI_FLASH_DANGEROUS_WRITE_ALLOWED is not set 1471 | # CONFIG_SPI_FLASH_SHARE_SPI1_BUS is not set 1472 | # CONFIG_SPI_FLASH_BYPASS_BLOCK_ERASE is not set 1473 | CONFIG_SPI_FLASH_YIELD_DURING_ERASE=y 1474 | CONFIG_SPI_FLASH_ERASE_YIELD_DURATION_MS=20 1475 | CONFIG_SPI_FLASH_ERASE_YIELD_TICKS=1 1476 | CONFIG_SPI_FLASH_WRITE_CHUNK_SIZE=8192 1477 | # CONFIG_SPI_FLASH_SIZE_OVERRIDE is not set 1478 | # CONFIG_SPI_FLASH_CHECK_ERASE_TIMEOUT_DISABLED is not set 1479 | # CONFIG_SPI_FLASH_OVERRIDE_CHIP_DRIVER_LIST is not set 1480 | 1481 | # 1482 | # SPI Flash behavior when brownout 1483 | # 1484 | CONFIG_SPI_FLASH_BROWNOUT_RESET_XMC=y 1485 | CONFIG_SPI_FLASH_BROWNOUT_RESET=y 1486 | # end of SPI Flash behavior when brownout 1487 | 1488 | # 1489 | # Auto-detect flash chips 1490 | # 1491 | CONFIG_SPI_FLASH_VENDOR_XMC_SUPPORTED=y 1492 | CONFIG_SPI_FLASH_VENDOR_GD_SUPPORTED=y 1493 | CONFIG_SPI_FLASH_VENDOR_ISSI_SUPPORTED=y 1494 | CONFIG_SPI_FLASH_VENDOR_MXIC_SUPPORTED=y 1495 | CONFIG_SPI_FLASH_VENDOR_WINBOND_SUPPORTED=y 1496 | CONFIG_SPI_FLASH_SUPPORT_ISSI_CHIP=y 1497 | CONFIG_SPI_FLASH_SUPPORT_MXIC_CHIP=y 1498 | CONFIG_SPI_FLASH_SUPPORT_GD_CHIP=y 1499 | CONFIG_SPI_FLASH_SUPPORT_WINBOND_CHIP=y 1500 | # CONFIG_SPI_FLASH_SUPPORT_BOYA_CHIP is not set 1501 | # CONFIG_SPI_FLASH_SUPPORT_TH_CHIP is not set 1502 | # end of Auto-detect flash chips 1503 | 1504 | CONFIG_SPI_FLASH_ENABLE_ENCRYPTED_READ_WRITE=y 1505 | # end of SPI Flash driver 1506 | 1507 | # 1508 | # SPIFFS Configuration 1509 | # 1510 | CONFIG_SPIFFS_MAX_PARTITIONS=3 1511 | 1512 | # 1513 | # SPIFFS Cache Configuration 1514 | # 1515 | CONFIG_SPIFFS_CACHE=y 1516 | CONFIG_SPIFFS_CACHE_WR=y 1517 | # CONFIG_SPIFFS_CACHE_STATS is not set 1518 | # end of SPIFFS Cache Configuration 1519 | 1520 | CONFIG_SPIFFS_PAGE_CHECK=y 1521 | CONFIG_SPIFFS_GC_MAX_RUNS=10 1522 | # CONFIG_SPIFFS_GC_STATS is not set 1523 | CONFIG_SPIFFS_PAGE_SIZE=256 1524 | CONFIG_SPIFFS_OBJ_NAME_LEN=32 1525 | # CONFIG_SPIFFS_FOLLOW_SYMLINKS is not set 1526 | CONFIG_SPIFFS_USE_MAGIC=y 1527 | CONFIG_SPIFFS_USE_MAGIC_LENGTH=y 1528 | CONFIG_SPIFFS_META_LENGTH=4 1529 | CONFIG_SPIFFS_USE_MTIME=y 1530 | 1531 | # 1532 | # Debug Configuration 1533 | # 1534 | # CONFIG_SPIFFS_DBG is not set 1535 | # CONFIG_SPIFFS_API_DBG is not set 1536 | # CONFIG_SPIFFS_GC_DBG is not set 1537 | # CONFIG_SPIFFS_CACHE_DBG is not set 1538 | # CONFIG_SPIFFS_CHECK_DBG is not set 1539 | # CONFIG_SPIFFS_TEST_VISUALISATION is not set 1540 | # end of Debug Configuration 1541 | # end of SPIFFS Configuration 1542 | 1543 | # 1544 | # TCP Transport 1545 | # 1546 | 1547 | # 1548 | # Websocket 1549 | # 1550 | CONFIG_WS_TRANSPORT=y 1551 | CONFIG_WS_BUFFER_SIZE=1024 1552 | # CONFIG_WS_DYNAMIC_BUFFER is not set 1553 | # end of Websocket 1554 | # end of TCP Transport 1555 | 1556 | # 1557 | # Ultra Low Power (ULP) Co-processor 1558 | # 1559 | # CONFIG_ULP_COPROC_ENABLED is not set 1560 | # end of Ultra Low Power (ULP) Co-processor 1561 | 1562 | # 1563 | # Unity unit testing library 1564 | # 1565 | CONFIG_UNITY_ENABLE_FLOAT=y 1566 | CONFIG_UNITY_ENABLE_DOUBLE=y 1567 | # CONFIG_UNITY_ENABLE_64BIT is not set 1568 | # CONFIG_UNITY_ENABLE_COLOR is not set 1569 | CONFIG_UNITY_ENABLE_IDF_TEST_RUNNER=y 1570 | # CONFIG_UNITY_ENABLE_FIXTURE is not set 1571 | # CONFIG_UNITY_ENABLE_BACKTRACE_ON_FAIL is not set 1572 | # end of Unity unit testing library 1573 | 1574 | # 1575 | # Root Hub configuration 1576 | # 1577 | # end of Root Hub configuration 1578 | 1579 | # 1580 | # Virtual file system 1581 | # 1582 | CONFIG_VFS_SUPPORT_IO=y 1583 | CONFIG_VFS_SUPPORT_DIR=y 1584 | CONFIG_VFS_SUPPORT_SELECT=y 1585 | CONFIG_VFS_SUPPRESS_SELECT_DEBUG_OUTPUT=y 1586 | CONFIG_VFS_SUPPORT_TERMIOS=y 1587 | CONFIG_VFS_MAX_COUNT=8 1588 | 1589 | # 1590 | # Host File System I/O (Semihosting) 1591 | # 1592 | CONFIG_VFS_SEMIHOSTFS_MAX_MOUNT_POINTS=1 1593 | # end of Host File System I/O (Semihosting) 1594 | # end of Virtual file system 1595 | 1596 | # 1597 | # Wear Levelling 1598 | # 1599 | # CONFIG_WL_SECTOR_SIZE_512 is not set 1600 | CONFIG_WL_SECTOR_SIZE_4096=y 1601 | CONFIG_WL_SECTOR_SIZE=4096 1602 | # end of Wear Levelling 1603 | 1604 | # 1605 | # Wi-Fi Provisioning Manager 1606 | # 1607 | CONFIG_WIFI_PROV_SCAN_MAX_ENTRIES=16 1608 | CONFIG_WIFI_PROV_AUTOSTOP_TIMEOUT=30 1609 | # CONFIG_WIFI_PROV_BLE_FORCE_ENCRYPTION is not set 1610 | CONFIG_WIFI_PROV_STA_ALL_CHANNEL_SCAN=y 1611 | # CONFIG_WIFI_PROV_STA_FAST_SCAN is not set 1612 | # end of Wi-Fi Provisioning Manager 1613 | # end of Component config 1614 | 1615 | # CONFIG_IDF_EXPERIMENTAL_FEATURES is not set 1616 | 1617 | # Deprecated options for backward compatibility 1618 | # CONFIG_APP_BUILD_TYPE_ELF_RAM is not set 1619 | # CONFIG_NO_BLOBS is not set 1620 | # CONFIG_ESP32_NO_BLOBS is not set 1621 | # CONFIG_ESP32_COMPATIBLE_PRE_V2_1_BOOTLOADERS is not set 1622 | # CONFIG_ESP32_COMPATIBLE_PRE_V3_1_BOOTLOADERS is not set 1623 | # CONFIG_LOG_BOOTLOADER_LEVEL_NONE is not set 1624 | # CONFIG_LOG_BOOTLOADER_LEVEL_ERROR is not set 1625 | # CONFIG_LOG_BOOTLOADER_LEVEL_WARN is not set 1626 | CONFIG_LOG_BOOTLOADER_LEVEL_INFO=y 1627 | # CONFIG_LOG_BOOTLOADER_LEVEL_DEBUG is not set 1628 | # CONFIG_LOG_BOOTLOADER_LEVEL_VERBOSE is not set 1629 | CONFIG_LOG_BOOTLOADER_LEVEL=3 1630 | # CONFIG_APP_ROLLBACK_ENABLE is not set 1631 | # CONFIG_FLASH_ENCRYPTION_ENABLED is not set 1632 | # CONFIG_FLASHMODE_QIO is not set 1633 | # CONFIG_FLASHMODE_QOUT is not set 1634 | CONFIG_FLASHMODE_DIO=y 1635 | # CONFIG_FLASHMODE_DOUT is not set 1636 | CONFIG_MONITOR_BAUD=115200 1637 | CONFIG_OPTIMIZATION_LEVEL_DEBUG=y 1638 | CONFIG_COMPILER_OPTIMIZATION_LEVEL_DEBUG=y 1639 | # CONFIG_OPTIMIZATION_LEVEL_RELEASE is not set 1640 | # CONFIG_COMPILER_OPTIMIZATION_LEVEL_RELEASE is not set 1641 | CONFIG_OPTIMIZATION_ASSERTIONS_ENABLED=y 1642 | # CONFIG_OPTIMIZATION_ASSERTIONS_SILENT is not set 1643 | # CONFIG_OPTIMIZATION_ASSERTIONS_DISABLED is not set 1644 | CONFIG_OPTIMIZATION_ASSERTION_LEVEL=2 1645 | # CONFIG_CXX_EXCEPTIONS is not set 1646 | CONFIG_STACK_CHECK_NONE=y 1647 | # CONFIG_STACK_CHECK_NORM is not set 1648 | # CONFIG_STACK_CHECK_STRONG is not set 1649 | # CONFIG_STACK_CHECK_ALL is not set 1650 | # CONFIG_WARN_WRITE_STRINGS is not set 1651 | # CONFIG_ESP32_APPTRACE_DEST_TRAX is not set 1652 | CONFIG_ESP32_APPTRACE_DEST_NONE=y 1653 | CONFIG_ESP32_APPTRACE_LOCK_ENABLE=y 1654 | CONFIG_ADC2_DISABLE_DAC=y 1655 | # CONFIG_MCPWM_ISR_IN_IRAM is not set 1656 | # CONFIG_EVENT_LOOP_PROFILING is not set 1657 | CONFIG_POST_EVENTS_FROM_ISR=y 1658 | CONFIG_POST_EVENTS_FROM_IRAM_ISR=y 1659 | # CONFIG_OTA_ALLOW_HTTP is not set 1660 | # CONFIG_TWO_UNIVERSAL_MAC_ADDRESS is not set 1661 | CONFIG_FOUR_UNIVERSAL_MAC_ADDRESS=y 1662 | CONFIG_NUMBER_OF_UNIVERSAL_MAC_ADDRESS=4 1663 | # CONFIG_ESP_SYSTEM_PD_FLASH is not set 1664 | CONFIG_ESP32_DEEP_SLEEP_WAKEUP_DELAY=2000 1665 | CONFIG_ESP32_RTC_CLK_SRC_INT_RC=y 1666 | CONFIG_ESP32_RTC_CLOCK_SOURCE_INTERNAL_RC=y 1667 | # CONFIG_ESP32_RTC_CLK_SRC_EXT_CRYS is not set 1668 | # CONFIG_ESP32_RTC_CLOCK_SOURCE_EXTERNAL_CRYSTAL is not set 1669 | # CONFIG_ESP32_RTC_CLK_SRC_EXT_OSC is not set 1670 | # CONFIG_ESP32_RTC_CLOCK_SOURCE_EXTERNAL_OSC is not set 1671 | # CONFIG_ESP32_RTC_CLK_SRC_INT_8MD256 is not set 1672 | # CONFIG_ESP32_RTC_CLOCK_SOURCE_INTERNAL_8MD256 is not set 1673 | CONFIG_ESP32_RTC_CLK_CAL_CYCLES=1024 1674 | # CONFIG_ESP32_XTAL_FREQ_26 is not set 1675 | CONFIG_ESP32_XTAL_FREQ_40=y 1676 | # CONFIG_ESP32_XTAL_FREQ_AUTO is not set 1677 | CONFIG_ESP32_XTAL_FREQ=40 1678 | CONFIG_ESP32_PHY_CALIBRATION_AND_DATA_STORAGE=y 1679 | # CONFIG_ESP32_PHY_INIT_DATA_IN_PARTITION is not set 1680 | CONFIG_ESP32_PHY_MAX_WIFI_TX_POWER=20 1681 | CONFIG_ESP32_PHY_MAX_TX_POWER=20 1682 | # CONFIG_REDUCE_PHY_TX_POWER is not set 1683 | # CONFIG_ESP32_REDUCE_PHY_TX_POWER is not set 1684 | # CONFIG_SPIRAM_SUPPORT is not set 1685 | # CONFIG_ESP32_SPIRAM_SUPPORT is not set 1686 | # CONFIG_ESP32_DEFAULT_CPU_FREQ_80 is not set 1687 | CONFIG_ESP32_DEFAULT_CPU_FREQ_160=y 1688 | # CONFIG_ESP32_DEFAULT_CPU_FREQ_240 is not set 1689 | CONFIG_ESP32_DEFAULT_CPU_FREQ_MHZ=160 1690 | CONFIG_TRACEMEM_RESERVE_DRAM=0x0 1691 | # CONFIG_ESP32_PANIC_PRINT_HALT is not set 1692 | CONFIG_ESP32_PANIC_PRINT_REBOOT=y 1693 | # CONFIG_ESP32_PANIC_SILENT_REBOOT is not set 1694 | # CONFIG_ESP32_PANIC_GDBSTUB is not set 1695 | CONFIG_SYSTEM_EVENT_QUEUE_SIZE=32 1696 | CONFIG_SYSTEM_EVENT_TASK_STACK_SIZE=2304 1697 | CONFIG_MAIN_TASK_STACK_SIZE=3584 1698 | CONFIG_CONSOLE_UART_DEFAULT=y 1699 | # CONFIG_CONSOLE_UART_CUSTOM is not set 1700 | # CONFIG_CONSOLE_UART_NONE is not set 1701 | # CONFIG_ESP_CONSOLE_UART_NONE is not set 1702 | CONFIG_CONSOLE_UART=y 1703 | CONFIG_CONSOLE_UART_NUM=0 1704 | CONFIG_CONSOLE_UART_BAUDRATE=115200 1705 | CONFIG_INT_WDT=y 1706 | CONFIG_INT_WDT_TIMEOUT_MS=300 1707 | CONFIG_INT_WDT_CHECK_CPU1=y 1708 | CONFIG_TASK_WDT=y 1709 | CONFIG_ESP_TASK_WDT=y 1710 | # CONFIG_TASK_WDT_PANIC is not set 1711 | CONFIG_TASK_WDT_TIMEOUT_S=5 1712 | CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU0=y 1713 | CONFIG_TASK_WDT_CHECK_IDLE_TASK_CPU1=y 1714 | # CONFIG_ESP32_DEBUG_STUBS_ENABLE is not set 1715 | CONFIG_ESP32_DEBUG_OCDAWARE=y 1716 | CONFIG_BROWNOUT_DET=y 1717 | CONFIG_ESP32_BROWNOUT_DET=y 1718 | CONFIG_BROWNOUT_DET_LVL_SEL_0=y 1719 | CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_0=y 1720 | # CONFIG_BROWNOUT_DET_LVL_SEL_1 is not set 1721 | # CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_1 is not set 1722 | # CONFIG_BROWNOUT_DET_LVL_SEL_2 is not set 1723 | # CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_2 is not set 1724 | # CONFIG_BROWNOUT_DET_LVL_SEL_3 is not set 1725 | # CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_3 is not set 1726 | # CONFIG_BROWNOUT_DET_LVL_SEL_4 is not set 1727 | # CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_4 is not set 1728 | # CONFIG_BROWNOUT_DET_LVL_SEL_5 is not set 1729 | # CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_5 is not set 1730 | # CONFIG_BROWNOUT_DET_LVL_SEL_6 is not set 1731 | # CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_6 is not set 1732 | # CONFIG_BROWNOUT_DET_LVL_SEL_7 is not set 1733 | # CONFIG_ESP32_BROWNOUT_DET_LVL_SEL_7 is not set 1734 | CONFIG_BROWNOUT_DET_LVL=0 1735 | CONFIG_ESP32_BROWNOUT_DET_LVL=0 1736 | # CONFIG_DISABLE_BASIC_ROM_CONSOLE is not set 1737 | CONFIG_IPC_TASK_STACK_SIZE=1024 1738 | CONFIG_TIMER_TASK_STACK_SIZE=3584 1739 | CONFIG_ESP32_WIFI_ENABLED=y 1740 | CONFIG_ESP32_WIFI_STATIC_RX_BUFFER_NUM=10 1741 | CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM=32 1742 | # CONFIG_ESP32_WIFI_STATIC_TX_BUFFER is not set 1743 | CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER=y 1744 | CONFIG_ESP32_WIFI_TX_BUFFER_TYPE=1 1745 | CONFIG_ESP32_WIFI_DYNAMIC_TX_BUFFER_NUM=32 1746 | # CONFIG_ESP32_WIFI_CSI_ENABLED is not set 1747 | CONFIG_ESP32_WIFI_AMPDU_TX_ENABLED=y 1748 | CONFIG_ESP32_WIFI_TX_BA_WIN=6 1749 | CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y 1750 | CONFIG_ESP32_WIFI_AMPDU_RX_ENABLED=y 1751 | CONFIG_ESP32_WIFI_RX_BA_WIN=6 1752 | CONFIG_ESP32_WIFI_RX_BA_WIN=6 1753 | CONFIG_ESP32_WIFI_NVS_ENABLED=y 1754 | CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_0=y 1755 | # CONFIG_ESP32_WIFI_TASK_PINNED_TO_CORE_1 is not set 1756 | CONFIG_ESP32_WIFI_SOFTAP_BEACON_MAX_LEN=752 1757 | CONFIG_ESP32_WIFI_MGMT_SBUF_NUM=32 1758 | CONFIG_ESP32_WIFI_IRAM_OPT=y 1759 | CONFIG_ESP32_WIFI_RX_IRAM_OPT=y 1760 | CONFIG_ESP32_WIFI_ENABLE_WPA3_SAE=y 1761 | CONFIG_ESP32_WIFI_ENABLE_WPA3_OWE_STA=y 1762 | CONFIG_WPA_MBEDTLS_CRYPTO=y 1763 | CONFIG_WPA_MBEDTLS_TLS_CLIENT=y 1764 | # CONFIG_WPA_WAPI_PSK is not set 1765 | # CONFIG_WPA_11KV_SUPPORT is not set 1766 | # CONFIG_WPA_MBO_SUPPORT is not set 1767 | # CONFIG_WPA_DPP_SUPPORT is not set 1768 | # CONFIG_WPA_11R_SUPPORT is not set 1769 | # CONFIG_WPA_WPS_SOFTAP_REGISTRAR is not set 1770 | # CONFIG_WPA_WPS_STRICT is not set 1771 | # CONFIG_WPA_DEBUG_PRINT is not set 1772 | # CONFIG_WPA_TESTING_OPTIONS is not set 1773 | # CONFIG_ESP32_ENABLE_COREDUMP_TO_FLASH is not set 1774 | # CONFIG_ESP32_ENABLE_COREDUMP_TO_UART is not set 1775 | CONFIG_ESP32_ENABLE_COREDUMP_TO_NONE=y 1776 | CONFIG_TIMER_TASK_PRIORITY=1 1777 | CONFIG_TIMER_TASK_STACK_DEPTH=2048 1778 | CONFIG_TIMER_QUEUE_LENGTH=10 1779 | # CONFIG_ENABLE_STATIC_TASK_CLEAN_UP_HOOK is not set 1780 | # CONFIG_HAL_ASSERTION_SILIENT is not set 1781 | # CONFIG_L2_TO_L3_COPY is not set 1782 | CONFIG_ESP_GRATUITOUS_ARP=y 1783 | CONFIG_GARP_TMR_INTERVAL=60 1784 | CONFIG_TCPIP_RECVMBOX_SIZE=32 1785 | CONFIG_TCP_MAXRTX=12 1786 | CONFIG_TCP_SYNMAXRTX=12 1787 | CONFIG_TCP_MSS=1440 1788 | CONFIG_TCP_MSL=60000 1789 | CONFIG_TCP_SND_BUF_DEFAULT=5744 1790 | CONFIG_TCP_WND_DEFAULT=5744 1791 | CONFIG_TCP_RECVMBOX_SIZE=6 1792 | CONFIG_TCP_QUEUE_OOSEQ=y 1793 | CONFIG_TCP_OVERSIZE_MSS=y 1794 | # CONFIG_TCP_OVERSIZE_QUARTER_MSS is not set 1795 | # CONFIG_TCP_OVERSIZE_DISABLE is not set 1796 | CONFIG_UDP_RECVMBOX_SIZE=6 1797 | CONFIG_TCPIP_TASK_STACK_SIZE=3072 1798 | CONFIG_TCPIP_TASK_AFFINITY_NO_AFFINITY=y 1799 | # CONFIG_TCPIP_TASK_AFFINITY_CPU0 is not set 1800 | # CONFIG_TCPIP_TASK_AFFINITY_CPU1 is not set 1801 | CONFIG_TCPIP_TASK_AFFINITY=0x7FFFFFFF 1802 | # CONFIG_PPP_SUPPORT is not set 1803 | CONFIG_ESP32_TIME_SYSCALL_USE_RTC_HRT=y 1804 | CONFIG_ESP32_TIME_SYSCALL_USE_RTC_FRC1=y 1805 | # CONFIG_ESP32_TIME_SYSCALL_USE_RTC is not set 1806 | # CONFIG_ESP32_TIME_SYSCALL_USE_HRT is not set 1807 | # CONFIG_ESP32_TIME_SYSCALL_USE_FRC1 is not set 1808 | # CONFIG_ESP32_TIME_SYSCALL_USE_NONE is not set 1809 | CONFIG_ESP32_PTHREAD_TASK_PRIO_DEFAULT=5 1810 | CONFIG_ESP32_PTHREAD_TASK_STACK_SIZE_DEFAULT=3072 1811 | CONFIG_ESP32_PTHREAD_STACK_MIN=768 1812 | CONFIG_ESP32_DEFAULT_PTHREAD_CORE_NO_AFFINITY=y 1813 | # CONFIG_ESP32_DEFAULT_PTHREAD_CORE_0 is not set 1814 | # CONFIG_ESP32_DEFAULT_PTHREAD_CORE_1 is not set 1815 | CONFIG_ESP32_PTHREAD_TASK_CORE_DEFAULT=-1 1816 | CONFIG_ESP32_PTHREAD_TASK_NAME_DEFAULT="pthread" 1817 | CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ABORTS=y 1818 | # CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_FAILS is not set 1819 | # CONFIG_SPI_FLASH_WRITING_DANGEROUS_REGIONS_ALLOWED is not set 1820 | # CONFIG_ESP32_ULP_COPROC_ENABLED is not set 1821 | CONFIG_SUPPRESS_SELECT_DEBUG_OUTPUT=y 1822 | CONFIG_SUPPORT_TERMIOS=y 1823 | CONFIG_SEMIHOSTFS_MAX_MOUNT_POINTS=1 1824 | # End of deprecated options 1825 | -------------------------------------------------------------------------------- /test_apps/TestApplication/sdkconfig.defaults: -------------------------------------------------------------------------------- 1 | CONFIG_PARTITION_TABLE_CUSTOM=y 2 | CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions.csv" 3 | CONFIG_PARTITION_TABLE_FILENAME="partitions.csv" 4 | 5 | CONFIG_FREERTOS_HZ=1000 6 | --------------------------------------------------------------------------------