Skip to main content

Module radio

Module radio 

Source
Expand description

Radio bring-up for the ESP32/ESP32-S3 coprocessor.

The on-package radio is shared between BLE and WiFi โ€” both are sub-functions of the same hardware. Each lives in its own submodule and is gated by a cargo feature, so a binary only compiles in (and pays the RAM cost of) the radios it actually uses:

FeatureModuleProvides
blebleBleConnector for the trouble-host stack
wifiwifiWiFi controller + scanning
wifi-stawifiSTA + DHCP embassy_net::Stack (adds embassy-net)
coexโ€”software WiFi/BLE coexistence

Coexistence (coex) lets BLE and WiFi run at the same time at the cost of extra RAM (~96 KB reclaimed on ESP32, less on ESP32-S3). It is only compiled in when an application enables the coex feature.

In all cases esp_rtos::start(..) must run before any radio is created โ€” the radio drivers schedule their work on the esp-rtos executor.

Modulesยง

ble
BLE radio driver wrapper around esp-radio.
wifi
WiFi sub-function of the shared radio.