2014-08-31 165 views
1

我正在嘗試創建樹莓藍牙外設,我使用Raspbian和Bluez v 5.11,我已經嘗試了很多工作,但我找不到方法要解決這個問題,我使用的是USB藍牙適配器Inatek BTA-CSR4B5,如果我這樣做:藍牙和Bleno樹莓藍牙外設

hciconfig 

我有:

hci0: Type: BR/EDR Bus: USB 
    BD Address: 00:1A:7D:DA:71:13 ACL MTU: 310:10 SCO MTU: 64:8 
    UP RUNNING 
    RX bytes:5050 acl:79 sco:0 events:493 errors:0 
    TX bytes:8994 acl:78 sco:0 commands:395 errors:0 

因此該設備似乎是可以正常使用,如果我試着讓它成爲一個iBeacon,例如,做這個腳本:

ibeacon.conf:

export BLUETOOTH_DEVICE=hci0 
export UUID="e2 c5 6d b5 df fb 48 d2 b0 60 d0 f5 a7 10 96 e0" 
export MAJOR="00 16" 
export MINOR="00 08" 
export POWER="c5" 

ibeacon_start

#!/bin/sh 
. ./ibeacon.conf 
echo "Launching virtual iBeacon..." 
sudo hciconfig $BLUETOOTH_DEVICE up 
sudo hciconfig $BLUETOOTH_DEVICE noleadv 
sudo hciconfig $BLUETOOTH_DEVICE leadv 0 
sudo hcitool -i hci0 cmd 0x08 0x0008 1e 02 01 1a 1a ff 4c 00 02 15 $UUID $MAJOR $MINOR $POWER 00 
echo "Complete" 

它的工作原理。

但我想做出一個藍牙外設,並做到這一點我使用這個庫:

https://github.com/sandeepmistry/bleno

當我開始在bleno項目測試代碼,我可以找到該服務,但當我試圖用iOS設備連接到外設時,我得到一個定時輸出連接。

我做了很多測試,我已經找到了問題的一半的解決方案,如果我開始與bleno的服務,而且服務上,在另一端我這樣做:

sudo hciconfig hci0 up 
sudo hciconfig hci0 noleadv 
sudo hciconfig hci0 leadv 0 

,當我嘗試連接到外圍設備的工作,然後當我斷開外圍和我嘗試重新連接,不工作了,並且使作品再次我要再次做到這一點:

sudo hciconfig hci0 up 
sudo hciconfig hci0 noleadv 
sudo hciconfig hci0 leadv 0 

所以我的問題是,我怎麼能解決我的問題?那麼避免每次都做上面的命令,並且做一個總是接受連接的藍牙外設?

回答

1

您是否試過hciconfig hci0 sspmode 1?