2017-03-09 10 views
0

지금 안드로이드에 중점을두고 있지만,이 질문에 대한 답변은 모든 운영 체제에 적용됩니다. 데이터를 얻기 위해 여러 기능을 사용하게 될 것입니다.블루투스 저에너지 - 양쪽에서 RSSI를 얻으시겠습니까?

일단 BLE 연결을 설정하면 BluetoothGatt.readRemoteRssi()에서 "연결된 원격 장치의 RSSI 읽기"를 수행 할 수 있습니다.

첫 번째 질문 :이 기능을 올바르게 이해하고 있으며, 내 안드로이드 장치가 수신하고있는 신호의 강도 (원격 BLE 장치에서 전송 된)를 반환하고 있습니까? 내 이름을 그냥 readRssi()라고해서는 안되는 함수 이름이라고 생각해? readRemoteRssi()는 어딘가에 readLocalRssi()라는 보조 함수가 있다고 생각하게합니다.

두 번째 질문 : 올바르게 함수를 이해한다고 가정하면 블루투스에 내장되어있는 "원격 BLE 장치가 RSSI를보고 무엇입니까?"라는 질문을 할 수 있습니다. 즉, 안드로이드 장치가 전송하는 신호 중 원격 BLE 장치에 얼마나 많은 신호가 도달 했습니까?

분명히 내가 아주 잘 자신을 설명 아니에요, 내가 가진 대답을 기반으로 LATER

덧붙였다. 내가 다시 시도하자.

원격 BLE 장치가 특정 전원으로 전송 중이고 해당 전파가 모든 방향으로 나가고 일부 파도가 내 모바일 장치에 수신됩니다. 내 휴대 기기는 그 파도가 얼마나 강한지를 측정하며, 이는 RSSI로보고됩니다. RSSI는 "Received Signal Strength Indicator (수신 된 신호 강도 표시기)"의 약자이며 수신을 수행하는 로컬 모바일 장치이므로 "원격"기능의 이름을 지정하는 것이 이상하게 보입니다. 물론 RSSI는 원격 송신기에서 오는 것을 측정합니다. 그렇지 않으면 매우 유용하지 않습니다.

마찬가지로 휴대 기기는 일정한 전력으로 송신하고 있으며, 그 전파는 모든 방향으로 나가고 일부 전파는 원격 BLE 장치에서 수신됩니다. 원격 BLE 장치는 그 파도의 강도를 측정합니다. 이는 그의 RSSI입니다. 두 번째 질문은 블루투스 표준 (예 : "배터리 수준"과 같은 사전 정의 된 특성)에 모바일 장치가 원격 BLE 장치를 쿼리하고 "이봐, 얼마나 신호를 받고 있는지"묻는 것이 있는지 묻는 것입니다.

+0

rssi는 원격 장치에 연결될 때까지 어떻게 중요합니까? 당신의 유스 케이스는 무엇입니까? – 7383

+0

사용자에게 신호 강도를 표시하여 원격 장치에서 너무 멀리 떨어지기 시작하는지 알 수 있도록하고 싶습니다. 나는 패킷이 떨어지는 것을보고 시작하기 전에 신호 강도가 나에게 오래 전부터 신호를 줄 것이라고 생각하고있다. –

답변

-1

실제로 rssi는 원격 장치에서 수신 한 광고 패킷을 기반으로 칩을 기준으로 계산됩니다. 우리는 원격 장치에서 rssi 값을 직접 가져 오지 않습니다.

I think it's the function name that's throwing me off, shouldn't the name just be readRssi()? 

아니요. 우리는 실제로 원격 장치의 rssi를 읽습니다.

readRemoteRssi() makes me think there's a companion function readLocalRssi() somewhere. 

아니요 rssi가 현재 장치가 연결된 다른 쪽 끝에서 결정되는 방법은 없습니다.

assuming I am understanding the function correctly, is there anything built into Bluetooth that lets me ask "what is the remote BLE device seeing for RSSI?" In other words, of the signal that the Android device is transmitting, how much of that is reaching the remote BLE device? 

rssi입니다. 총 패킷에 대해 수신 된 광고 패킷 수에 따라 계산됩니다.

참고 : 내 대답 중 일부는 내 경험에 근거한 나의 추측입니다.

+0

이유를 구체적으로 기재하십시오. – 7383

+0

점프하여 도움을 주셔서 감사합니다.하지만 추측이 아닌 최종 응답을 위해 StackOverflow를 사용합니다. –

+0

아무런 문제가 없습니다. 확실한 답이 아닌 포인터에 오버플로가 쌓이게됩니다. 우리 각자는 우리 자신의 사고 과정을 가지고 있습니다. 이 답변이 내 추측 작업이라는 것을 언급하지 않았다면 -1을 얻지 못했을 것입니다. 글쎄 나는 여기에 포인트를 잃어 신경 쓰지 않는다 그러나 나는 내 대답의 대부분이 정확하고 그것을 연구하는 데 최소한의 도움이 될 것이라고 믿는다. – 7383