無線LANとBluetoothの同時利用が可能だった。

tmx2006-02-18

「ぶるじょわまっぷ」のサポート掲示板の「No.72」kazooさんの発見に端を発した「実はM1000無線LANBluetoothの同時利用が可能」の件ですが、急速に「WiFi Bluetooth On-Offソフト」を求める機運が高まっているようですので、ちょっと調べてみました。
まず「ぶるじょわまっぷ」内には“CQBTUISelectDialog"という、UIQ2.0以降でサポートされているBluetoothバイス選択ダイアログを呼び出すときに使うコードが含まれています。どうやらこれが呼び出されたときに、OSの挙動としてその時の状態にかかわらず、Bluetooth機能を有効化するようです。つまり、それ以前のBluetoothのON/OFF、無線LANの接続/非接続の状態に依存することなく、Bluetoothが使えるようにしてくれるわけです。
そこで試しに次のような操作をやってみました。


まずはBluetoothオフ→ぶるじょわまっぷで「Select device」→GPS(BT-338)接続
この状態だと、画面最下行のBluetoothマークが緑になって、明らかにBluetooth接続が確立していることが確認できます。ここでさらに別のBluetoothバイスである、ヘッドセット(BT-800)を持ってきて、電源をONしてみるとのですが、一瞬「Bluetooth接続」と出るものの、直後に「Bluetooth切断」と表示されて、接続中のGPS以外のデバイス(OSが本来標準でサポートしているもの)は利用できないようです。
ちなみに、「Select device」におけるBluetoothバイスのフィルタリングは、CQBTUISelectDialog::EQBTDeviceFilterAllで全デバイスを表示する設定になっているにもかかわらず、ダイアログ中にヘッドセット(BT-800)が表示されることはありません。
以上の結果から、次のことが言えそうです。

  • 無線LAN接続状態で、Bluetoothバイスを作るアプリは作成可能である(実例は「ぶるじょわまっぷ」)。
  • 無線LAN接続状態で、ヘッドセット(OSが本来標準でサポートしているBluetoothバイス)を利用することは出来ない、もしくは実現が困難。

そんなわけでして、任意のタイミングでBluetoothのON/OFF、無線LANの接続/非接続を制御する「WiFi Bluetooth On-Offソフト」を作るのは、ちょっと難しいかも、というお話でした。


あと、オマケ情報として「Desktop Suite」をBluetoothオフ状態で「接続」ボタンを押すと、Bluetoothを有効にするかを尋ねるダイアログが出て、「はい」を選択すると一時的にBluetoothを有効化してくれます(「切断」時にはまたBluetoothオフ状態に戻る)。この時にヘッドセット(BT-800)の電源をONにした時の挙動が、前述の「ぶるじょわまっぷ」での実験同様、一瞬「Bluetooth接続」と出るものの、直後に「Bluetooth切断」と表示されて、ヘッドセットが利用できません。また、無線LAN接続中に「Desktop Suite」で「接続」も試してましたが、これは残念ながら(?)無線LAN接続中を検知して、Bluetoothが使えない旨のメッセージが表示されます(Bluetooth接続ができません)。


関連URL:


ところで、無線LANBluetoothの同時利用がそもそもなぜ不可なのかについては上記サポート掲示板の「No.78」なごやさんの発言「IEEE802.11b/gとBluetoothが同じ2.4GHz(ギガヘルツ)周波数帯を使用するため同時に利用できないようにしてあるみたい」が有力なようです。
(2/19 2:15、追記)