mirror of
				https://github.com/espressif/esp-idf.git
				synced 2025-11-04 06:11:06 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			404 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			404 lines
		
	
	
		
			14 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
menu "Example Connection Configuration"
 | 
						|
 | 
						|
    orsource "$IDF_PATH/examples/common_components/env_caps/$IDF_TARGET/Kconfig.env_caps"
 | 
						|
 | 
						|
    config EXAMPLE_CONNECT_WIFI
 | 
						|
        bool "connect using WiFi interface"
 | 
						|
        depends on !IDF_TARGET_LINUX && (SOC_WIFI_SUPPORTED || ESP_WIFI_REMOTE_ENABLED || ESP_HOST_WIFI_ENABLED)
 | 
						|
        default y if SOC_WIFI_SUPPORTED
 | 
						|
        help
 | 
						|
            Protocol examples can use Wi-Fi, Ethernet and/or Thread to connect to the network.
 | 
						|
            Choose this option to connect with WiFi
 | 
						|
 | 
						|
    if EXAMPLE_CONNECT_WIFI
 | 
						|
        config EXAMPLE_WIFI_SSID_PWD_FROM_STDIN
 | 
						|
            bool "Get ssid and password from stdin"
 | 
						|
            default n
 | 
						|
            help
 | 
						|
                Give the WiFi SSID and password from stdin.
 | 
						|
 | 
						|
        config EXAMPLE_PROVIDE_WIFI_CONSOLE_CMD
 | 
						|
            depends on !EXAMPLE_WIFI_SSID_PWD_FROM_STDIN
 | 
						|
            bool "Provide wifi connect commands"
 | 
						|
            default y
 | 
						|
            help
 | 
						|
                Provide wifi connect commands for esp_console.
 | 
						|
                Please use `example_register_wifi_connect_commands` to register them.
 | 
						|
 | 
						|
        config EXAMPLE_WIFI_SSID
 | 
						|
            depends on !EXAMPLE_WIFI_SSID_PWD_FROM_STDIN
 | 
						|
            string "WiFi SSID"
 | 
						|
            default "myssid"
 | 
						|
            help
 | 
						|
                SSID (network name) for the example to connect to.
 | 
						|
 | 
						|
        config EXAMPLE_WIFI_PASSWORD
 | 
						|
            depends on !EXAMPLE_WIFI_SSID_PWD_FROM_STDIN
 | 
						|
            string "WiFi Password"
 | 
						|
            default "mypassword"
 | 
						|
            help
 | 
						|
                WiFi password (WPA or WPA2) for the example to use.
 | 
						|
                Can be left blank if the network has no security set.
 | 
						|
 | 
						|
        config EXAMPLE_WIFI_CONN_MAX_RETRY
 | 
						|
            int "Maximum retry"
 | 
						|
            default 6
 | 
						|
            help
 | 
						|
                Set the Maximum retry to avoid station reconnecting to the AP unlimited,
 | 
						|
                in case the AP is really inexistent.
 | 
						|
 | 
						|
        choice EXAMPLE_WIFI_SCAN_METHOD
 | 
						|
            prompt "WiFi Scan Method"
 | 
						|
            default EXAMPLE_WIFI_SCAN_METHOD_ALL_CHANNEL
 | 
						|
            help
 | 
						|
                WiFi scan method:
 | 
						|
 | 
						|
                If "Fast" is selected, scan will end after find SSID match AP.
 | 
						|
 | 
						|
                If "All Channel" is selected, scan will end after scan all the channel.
 | 
						|
 | 
						|
            config EXAMPLE_WIFI_SCAN_METHOD_FAST
 | 
						|
                bool "Fast"
 | 
						|
            config EXAMPLE_WIFI_SCAN_METHOD_ALL_CHANNEL
 | 
						|
                bool "All Channel"
 | 
						|
        endchoice
 | 
						|
 | 
						|
        menu "WiFi Scan threshold"
 | 
						|
            config EXAMPLE_WIFI_SCAN_RSSI_THRESHOLD
 | 
						|
                int "WiFi minimum rssi"
 | 
						|
                range -127 0
 | 
						|
 | 
						|
                default -127
 | 
						|
                help
 | 
						|
                    The minimum rssi to accept in the scan mode.
 | 
						|
 | 
						|
            choice EXAMPLE_WIFI_SCAN_AUTH_MODE_THRESHOLD
 | 
						|
                prompt "WiFi Scan auth mode threshold"
 | 
						|
                default EXAMPLE_WIFI_AUTH_OPEN
 | 
						|
                help
 | 
						|
                    The weakest authmode to accept in the scan mode.
 | 
						|
 | 
						|
                config EXAMPLE_WIFI_AUTH_OPEN
 | 
						|
                    bool "OPEN"
 | 
						|
                config EXAMPLE_WIFI_AUTH_WEP
 | 
						|
                    bool "WEP"
 | 
						|
                config EXAMPLE_WIFI_AUTH_WPA_PSK
 | 
						|
                    bool "WPA PSK"
 | 
						|
                config EXAMPLE_WIFI_AUTH_WPA2_PSK
 | 
						|
                    bool "WPA2 PSK"
 | 
						|
                config EXAMPLE_WIFI_AUTH_WPA_WPA2_PSK
 | 
						|
                    bool "WPA WPA2 PSK"
 | 
						|
                config EXAMPLE_WIFI_AUTH_WPA2_ENTERPRISE
 | 
						|
                    bool "WPA2 ENTERPRISE"
 | 
						|
                config EXAMPLE_WIFI_AUTH_WPA3_PSK
 | 
						|
                    bool "WPA3 PSK"
 | 
						|
                config EXAMPLE_WIFI_AUTH_WPA2_WPA3_PSK
 | 
						|
                    bool "WPA2 WPA3 PSK"
 | 
						|
                config EXAMPLE_WIFI_AUTH_WAPI_PSK
 | 
						|
                    bool "WAPI PSK"
 | 
						|
            endchoice
 | 
						|
        endmenu
 | 
						|
 | 
						|
        choice EXAMPLE_WIFI_CONNECT_AP_SORT_METHOD
 | 
						|
            prompt "WiFi Connect AP Sort Method"
 | 
						|
            default EXAMPLE_WIFI_CONNECT_AP_BY_SIGNAL
 | 
						|
            help
 | 
						|
                WiFi connect AP sort method:
 | 
						|
 | 
						|
                If "Signal" is selected, Sort matched APs in scan list by RSSI.
 | 
						|
 | 
						|
                If "Security" is selected, Sort matched APs in scan list by security mode.
 | 
						|
 | 
						|
            config EXAMPLE_WIFI_CONNECT_AP_BY_SIGNAL
 | 
						|
                bool "Signal"
 | 
						|
            config EXAMPLE_WIFI_CONNECT_AP_BY_SECURITY
 | 
						|
                bool "Security"
 | 
						|
        endchoice
 | 
						|
    endif
 | 
						|
 | 
						|
    config EXAMPLE_CONNECT_ETHERNET
 | 
						|
        bool "connect using Ethernet interface"
 | 
						|
        depends on !IDF_TARGET_LINUX
 | 
						|
        default y if !EXAMPLE_CONNECT_WIFI && !EXAMPLE_CONNECT_THREAD
 | 
						|
        help
 | 
						|
            Protocol examples can use Wi-Fi, Ethernet and/or Thread to connect to the network.
 | 
						|
            Choose this option to connect with Ethernet
 | 
						|
 | 
						|
    if EXAMPLE_CONNECT_ETHERNET
 | 
						|
        config EXAMPLE_ETHERNET_EMAC_TASK_STACK_SIZE
 | 
						|
            int "emac_rx task stack size"
 | 
						|
            default 2048
 | 
						|
            help
 | 
						|
                This set stack size for emac_rx task
 | 
						|
 | 
						|
        config EXAMPLE_USE_SPI_ETHERNET
 | 
						|
            bool
 | 
						|
 | 
						|
        choice EXAMPLE_ETHERNET_TYPE
 | 
						|
            prompt "Ethernet Type"
 | 
						|
            default EXAMPLE_USE_INTERNAL_ETHERNET if SOC_EMAC_SUPPORTED
 | 
						|
            default EXAMPLE_USE_DUMMY
 | 
						|
            help
 | 
						|
                Select which kind of Ethernet will be used in the example.
 | 
						|
 | 
						|
            config EXAMPLE_USE_INTERNAL_ETHERNET
 | 
						|
                depends on SOC_EMAC_SUPPORTED
 | 
						|
                select ETH_USE_ESP32_EMAC
 | 
						|
                bool "Internal EMAC"
 | 
						|
                help
 | 
						|
                    Select internal Ethernet MAC controller.
 | 
						|
 | 
						|
            config EXAMPLE_USE_DUMMY
 | 
						|
                bool "DUMMY Module"
 | 
						|
                select ETH_USE_SPI_ETHERNET
 | 
						|
                help
 | 
						|
                    Dummy option to just to pass builds, will be fixed by IDF-14059
 | 
						|
 | 
						|
            config EXAMPLE_USE_OPENETH
 | 
						|
                bool "OpenCores Ethernet MAC (EXPERIMENTAL)"
 | 
						|
                select ETH_USE_OPENETH
 | 
						|
                help
 | 
						|
                    When this option is enabled, the example is built with support for
 | 
						|
                    OpenCores Ethernet MAC, which allows testing the example in QEMU.
 | 
						|
                    Note that this option is used for internal testing purposes, and
 | 
						|
                    not officially supported. Examples built with this option enabled
 | 
						|
                    will not run on a real ESP32 chip.
 | 
						|
 | 
						|
        endchoice # EXAMPLE_ETHERNET_TYPE
 | 
						|
 | 
						|
        if EXAMPLE_USE_INTERNAL_ETHERNET
 | 
						|
            choice EXAMPLE_ETH_PHY_MODEL
 | 
						|
                prompt "Ethernet PHY Device"
 | 
						|
                default EXAMPLE_ETH_PHY_GENERIC
 | 
						|
                help
 | 
						|
                    Select the Ethernet PHY device to use in the example.
 | 
						|
 | 
						|
                config EXAMPLE_ETH_PHY_GENERIC
 | 
						|
                    bool "Generic 802.3 PHY"
 | 
						|
                    help
 | 
						|
                        Any Ethernet PHY chip compliant with IEEE 802.3 can be used. However, while
 | 
						|
                        basic functionality should always work, some specific features might be limited,
 | 
						|
                        even if the PHY meets IEEE 802.3 standard. A typical example is loopback
 | 
						|
                        functionality, where certain PHYs may require setting a specific speed mode to
 | 
						|
                        operate correctly.
 | 
						|
            endchoice
 | 
						|
 | 
						|
            config EXAMPLE_ETH_MDC_GPIO
 | 
						|
                int "SMI MDC GPIO number"
 | 
						|
                range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX
 | 
						|
                default 23 if IDF_TARGET_ESP32
 | 
						|
                default 31 if IDF_TARGET_ESP32P4
 | 
						|
                help
 | 
						|
                    Set the GPIO number used by SMI MDC.
 | 
						|
 | 
						|
            config EXAMPLE_ETH_MDIO_GPIO
 | 
						|
                int "SMI MDIO GPIO number"
 | 
						|
                range ENV_GPIO_RANGE_MIN ENV_GPIO_OUT_RANGE_MAX
 | 
						|
                default 18 if IDF_TARGET_ESP32
 | 
						|
                default 52 if IDF_TARGET_ESP32P4
 | 
						|
                help
 | 
						|
                    Set the GPIO number used by SMI MDIO.
 | 
						|
        endif
 | 
						|
 | 
						|
        config EXAMPLE_ETH_PHY_RST_GPIO
 | 
						|
            int "PHY Reset GPIO number"
 | 
						|
            range -1 ENV_GPIO_OUT_RANGE_MAX
 | 
						|
            default 51 if IDF_TARGET_ESP32P4
 | 
						|
            default 5
 | 
						|
            help
 | 
						|
                Set the GPIO number used to reset PHY chip.
 | 
						|
                Set to -1 to disable PHY chip hardware reset.
 | 
						|
 | 
						|
        config EXAMPLE_ETH_PHY_ADDR
 | 
						|
            int "PHY Address"
 | 
						|
            range 0 31 if EXAMPLE_USE_INTERNAL_ETHERNET
 | 
						|
            default 1
 | 
						|
            help
 | 
						|
                Set PHY address according your board schematic.
 | 
						|
    endif # EXAMPLE_CONNECT_ETHERNET
 | 
						|
 | 
						|
    config EXAMPLE_CONNECT_PPP
 | 
						|
        bool "connect using Point to Point interface"
 | 
						|
        select LWIP_PPP_SUPPORT
 | 
						|
        help
 | 
						|
            Protocol examples can use PPP connection over serial line.
 | 
						|
            Choose this option to connect to the ppp server running
 | 
						|
            on your laptop over a serial line (either UART or USB ACM)
 | 
						|
 | 
						|
    if EXAMPLE_CONNECT_PPP
 | 
						|
        choice EXAMPLE_CONNECT_PPP_DEVICE
 | 
						|
            prompt "Choose PPP device"
 | 
						|
            default EXAMPLE_CONNECT_PPP_DEVICE_USB
 | 
						|
            help
 | 
						|
                Select which peripheral to use to connect to the PPP server.
 | 
						|
 | 
						|
            config EXAMPLE_CONNECT_PPP_DEVICE_USB
 | 
						|
                bool "USB"
 | 
						|
                depends on SOC_USB_OTG_SUPPORTED
 | 
						|
                select TINYUSB_CDC_ENABLED
 | 
						|
                help
 | 
						|
                    Use USB ACM device.
 | 
						|
 | 
						|
            config EXAMPLE_CONNECT_PPP_DEVICE_UART
 | 
						|
                bool "UART"
 | 
						|
                help
 | 
						|
                    Use UART.
 | 
						|
 | 
						|
        endchoice
 | 
						|
 | 
						|
        menu "UART Configuration"
 | 
						|
            depends on EXAMPLE_CONNECT_PPP_DEVICE_UART
 | 
						|
            config EXAMPLE_CONNECT_UART_TX_PIN
 | 
						|
                int "TXD Pin Number"
 | 
						|
                default 4
 | 
						|
                range 0 31
 | 
						|
                help
 | 
						|
                    Pin number of UART TX.
 | 
						|
 | 
						|
            config EXAMPLE_CONNECT_UART_RX_PIN
 | 
						|
                int "RXD Pin Number"
 | 
						|
                default 5
 | 
						|
                range 0 31
 | 
						|
                help
 | 
						|
                    Pin number of UART RX.
 | 
						|
 | 
						|
            config EXAMPLE_CONNECT_UART_BAUDRATE
 | 
						|
                int "UART Baudrate"
 | 
						|
                default 115200
 | 
						|
                range 9600 3000000
 | 
						|
                help
 | 
						|
                    Baudrate of the UART device
 | 
						|
 | 
						|
        endmenu
 | 
						|
 | 
						|
        config EXAMPLE_PPP_CONN_MAX_RETRY
 | 
						|
            int "Maximum retry"
 | 
						|
            default 6
 | 
						|
            help
 | 
						|
                Set the Maximum retry to avoid station reconnecting if the pppd
 | 
						|
                is not available
 | 
						|
 | 
						|
    endif # EXAMPLE_CONNECT_PPP
 | 
						|
 | 
						|
    config EXAMPLE_CONNECT_THREAD
 | 
						|
        bool "Connect using Thread interface"
 | 
						|
        depends on !IDF_TARGET_LINUX && OPENTHREAD_ENABLED
 | 
						|
        default y if SOC_IEEE802154_SUPPORTED
 | 
						|
        select EXAMPLE_CONNECT_IPV6
 | 
						|
        help
 | 
						|
            Protocol examples can use Wi-Fi, Ethernet and/or Thread to connect to the network.
 | 
						|
            Choose this option to connect with Thread.
 | 
						|
            The operational active dataset of the Thread network can be configured in openthread
 | 
						|
            component at '->Components->OpenThread->Thread Core Features->Thread Operational Dataset'
 | 
						|
 | 
						|
    if EXAMPLE_CONNECT_THREAD
 | 
						|
        config EXAMPLE_THREAD_TASK_STACK_SIZE
 | 
						|
            int "Example Thread task stack size"
 | 
						|
            default 8192
 | 
						|
            help
 | 
						|
                Thread task stack size
 | 
						|
 | 
						|
        menu "Radio Spinel Options"
 | 
						|
            depends on OPENTHREAD_RADIO_SPINEL_UART || OPENTHREAD_RADIO_SPINEL_SPI
 | 
						|
 | 
						|
            config EXAMPLE_THREAD_UART_RX_PIN
 | 
						|
                depends on OPENTHREAD_RADIO_SPINEL_UART
 | 
						|
                int "Uart Rx Pin"
 | 
						|
                default 17
 | 
						|
 | 
						|
            config EXAMPLE_THREAD_UART_TX_PIN
 | 
						|
                depends on OPENTHREAD_RADIO_SPINEL_UART
 | 
						|
                int "Uart Tx pin"
 | 
						|
                default 18
 | 
						|
 | 
						|
            config EXAMPLE_THREAD_UART_BAUD
 | 
						|
                depends on OPENTHREAD_RADIO_SPINEL_UART
 | 
						|
                int "Uart baud rate"
 | 
						|
                default 460800
 | 
						|
 | 
						|
            config EXAMPLE_THREAD_UART_PORT
 | 
						|
                depends on OPENTHREAD_RADIO_SPINEL_UART
 | 
						|
                int "Uart port"
 | 
						|
                default 1
 | 
						|
 | 
						|
            config EXAMPLE_THREAD_SPI_CS_PIN
 | 
						|
                depends on OPENTHREAD_RADIO_SPINEL_SPI
 | 
						|
                int "SPI CS Pin"
 | 
						|
                default 10
 | 
						|
 | 
						|
            config EXAMPLE_THREAD_SPI_SCLK_PIN
 | 
						|
                depends on OPENTHREAD_RADIO_SPINEL_SPI
 | 
						|
                int "SPI SCLK Pin"
 | 
						|
                default 12
 | 
						|
 | 
						|
            config EXAMPLE_THREAD_SPI_MISO_PIN
 | 
						|
                depends on OPENTHREAD_RADIO_SPINEL_SPI
 | 
						|
                int "SPI MISO Pin"
 | 
						|
                default 13
 | 
						|
 | 
						|
            config EXAMPLE_THREAD_SPI_MOSI_PIN
 | 
						|
                depends on OPENTHREAD_RADIO_SPINEL_SPI
 | 
						|
                int "SPI MOSI Pin"
 | 
						|
                default 11
 | 
						|
 | 
						|
            config EXAMPLE_THREAD_SPI_INTR_PIN
 | 
						|
                depends on OPENTHREAD_RADIO_SPINEL_SPI
 | 
						|
                int "SPI Interrupt Pin"
 | 
						|
                default 8
 | 
						|
        endmenu
 | 
						|
 | 
						|
    endif
 | 
						|
 | 
						|
    config EXAMPLE_CONNECT_IPV4
 | 
						|
        bool
 | 
						|
        depends on LWIP_IPV4
 | 
						|
        default n if EXAMPLE_CONNECT_THREAD
 | 
						|
        default y
 | 
						|
 | 
						|
    config EXAMPLE_CONNECT_IPV6
 | 
						|
        depends on EXAMPLE_CONNECT_WIFI || EXAMPLE_CONNECT_ETHERNET || EXAMPLE_CONNECT_PPP || EXAMPLE_CONNECT_THREAD
 | 
						|
        bool "Obtain IPv6 address"
 | 
						|
        default y
 | 
						|
        select LWIP_IPV6
 | 
						|
        select LWIP_PPP_ENABLE_IPV6 if EXAMPLE_CONNECT_PPP
 | 
						|
        help
 | 
						|
            By default, examples will wait until IPv4 and IPv6 local link addresses are obtained.
 | 
						|
            Disable this option if the network does not support IPv6.
 | 
						|
            Choose the preferred IPv6 address type if the connection code should wait until other than
 | 
						|
            the local link address gets assigned.
 | 
						|
            Consider enabling IPv6 stateless address autoconfiguration (SLAAC) in the LWIP component.
 | 
						|
 | 
						|
    if EXAMPLE_CONNECT_IPV6
 | 
						|
        choice EXAMPLE_CONNECT_PREFERRED_IPV6
 | 
						|
            prompt "Preferred IPv6 Type"
 | 
						|
            default EXAMPLE_CONNECT_IPV6_PREF_LOCAL_LINK
 | 
						|
            help
 | 
						|
                Select which kind of IPv6 address the connect logic waits for.
 | 
						|
 | 
						|
            config EXAMPLE_CONNECT_IPV6_PREF_LOCAL_LINK
 | 
						|
                bool "Local Link Address"
 | 
						|
                help
 | 
						|
                    Blocks until Local link address assigned.
 | 
						|
 | 
						|
            config EXAMPLE_CONNECT_IPV6_PREF_GLOBAL
 | 
						|
                bool "Global Address"
 | 
						|
                help
 | 
						|
                    Blocks until Global address assigned.
 | 
						|
 | 
						|
            config EXAMPLE_CONNECT_IPV6_PREF_SITE_LOCAL
 | 
						|
                bool "Site Local Address"
 | 
						|
                help
 | 
						|
                    Blocks until Site link address assigned.
 | 
						|
 | 
						|
            config EXAMPLE_CONNECT_IPV6_PREF_UNIQUE_LOCAL
 | 
						|
                bool "Unique Local Link Address"
 | 
						|
                help
 | 
						|
                    Blocks until Unique local address assigned.
 | 
						|
 | 
						|
        endchoice
 | 
						|
 | 
						|
    endif
 | 
						|
 | 
						|
 | 
						|
endmenu
 |