The panel is placed a std. distance away from a BLE gateway that's also based upon the CC2541 chip. The RSSI is monitored with an internal .net application. Most of the advertisers consistently display RSSI values in the -29 to -32 range on all three channels. A few, however, will display in that range for two of the channels, but in the -48 to -52 for the other channel... and it's not any one specific channel that's always the "bad" channel. And if I "spin" the panel in 90 degree increments, the same advertisers are inconsistent, so it's not related to position on the panel or orientation. I also see "good" advertisers go "bad" for awhile, then go back to "good"... this testing is taking place in an isolated test bed so interference is minimal.
Sometime, the value is not changed.
http://e2e.ti.com/support/wireless_connectivity/f/538/p/407118/1443292
- Excellent link budget (up to 96 dB), enabling long-range applications.
- Accurate digital received signal-strength indicator (RSSI)
Sensitivity -96 dBm
High/Standard Gain Mode -70 dBm (BT spec)
http://pideu.panasonic.de/pdf/168Datasheet.pdf
RSSI for distance indicator: comment from TI engineer:
http://e2e.ti.com/support/wireless_connectivity/f/538/p/311434/1086588
Unfortunately, RSSI is not a good indicator of distance or location because there are so many environmental factors that can affect the signal strength. The BT-SIG is working on some modifications to the BLE protocol that will allow for location and distance calculations; however those are based on very low-level changes to the protocol and are probably a few years away from being adopted.
You likely won't be able to see much difference in the RSSI value between 0-10 ft and the results will not be consistent. The Proximity profile defines the behavior when a device moves away from a peer device so that the connection is dropped or the path loss increases above a preset level, causing an immediate alert. It is not meant to distinguish between gradual distance changes.
Improving RSSI Readout Accuracy It is important to be aware that in a real system, the output power from the transmitter and variations in the transmission path will contributes to the RSSI inaccuracy. However, there are certain steps one can do, to improve the RSSI readout accuracy 1) Calculate an average RSSI value based on several readouts. (From TI document)
http://www.ti.com/lit/an/swra114d/swra114d.pdf
RSSI calculation for CC254x: (From https://e2e.ti.com/support/wireless_connectivity/f/538/t/140189)
You likely won't be able to see much difference in the RSSI value between 0-10 ft and the results will not be consistent. The Proximity profile defines the behavior when a device moves away from a peer device so that the connection is dropped or the path loss increases above a preset level, causing an immediate alert. It is not meant to distinguish between gradual distance changes.
Improving RSSI Readout Accuracy It is important to be aware that in a real system, the output power from the transmitter and variations in the transmission path will contributes to the RSSI inaccuracy. However, there are certain steps one can do, to improve the RSSI readout accuracy 1) Calculate an average RSSI value based on several readouts. (From TI document)
http://www.ti.com/lit/an/swra114d/swra114d.pdf
RSSI calculation for CC254x: (From https://e2e.ti.com/support/wireless_connectivity/f/538/t/140189)
After connecting to a peripheral device. I'm able to call the HCI_ReadRSSI (0x1405) command. The RSSI values that I get are ranging from 0xB7 (183) to 0xCA (202). I have set the RxGain to High using the HCIExt_SetRxGain, so the RX sensitivity is -93 dBm.
The number is signed (2's complement), so 0xB7 means -73 and 0xCA means -54. If your design differs from the reference design, you may need to compensate for differences in the balun gain, other than that, you can take the number directly as a dBm number.
When you call the HCI_ReadRSSI command, the software calculates the RSSI in dBm. The packet sniffer output, which was used in the original question, is a raw number. It is still in dB, but with a different reference. To find the dBm number, a value such as -93 must be added. The number depends on the receiver gain mode, which is taken into account when using HCI_ReadRSSI.
For raw data, should do the calculation:
Packet index: 5
Length: 48
Raw data (hex): D6 BE 89 8E 00 25 30 B2 00 FF EE CC 02 01 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 92 E2 95 3AA5
RSSI [dBm]: -36
CRC OK: 1
Length: 48
Raw data (hex): D6 BE 89 8E 00 25 30 B2 00 FF EE CC 02 01 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 92 E2 95 3AA5
RSSI [dBm]: -36
CRC OK: 1
I assume 3A is the rssi value.
Sensitivity Best (-93 dBm).
-93d + 58d = -35 --> (0 to -35) = -36
About dB & dBm (Chinese)
http://zhidao.baidu.com/question/14279833.html
About dB & dBm (Chinese)
http://zhidao.baidu.com/question/14279833.html
沒有留言:
張貼留言