cancel
Showing results for 
Search instead for 
Did you mean: 

WICED Studio Wi-Fi Combo

dpugaz
New Contributor

We are currently using WICED WiFi Drivers for a product we are developing, however there is a quirk in their driver implementation which basically forces the WIFI to connect to the first detected Access Point rather than the one with the best RSSI.

That being said, we would like to know if anyone has attempted or encountered any  modification for this, since it is a change that would affect their wwd_wifi.c file. Within this file we are looking at two functions:

1) wwd_wifi_join()
2) wwd_wifi_join_specific()

We know that the second function is to connect to the pre-loaded AP in wifi_config_dct.h. However, if this is not available it will then run wwd_wifi_join() to connect to another AP which is referenced to in memory. That being said, we would like to modify wwd_wifi_join() to allow us to connect to the strongest AP with our SSID. So, it is essentially connecting to a specific BSSID.

We are currently stuck in modifying line 1042-1054 within the wwd_wifi_join() function:

The end goal here is for the WIFI module to establish a connection to the SSID with the best RSSI and not simply the first SSID that matches with our saved one.

Please advise. Thank you.

0 Likes
1 Solution
AditiB_81
Moderator
Moderator

Hi,

I assume from your response that you've different APs in your network but with the same SSID name and with the help of this API - wwd_wifi_join(), you want to connect to the strongest AP. But just to assure, do you have all APs with the same SSID name?

For your use case, I would recommend that you can add the code for scanning in this function wwd_wifi_join(), you can go through the example code of snip.scan in WICED. Location:

43xxx_Wi-Fi\apps\snip\scan

The scan results displays the RSSI values. You can then accordingly choose which AP you want to connect to and can pass the SSID name and length to the ssid_params structure and can then join the respective AP.

Thanks

Aditi

View solution in original post

0 Likes
1 Reply
AditiB_81
Moderator
Moderator

Hi,

I assume from your response that you've different APs in your network but with the same SSID name and with the help of this API - wwd_wifi_join(), you want to connect to the strongest AP. But just to assure, do you have all APs with the same SSID name?

For your use case, I would recommend that you can add the code for scanning in this function wwd_wifi_join(), you can go through the example code of snip.scan in WICED. Location:

43xxx_Wi-Fi\apps\snip\scan

The scan results displays the RSSI values. You can then accordingly choose which AP you want to connect to and can pass the SSID name and length to the ssid_params structure and can then join the respective AP.

Thanks

Aditi

View solution in original post

0 Likes