Summary
The committed sdkconfig had CONFIG_ESP_WIFI_CSI_ENABLED disabled (line 1135: # CONFIG_ESP_WIFI_CSI_ENABLED is not set), causing a runtime error on all builds:
E (6700) wifi:CSI not enabled in menuconfig!
Root cause: sdkconfig.defaults.template had the correct setting, but ESP-IDF only reads sdkconfig.defaults (no .template suffix). No sdkconfig.defaults file was committed.
Fixes Applied (ADR-057)
sdkconfig line 1135: Changed to CONFIG_ESP_WIFI_CSI_ENABLED=y
sdkconfig.defaults: Created from template so fresh builds inherit correct defaults
csi_collector.c: Added #error compile-time guard — turns confusing runtime crash into clear build error with fix instructions
Related Issues
Hardware Support Matrix
| Variant |
Supported |
Notes |
| ESP32-S3 |
Yes |
All variants (N4R2, N8R8, N16R8, Super Mini, DevKitC) |
| ESP32 (original) |
No |
Partial CSI, different architecture |
| ESP32-C3 |
No |
Has CSI but needs separate RISC-V build target |
| ESP32-C6 |
No |
Has CSI but needs separate RISC-V build target |
Test Plan
Summary
The committed
sdkconfighadCONFIG_ESP_WIFI_CSI_ENABLEDdisabled (line 1135:# CONFIG_ESP_WIFI_CSI_ENABLED is not set), causing a runtime error on all builds:Root cause:
sdkconfig.defaults.templatehad the correct setting, but ESP-IDF only readssdkconfig.defaults(no.templatesuffix). Nosdkconfig.defaultsfile was committed.Fixes Applied (ADR-057)
sdkconfigline 1135: Changed toCONFIG_ESP_WIFI_CSI_ENABLED=ysdkconfig.defaults: Created from template so fresh builds inherit correct defaultscsi_collector.c: Added#errorcompile-time guard — turns confusing runtime crash into clear build error with fix instructionsRelated Issues
Hardware Support Matrix
Test Plan
CONFIG_ESP_WIFI_CSI_ENABLED=yin build outputsdkconfig, runidf.py build— verifysdkconfig.defaultsapplies CSI settingCONFIG_ESP_WIFI_CSI_ENABLED=yin sdkconfig — verify compile fails with#error