Kconfig.projbuild 11.7 KB
Newer Older
1 2
menu "Arduino Configuration"

3 4 5 6 7 8 9 10 11
config ARDUINO_VARIANT
    string "Arduino target variant (board)"
    default IDF_TARGET
    help
        The name of a target variant (e.g., a specific board) in the variants/
        folder, e.g.  "heltec_wifi_lora_32_V2". The name is case sensitive.
        Specifying a variant name different from the target enables additional
        customization, for example the definition of GPIO pins.

12 13 14
config ENABLE_ARDUINO_DEPENDS
    bool
    select LWIP_SO_RCVBUF
15 16
    select ETHERNET
    select WIFI_ENABLED
17
    select ESP32_PHY_CALIBRATION_AND_DATA_STORAGE if IDF_TARGET_ESP32
18
    select MEMMAP_SMP
19 20
    default "y"

21 22 23 24 25 26 27 28 29 30
config AUTOSTART_ARDUINO
    bool "Autostart Arduino setup and loop on boot"
    default "n"
    help
        Enabling this option will implement app_main and start Arduino.
        All you need to implement in your main.cpp is setup() and loop()
        and include Arduino.h
        If disabled, you can call initArduino() to run any preparations
        required by the framework

31 32
choice ARDUINO_RUNNING_CORE
    bool "Core on which Arduino's setup() and loop() are running"
33 34
    default ARDUINO_RUN_CORE0 if FREERTOS_UNICORE
    default ARDUINO_RUN_CORE1 if !FREERTOS_UNICORE
35 36 37 38 39 40 41
    help
        Select on which core Arduino's setup() and loop() functions run

    config ARDUINO_RUN_CORE0
        bool "CORE 0"
    config ARDUINO_RUN_CORE1
        bool "CORE 1"
42
        depends on !FREERTOS_UNICORE
43 44
    config ARDUINO_RUN_NO_AFFINITY
        bool "BOTH"
45
        depends on !FREERTOS_UNICORE
46 47 48 49 50 51 52 53 54

endchoice

config ARDUINO_RUNNING_CORE
    int
    default 0 if ARDUINO_RUN_CORE0
    default 1 if ARDUINO_RUN_CORE1
    default -1 if ARDUINO_RUN_NO_AFFINITY

55 56 57 58 59 60
config ARDUINO_LOOP_STACK_SIZE
    int "Loop thread stack size"
    default 8192
    help
        Amount of stack available for the Arduino task.

61 62
choice ARDUINO_EVENT_RUNNING_CORE
    bool "Core on which Arduino's event handler is running"
63 64
    default ARDUINO_EVENT_RUN_CORE0 if FREERTOS_UNICORE
    default ARDUINO_EVENT_RUN_CORE1 if !FREERTOS_UNICORE
65 66 67 68 69 70 71
    help
        Select on which core Arduino's WiFi.onEvent() run

    config ARDUINO_EVENT_RUN_CORE0
        bool "CORE 0"
    config ARDUINO_EVENT_RUN_CORE1
        bool "CORE 1"
72
        depends on !FREERTOS_UNICORE
73 74
    config ARDUINO_EVENT_RUN_NO_AFFINITY
        bool "BOTH"
75
        depends on !FREERTOS_UNICORE
76 77 78 79 80 81 82 83 84

endchoice

config ARDUINO_EVENT_RUNNING_CORE
    int
    default 0 if ARDUINO_EVENT_RUN_CORE0
    default 1 if ARDUINO_EVENT_RUN_CORE1
    default -1 if ARDUINO_EVENT_RUN_NO_AFFINITY

85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
choice ARDUINO_SERIAL_EVENT_TASK_RUNNING_CORE
    bool "Core on which Arduino's Serial Event task is running"
    default ARDUINO_SERIAL_EVENT_RUN_CORE0 if FREERTOS_UNICORE
    default ARDUINO_SERIAL_EVENT_RUN_NO_AFFINITY if !FREERTOS_UNICORE
    help
        Select on which core Arduino's Serial Event task run

    config ARDUINO_SERIAL_EVENT_RUN_CORE0
        bool "CORE 0"
    config ARDUINO_SERIAL_EVENT_RUN_CORE1
        bool "CORE 1"
        depends on !FREERTOS_UNICORE
    config ARDUINO_SERIAL_EVENT_RUN_NO_AFFINITY
        bool "BOTH"
        depends on !FREERTOS_UNICORE

endchoice

config ARDUINO_SERIAL_EVENT_TASK_RUNNING_CORE
    int
    default 0 if ARDUINO_SERIAL_EVENT_RUN_CORE0
    default 1 if ARDUINO_SERIAL_EVENT_RUN_CORE1
    default -1 if ARDUINO_SERIAL_EVENT_RUN_NO_AFFINITY

