blob: afe02931ee6ae852ec0eb7ccb5cccfd5bdea774d [file] [log] [blame]
# Copyright (c) 2019 Tobias Svehagen
# SPDX-License-Identifier: Apache-2.0
menuconfig WIFI_ESP_AT
bool "Espressif AT Command support"
default y
depends on DT_HAS_ESPRESSIF_ESP_AT_ENABLED
select MODEM
select MODEM_CONTEXT
select MODEM_CMD_HANDLER
select MODEM_IFACE_UART
select NET_L2_WIFI_MGMT
select WIFI_OFFLOAD
help
Enable Espressif AT Command offloaded WiFi driver. It is supported on
any serial capable platform and communicates with Espressif chips
running ESP-AT firmware (https://github.com/espressif/esp-at).
if WIFI_ESP_AT
config WIFI_ESP_AT_SCAN_PASSIVE
bool "Passive scan"
help
Use passive scanning.
config WIFI_ESP_AT_SCAN_MAC_ADDRESS
bool "MAC address in scan response"
help
Get mac address in scan response.
config WIFI_ESP_AT_SCAN_RESULT_RSSI_ORDERED
bool "Scan result ordering based on RSSI"
help
Order based on RSSI.
config WIFI_ESP_AT_RX_STACK_SIZE
int "Stack size for the Espressif esp wifi driver RX thread"
default 1024
help
This stack is used by the Espressif ESP RX thread.
config WIFI_ESP_AT_RX_THREAD_PRIORITY
int "Priority of RX thread"
default 7
help
Priority of thread used for processing RX data.
config WIFI_ESP_AT_WORKQ_STACK_SIZE
int "Stack size for the esp driver work queue"
default 2048
help
This stack is used by the work queue to pass off net_pkt data
to the rest of the network stack, letting the rx thread continue
processing data.
config WIFI_ESP_AT_WORKQ_THREAD_PRIORITY
int "Priority of work queue thread"
default 7
help
Priority of thread used for processing driver work queue items.
config WIFI_ESP_AT_MDM_RING_BUF_SIZE
int "Modem ring buffer size"
default 1024
help
Ring buffer size used by modem UART interface handler.
config WIFI_ESP_AT_MDM_RX_BUF_COUNT
int "Modem RX buffer count"
default 30
help
Number of preallocated RX buffers used by modem command handler.
config WIFI_ESP_AT_MDM_RX_BUF_SIZE
int "Modem RX buffer size"
default 128
help
Size of preallocated RX buffers used by modem command handler.
config WIFI_ESP_AT_PASSIVE_MODE
bool "Use passive mode"
help
This lets the ESP handle the TCP window so that data can flow
at a rate that the driver can handle. Without this, data might get
lost if the driver cannot empty the device buffer quickly enough.
config WIFI_ESP_AT_RESET_TIMEOUT
int "Reset timeout"
default 3000
help
How long to wait for device to become ready after AT+RST has been
sent. This can vary with chipset (ESP8266/ESP32) and firmware
version. This is ignored if a reset pin is configured.
config WIFI_ESP_AT_RX_NET_PKT_ALLOC_TIMEOUT
int "Network interface RX packet allocation timeout"
default 5000
help
Network interface RX net_pkt allocation timeout in milliseconds.
choice
prompt "ESP IP Address configuration"
default WIFI_ESP_AT_IP_DHCP
help
Choose whether to use an IP assigned by DHCP Server or
configure a static IP Address.
config WIFI_ESP_AT_IP_DHCP
bool "DHCP"
help
Use DHCP to get an IP Address.
config WIFI_ESP_AT_IP_STATIC
bool "Static"
help
Setup Static IP Address.
endchoice
if WIFI_ESP_AT_IP_STATIC
config WIFI_ESP_AT_IP_ADDRESS
string "ESP Station mode IP Address"
config WIFI_ESP_AT_IP_GATEWAY
string "Gateway Address"
config WIFI_ESP_AT_IP_MASK
string "Network Mask"
endif
choice WIFI_ESP_AT_VERSION
prompt "AT version"
default WIFI_ESP_AT_VERSION_2_1
help
Select which version of AT command set should be used.
config WIFI_ESP_AT_VERSION_1_7
bool "AT version 1.7"
help
Use AT command set version 1.7.
config WIFI_ESP_AT_VERSION_2_0
bool "AT version 2.0"
help
Use AT command set version 2.0.
config WIFI_ESP_AT_VERSION_2_1
bool "AT version 2.1"
help
Use AT command set version 2.1.
endchoice
config WIFI_ESP_AT_DNS_USE
bool "Use DNS from ESP"
depends on DNS_RESOLVER
help
Fetch DNS servers from ESP chip with AT+CIPDNS? command and apply that
list to system DNS resolver.
config WIFI_ESP_AT_FETCH_VERSION
bool "Fetch and log ESP-AT firmware version"
default y
depends on LOG
help
Fetch information about ESP-AT firmware version. This includes AT
command version, SDK (ESP-IDF), board and compile time.
endif # WIFI_ESP_AT