2016-09-13 2 views
0

내가하고 싶은이 프로젝트에 대해 많은 연구를 해왔으며, 아마 모든 게시물 (블루 잭, RFCOMM, 비콘 등)을 읽고 내 머리는 회전하고있다.페어링 된 블루투스 근접 스캔

Arduino (블루투스 파일)를 사용하여 집에서 블루투스를 스캔하고 내 전화 또는 가족 중 전화가 근접한 곳에있을 때 시스템을 만들고 싶습니다. 이것이 MAC 스캐너이든 단순히 친숙한 이름을 얻는 지 여부. 나는 또한 RSSI를 얻고 싶다. 정확한 거리 측정을 할 필요는 없지만 대략 얼마나 가까운 거리인지 알고 싶습니다. 아무도이 접근 방식에 대한 제안이 있습니까? 나는 휴대 전화에 앱을 만들어서 신호로 만들고 이것이 옵션일지도 모른다는 것을 안다. 그러나 안드로이드에 관심이있다. 최소한 마시멜로 5.0이되어야한다. JB 나 KK처럼 지원보다 조금 더 낮추고 싶습니다. 따라서 MAC이나 이름을 찾는 간단한 스캔이 있어야하는 것처럼 보입니다. 그것이 내가 정말로 필요로하는 전부입니다.

그렇다면 이미 가지고있는 주요 질문은 이미 검색된 블루투스 장치를 검색하여 볼 수 있습니까? 블루투스 헤드셋처럼? 나는 블루투스가 지점을 이해하지만 여러 연결을 허용합니까 또는 적어도 브로드 캐스트 Mac 또는 이름을 때 페어링?

이 질문은 어떤 일반적인 제안과 함께 나를 크게 도와 줄 것입니다!

감사합니다.

답변

1

청취자의 Bluetooth 검색에는 Bluetooth 수신 청취 패킷 (RX) 및 질의 응답 (TX) 청취가 포함됩니다.이 작업을 계속하면 배터리가 고갈됩니다. 따라서 대부분의 장치 (핸드폰 및 헤드셋 포함)에는 언제 발견하고 연결할 수 있는지에 대한 정책이 있습니다. 특히 헤드셋은 하나의 장치가 연결될 때까지 지시되고 연결될 때만 검색 가능합니다 (헤드셋이 동시에 여러 전화에 연결할 수있는 기능을 갖춘 경우는 예외 일 수 있음). 대부분의 휴대 전화는 설정 화면 (Android, IOS 및 Windows 폰)에있는 경우에만 검색 가능하지만 헤드셋 케이스와 달리 연결 가능합니다.

MobilePhone의 한 옵션은 한 번 페어링 한 후에 연결할 수 있는지 여부를 확인하는 것입니다 (예를 들어 원격 장치에서 서비스 검색을 시도하여 서비스 속성을 반환하는지 여부를 내부적으로 확인합니다 간접적으로 장치의 존재를 보장합니다).

이미 페어링 된 휴대 전화와 관련이 있다면 인증 및 암호화를 사용하여 상위 계층 연결 (예 : SPP)을 설정해야 할 수 있습니다. 이렇게하면 이미 쌍을 이루고 있는지 확인하기 위해 장치간에 양방향 검사가 이루어집니다. 다른 덜 안전한 옵션은 전화에 의존하는 것입니다 (Android 및 IOS 폰은 일반적으로 암호화/페어링없이 상위 계층 연결을 허용하지 않음). 전화기에 대한 SPP 연결을 설정하십시오.

다른 옵션은 Bluetooth-LowEnergy를 사용하는 것입니다. 그러나 BT의 보안은 BLE보다 BTv4.1까지 우수했으며 BTv4.2에서도 동일했습니다.

+0

자세한 답변을 보내 주셔서 감사합니다. 이것은 나를 많이 이해하는 데 도움이됩니다. 페어링과 보안에 대해 걱정하지 않는다면 어떨까요? BLE가 현재 Android 및 iOS 기기에 포함되어 있는지 조사해야하지만 BLE에도 문제가 없습니다. 기본적으로, BLE로 배터리를 사용하지 않고 계속 내 arduino를 사용하고 있다면, 어떻게해야하는지 파악해야하는 끊임없이 스캔 작업을 수행하면 내 전화가 블루투스를 통해 범위 내에 있는지 감지 할 수 있습니까? 범위 내에서 Wi-Fi의 SSID를 볼 때와 비슷합니다. 나는 그들이 일반적으로 발견 할 수 없다는 귀하의 의견을 이해합니다. BLE로 변경됩니까? –

+0

나는 안드로이드와 IOS에서, 전화 설정이 블루투스 설정 화면에 있어야한다는 것을 알고 있거나 LE 스캐닝을 요청하는 전화에서 실행중인 애플리케이션이 위의 두 가지 경우에 전화가 스캐너에서 광고를 감지 할 수 있습니다. 전화가 스캐너에서 광고를 검색 할 수 없습니다. –

+0

링크 및 암호화 키의 강도는 매우 좋습니다. BT4.2에서는 SHA-256 (깨진 SHA-256의 알려진 인스턴스가 없음)이 키를 생성하는 데 사용되고 AES 128이 암호화에 사용됩니다. Diffie-Hellman 키 교환은 안전하지 않은 링크로 키를 안전하게 생성하는 데 사용됩니다. 보안 관점에서 BT4.1을 사용하려는 경우 BT classic이 더 나은 대안입니다. BT4.2를 사용하려고한다면 클래식과 로우 에너지 모두 똑같이 안전합니다. –

관련 문제