Bluetooth

移動先: 案内, 検索

Bluetooth と関連トピック

Scribus48.png この記事はまだ書きかけ(stub)の状態です!
この記事には加筆が求められています。もしあなたが加筆できるようならば、openSUSE 記事スタイルガイドに従って加筆をお願いします。また他の加筆が必要な記事の一覧もご参照ください。

openSUSE 11.1

次の情報はバグレポート 461369 で修正される問題です。[1]. "hcitool cc <bt addr>" が "Can't connect: Input/output error" とリポートし、"bluetoothd -nd" が d-bus に接続できないとリポートします。これは bluetooth カーネルドライバが正しく働かないことによる問題です。解決方法はルートユーザで "modprobe btusb reset=1" とすることです。その後、 /etc/modprobe.conf.local ファイルに次の行:

options btusb reset=1

を(再びルートユーザで)加えてください。再起動後に、Bluetooth が機能するようになります。

もし 11.1 上の KDE で bluetooth フロントエンドに問題があるようであれば、gnome-bluetooth と bluez-gnome をインストールして、bluetooth-applet を起動してみてください。これでも動かないようであれば、以下の手順を試してみてください。または 10.3 を入れなおしてみてください。

手っ取り早い方法

もし bluetooth が作動しているのに、KDE/Gnome アプリケーションが作動しない場合は、少なくともこれだけは試してみてください(ほとんどはこの場合です)。

       デバイスを検出可能モードにする
       # hcitool scan
       Scanning ...
       XX:XX:XX:XX:XX:XX       Microsoft Bluetooth Notebook Mouse 5000
       # hidd --connect XX:XX:XX:XX:XX:XX

スリープモードになるまでは、マウスやデバイスが作動するはずです。

11.1 の rpm が hidd がどこにあるかを探す際のみに起こる問題です。SuSE forum の投稿 [2] によると、いくつか前のバージョンで hidd が削除され、そのままになっているようです。

HOWTO

Bluez.org Wiki からリンクされている HOWTO のほとんどは、ここに余分なドキュメントを書かなくても良いほどに、openSUSE の現リリースにかなりよく適用できます。これらを読んだほうが良いと思います。

Bluetooth オーディオ

Bluetooth オーディオ はまだ、期待通りにスムーズには動きません。しかし、動かすための HOWTO はここから読むことができます。

Bluetooth を有効に/無効にする

ラップトップで電力消費を抑えたり bluetooth hack から防御するために、bluetooth モジュールは必要なときだけ利用可能にしておくべきです。スイッチをオンにする/オフにするには、Fnキーの組み合わせ(例えば Fn + F5 ですが、ラップトップのモデルによります)を使うと良いでしょう。

入力デバイス

  • 注記: 11.1 では KDE input wizard が正しく動作しません。現時点ではbluetooth-applet (bluez-gnome パッケージ) をご利用ください。 この方法は動作しない場合があります。 OpenSuSE 10.3 の Bluetooth は信頼性がありますが、11.1 にはありません。
  • 入力デバイスと接続するには kinputwizard を参照してください。この方法は動作しない場合があります。
  • より良い情報は Bluez Wiki Input Devices HOWTO Page にあります。このページは DBus ユーティリティと python プログラミングの知識を前提としています。

RFCOMM デバイス(またはダイアルアップ)

Gnome

hidd コマンドが無効となった 10.3 ではバグが存在し、bluetooth デバイスをペアリングすることができません。bugzilla [[3]] をご覧ください。 これは 10.2 の時には無かった問題です。動くようにするには、bluetooth を YaST から 有効にしないでください。KDE の kinputwizard だけでなく、gnome の bluetooth パッケージも再インストールしてください。コントロールパネルから gnome のツールを起動して、デバイスをペアリングするのに kinputwizard を使用してください。一度ペアリングしてしまえば、gnome bluetooth applet を通常どおり使うことができます。

10.3 の場合は、GNOME:Community から bluez-gnome の更新されたパッケージを導入することができます。これでデバイスのペアリングと接続ができるようになります。obex を提供しているデバイスをブラウズするためには、gnome-vfs-obexftp をインストールしてください。

Gnome でデバイスをペアリング