config ARDUINO_SERIAL_EVENT_TASK_STACK_SIZE
    int "Serial Event task stack size"
    default 2048
    help
        Amount of stack available for the Serial Event task.

config ARDUINO_SERIAL_EVENT_TASK_PRIORITY
    int "Priority of the Serial Event task"
    default 24
    help
        Select at what priority you want the Serial Event task to run.

121 122
choice ARDUINO_UDP_RUNNING_CORE
    bool "Core on which Arduino's UDP is running"
123
    default ARDUINO_UDP_RUN_CORE0
124 125 126 127 128 129 130
    help
        Select on which core Arduino's UDP run

    config ARDUINO_UDP_RUN_CORE0
        bool "CORE 0"
    config ARDUINO_UDP_RUN_CORE1
        bool "CORE 1"
131
        depends on !FREERTOS_UNICORE
132 133
    config ARDUINO_UDP_RUN_NO_AFFINITY
        bool "BOTH"
134
        depends on !FREERTOS_UNICORE
135 136 137 138 139 140 141 142 143

endchoice

config ARDUINO_UDP_RUNNING_CORE
    int
    default 0 if ARDUINO_UDP_RUN_CORE0
    default 1 if ARDUINO_UDP_RUN_CORE1
    default -1 if ARDUINO_UDP_RUN_NO_AFFINITY

144 145 146 147 148 149
config ARDUINO_UDP_TASK_PRIORITY
    int "Priority of the UDP task"
    default 3
    help
        Select at what priority you want the UDP task to run.

150 151 152 153 154 155 156 157 158 159
config ARDUINO_ISR_IRAM
    bool "Run interrupts in IRAM"
    default "n"
    help
        Enabling this option will Attach all interrupts with the IRAm flag.
        It will also make some HAL function, like, digitalRead/Write and more
				be loaded into IRAM for access inside ISRs.
				Beware that this is a very dangerous setting. Enable it only if you
				are fully aware of the consequences.

160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206
config DISABLE_HAL_LOCKS
    bool "Disable mutex locks for HAL"
    default "n"
    help
        Enabling this option will run all hardware abstraction without locks.
        While communication with external hardware will be faster, you need to
        make sure that there is no option to use the same bus from another thread
        or interrupt at the same time. Option is best used with Arduino enabled
        and code implemented only in setup/loop and Arduino callbacks

menu "Debug Log Configuration"
choice ARDUHAL_LOG_DEFAULT_LEVEL
    bool "Default log level"
    default ARDUHAL_LOG_DEFAULT_LEVEL_ERROR
    help
        Specify how much output to see in logs by default.

config ARDUHAL_LOG_DEFAULT_LEVEL_NONE
    bool "No output"
config ARDUHAL_LOG_DEFAULT_LEVEL_ERROR
    bool "Error"
config ARDUHAL_LOG_DEFAULT_LEVEL_WARN
    bool "Warning"
config ARDUHAL_LOG_DEFAULT_LEVEL_INFO
    bool "Info"
config ARDUHAL_LOG_DEFAULT_LEVEL_DEBUG
    bool "Debug"
config ARDUHAL_LOG_DEFAULT_LEVEL_VERBOSE
    bool "Verbose"
endchoice

config ARDUHAL_LOG_DEFAULT_LEVEL
    int
    default 0 if ARDUHAL_LOG_DEFAULT_LEVEL_NONE
    default 1 if ARDUHAL_LOG_DEFAULT_LEVEL_ERROR
    default 2 if ARDUHAL_LOG_DEFAULT_LEVEL_WARN
    default 3 if ARDUHAL_LOG_DEFAULT_LEVEL_INFO
    default 4 if ARDUHAL_LOG_DEFAULT_LEVEL_DEBUG
    default 5 if ARDUHAL_LOG_DEFAULT_LEVEL_VERBOSE

config ARDUHAL_LOG_COLORS
    bool "Use ANSI terminal colors in log output"
    default "n"
    help
        Enable ANSI terminal color codes in bootloader output.
        In order to view these, your terminal program must support ANSI color codes.

M
me-no-dev 已提交
207 208 209 210 211 212 213 214 215 216
config ARDUHAL_ESP_LOG
    bool "Forward ESP_LOGx to Arduino log output"
    default "n"
    help
        This option will redefine the ESP_LOGx macros to Arduino's log_x macros.
        To enable for your application, add the follwing after your includes:
        #ifdef ARDUINO_ARCH_ESP32
        #include "esp32-hal-log.h"
        #endif

217 218
endmenu

M
Me No Dev 已提交
219 220 221 222 223 224 225 226 227 228 229 230
choice ARDUHAL_PARTITION_SCHEME
    bool "Used partition scheme"
    default ARDUHAL_PARTITION_SCHEME_DEFAULT
    help
        Specify which partition scheme to be used.

