I am testing the speed at which the esp32 can associate with an AP after coming out of deep-sleep. One of the longest delays is in the probing for the AP. I am passing the SSID, password, channel number and BSSID to `esp_wifi_set_config` and I see that the probing is shorter than if I don't specify the channel and BSSID, but it is still longer than necessary. I captured the WiFi packets using a separate monitoring adapter and see that after the esp32 ACKs the AP's probe response it delays ~110ms before it starts associating. I surmise it is waiting for other APs to also respond to the probes but since I specified the BSSID why does it do that?
Here is a packet capture, the first column is the time and you can see 115ms elapsed between the ACK and the first association packet.
Code: Select all
37.633s -> Probe Request (test) [5.5* 11.0* 1.0* 2.0* 6.0 12.0 2 4.0 48.0 Mbit]
37.638s <- Probe Response (test) [1.0* 2.0* 5.5* 11.0* 6.0 9.0 1 2.0 18.0 Mbit] CH: 6
37.639s -> Acknowledgment
37.754s -> Authentication (Open System)-1: Successful