Cargo Features

[dependencies]
esp-wifi = { version = "0.11.0", default-features = false, features = ["esp-alloc", "esp32c2", "esp32c3", "esp32c6", "esp32h2", "esp32", "esp32s2", "esp32s3", "coex", "sys-logs", "defmt", "log", "wifi", "esp-now", "sniffer", "ble", "smoltcp", "utils", "serde"] }
default = esp-alloc

The esp-alloc feature is set by default whenever esp-wifi is added without default-features = false somewhere in the dependency tree.

esp-alloc default

Use esp-alloc for dynamic allocations.

If you opt-out you need to provide implementations for pub extern "C" fn esp_wifi_free_internal_heap() -> usize and pub extern "C" fn esp_wifi_allocate_from_internal_ram(size: usize) -> *mut u8

Enables esp-alloc

Affects malloc::esp_wifi_free_internal_heap, malloc::esp_wifi_allocate_from_internal_ram

esp32c2

Chip Support Feature Flags
Target the ESP32-C2.

Enables esp32c2 of esp-hal and esp-wifi-sys

esp32c3

Target the ESP32-C3.

Enables esp32c3 of esp-hal and esp-wifi-sys

esp32c6

Target the ESP32-C6.

Enables esp32c6 of esp-hal and esp-wifi-sys

Affects common_adapter::floor

esp32h2

Target the ESP32-H2.

Enables esp32h2 of esp-hal and esp-wifi-sys

esp32

Target the ESP32.

Enables float-save-restore of xtensa-lx-rt, esp32 of esp-hal and esp-wifi-sys

esp32s2

Target the ESP32-S2.

Enables float-save-restore of xtensa-lx-rt, esp32s2 of esp-hal and esp-wifi-sys

esp32s3

Target the ESP32-S3.

Enables float-save-restore of xtensa-lx-rt, esp32s3 of esp-hal and esp-wifi-sys

coex

Enable WiFi-BLE coexistence support

sys-logs

Logs the WiFi logs from the driver at log level info (needs a nightly-compiler)

Enables sys-logs of esp-wifi-sys

Affects os_adapter::log_write, os_adapter::log_writev

defmt

Enable support for defmt

Enables defmt, defmt-03 of heapless, defmt of esp-hal and esp-wifi-sys, defmt of optional bt-hci, defmt of optional smoltcp

log

Enable support for the log crate

Enables log, log of esp-hal and esp-wifi-sys

wifi esp-now? sniffer?

Enable WiFi support

Enables embassy-net-driver, embassy-sync, and enumset

Affects esp-wifi::wifi

esp-now = wifi

Enable esp-now support

Affects esp-wifi::esp_now

sniffer = wifi

Enable sniffer mode support

Affects wifi::PromiscuousPkt, wifi::Sniffer

ble

Enable BLE support

Enables bt-hci and embassy-sync, bluetooth of esp-hal

Affects esp-wifi::ble

smoltcp utils?

Provide implementations of smoltcp traits

Enables smoltcp

utils = smoltcp

Provide utilities for smoltcp initialization. Adds smoltcp dependency

Affects wifi::utils

serde

Implement serde Serialize / Deserialize

Enables serde, serde of heapless and optional enumset

Features from optional dependencies

In crates that don't use the dep: syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.

xtensa-lx-rt esp32? esp32s2? esp32s3?