mirror of
				https://github.com/espressif/esp-idf.git
				synced 2025-10-31 13:09:38 +00:00 
			
		
		
		
	 9c0ee28670
			
		
	
	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
		
			
				
	
	
		
			64 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
			
		
		
	
	
			64 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Protocol Buffer
		
	
	
	
	
	
| syntax = "proto3";
 | |
| 
 | |
| import "constants.proto";
 | |
| import "wifi_constants.proto";
 | |
| 
 | |
| message CmdScanStart {
 | |
|     bool blocking = 1;
 | |
|     bool passive = 2;
 | |
|     uint32 group_channels = 3;
 | |
|     uint32 period_ms = 4;
 | |
| }
 | |
| 
 | |
| message RespScanStart {
 | |
| 
 | |
| }
 | |
| 
 | |
| message CmdScanStatus {
 | |
| 
 | |
| }
 | |
| 
 | |
| message RespScanStatus {
 | |
|     bool scan_finished = 1;
 | |
|     uint32 result_count = 2;
 | |
| }
 | |
| 
 | |
| message CmdScanResult {
 | |
|     uint32 start_index = 1;
 | |
|     uint32 count = 2;
 | |
| }
 | |
| 
 | |
| message WiFiScanResult {
 | |
|     bytes ssid = 1;
 | |
|     uint32 channel = 2;
 | |
|     int32 rssi = 3;
 | |
|     bytes bssid = 4;
 | |
|     WifiAuthMode auth = 5;
 | |
| }
 | |
| 
 | |
| message RespScanResult {
 | |
|     repeated WiFiScanResult entries = 1;
 | |
| }
 | |
| 
 | |
| enum WiFiScanMsgType {
 | |
|     TypeCmdScanStart = 0;
 | |
|     TypeRespScanStart = 1;
 | |
|     TypeCmdScanStatus = 2;
 | |
|     TypeRespScanStatus = 3;
 | |
|     TypeCmdScanResult = 4;
 | |
|     TypeRespScanResult = 5;
 | |
| }
 | |
| 
 | |
| message WiFiScanPayload {
 | |
|     WiFiScanMsgType msg = 1;
 | |
|     Status status = 2;
 | |
|     oneof payload {
 | |
|         CmdScanStart cmd_scan_start = 10;
 | |
|         RespScanStart resp_scan_start = 11;
 | |
|         CmdScanStatus cmd_scan_status = 12;
 | |
|         RespScanStatus resp_scan_status = 13;
 | |
|         CmdScanResult cmd_scan_result = 14;
 | |
|         RespScanResult resp_scan_result = 15;
 | |
|     }
 | |
| }
 |