config ARDUHAL_PARTITION_SCHEME_DEFAULT
    bool "Default"
config ARDUHAL_PARTITION_SCHEME_MINIMAL
    bool "Minimal (for 2MB FLASH)"
config ARDUHAL_PARTITION_SCHEME_NO_OTA
    bool "No OTA (for large apps)"
231 232
config ARDUHAL_PARTITION_SCHEME_HUGE_APP
    bool "Huge App (for very large apps)"
233 234
config ARDUHAL_PARTITION_SCHEME_MIN_SPIFFS
    bool "Minimal SPIFFS (for large apps with OTA)"
M
Me No Dev 已提交
235 236 237 238 239 240 241
endchoice

config ARDUHAL_PARTITION_SCHEME
    string
    default "default" if ARDUHAL_PARTITION_SCHEME_DEFAULT
    default "minimal" if ARDUHAL_PARTITION_SCHEME_MINIMAL
    default "no_ota" if ARDUHAL_PARTITION_SCHEME_NO_OTA
242
    default "huge_app" if ARDUHAL_PARTITION_SCHEME_HUGE_APP
243
    default "min_spiffs" if ARDUHAL_PARTITION_SCHEME_MIN_SPIFFS
M
Me No Dev 已提交
244 245


246 247 248 249
config AUTOCONNECT_WIFI
    bool "Autoconnect WiFi on boot"
    default "n"
    depends on AUTOSTART_ARDUINO
250
    select ARDUINO_SELECTIVE_WiFi
251 252 253 254
    help
        If enabled, WiFi will connect to the last used SSID (if station was enabled),
        else connection will be started only after calling WiFi.begin(ssid, password)

255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308
config ARDUINO_SELECTIVE_COMPILATION
    bool "Include only specific Arduino libraries"
    default n

config ARDUINO_SELECTIVE_ArduinoOTA
    bool "Enable ArduinoOTA"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_WiFi
    select ARDUINO_SELECTIVE_ESPmDNS
    default y

config ARDUINO_SELECTIVE_AsyncUDP
    bool "Enable AsyncUDP"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_AzureIoT
    bool "Enable AzureIoT"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_HTTPClient
    default y

config ARDUINO_SELECTIVE_BLE
    bool "Enable BLE"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_BluetoothSerial
    bool "Enable BluetoothSerial"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_DNSServer
    bool "Enable DNSServer"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_WiFi
    default y

config ARDUINO_SELECTIVE_EEPROM
    bool "Enable EEPROM"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_ESP32
    bool "Enable ESP32"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_ESPmDNS
    bool "Enable ESPmDNS"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_WiFi
    default y

309 310 311 312 313 314
config ARDUINO_SELECTIVE_FFat
    bool "Enable FFat"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_FS
    default y

315 316 317 318 319 320 321 322 323 324 325 326
config ARDUINO_SELECTIVE_FS
    bool "Enable FS"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_HTTPClient
    bool "Enable HTTPClient"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_WiFi
    select ARDUINO_SELECTIVE_WiFiClientSecure
    default y

327 328 329 330 331 332
config ARDUINO_SELECTIVE_LITTLEFS
    bool "Enable LITTLEFS"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_FS
    default y

333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398
config ARDUINO_SELECTIVE_NetBIOS
    bool "Enable NetBIOS"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_WiFi
    default y

config ARDUINO_SELECTIVE_Preferences
    bool "Enable Preferences"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_SD
    bool "Enable SD"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_FS
    default y

config ARDUINO_SELECTIVE_SD_MMC
    bool "Enable SD_MMC"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_FS
    default y

config ARDUINO_SELECTIVE_SimpleBLE
    bool "Enable SimpleBLE"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_SPI
    bool "Enable SPI"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_SPIFFS
    bool "Enable SPIFFS"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_FS
    default y

config ARDUINO_SELECTIVE_Ticker
    bool "Enable Ticker"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_Update
    bool "Enable Update"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_WebServer
    bool "Enable WebServer"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y
    select ARDUINO_SELECTIVE_FS

config ARDUINO_SELECTIVE_WiFi
    bool "Enable WiFi"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y

config ARDUINO_SELECTIVE_WiFiClientSecure
    bool "Enable WiFiClientSecure"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_WiFi
    default y

399 400 401 402 403 404
config ARDUINO_SELECTIVE_WiFiProv
    bool "Enable WiFiProv"
    depends on ARDUINO_SELECTIVE_COMPILATION
    select ARDUINO_SELECTIVE_WiFi
    default y

405 406 407 408 409 410
config ARDUINO_SELECTIVE_Wire
    bool "Enable Wire"
    depends on ARDUINO_SELECTIVE_COMPILATION
    default y


411
endmenu
412