How to Get bluetooth signal strength (rssi) of connected bluetooth devices? - android

i want to get the bluetooth rssi of a another device which connected to my phone,
how can i get the bluetooth rssi?
i tried to search alot over stackoverflow/google and didnt find any answer, i found just the answer to get rssi of devices wich do not have any connection ! (Get bluetooth signal strength).
but i need the rssi of the connected devices !
can you help me please.
thanks alot

I was also looking for a solution and found this:
You can use the readRemoteRssi() function of BluetoothGatt. This will cause an asynchronous call of your BluetoothGattCallback.onReadRemoteRssi

Related

Reading Wifi Rssi

Hello I was wondering if anyone could tell me is it possible to read the wifi rssi from another android phone. I am trying to build a simple app that reads the wifi rssi and then uses this to calculate into a distance, I have looked up the WifiManager, TelephonyManager class and the NeighbouringCellInfo, I have even tried to implement a couple of tutorials to no joy. If anyone could point me in the right direction it would be much appreciated.
IMO this will be possible only with Wi-Fi hotspot enable, since this is the only way another phone can see another via Wi-Fi.
If you want to try it out see this thread that helps enabling Wi-Fi hotspot.
Android turn On/Off WiFi HotSpot programmatically
Another thing you might consider is bluetooth RSSI.
Activating bluetooth is more straightforward and can give more precise accuracy (but covers less space).

Read RSSI bluetooth value from paired device on API15 (no GATT available)

I have created a bluetooth car that is controlled using a Galaxy Tab, from which I want to be able to frequentely (1-10 times per second) read the RSSI value to be able to always stay in range of the bluetooth, and if not the car is supposted to return to the last known place where the connection was within range.
My problem however, is that I am not able to read the RSSI value when paired to the bluetooth module in my car. Reading while discovering is not a problem, but does not help me in this case.
I have been looking around but can't find an answer how to make this possible using the API I am, which is 15, and therefore GATT is out of the question. Help would be greatly appreciated!
Cheers :)

How to get bluetooth RSSI on android after connection

I'm trying to write a program that can read the signal
strength(RSSI) of a bluetooth device linked to my APP
however
Doesnt seem like android exposes anyway to get the RSSI while it is during discovery.
Is there any other way to get the signal strength of the device after the device has been
linked(not pairing)
Any help would be appreciated.

How to get bluetooth RSSI on android after discovery

I'm trying to write a program that can read the signal strength of a bluetooth device linked to my android 2.0 handset. Doesnt seem like android exposes anyway to get the RSSI unless it is during discovery. Is there any other way to get the signal strength of the device after the device has been detected? I read of a way to do it using NDK to access the underlying BlueZ API, but I dont know how to use that. Any help would be appreciated.
No. Only during discovery as a bundle extra (EXTRA_RSSI).

Android IRC Office Hours Question About Android Bluetooth RSSI

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
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

Categories

Resources