This is the documentation for the latest (main) development branch of Zephyr. If you are looking for the documentation of previous releases, use the drop-down menu on the left and select the desired version.

CONFIG_ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM

Max number of WiFi dynamic RX buffers

Type: int

Help

Set the number of WiFi dynamic RX buffers, 0 means unlimited RX buffers
will be allocated (provided sufficient free RAM). The size of each dynamic
RX buffer depends on the size of the received data frame.

For each received data frame, the WiFi driver makes a copy to an RX buffer
and then delivers it to the high layer TCP/IP stack. The dynamic RX buffer
is freed after the higher layer has successfully received the data frame.

For some applications, WiFi data frames may be received faster than the
application can process them. In these cases we may run out of memory if
RX buffer number is unlimited (0). If a dynamic RX buffer limit is set,
it should be at least the number of static RX buffers.

Direct dependencies

WIFI_ESP32 && WIFI

(Includes any dependencies from ifs and menus.)

Default

  • 32

Kconfig definition

At drivers/wifi/esp32/Kconfig.esp32:55

Included via Kconfig:8Kconfig.zephyr:40drivers/Kconfig:76drivers/wifi/Kconfig:36

Menu path: (Top) → Device Drivers → Wi-Fi Drivers → ESP32 SoC WiFi support

config ESP32_WIFI_DYNAMIC_RX_BUFFER_NUM
    int "Max number of WiFi dynamic RX buffers"
    range 0 128
    default 32
    depends on WIFI_ESP32 && WIFI
    help
      Set the number of WiFi dynamic RX buffers, 0 means unlimited RX buffers
      will be allocated (provided sufficient free RAM). The size of each dynamic
      RX buffer depends on the size of the received data frame.

      For each received data frame, the WiFi driver makes a copy to an RX buffer
      and then delivers it to the high layer TCP/IP stack. The dynamic RX buffer
      is freed after the higher layer has successfully received the data frame.

      For some applications, WiFi data frames may be received faster than the
      application can process them. In these cases we may run out of memory if
      RX buffer number is unlimited (0). If a dynamic RX buffer limit is set,
      it should be at least the number of static RX buffers.

(The ‘depends on’ condition includes propagated dependencies from ifs and menus.)