6

I have a question about bluetooth RSSI functionality on the Android (either 2.0 or 2.1):

It's easy enough to get the RSSI value when a bluetooth connection is created, but how can you repeatedly get the RSSI value of a connection that is already active? It's really important to be able to do this, because this lets you determine if bluetooth devices are close to each other or far away, but I can't find any appropriate function calls in the Android API.

Could someone who understands Android RSSI please help me with this problem?

Thanks!

Alex

Anthony Forloney
  • 90,123
  • 14
  • 117
  • 115
Alex Hertel
  • 61
  • 1
  • 1
  • 2

1 Answers1

9

At the HCI level, there is a command to read a Bluetooth link RSSI from the Bluetooth chipset (Read_RSSI_Command). However its implementation can vary from Bluetooth chipset to Bluetooth chipset. And the value returned is not always useful, for example if there are no packets transmitted in the last few minutes, the Bluetooth chipset has no way to know the current RSSI.

So we don't expose this in any Android Java API at this time.

Nick Pelly Android Bluetooth Team

Nick Pelly
  • 91
  • 1
  • 4
    Hi Nick, Thank you *very much* for your reply; I definitely appreciate you taking the time to explain this. Although you don't expose the Read_RSSI_Command function in the Android Java API, is there nevertheless some way to access it on the Android? I am more than happy to write a big case statement with all of the different Bluetooth chipsets as the different cases. If this is not possible, then are you planning on including it in the API any time in the near future? This is very important functionality, so is there any way for us to formally request its inclusion? Thanks, Alex – Alex Hertel Jan 30 '10 at 19:16
  • any news about recent API changes related to this? – Ewoks Jun 11 '12 at 09:13
  • I would like this value to be exposed it really helps in debugging BT issues to find out if it is the device or the phone. Don't have the money to spend on things like the PTS suite by Blutooth SIG, ($7500 USD) to find these things out. – JPM Jan 09 '13 at 23:59
  • A call to get the RSSI was added in API 18. See http://stackoverflow.com/a/42660278/294248 . – fadden Mar 07 '17 at 23:29