2017-12-28 41 views
0

나는 scan on을 통해 스캐닝되는 모든 것에 대한 정보를 얻으려고 파이썬에서 bluetoothctl을 사용하고 싶지만 올바르게 수행 할 수있는 코드를 얻을 수 없습니다. 그들은 발견 할 수있는 장치의 이름과 주소가있는 목록을 보여줍니다.블루투스에서 파이썬으로 스캔 정보를 얻는 방법은 무엇입니까? RPi3

나는 현재 sudo bluetoothctl와 BlueZ 5.47를 사용하고 있는데 터미널 창, 내가 파이썬에서이 출력을 저장할에서 BLE 장치의 I scan on, 어떻게 내가 파이썬에서이 일을 할 수있을 때 나는 센서로부터 데이터를 가져 오는거야?

[bluetooth]# scan on 
Discovery started 
[CHG] Controller B8:27:EB:47:AE:DD Discovering: yes 
[CHG] Device 04:B3:EC:00:1E:65 RSSI: -76 
[CHG] Device 04:B3:EC:00:1E:65 UUIDs: 0000fbb0-0000-1000-8000-00805f9b34fb 
[CHG] Device 04:B3:EC:00:1E:65 ManufacturerData Key: 0x00ac 
[CHG] Device 04:B3:EC:00:1E:65 ManufacturerData Value: 
    b2 00 52 01 12 17 0c 15 0e 65 1e 00 ec b3 04  ..R......e..... 
[CHG] Device 04:B3:EC:00:1E:65 AdvertisingFlags: 
    06            .    
[CHG] Device 04:B3:EC:00:1E:65 ManufacturerData Key: 0x00ac 
[CHG] Device 04:B3:EC:00:1E:65 ManufacturerData Value: 
    b2 2e 52 01 12 45 0c 15 0e 65 1e 00 ec b3 04  ..R..E...e..... 

나는 PyBluez가 도움이 될 수 있다고보고 있지만, 단지 scan on 동안 나에게 이름과 사용 가능한 BLE 장치의 정보를 줄 것 것으로 보인다. 도움이 될만한 다른 도구를 알고 있습니까? 감사!

답변

0

저는 PyBluez에 익숙하지 않습니다. 다만 bluetoothctl 출력을 저장하고 싶다면 Python 3 check_output 같은 기능을 사용할 수 있습니다.

from subprocess import check_output 

ouput = check_output(['bluetoothctl']) 

그런 다음 구문 분석하여 원하는 방식으로 사용할 수 있습니다.