9c0ee28670
List of changes in components/wifi_provisioning: * Manager version is now v1.1 * .proto files and protocomm handler added for sending Wi-Fi scan command and receiving scan results * Implemented handlers for wifi_scan protocomm endpoint * Update manager context data structure to hold scan state and results * scheme_softap now runs Wi-Fi in APSTA mode * Wi-Fi is started in AP mode when provisioning is started. This is necessary for scan list to work * Docs updates with information about new wifi_scan endpoint List of changes in tools/esp_prov: * Added functions for sending and receiving protobuf messages compatible with wifi_scan protocomm endpoint * Added feature to display/refresh scan results and accept user selection at runtime * New functions: * get_version() : only returns the protocol version string * has_capability() : check is a capability is present according to proto-ver response * wifi_scan feature is provided only if the `wifi_scan` capability is present Other changes: * Replace recursive mutex with plain mutex * assert on return value of mutex give / take calls * replace all calls with macros ACQUIRE_LOCK and RELEASE_LOCK * some checks added in scanning related private APIs * free and nullify scanning context and state if service is stopped while ongoing scan |
||
---|---|---|
.. | ||
ble_prov | ||
console_prov | ||
custom_config | ||
manager | ||
softap_prov | ||
README.md |
Provisioning Application Examples
These consist of the following examples :
-
softap_prov Provisioning involves Wi-Fi station configuration via an HTTP server running on the device, which is initially configured to be in SoftAP mode. After provisioning, device runs in Wi-Fi station mode only and connects to the AP whose credentials were provided during provisioning.
-
ble_prov Provisioning involves Wi-Fi station configuration via BLE service endpoints running on the device initially. After provisioning, BLE is turned off and device runs in Wi-Fi station mode, connecting to the AP whose credentials were provided during provisioning.
-
console_prov Provisioning involves Wi-Fi station configuration via UART console. This is intended for debugging protocomm and provisioning related features.
-
custom_config Similar to softap_prov examples, but allows for configuration of custom (device-local) information during provisioning. This is intended as an example for implementing custom provisioning schemes.
Provisioning applications are available for various platforms:
- For Android, a provisioning application along with source code is available on GitHub : esp-idf-provisioning-android
- For iOS, a provisioning application along with source code is available on GitHub : esp-idf-provisioning-ios
- For all other platforms a python based command line tool is provided under "$IDF_PATH/tools/esp_prov"
Refer to the README.md files in each example directory for more information.