ESP32 roam behaviour

User avatar
frackers
Posts: 6
Joined: Fri Jul 14, 2017 1:28 am

ESP32 roam behaviour

Postby frackers » Mon Dec 11, 2017 12:42 am

Is roaming (connecting to one of multiple Access Points with the same SSID) configurable for strongest signal or does it default to lowest channel number like the ESP8266.

Is this facility (if currently hard coded) accessible or is it buried in the closed RF code of the IDF? 'grep'ing through the IDF source tree doesn't look promising.

Experiments so far indicate that in STA mode the connection has to all but totally drop out before it looks for another AP and this compromises throughput, especially when 3-4 APs are being used to keep connectivity to 40-50 moving STA reliable.
Robin Down Under (or are you up over!)

User avatar
frackers
Posts: 6
Joined: Fri Jul 14, 2017 1:28 am

Re: ESP32 roam behaviour

Postby frackers » Wed Dec 13, 2017 2:11 am

I'm astonished that nobody seems to know about a basic operation of the ESP32, or least admitting to knowing!

Guess I'll have to advise that we use another device for our next product (or stick with Lantronix who at least will talk to us).
Robin Down Under (or are you up over!)

ESP_Sprite
Posts: 9760
Joined: Thu Nov 26, 2015 4:08 am

Re: ESP32 roam behaviour

Postby ESP_Sprite » Thu Dec 14, 2017 8:50 am

Fyi, the forums here are best-effort; if someone passes along who knows the answer, you may get a quick response; if the devs are all busy and no one else knows the answer, it may take longer or sometimes will be missed. If you're planning on making a product in any significant numbers, I suggest you talk to our sales team (email them at sales at espressif.com) directly.

markwj
Posts: 90
Joined: Tue Mar 08, 2016 5:03 am

Re: ESP32 roam behaviour

Postby markwj » Fri Dec 15, 2017 2:31 am

Maybe this is relevant:

https://github.com/espressif/esp-idf/releases
Support for all-channel scan, which can find best AP out of APs with same SSID

Lateralus
Posts: 5
Joined: Fri Mar 22, 2019 8:51 am

Re: ESP32 roam behaviour

Postby Lateralus » Wed Apr 24, 2019 3:50 pm

I'm just wondering if there are any news regarding WiFi roaming?
Is this still down to programmatically scanning SSIDs and deciding upon the RSSI value if I want to switch to another AP?

User avatar
fly135
Posts: 606
Joined: Wed Jan 03, 2018 8:33 pm
Location: Orlando, FL

Re: ESP32 roam behaviour

Postby fly135 » Wed Apr 24, 2019 4:41 pm

Lateralus wrote:
Wed Apr 24, 2019 3:50 pm
I'm just wondering if there are any news regarding WiFi roaming?
Is this still down to programmatically scanning SSIDs and deciding upon the RSSI value if I want to switch to another AP?
I doubt there is more news. You can assign a specific AP by using the BSSID. We did that by letting the phone app select the strongest AP and send the BSSID to the ESP32. But that proved to be a bad solution because BSSIDs can change. We assumed they were fixed. So yeah, scanning on boot for the strongest is still the only way I know.

John A

Lateralus
Posts: 5
Joined: Fri Mar 22, 2019 8:51 am

Re: ESP32 roam behaviour

Postby Lateralus » Thu Apr 25, 2019 2:13 pm

This might get tricky if I want to continously send data over WiFi and also have to think about roaming.

If I have to do an esp_wifi_scan_start() every 1-5s, just to see if there is maybe an AP with the same SSID but with a better RSSI in reach, I'd assume that I can't send any data while the scan is running. So I'm wondering if there is any clever way, besides esp_wifi_scan_start() to continously check the RSSI of the current active connection?
That way I could start the scanning for better APs only if my current connection is below a certain RSSI threshold.

realogics
Posts: 2
Joined: Thu Jun 08, 2023 4:00 pm

Re: ESP32 roam behaviour

Postby realogics » Thu Jun 08, 2023 4:17 pm

I too am interested in ROAMING capability.

I am using Arduino-ESP32 2.0.9 release on an Adafruit ESP32 HUZZA ESP32 board. I have attempted to run the roaming example found at: https://github.com/espressif/esp-idf/bl ... _example.c

However, there are several ESP functions which result in "undefined reference":
esp_rrm_is_rrm_supported_connection()
esp_wnm_is_btm_supported_connection()
esp_wnm_send_bss_transition_mgmt_query()
esp_rrm_send_neighbor_rep_request()

The functions can be found in 2.0.9 headers, but apparently the code objects are not.

Has anyone gotten this code to work, and if so, what build environment did you use?

realogics
Posts: 2
Joined: Thu Jun 08, 2023 4:00 pm

Re: ESP32 roam behaviour

Postby realogics » Tue Jun 27, 2023 12:10 am

Does anyone have suggestions on how to resolve the issues mentioned in my post above?

zachtos
Posts: 2
Joined: Wed Jun 15, 2022 11:58 pm

Re: ESP32 roam behaviour

Postby zachtos » Thu Feb 08, 2024 9:05 pm

I'm in the same boat, really need a seamless way to transition ESP32 (ESP32s3 for me) to a different BSSID with same SSID when signal is low. Losing data while scanning / reconnecting is a DO NOT PUT INTO PRODUCTION issue for us.

Who is online

Users browsing this forum: Bing [Bot], ESP_Sprite, Google [Bot] and 101 guests