2016-01-10 16 views
8

私はRaspbianカーネル4.1.15とBluezバージョン5.23を実行しているRaspberry Pi 2を持っています。Bluetoothctl設定のパスキー

ユーザーの介入なしに接続を受け入れる必要があるラップベリーにデバイス(Android搭載電話など)を接続できるようにしたいと考えています。私は、デバイスが検出されるよう、他のデバイスとペアリングが、私はブルートゥース・エージェント

bluetooth-agent PIN 

Bluetooth対応のエージェントと同じようにピンを設定する方法を発見していないことができbluetoothctで

はもう利用できません私のシステムでは、私はbluetoothctlでそれを行うことができる方法はありますか?

$bluetoothctl 
[bluetooth]# power on 
Changing power on succeeded 
[bluetooth]# discoverable on 
Changing discoverable on succeeded 
[bluetooth]# pairable on 
Changing pairable on succeeded 
[bluetooth]# agent NoInputNoOutput 
Agent registered 
[bluetooth]# default-agent 
Default agent request successful 

その後、私は携帯電話から自分の携帯電話とラズベリーをペア:ここ

+0

なぜPINを設定しますか?ペアリング中にピンが自動生成されるはずです。だから、単に 'bluetoothctl'を起動することができます。次に、 'agent on'と入力します。次に、どちらかの端からペアリングを開始します。ピンは、(Bluetooth仕様に従って)両端で自動生成/ネゴシエーションする必要があります。ピンが必要な場合、 'bluetoothctl'は正しいピンプロンプトを表示します。何らかの理由で固定ピンが必要な場合は、それが必要な理由を説明してください。そうすることが理にかなっている場合は、それを提供することができます。 – kaylum

+1

@kaylumご返信ありがとうございます。 PINを設定する必要があります。なぜなら、人間が接続されていないので、ラズベリーにピンを入力することができないからです。固定ピンを入力する電話機や他のデバイスからペアリングを開始したいと考えています。だから私はラズベリーのピンを設定する必要があります。 – Subert

+0

これはエージェントのIO機能(これはやはりBluetooth仕様で定義されています)によって処理されます。したがって、あなたの場合は 'agent NoInputNoOutput'を実行する必要があります。これにより、ユーザーの操作が不要な「ジャストワークス」のペア設定が行われます。だから私はまだ固定ピンが必要だとは思わない(固定ピンはレガシーペアリング用で、新しいペアリングモードよりも安全性は低い)。 – kaylum

答えて

10

はkaylumのおかげでどのような作品です。

[NEW] Device XX:XX:XX:XX:XX:XX nameofthedevice 
[CHG] Device XX:XX:XX:XX:XX:XX UUIDS: 
     --UUIDS-- 
[CHG] Device XX:XX:XX:XX:XX:XX Paired: yes 
+2

私は同じ問題があります。 「匿名」接続を避けるため、ラズベリー側に固定ピンコードを設定したいと思います。この答えはそれを指摘していないのですか? –

+0

私はまったく同じ手順を実行しましたが、私のすべての電話は私にPINを入力するように依頼し、その後bluetoothctlは同じPINを入力するよう依頼しますか?エージェントNoInputNoOutputは動作しないか、何か不足していますか? – Thomas

2

私はちょうど同じ問題がありました。 agentの後にタブを2回押すと、使用可能なエージェントのリストが表示されます。 KeyboardOnlyは通知なしで正常に動作します:

[bluetooth]# agent on   # accidentally used wrong agent 
Agent registered 
[bluetooth]# agent 
DisplayOnly  DisplayYesNo  KeyboardDisplay KeyboardOnly  NoInputNoOutput off    on    
[bluetooth]# agent KeyboardOnly 
Agent is already registered # can't use two agents at one 
[bluetooth]# agent off   # unregister agent 
Agent unregistered 
[bluetooth]# agent KeyboardOnly # register proper agent 
Agent registered 
[bluetooth]# pair XX:XX:XX:04:F5:7C 
Attempting to pair with XX:XX:XX:04:F5:7C 
[CHG] Device XX:XX:XX:04:F5:7C Connected: yes 
Request passkey 
[agent] Enter passkey (number in 0-999999): 722504 
[MoarBacon]# pair XX:XX:XX:04:F5:7C 
Attempting to pair with XX:XX:XX:04:F5:7C 
[CHG] Device XX:XX:XX:04:F5:7C Paired: yes 
Pairing successful 
+0

良いキャッチ。 +1キーボードのみのエージェント。 – ChillarAnand

関連する問題