bluetooth デバイスのペアリングは対話型手続きです。ここでは bluetooth コントローラと bluetooth デバイス間の手続きについて記します。

標準的な手続きは次のようになります。

  1. コントローラが利用可能なデバイスをスキャンする
  2. ペアリングするデバイスを選択する
  3. コントローラとデバイスとで PIN コードを交換する

もしデバイスに入力機能/出力機能がある場合は、PIN コードをタイプしてください。bluetooth コントローラとユーザとの通信は、dbus と gnome の bluetooth-applet とを通じて行われます。

もしデバイスに入力機能/出力機能がない場合は、PINコードのデフォルト値である 0000 が使われている場合と、(悪い場合)デフォルト値ではない PIN コードの固定値が使われている場合とがあります。

Bluetooth デバイスの種類を識別する機能は提供されなければなりません。デフォルトの(またはデフォルトではない固定値の) PIN コードが送られるか、gnome の bluetooth-applet を通じて PIN コードの入力を求められるかで識別されます。

トラブルシューティング

システムが USB の Bluetooth キーボードやマウスを HID モードで認識しています。どうすれば HCI モードに切り替えられますか?

Blueooth キーボードやマウスには、プロプライエタリな USB Bluetoooth ドングルが同梱されていて、コンピュータから見た場合は、通常の USB キーボードやマウスと同じように動きます。システムブート時は、USB ドングルは "Human interface device" (HID) モードで動作しています。このことによって、Blueooth キーボードやマウスを BIOS からでも使うことができます。システムブート後、Bluetooth サブシステムが使用可能状態になった時に、USB ドングル "Host Controller Interface" (HCI) モードへと切り替えることができます。USB ドングルは Bluetooth コントローラとして動作し、キーボードやマウスは Bluetooth デバイスとしてシステムに接続されます。ユーティリティ hid2hci はこの全体の流れをカバーしますが、同梱されたデバイスの組み合わせでのみ動作します(そう報告されています。私自身は見ていません。)。一般的には、Bluetooth キーボードやマウスは、プロプライエタリな USB Bluetoooth ドングルと供に HID モードで使用されるか、(ほとんどのノートPCの場合)副次的な入力デバイスとして Bluetooth HCI コントローラから使用されるか、どちらかでしょう。

どうすれば Bluetooth のプロトコルを分析できますか?

Bluetooth のプロトコルを分析したい場合には、hcidump や wireshark を使うことができます。例えば hcitool scan コマンドに応答する Bluetooth デバイスを見るには、次のようにしましょう:

  1. Bluetooth デバイスをペアリングモードにしておきます
  2. ルートユーザで hcidump -w test を実行します
  3. 一般ユーザで hcitool scan を実行し、コマンドが完了するまで待ちます
  4. Ctrl-C で hcidump -w test を止めることができます
  5. wireshark を起動し、テストファイルを開きます

マウスが動きません

マウスを「ペアリングモード」にしてみましょう。Bluetooth デバイスをペアリングモードにするとはどういう意味であるかは:

『2 台の Bluetooth 対応デバイス間で新しい接続を確立するプロセス。このプロセス中にリンク キーが交換されます (接続の確立がリクエストされる前、または接続フェーズ時)。』

と、[1] で説明されています。あるデバイスを「ペアリングモード」にする方法は、きっとデバイスの取扱説明書に書かれています。マウスをペアリングモードにするのにヘルプが必要であれば、マウスの型番にできれば取扱説明書を添付して送ってきてください。

この問題を解決するため、マウスが検出可能かどうかを確かめなければなりません。次の情報が必要となります。

  1. # hciconfig -a の実行結果を確認してください(アダプタが動作していることを確認できます)
  2. マウスをペアリングモードにしましょう(できなければ、マウスは検出可能にはなりません)
  3. # hcitool scan の実行結果を確認してください(アダプタがマウスを検出しているかどうかを確認するためです)

ステップ 3. の実行結果の中にマウスの BT_ADDR(Bluetoothデバイスのアドレス)がリストされているはずです。リストされていなければ、ハードウェアの問題であるかを切り分けるために、別のマウスで試してみてください。

[1] http://japanese.bluetooth.com/Bluetooth/Technology/Glossary/Default.htm