About using ```hcitool``` to get bluetooth rssi - bluetooth

I use sudo hcitool rssi AA:BB:CC:DD:EE:FF to test 2 phones, but the results are 0. I also try to use python program (https://github.com/ewenchou/bluetooth-proximity), the result is also 0. I don't know where went wrong. Besides, I use bluetoothctl-scan on and can get their mac address and rssi although the value is not accuracy.
Please, give me some advice.

Related

I want to continuously obtain the Bluetooth rssi value of a device amd I use btmon to achieve this

But after I use sudo btmon | grep RSSI and sudo hcitool lescan, it shows mac address and RSSI of all the device. So what should I do to make it display only the RSSI of the device I want continuously?
I don't know if btmon can do it, if can't, which way should I use? I just want to continuously obtain the Bluetooth rssi value of a device. Please, give me some advice.

How to get iwconfig to display signal level as dbm instead of a fraction

When I run:
iwconfig wlan0 | grep -i quality
on my Raspberry Pi, with a wifi card installed, it reports back to me with:
Link Quality=99/100 Signal level=48/100 Noise level=0/100
How can I get iwconfig or some other network tool to report the signal level back to me in dBm instead of an arbitrary fraction?
It's a matter of the Network Interface Card or of the relatives Drivers.
To workaround you can use this simple formula I to do the conversion.
dbm=(fraction_of_total/2)-100
Of course is an approximation and results may vary from chipset to chipset but is how I solved.
You can alternatively find the correct Drivers if you know the wifi card is capable RSSI sampling. But that's usually not easy.

HM10 BLE 4.0 Chip limit for number of discovered nearby devices

I am working with HM10 BLE chip with Arduino. I am able to establish serial communication between the two. In the manufacturer manual from jnhuamao.cn, it says that for AT+DISC? , "...Before V535 max results is 6, Since V535 not limit"
AT+DISC? is the AT command for scanning nearby BLE devices. The firmware for my chips are V539 and V540.
However, I am only able only received maximum 6 devices as scan result in the serial monitor. And they are different everytime. (I have 8 chips powered up nearby). Has anyone ran into the same problem? What could be the problem? What might be the solutions?
THANKS A LOT
the number of discoverable devices for hm-10 is 6 devices in one go.
its in their datasheet.
Even im facing a similar issue.
Im looking for something that will give me upto 20 devices in the scann results.

USB-Serial communication giving strange output

I'm trying to get data from a mercury analyzer (Seefelder-Messtechnik Hg Analyzer 3000) that gives output to a 9-pin R232 serial port to my OSX 10.10 laptop.
I've followed the steps described here to install the PL-2303 driver:
http://pbxbook.com/other/mac-tty.html
The device manual (http://www.seefelder-messtechnik.com/V71-3-02-21e.pdf) lists the communication protocol as "9600 Baud, 8 data bit, 1 stop bit, no log,
no parities".
I attempt to read from the device by using the 'screen' command:
screen /dev/tty.usbserial 9600
The result is a string of seemingly non-sensical characters that print to the screen in a regular interval:
�8b4����b��8b48bs��8G�8b�8���8������8����< 8�8��b��KW��\b����8b����b� �b�b����KW�K �8b��\G�� �<���8�8b�"��΁�[؁��؉���bG�3�ˁ�G��\K��[W�pb�8��΁8ʱ�\pa���ʁ�c t��8�h¡�38b�8�q�؁����\�8���bS�8b8�8�q���X��8��<��£8���2�8�����ؖ�ؖ�ؖ�8bS��\�܉�ؖ����[S�8��s���fq�8�����������8fq����������S�܊��b���b�؉����\���S��K���ݎ����S��b��b��S����S�\������KS��S�؊��\S�1S�\b�S�؉�\�ذ����KS�\����S����bS�؉�����1S�؊��[؂����ز������؉\�؂��ز��\����i���$\�$���\��8���$��\�\����܂�زXk�B��7��\k�\X�<��8Xkz��Yj��L�������H�\���]j�،k:��Yj�؈��
I've also tried using 'minicom' rather than screen, and get a different ("?]???ܰ??Yk??2"), but also non-sensical result. I saw that there was another SO query similar to mine that remains unsolved: weird characters displayed during serial communication OSX
Any tips? It looks to me that I'm not interpreting the output correctly, but I don't know what to try next.
The solution was to read from the machine at a higher baud rate (~57600), despite what the manual and online reference said. Reading at 57600 baud made the result plain-text and usable. Thanks for your ideas!
I've followed the steps described here to install the PL-2303 driver
I've also had occasional electrical ground problems with Prolific USB-RS232 adapters. Problem would manifest as garbled data that looked similar to a baud rate issue or what you posted.
You can check if it's a ground issue by measuring for continuity between the ground pin (pin #5) on the DE-9 (aka DB-9) side of the Prolific adapter and the ground pin of the USB side (pin #4, "far left", of the A connector). You'll probably measure infinite resistance with a multimeter. Try the same with a FTDI USB-RS232 adapter, and instead I get a dead short between the ground pins as expected.
Be sure to plug the instrument's and PC's power supplies into the same power strip.
As a last resort try grounding the instrument's chassis/case with the PC using copper wire

Motorola XT910 reads rssi equal to 0 from bluetooth low energy tags ticc2540,ticc2541,blue radios tags

I develop an Android application running on Motorola RAZR XT910 with OS version 4.0.4.
This application uses the Motorola_ICS_R2_sdkaddon_100 BluetoothGattService.jar and BluetoothGatt.jar libraries and communicates with Bluetooth
Low Energy Sensor Tags (TI CC2540,TI CC2541,Blue Radios Sensor Tags).
On Discovery procedure I always read the rssi value equal to 0 . I use the following code
to read the rssi value on receiving the Intent BluetoothDevice.ACTION_FOUND:
short rssi = intent.getShortExtra(BluetoothDevice.EXTRA_RSSI,(short) 0);
Also for non Bluetooth low energy devices,the rssi value i read is ok (not equal to 0).
Can anyone help me??
thanks
I found a similar issue on the TI discussion site for using the Vender Specific query for RSSI. It seems that it works for Classic BT but returns an error code of 2 for BLE.
http://e2e.ti.com/support/low_power_rf/f/660/t/289391.aspx
It might be a fundamental limit that you can't get the value. In your case, the getShortExtra might not return the error code (2) and just return a 0 as RSSI.

Resources