docs/blufi.md
esp-wifi-connect)This document explains how to enable and use BluFi (BLE-based WiFi provisioning) in the XiaoZhi firmware, together with the in-tree esp-wifi-connect component that handles WiFi connection and credential storage. See the official Espressif BluFi documentation for the protocol details.
idf.py menuconfig, enable WiFi Configuration Method -> Esp Blufi (CONFIG_USE_ESP_BLUFI_WIFI_PROVISIONING=y). If you want to use BluFi, disable the Hotspot option in the same menu; otherwise hotspot provisioning wins by default.app_main.CONFIG_BT_BLUEDROID_ENABLED / CONFIG_BT_NIMBLE_ENABLED must be selected; they are mutually exclusive.ESP_BLUFI_EVENT_REQ_CONNECT_TO_AP, the device stores the credentials into SsidManager (persisted in NVS by the esp-wifi-connect component).WifiStation to scan and connect; progress is reported back over BluFi.Esp Blufi in menuconfig, then build and flash the firmware.wifi NVS namespace) to avoid stale credentials interfering with the next run."Xiaozhi-Blufi", while 5.5.1 uses "BLUFI_DEVICE".