GNU/Linux >> Linux の 問題 >  >> Linux

BlueZ on i.MX25 :RFCOMM ソケットに接続できません:操作が進行中です

ターゲット デバイスが i.MX25 ボードからの認証を要求していたことが判明しました。
通常、PIN コードの処理は bluetooth-agent を使用して行われます。
しかし、このエージェントは実際にはボードにインストールされていなかったので (インストールされていると思っていました...)、要求された PIN コードを手動で入力する必要がありました。

これが私がやった方法です:

  • 編集 /etc/bluetooth/rfcomm.conf 、以前と同じように
  • ローカル bt アダプタを「起動」:hciconfig 0 up
  • ページと照会のスキャンを有効にする:hciconfig 0 piscan (これについてはよくわかりません)
  • 簡易ペアリングを無効にする:hciconfig 0 sspmode 0
  • 編集 (または作成) /usr/var/lib/bluetooth/00:15:83:44:39:E2 /ピンコード
  • 「pincodes」ファイルに次の行を追加します (引用符なし):"00:07:80:5A:48:93 045678 "
  • Bluetooth デーモンを手動で開始します:bluetoothd

00:15:83:44:39:E2 ローカル デバイスの Bluetooth アドレスです。
00:07:80:5A:48:93 ターゲット デバイスの Bluetooth アドレスです。
045678 は対象デバイスの PIN コードです。

l2ping の動作:

# l2ping 00:07:80:5A:48:93
Ping: 00:07:80:5A:48:93 from 00:15:83:44:39:E2 (data size 44) ...
4 bytes from 00:07:80:5A:48:93 id 0 time 13.14ms
4 bytes from 00:07:80:5A:48:93 id 1 time 26.34ms

rfcomm 接続の動作:

# rfcomm connect 0
Connected /dev/rfcomm0 to 00:07:80:5A:48:93 on channel 1
Press CTRL-C for hangup

2015 年 6 月 15 日更新

今日、前述のように、そのターゲット デバイスで再度 l2ping を試みました。何らかの理由で、「許可が拒否されました」というエラーが表示されます。
これは私が回避策として考え出したものです:

  • 保存 /usr/var/lib/bluetooth/00:15:83:44:39:E2 /ピンコード 他の場所
  • /usr/var/lib/bluetooth/00:15:83:44:39:E2 の下のすべてを削除します
  • 再起動
  • 保存したPINコードを入力してください /usr/var/lib/bluetooth/00:15:83:44:39:E2 の下にファイルを戻します
  • 前述のように ping を再試行します

Linux
  1. Windows XP が CentOS 7.x 上の Samba に接続できない

  2. MySQL サーバー エラー 111 に接続できません

  3. エラー:「ソケット '/var/run/mysqld/mysqld.sock' (2) を介してローカル MySQL サーバーに接続できません」 -- /var/run/mysqld/mysqld.sock がありません

  1. Ubuntu 12.04.5 LTS でソケット '/var/run/mysqld/mysqld.sock' を介してローカル MySQL サーバーに接続できない

  2. Docker コマンドが Docker デーモンに接続できない

  3. Virtualbox 4.1 上の Oracle Linux 6.1 ゲストがネットワークに接続できない

  1. Linux シェルから Windows マシンに接続できますか?

  2. 「同期」操作の進行状況を見ることはできますか?

  3. ホスト名の代わりに UNIX ソケットに SSH 接続する