# ESP32-S3 CSI Node — Default SDK Configuration # This file is applied automatically by idf.py when no sdkconfig exists. # Target: ESP32-S3 CONFIG_IDF_TARGET="esp32s3" # Use custom partition table (8MB flash with OTA — ADR-045) CONFIG_PARTITION_TABLE_CUSTOM=y CONFIG_PARTITION_TABLE_CUSTOM_FILENAME="partitions_display.csv" # Flash configuration: 8MB (Quad SPI) CONFIG_ESPTOOLPY_FLASHSIZE_8MB=y CONFIG_ESPTOOLPY_FLASHSIZE="8MB" # Compiler optimization: optimize for size to reduce binary CONFIG_COMPILER_OPTIMIZATION_SIZE=y # Enable CSI (Channel State Information) in WiFi driver CONFIG_ESP_WIFI_CSI_ENABLED=y # NVS encryption disabled by default (requires eFuse provisioning). # Enable only after burning HMAC key to eFuse block. # CONFIG_NVS_ENCRYPTION is not set # Disable unused features to reduce binary size CONFIG_BOOTLOADER_LOG_LEVEL_WARN=y CONFIG_LOG_DEFAULT_LEVEL_INFO=y # LWIP: enable extended socket options for UDP multicast CONFIG_LWIP_SO_RCVBUF=y # FreeRTOS: increase task stack for CSI processing CONFIG_ESP_MAIN_TASK_STACK_SIZE=8192 # Extra WiFi IRAM placement (defense-in-depth for RuView#396 SPI cache race) CONFIG_ESP_WIFI_EXTRA_IRAM_OPT=y # ----- Local overrides for room01/room02 deployment ----- # EDGE_TIER kept at project default (=2, full vitals pipeline). # Mac aggregator IP CONFIG_CSI_TARGET_IP="192.168.1.21" CONFIG_CSI_TARGET_PORT=5006 # Disable AMOLED display (no display on room sensors, init panics on missing # TCA9554 expander → Tmr Svc stack overflow). CONFIG_DISPLAY_ENABLE=n # Increase Tmr Svc stack to fit adaptive_controller tick (default 2048 overflows). CONFIG_FREERTOS_TIMER_TASK_STACK_DEPTH=8192