Signal Strength [Solved]

Is there or will there be an easy way to request the signal strength of the WiFi connection? This would obviously be helpful to know if your connection is going to be marginal or not.

Solved: function added for RSSI, read about it here:

1 Like

Check the CC3000 SimpleLink API. You’ll call wlan_ioctl_get_scan_results, which includes a 7-bit RSSI value for each returned record.

Ok cool, but it seems a little complicated… it would be very arduino-like to wrap this in a getRSSI(); method that just returned the RSSI of the connected AP in percentage. Or maybe an optional way to return the array of RSSI’s for APs that were found in the scan… just in case someone wanted to try to connect to another AP.

As I understand this still isn’t the SNR as it’s not in -dBm and not a measure of power, but it’s definitely better than nothing. Looking at the params for this it seems like it can be (should be) tweaked based on what type of antenna you are using. You’d probably need to calibrate this value based on the final Spark Core design with chip antenna and with some kind of standard omnidirectional antenna connected via uFL. Maybe someone with some calibrated RF equipment can offer some help there.

I’ll add this to our feature backlog; we probably won’t be able to get to this for our September release, but this could be a good post-release addition.


Sounds great @zach! I’m sure it’s one of those more advanced uses of the Core, but would be a great resource.

For example, with the RC Car kit… you could poll the getRSSI() in your main loop and adjust the allowable max speed of your vehicle proportionally, to keep you from getting stuck without a way to control your car. Or alert the user directly at the controls with some kind of weak signal beep.

This sounds like what I’m after too. Any chance we can get some kind of LQI metric as well as RSSI?

The RSSI function is on the backlog of things to do as far as I remember.

Yes, that’s what I had gathered. Just wondered if LQI was as well?

It sounds like LQI might not be baked into that protocol. If someone wanted to build an example of this using the data available, this would be a great opportunity for a pull request… :smiley: