JPWO2003003659A1 - 無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラム - Google Patents
無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラム Download PDFInfo
- Publication number
- JPWO2003003659A1 JPWO2003003659A1 JP2003509712A JP2003509712A JPWO2003003659A1 JP WO2003003659 A1 JPWO2003003659 A1 JP WO2003003659A1 JP 2003509712 A JP2003509712 A JP 2003509712A JP 2003509712 A JP2003509712 A JP 2003509712A JP WO2003003659 A1 JPWO2003003659 A1 JP WO2003003659A1
- Authority
- JP
- Japan
- Prior art keywords
- command
- target
- controller
- wireless communication
- communication control
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004891 communication Methods 0.000 title claims description 212
- 238000000034 method Methods 0.000 title claims description 118
- 230000006870 function Effects 0.000 claims abstract description 104
- 238000012546 transfer Methods 0.000 claims abstract description 29
- 238000012545 processing Methods 0.000 claims description 78
- 230000005540 biological transmission Effects 0.000 claims description 33
- 238000004590 computer program Methods 0.000 claims description 11
- 230000004044 response Effects 0.000 description 49
- 230000008569 process Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 14
- 230000001276 controlling effect Effects 0.000 description 13
- 230000000875 corresponding effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 3
- 230000002079 cooperative effect Effects 0.000 description 2
- 230000009365 direct transmission Effects 0.000 description 2
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 230000003915 cell function Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/329—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Mobile Radio Communication Systems (AREA)
- Small-Scale Networks (AREA)
- Selective Calling Equipment (AREA)
Abstract
マスタ及びスレーブの役割の特徴を活かし、マスタ機器がシステム・コントローラとなって、ピコネット内の各スレーブ機器の制御機能を管理する。スレーブ機器が他のスレーブ機器を制御したいときには、マスタ機器にコマンドを発行し、マスタ機器は該当するスレーブ機器にコマンドを転送する。各スレーブ機器はマスタ以外の機器の存在を意識することなく、結果としてピコネット内のスレーブ機器間で制御を行なう。したがって、1台のマスタ機器と複数台のスレーブ機器からなるピコネット内で、スレーブ機器間でコマンドの交換を行なうことができる。
Description
[技術分野]
本発明は、複数の機器間をワイヤレスで接続するための無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムに係り、特に、所定の通信セル内でワイヤレス接続された機器間で機器操作用のコマンドの交換を制御するための無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムに関する。
さらに詳しくは、本発明は、Bluetoothのように1台のマスタ(master)機器と複数台のスレーブ(slave)機器によって構成されるピコネット(piconet)内において機器間で機器操作用のコマンドの交換を交換するための無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムに係り、特に、ピコネット内においてマスタ機器としか直接接続されない2台以上のスレーブ機器間で機器操作用のコマンドの交換を制御するための無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムに関する。
[背景技術]
最近、近距離の無線通信技術が脚光を浴び始めている。この種の無線通信方式によれば、機器や端末間の通信をコードレスで確立することができるので、機器どうしの接続作業が簡素化されるとともに、各機器の設置場所を選ぶ必要がなくなるので、利便性が高い。近距離無線通信は、例えばホーム・ネットワークなどのように、局所的で、ネットワーク・ケーブルの敷設が現実的でない場所における伝送媒体としても大いに期待されている。
近距離無線通信は、例えば、コンピュータ本体とその周辺機器間のデータ転送の他に、携帯型情報機器間のデータ交換や、電話機本体や携帯型音楽再生機とヘッドセット、親機と子機などの間におけるデータや音声の伝送に利用することができる。
近距離無線通信の代表例である”Bluetooth”は、さまざまな業界に対して適用可能なワイヤレス接続インターフェースを提供する標準規格であり、”Bluetooth SIG(Special Interest Group)”にその運営・管理が委ねられている。
Bluetoothは、2.4GHzのISM(Industry Science Medical)バンドと呼ばれるグローバルな無線周波数を使用し、全体のデータ伝送速度は1Mbpsであり、その中には電話の音声伝送に利用可能な64kbpsの同期伝送チャンネルと、データ伝送のための非同期伝送チャンネルが設けられている。前者の同期伝送チャンネルは、SCO(Synchronous Connection Oriented Link)伝送方式が採用され、回線接続に適用される。また、後者の非同期伝送チャンネルは、ACL(Asynchronous Connection Less Link)伝送方式が採用され、パケット交換によるデータ伝送に適用される。Bluetoothによる機器間の接続範囲は10m程度であるが、追加増幅器を使用することによって、さらに100mまで延長することができる。
Bluetoothの技術仕様は、「コア(Core)」と「プロファイル(Profile)」に大別される。コアは、Bluetoothが提供するワイヤレス接続の基礎を定義する。これに対し、プロファイルは、Bluetoothのコアに基づいて各種の機能やアプリケーションを開発して機器に組み込む際に、機器間の相互接続性を保証するための各機能毎に規定された技術要件の集まりである。
Bluetoothのプロファイルは複数存在し、その組み合わせにより1つのアプリケーション(「利用モデル(Usage)」とも呼ぶ)を提供する。実際には、アプリケーションを提供するプロファイルの組み合わせがコアとともにBluetooth製品に実装されることになる。
例えば、携帯電話やパーソナル・コンピュータ関連のプロファイルを始めとして、自動車、ネットワーク、プリンタ、オーディオ、ビデオなど、さまざまなBluetoothプロファイルが想定される。例えば、オーディオ・ビジュアル(AV)機器向けのリモコン制御用のプロファイルとして、”Bluetooth AV Remote Control Profile”(AVRCP)を挙げることができる。
Bluetoothは、本来、モバイル端末間を接続するためのワイヤレス通信技術であるが、勿論、固定装置への適用も図られている。例えば、電話機本体と子機間の接続、携帯型音楽再生機とヘッドセット、あるいは、ステレオ・コンポ(あるいはその他のメディア・プレーヤ)とスピーカ(あるいはディスプレイなどその他の出力装置)との接続に、Bluetoothに基づくワイヤレス接続を適用することができる。
機器間接続にBluetoothに基づくワイヤレス通信を適用することにより、ケーブル接続時に拘束されているコネクタ固有の形状や特性などの問題から解放される。また、Bluetoothは、2.4GHzのISM(Industry Science Medical)バンドと呼ばれるグローバルな無線周波数帯域を使用する世界規模の標準規格であることから、通信環境のグローバル化を進めることが容易となる。
Bluetoothは、1対1のケーブル代替接続だけではなく、1対多の簡易ワイヤレス・ネットワークの構築も提供する。このため、Bluetooth通信に関わる機器群の中の1つに制御機能を与えることで通信の秩序を保つようにしている。制御機能を与えられた機器のことを「マスタ(Master)」機器と呼び、それ以外を「スレーブ(Slave)」機器と呼ぶ。また、マスタ及びスレーブとなった機器群が通信状態にあるネットワークのことを「ピコネット(piconet)」と呼ぶ。
ピコネット内では、「ピコネット内同期」がとられており、通信状態にあるすべてのBluetooth機器は、マスタ機器を基準とした同一の周波数ホッピング・パターンと時間スロットを有している状態にある。時間スロットはマスタ機器が提供するBluetoothクロックを基準として各スレーブ機器が形成する。
ピコネット内には、必ず1つだけマスタ機器が存在し、このマスタ機器が1台以上のスレーブを制御しながら通信を行なう。また、ピコネット内では、すべてのパケットはマスタ機器とスレーブ機器の間でのみ受信され、スレーブ機器どうしが直接通信を行なうことはできない。
そして、1つのピコネット内で同じ通信できるスレーブは最大7台までと決められている。これらにマスタ機器を含めて、最大で8台のBluetooth機器がピコネット内で同時通信を行なうことができる。
ここで、Bluetooth通信において、スレーブ機器間で機器制御を行いたいという要請がある。例えば、オーディオ・ビジュアル(AV)機器の分野において、Bluetooth通信を導入した場合、ステレオ・コンポやメディア・プレイヤをマスタ機器として定義する一方で、出力ターゲットとしてのTVやヘッドフォン、さらには、この出力機器を遠隔操作するリモコンをスレーブ機器として定義することができる。このようなBluetoothピコネット内では、ユーザは、マスタ機器としてのステレオ・コンポがTVやヘッドフォンなどのターゲットをコントロールできることは勿論のこと、スレーブ機器としてのリモコン上からも、TVの選局や音量調節、ヘッドフォンの音量調節などを行えなければ意味がない。しかしながら、既に述べたように、Bluetoothでは、スレーブ機器間の直接通信を行なうことはできない。
例えば、Bluetooth対応のAV機器制御用プロファイルの1つとして、”AV Remote Control Profile”(AVRCP)を挙げることができる。しかしながら、Bluetoothは本来、1台のマスタ機器と複数のスレーブ機器で1つのピコネットを構成し通信することができるが、このAVRCP制御プロファイルは、マスタ機器と1台のスレーブ機器間での1対1の制御のみを実現するものである。
スレーブ機器であるリモコンからマスタ機器を介してもう一方のスレーブ機器の制御を行うためには、それを可能とするメカニズムを新たに定義して、新規の制御用プロファイルとして実装する方法を考えることができる。しかしながら、新たな制御用プロファイルを用いて、マスタ機器を介在させたスレーブ機器による他のスレーブ機器のコントロールを実現させた場合、従来のAV Remote Control Profileのだけ対応した機器で実現することは当然できない。
[発明の開示]
本発明の目的は、ワイヤレス接続された機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明のさらなる目的は、Bluetoothのように1台のマスタ(master)機器と複数台のスレーブ(slave)機器によって構成されるピコネット(piconet)内において機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明のさらなる目的は、ピコネット内において、マスタ機器としか直接接続されない2台以上のスレーブ機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明のさらなる目的は、Bluetoothの遠隔制御用プロファイルを用いて、同一ピコネット内のスレーブ機器間でリモート・コントロールを行なうことができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明のさらなる目的は、AV Remote Control Profileなどの従来のBluetooth制御用プロファイルを用いて、マスタ機器を介在させたスレーブ機器による他のスレーブ機器のリモート・前記ピコネット内でコントロールを実現することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されて、各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御する無線通信制御装置又は無線通信制御方法であって、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せ手段又はステップと、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せ手段又はステップと、
各ターゲット機器がサポートするコマンドを管理するサポート・コマンド管理手段又はステップと、
を具備することを特徴とする無線通信制御装置又は無線通信制御方法である。
本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法が適用される通信セル内では、各スレーブ機器はマスタ機器とのみ通信可能である以外に、所定の制御プロファイル上では、マスタ機器及びスレーブ機器の各々は、コマンドを発行するコントローラ、及び/又は、コマンドをサポートするターゲットとして動作することができる。
また、本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法は、このような通信セル内においてマスタとなる機器に適用することで、発明の効果を好適に奏することができる。また、このようなマスタ機器自身は、所定の制御プロファイル上では、コントローラ及びターゲットの双方として機能することができるものとする。また、前記サポート・コマンド管理手段又はステップは、マスタ機器自身のサポート・コマンドも管理するようにする。
本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法によれば、マスタ機器がシステム・コントローラとなって、通信セル内でターゲットとして稼働する各スレーブ機器の制御機能すなわちサポート・コマンドを管理する。また、通信セル内でコントローラとして稼働するスレーブ機器が他のスレーブ機器を制御したいときには、このマスタ機器をターゲットとしてコマンドを発行する。そして、マスタ機器はコントローラとして、コマンドをサポートするターゲットすなわち他のスレーブ機器にコマンドを転送することができる。
したがって、通信セル内の各スレーブ機器は、所定の制御プロファイル上でコントローラとして機能する場合には、マスタ以外の機器の存在を意識することなく、通信セル内のターゲットに対するコマンドを発行することができる。同様に、所定の制御プロファイル上でターゲットとして機能する各スレーブ機器は、マスタ以外の機器の存在を意識することなく(すなわちコントローラとして機能する他のスレーブ機器からのコマンドであるか否かを意識することなく)、マスタ機器から受信したコマンドを実行すればよい。
略言すれば、コントローラとして稼働するスレーブ機器はマスタ機器をターゲットとしてコマンドを送信し、他方のターゲットとして稼働するスレーブ機器はマスタ機器から受信したコマンドだけを処理すればよい。すなわち、本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法によれば、各スレーブ機器はマスタ機器とのみ通信可能な通信セル内において、マスタ機器の介在により、スレーブ機器間での制御を実現することができる訳である。
本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法は、前記通信セル内のコントローラからコマンドを受信するコマンド受信手段又はステップと、受信コマンドを処理するコマンド処理手段又はステップとをさらに備えていてもよい。
このような前記コマンド処理手段又はステップは、前記サポート・コマンド管理手段に問い合わせて、受信コマンドをサポートするターゲットに該コマンドを転送するようにすればよい。
また、前記コマンド処理手段又はステップは、前記サポート・コマンド管理手段に問い合わせて、本発明の第1の側面に係る無線通信制御装置又は無線通信制御方法を実装したマスタ機器自身が、受信コマンドをサポートする場合にはマスタ機器自身にこのコマンドを実行させるようにすればよい。
また、前記通信セル内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合には、コマンド送信元であるコントローラ機器は、特定のターゲット機器をコマンドを実行させる機器として指定する機能を備えていてもよい。
あるいは、コマンド受信時の受信履歴を記憶する受信履歴記憶手段又はステップと、前記受信履歴記憶手段又はステップに記憶された最新履歴を基に受信したコマンドを実行するターゲットを特定するターゲット特定手段又はステップとをさらに備えていてもよい。
このような場合には、前記コマンド処理手段又はステップは、コマンド送信元のコントローラ機器の指定に従って特定のターゲット機器にのみコマンドを転送するようにすればよい。
あるいは、前記コマンド処理手段又はステップは、前記通信セル内において、該受信したコマンドをサポートするすべてのターゲット機器にコマンドを転送するようにしてもよい。
また、本発明の第2の側面は、1台のマスタ(master)機器と複数台のスレーブ(slave)機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット(piconet)内において、機器間でのコマンド交換を行う無線通信制御装置又は無線通信制御方法であって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ(controller)機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット(target)機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、
前記ピコネット内でのBluetooth通信を確立する接続手段又はステップと、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握手段又はステップと、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握手段又はステップと、
を具備することを特徴とする無線通信制御装置又は無線通信制御方法である。
本発明の第2の側面に係る無線通信制御装置及び無線通信制御方法が適用されるBluetoothワイヤレス・ネットワークのピコネット内では、各スレーブ機器はマスタ機器とのみ通信可能である。また、所定の制御プロファイル上では、ピコネット内のマスタ機器及びスレーブ機器の各々は、コマンドを発行するコントローラ、及び/又は、コマンドをサポートするターゲットとして動作することができる。
また、本発明の第2の側面に係る無線通信制御装置及び無線通信制御方法は、このようなBluetoothワイヤレス・ネットワークのピコネット内においてマスタとなる機器に適用することで、発明の効果を好適に奏することができる。また、このようなマスタ機器自身は、所定の制御プロファイル上でコントローラ及びターゲットの双方として機能することができるものとする。また、前記サポート・コマンド把握手段又はステップは、マスタ機器自身のサポート・コマンドも管理するようにする。
本発明の第2の側面に係る無線通信制御装置及び無線通信制御方法によれば、マスタ機器がシステム・コントローラとなって、ピコネット内でターゲットとして稼働する各スレーブ機器の制御機能すなわちサポート・コマンドを管理することができる。そして、ピコネット内でコントローラとして稼働するスレーブ機器が他のスレーブ機器を制御したいときには、ターゲットとしてのマスタ機器にコマンドを発行すればよい。そして、マスタ機器はコントローラとして、コマンドをサポートするターゲットすなわち他のスレーブ機器にコマンドを転送することができる。
したがって、ピコネット内の各スレーブ機器は、所定の制御プロファイル上でコントローラとして機能する場合には、マスタ以外の機器の存在を意識することなく、ピコネット内のターゲットに対するコマンドを発行することができる。
同様に、所定の制御プロファイル上でターゲットとして機能する各スレーブ機器は、マスタ以外の機器の存在を意識することなく(すなわちコントローラとして機能する他のスレーブ機器からのコマンドであるか否かを意識することなく)、マスタ機器から受信したコマンドを実行すればよい。
略言すれば、コントローラとして稼働するスレーブ機器はマスタ機器をターゲットとしてコマンドを送信し、他方のターゲットとして稼働するスレーブ機器はマスタ機器から受信したコマンドを受信すればよい。すなわち、本発明の第2の側面に係る無線通信制御装置及び無線通信制御方法によれば、各スレーブ機器はマスタ機器とのみ通信可能なBluetoothワイヤレス・ネットワークのピコネット内において、マスタ機器の介在により、スレーブ機器間での制御を実現することができる訳である。
ここで、前記コントローラ/ターゲット機能把握手段又はステップは、例えば、ピコネット内の各スレーブ機器と論理リンク(L2CAP)を張り、Service Discovery Protocol(SDP)を用いることによって、各スレーブ機器に対してコントローラ機能並びにターゲット機能の問合せを行うことができる。
また、前記サポート・コマンド把握手段は、例えば、前記ピコネット内でターゲットとして稼働する各スレーブ機器と論理リンク(L2CAP)を張り、Specific Inquiryのような上位アプリケーション・プロトコルで定義された方式によって、サポートするコマンドの問合せを行なうことができる。
また、本発明の第2の側面に係る無線通信制御装置又は無線通信制御方法は、前記ピコネット内でコントローラとして稼働するスレーブ機器と接続してコマンドを受信する手段又はステップと、受信コマンドを処理するコマンド処理手段又はステップをさらに備えていてもよい。
このコマンド処理手段又はステップは、同じピコネット内で、受信コマンドをサポートするターゲットに該コマンドを転送するようにすればよい。
また、本発明の第2の側面に係る無線通信制御装置又は無線通信制御方法を実装したマスタ機器自身が自身コマンドをサポートするような場合には、前記コマンド処理手段又はステップは、マスタ機器自身に受信コマンドを実行させるようにしてもよい。
また、前記ピコネット内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合に、コマンド送信元であるコントローラ機器には、特定のターゲット機器をコマンドを実行させる機器として指定する機能を備えていてもよい。
あるいは、コマンド受信時の受信履歴を記憶する受信履歴記憶手段又はステップと、前記受信履歴記憶手段又はステップに記憶された最新履歴を基に受信したコマンドを実行するターゲットを特定するターゲット特定手段又はステップとをさらに備えていてもよい。
このような場合には、前記コマンド処理手段又はステップは、コマンド送信元のコントローラ機器の指定に従って特定のターゲット機器にのみコマンドを転送するようにすればよい。
あるいは、前記コマンド処理手段又はステップは、前記通信セル内において、該受信したコマンドをサポートするすべてのターゲット機器にコマンドを転送するようにしてもよい。
また、本発明の第3の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されて、各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、前記コンピュータ・ソフトウェアは、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せステップと、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せステップと、
各ターゲット機器がサポートするコマンドを管理するサポートコマンド管理ステップと、
を具備することを特徴とする記憶媒体である。
また、本発明の第4の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、前記コンピュータ・ソフトウェアは、
前記ピコネット内でのBluetooth通信を確立する接続ステップと、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握ステップと、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握ステップと、
を具備することを特徴とする記憶媒体である。
本発明の第3及び第4の各側面に係る記憶媒体は、例えば、さまざまなプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ・ソフトウェアをコンピュータ可読な形式で提供する媒体である。このような媒体は、例えば、CD(Compact Disc)やFD(Flexible Disk)、MO(Magneto−Opticaldisc)などの着脱自在で可搬性の記憶媒体である。あるいは、ネットワーク(ネットワークは無線、有線の区別を問わない)などの伝送媒体などを経由してコンピュータ・ソフトウェアを特定のコンピュータ・システムに提供することも技術的に可能である。
このような記憶媒体は、コンピュータ・システム上で所定のコンピュータ・ソフトウェアの機能を実現するための、コンピュータ・ソフトウェアと記憶媒体との構造上又は機能上の協働的関係を定義したものである。換言すれば、本発明の第3及び第4の各側面に係る記憶媒体を介して所定のコンピュータ・ソフトウェアをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第1及び第2の各側面に係る無線通信制御装置及び無線通信制御方法と同様の作用効果を得ることができる。
また、本発明の第5の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されて、各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せステップと、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せステップと、
各ターゲット機器がサポートするコマンドを管理するサポート・コマンド管理ステップと、
を具備することを特徴とするコンピュータ・プログラムである。
また、本発明の第6の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、
前記ピコネット内でのBluetooth通信を確立する接続ステップと、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握ステップと、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握ステップと、
を具備することを特徴とするコンピュータ・プログラムである。
本発明の第5及び第6の各側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第5及び第6の各側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第1及び第2の各側面に係る無線通信制御装置及び無線通信制御方法と同様の作用効果を得ることができる。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。
[発明を実施するための最良の形態]
以下、図面を参照しながら本発明の実施形態について詳解する。
まず、図1に示すような、Bluetoothワイヤレス・ネットワークの1つのピコネット10について考察してみる。既に述べたように、ピコネット10内には、通信の秩序を保つように制御機能が与えられた1台のマスタ機器と、最大7台までのスレーブ機器が存在する。
同一のピコネット10内に複数のスレーブが存在している場合には、同報通信を除いてスレーブとマスタ間の通信は、それらすべてのスレーブで時分割多重しながら共有されている。時分割多重の単位は「時間スロット」と呼ばれる625μsecの時間間隔である。
同一のピコネット10に存在するマスタと各スレーブの送受信パケットの方向は、スロット番号が偶数の場合はマスタからスレーブへのパケットの送信が行なわれ、スロット番号が奇数の場合はスレーブからマスタへのパケットの送信が行なわれる。このようにBluetoothでは、マスタと各スレーブの間でのパケットの送受信が可能であるが、スレーブ間での直接的な送受信はできない。
図1に示す例では、AV機器どうしのワイヤレス接続のためにBluetoothが適用されている。そして、このピコネット10内には、マスタ機器としてのメディア・プレーヤ11と、スレーブ機器としてのヘッドフォン12と、同じくスレーブ機器としてのリモコン13が存在する。リモコン13は、メディア・プレーヤ11に対するメディアの再生(play)、停止(stop)、一時停止(pause)、早送り(fast forward)、巻き戻し(rewind)などの再生制御や、ヘッドフォン12に対する音量調節(volume up/down)などの制御を遠隔的に行なうための装置である。
図2には、図1に示したピコネット10を構成する各機器11〜13の構成を模式的に示している。
メディア・プレーヤ11は、Bluetoothインターフェース・ブロック11Aと、信号生成ブロック11Bと、プレーヤ制御ブロック11Cと、システム制御ブロック11Dとで構成される。
Bluetoothインターフェース・ブロック11Aは、ピコネット10内におけるBluetoothワイヤレス接続を実現するための機能ブロックであり、ピコネット10内における各スレーブ機器12,13とのコマンド及びレスポンスの授受などを行なう。
信号生成ブロック11Bは、Bluetoothクロックなどピコネット10内の通信状態を制御するための信号を生成するための機能ブロックである。
プレーヤ制御ブロック11Cは、メディア・プレーヤ11上におけるメディアの再生、停止、一時停止、早送り、巻き戻しなどのメディア再生制御機能を実現するための機能ブロックである。
システム制御ブロック11Dは、ピコネット10内における各スレーブ機器12,13の統合的な制御を実現するための機能ブロックである。本実施形態では、システム制御ブロック11Dは、AV機器のリモート・コントロール用の制御プロファイルAVRCPにおけるコントローラ及びターゲットの機能を管理して、マスタ機器11を介在させたスレーブ機器による他のスレーブ機器のコントロール、すなわち、スレーブ機器としてのリモコン13による他のスレーブ機器としてのヘッドフォン12のコントロールを可能にする。但し、システム制御ブロック11Dによるピコネット10内のシステム・コントロールの詳細については後述に譲る。
ヘッドフォン12は、Bluetoothインターフェース・ブロック12Aと、ヘッドフォン制御ブロック12Bと、信号処理ブロック12Cとで構成される。
Bluetoothインターフェース・ブロック12Aは、ピコネット10内におけるBluetoothワイヤレス接続を実現するための機能ブロックであり、マスタ機器11とのコマンド及びレスポンス、並びにデータ・ストリームの授受などを行なう。
ヘッドフォン制御ブロック12Bは、ボリューム・アップ、ボリューム・ダウン、ミュートなどヘッドフォン12による音声出力機能を実現するための機能ブロックである。
信号処理ブロック12Cは、Bluetoothワイヤレス通信によりマスタ機器11から受信された制御信号や、ヘッドフォン制御ブロック12Bによる制御信号を処理する機能ブロックである。
本実施形態では、ヘッドフォン12は、従来のAV機器制御用プロファイル”AV Remote Control Profile”(AVRCP)だけに対応したスレーブ機器として構成することができる。
リモコン13は、Bluetoothインターフェース・ブロック13Aと、リモコン制御ブロック13Bとで構成される。
Bluetoothインターフェース・ブロック13Aは、ピコネット10内におけるBluetoothワイヤレス接続を実現するための機能ブロックであり、マスタ機器11とのコマンド及びレスポンスの授受などを行なう。
リモコン制御ブロック13Bは、メディア・プレーヤ11に対するメディアの再生、停止、一時停止、早送り、巻き戻しなどのメディア再生制御や、ヘッドフォン12に対するボリューム・アップ、ボリューム・ダウン、ミュートなどの音声出力制御などのリモート・コントロールを実現するための機能ブロックである。
本実施形態では、リモコン13は、ヘッドフォン12と同様に、従来のAV機器制御用プロファイル”AV Remote Control Profile”(AVRCP)だけに対応したスレーブ機器として構成することができる。
Bluetoothのアプリケーション・プロファイルの1つであるAV Remote Control Profile(AVRCP)は、赤外線リモコンと同様のAV機器制御をBluetoothワイヤレス・ネットワーク上で実現するものである。コマンドを送信する側を「コントローラ(Controller)」と呼び、コマンドを受けてレスポンスを返す側を「ターゲット(Target)」と呼ぶ。
図3には、AV Remote Control Profile(AVRCP)のプロファイル・スタック構造を模式的に図解している。
同図において、ベースバンド層、LMP層、及びL2CAP層の各層は、OSI(Open Systems Interconnect:開放型システム間相互接続)基本参照モデルの第1層及び第2層に相当するBluetoothプロトコルである。
AVCTP(AV Control Transport Protocol)層は、AV機器をコントロールするための処理手順やメッセージ交換を規定するプロトコル層である。
SDP層は、Bluetoothサービス・ディスカバリ・プロトコル(Service Discovery Protocol)を規定するプロトコル層であり、システム・コントローラとしてのマスタ機器11は該プロトコルを用いてピコネット10内の各スレーブ機器12,13が備えるコントローラ機能やターゲット機能を検出することができる。
AVコントロール層は、AV機器をAV/Cコマンド・ベースでコントロールするエンティティである。
本実施形態では、ヘッドフォン12は、外部からボリューム・アップ及びボリューム・ダウンの制御を行うことができるように、AVRCPのターゲット機能を実装している。
また、リモコン13は、ヘッドフォン12などの外部機器のリモート・コントロールを行なうことができるように、AVRCPのコントローラ機能を実装している。
また、メディア・プレーヤ11は、AVRCPのコントローラ及びターゲットの双方の機能を実装している。すなわち、ヘッドフォン12に対してボリュームのアップ/ダウンを指示するコマンドを送信するコントローラ機能と、リモコン13からメディアの再生や停止などのコマンドを受信して処理するターゲット機能とを備えている。
既に述べたように、本実施形態に係るピコネット10内では、メディア・プレーヤ11はBluetoothワイヤレス通信におけるマスタ機器として定義され、その他のヘッドフォン12及びリモコン13はスレーブ機器として定義されている。
ここで、さまざまなカテゴリの機器を遠隔制御することができる、いわゆる「万能リモコン」を例に考察してみる。
この種のリモコンには、再生(play)、停止(stop)、早送り(FF)、巻き戻し(rewind)、一時停止(pause)、ボリューム・アップ(volume up)、ボリューム・ダウン(volume down)、チャンネル・アップ(channel up)、チャンネル・ダウン(channel down)、上(up)、下(down)、右(right)、左(left)、実行(execute)などの各キーが配設されており、ユーザによるキー操作に応じて対応するコマンドを発行することができる。
本実施形態では、リモコン13はスレーブ機器として定義されているので、マスタ機器であるメディア・プレーヤ11としか通信することができない。言い換えれば、リモコン13から発される上述の各コマンドは、メディア・プレーヤ11に対してのみ送信することができる。
他方、リモコン13の通信相手であるメディア・プレーヤ11は、リモコン13から受信するコマンドのうち、メディア再生制御に関連する再生(play)、停止(stop)、早送り(FF)、巻き戻し(rewind)、一時停止(pause)などのコマンドを実行することはできるが、スピーカを内蔵していないので、ボリューム・アップ(volume up)、ボリューム・ダウン(volume down)などの音量調節に関するコマンドを実行することはできない。勿論、TVチューナを内蔵していないので、チャンネル・アップ(channel up)、チャンネル・ダウン(channel down)などのコマンドも実行することができない。
本実施形態に係るメディア・プレーヤ11は、後述するシステム制御ブロック11Dの機能により、ピコネット10内のシステム・コントローラとなって、自分が受信したボリューム・アップ(volume up)、ボリューム・ダウン(volume down)などのコマンドを、ヘッドフォン12に転送することができる。
システム制御ブロック11Dによって実現される、メディア・プレーヤ11のピコネット10内システム・コントロール機能の処理手順について、以下に説明する。
(1)ピコネット内でのBluetooth通信の確立
問い合わせ(inquiry)及び呼出し(page)のフェーズを経て、ピコネット10内のBluetooth通信の接続が確立される。この結果、ピコネット10内でシステム・コントローラとして稼働するメディア・プレーヤ11がマスタ機器として定義される。
なお、ここで行う問い合わせ(inquiry)は、ピコネット内同期を図るための第1段階の処理フェーズであり、マスタ機器11がその周辺すなわちピコネット10内のスレーブ機器12,13の存在を調査する。また、呼出し(page)は、ピコネット内同期を図るための第2段階の処理フェーズであり、問い合わせでの処理結果に基づいてマスタ機器11は特定のスレーブ機器12,13との間でピコネット内同期を確立させる。
(2)ピコネット内の各スレーブ機器のAVRCPコントローラ/ターゲット機能の把握
システム・コントローラとしてのメディア・プレーヤ11は、同じピコネット10内のスレーブ機器としてのヘッドフォン12及びリモコン13のそれぞれに対して、Service Discoveryを行うための論理リンク(L2CAP)のコネクションを張り、Service Discovery Protocol(SDP)を用いて、各スレーブ機器12,13がAVRCPプロファイルにおいて持つ機能を把握する。
図1に示す例では、システム・コントローラとしてのメディア・プレーヤ11は、SDPを用いて、リモコン13がAVRCPのコントローラ機能を備えていること、並びに、ヘッドフォン12がAVRCPのターゲット機能に対応していることを知る。また、本実施形態では、ヘッドフォン12は、AVRCPのカテゴリ2(monitor/amplifier)の機能に対応しているが、このこともSDP手続きにより把握される。(これらの情報は、service recordとして各機器に保持されている。)
システム・コントローラとしてのメディア・プレーヤ11は、次いで、ヘッドフォン12との間に機器コントロール用の論理リンク(L2CAP)のコネクションを張る。そして、メディア・プレーヤ11は、ヘッドフォンがAVRCPのどのコマンドをサポートしているかを調べるために、サポート問い合わせのコマンドを送る。AVRCPでは、AV機器制御のプロトコルとしてAV/Cコマンドを用いている(図3を参照のこと)。
リモコン制御用のコマンドとしては、AV/C Panel subunitで定義されているPASS THROUGHコマンドを適用する。図4には、PASS THROUGHコマンドを例に、AVRCPコマンド・フレームの構造を図解している。図示の通り、該コマンド・フレームは、パケット・ヘッダ,L2CAPヘッダ,AV Control Transport Protocol(AVCTP)ヘッダにAV/Cコマンドが続く構造となっている。パケット・ヘッダにはピコネット内で通信中のスレーブを特定するための識別子が含まれている。AV/Cコマンドでは、各コントロール・コマンドのサポート状態を問い合わせるために、SPECIFIC INQUIRYコマンドという種類のコマンドがある。コントロールと同じオペコード及びオペランドを付けてSPECIFIC INQUIRYコマンドを送ると、ターゲット装置における実際の動作を伴わずに実装の有無を確認することができる。このSPECIFIC INQUIRYにより、PASS THROUGHコマンドの各オペレーションの実装状態を知ることができる。
本実施形態では、ヘッドフォンがカテゴリ2に属していること(前述)があらかじめ分っているので、カテゴリ2のオペレーションのみを調べればよい。カテゴリ2におけるオペレーションを以下の[表1]に挙げておく。
カテゴリ2では、volume up並びにvolume downの2つはターゲット機器でのサポートがmandatory(義務)となっているので、ここでサポートの有無を調べる必要はない。例えば、ヘッドフォン12がvolume up並びにvolume down以外に、muteをサポートしていたとする。システム・コントローラとしてのメディア・プレーヤ11からそれぞれのオペレーションIDに対してSPECIFIC INQUUIRYを受信したヘッドフォン12は、実装しているこれら3種類のオペレーションに対応したコマンドに対してはIMPLEMENTEDというレスポンスを返す。その他の実装していないオペレーションに関する問い合わせに対してはNOT IMPLEMENTEDというレスポンスを返す。
(3)ピコネット内の各AVRCPターゲットのサポート・コマンドの管理
また、システム・コントローラであるメディア・プレーヤ11は、自分自身がターゲット機器として機能するときにサポートするコマンド、並びに、自分がコントローラとしてピコネット10内のターゲット機器(図1に示す例ではヘッドフォン12)を制御することができるコマンドのリスト(すなわち、ヘッドフォン12がサポートしているコマンド)を作成する。作成されたリストの例を以下の[表2]に示しておく。
(4)AVRCPコントローラとBluetoothマスタ機器との接続
リモコン13は、ピコネット10内では、AVRCPコントローラとして、メディア・プレーヤ11との間に論理リンク(L2CAP)のコネクションを張りにいく。これに対し、メディア・プレーヤ11は、システム・コントローラとして機能する準備が整った時点で、このコネクションに応じる。
(5)AVRCPコントローラからのコマンド送信
ユーザが、AV機器に対してコマンド送信にするために、リモコン13上の所望のキーを操作する。これに応答して、リモコン13は、AVRCPコントローラとしてAVRCPターゲットであるメディア・プレーヤ11に、該当するコマンドを送信する。
(6)AVRCPターゲットへのコマンド転送
AVRCPターゲットであるメディア・プレーヤ11は、システム制御ブロック11Dを内蔵している(前述)。このシステム制御ブロック11Dは、ピコネット10内のAVRCPコントローラ(図1に示す例では、リモコン13)から受信したコマンドを解析する。
コマンド解析の結果、”play”すなわちメディア再生開始など、[表2]の左欄すなわちメディア・プレーヤ11自身がサポートするメディア再生制御のためのコマンドである場合には、同一機器11内のプレーヤ制御ブロック11Cにコマンドを渡すとともに、要求元のリモコン13に対してはコマンド受理を示すACCEPTEDレスポンスを返す。
また、コマンド解析の結果、”volume up”などのように、[表2]の右欄すなわちメディア・プレーヤ11以外のAVRCPターゲット(図1に示す例では、ヘッドフォン12)がサポートするコマンドであった場合には、コマンド送信元のリモコン13に対してコマンド受理を示すACCEPTEDレスポンスを返すとともに、受信したコマンドをそのまま該コマンドをサポートする機器すなわちヘッドフォン12に転送する。
なお、システム制御ブロックが受信したコマンドが[表2]に載っていない、すなわちピコネット10内のいずれのAVRCPターゲットもサポートしていないコマンドである場合には、コマンド送信元のリモコン13に対して、コマンド不受理を示すNOT IMPLEMENTEDレスポンスを返して、受信コマンドの処理を無視する。
(7)AVRCPターゲットによるコマンド実行
上述したように、ヘッドフォン12に対してコマンドが転送された場合には、ヘッドフォン12は、Bluetoothマスタ機器としてのメディア・プレーヤ11がコントローラとなってvolume upのコマンドを送ったものと解釈して(言い換えれば、リモコン13からコマンドが発行されたことを意識することなく)、メディア・プレーヤ11に対してコマンド受理を示すACCEPTEDレスポンスを返すとともに、volume upコマンドを実行する。
上述したように、メディア・コントローラ11は、AVRCP制御プロファイル上では、自らターゲット機能並びにコントローラ機能を装備するとともに、システム制御ブロック11Dにおいてコマンド・リストを作成して、ピコネット10内の各ターゲット機器(図1に示す例では、ヘッドフォン12並びにメディア・プレーヤ11自身)がサポートするコマンドを把握する。
この結果、リモコン13は、自分がAVRCPコントローラとなって、メディア・プレーヤ11をヘッドフォン12の機能を持ったターゲットとして制御すればよい。したがって、リモコン13を従来のAVRCPに対応したスレーブ機器として構成することができる。
また、ヘッドフォン12は、AVRCPコントローラであるメディア・プレーヤ11からのコマンドを、AVRCPターゲットとして受信して実行するだけである。したがって、ヘッドフォン12を従来のAVRCPに対応したスレーブ機器として構成することができる。勿論、ヘッドフォン12は、受信したコマンドがリモコン13からのものであることを意識する必要はない。
次に、上述したようなBluetoothマスタ機器のシステム・コントローラ機能を利用したアプリケーションの一例について説明する。
例えば、マスタ機器としてのメディア・プレーヤ11にLCD(Liquid Crystal Display)表示機能が搭載されており(図示しない)、ここでAVRCPコマンド・コントロールに関する各種の設定を行なうことができるようになっているものとする。
このような場合、リモコン13上での操作をメディア・プレーヤ11本体だけに限定するか、あるいは同じピコネット10内の他のスレーブ機器すなわちターゲットまで対象にするかを、メニュー画面上(図示しない)で指定できるようにすることもできる。あるいは、LCDのような表示装置を用いるのではなく、コマンド転送に関するオン/オフ・スイッチあるいはこれと等価な機械ボタン(図示しない)をメディア・プレーヤ11本体に配設するようにしてもよい。
さらに高度なアプリケーションでは、1つのピコネット内に、同一カテゴリーの機器(すなわち、同じコマンドをサポートするターゲット機器)が存在するような場合にも対応することができる。
図5には、Bluetoothワイヤレス・ネットワークの1つのピコネット20内に同じカテゴリーのスレーブ機器が複数存在する例を示している。
同図に示すピコネット20内には、マスタ機器としてのメディア・プレーヤ21と、スレーブ機器としてのヘッドフォンA22並びにヘッドフォンB23と、同じくスレーブ機器としてのリモコン24が存在する。
ここで、ピコネット20内のスレーブ機器であるリモコン24は、制御プロファイルAVRCP上では、メディア再生制御や出力音量調整などに関するコマンドを発行するコントローラとして稼働する。
また、ピコネット20内のマスタ機器でもあるメディア・コントローラ21は、制御プロファイルAVRCP上では、ヘッドフォンA22並びにヘッドフォンB23に対して音量調節などのコマンドを発行するコントローラ機能と、リモコン24からのコマンドに応答してメディアの再生、停止、一時停止、早送り、巻き戻しなどのメディア再生制御を行なうターゲット機能を備えている。
また、ピコネット20内のスレーブ機器でもあるヘッドフォンA22並びにヘッドフォンB23の各々は、制御プロファイルAVRCP上ではターゲットとして、ともに音量調節に関する同一カテゴリーのコマンドをサポートしている。
図5に示すように、メディア・プレーヤ21がマスタとなるピコネット20内に、2台のヘッドフォン22,23が存在する場合、ピコネット内のシステム・コントローラとしてのメディア・プレーヤ21は、リモコン24から”volume up”というコマンドを受信したときには、どちらのヘッドフォン22,23にコマンドを転送すべきか不明となる。
そこで、本実施形態では、ピコネット内に同一カテゴリーのターゲットが複数台存在する場合には、コマンド発行元であるコントローラすなわちリモコン24側に、いずれのターゲットにコマンドを転送すべきかを指定することができるように、システム制御のルールを決めるようにする。
例えば、リモコン24上にF1,F2,F3,F4,…などのファンクション・キーが装備されている場合には、このキー・ボタン操作をターゲット機器の指定に割り当てるようにする。ファンクション・キーをターゲット機器の指定に割り当てた一例を以下に示す。
● ヘッドフォンAにコマンドを送信したいとき(ヘッドフォンAを音量調節したいとき)には、F1キーを押下操作した後、コマンド・ボタン(例えばvolume up)を押下する。
● ヘッドフォンBにコマンドを送信したいとき(ヘッドフォンBを音量調節したいとき)には、F2キーを押下操作した後、コマンド・ボタン(例えばvolume up)を押下する。
● ヘッドフォンA及びBの双方にコマンドを送信したいとき(ヘッドフォンA及びBの双方を音量調節したいとき)には、F3キーを押下操作した後、コマンド・ボタン(例えばvolume up)を押下する。
● ヘッドフォンA及びBへのコマンド送信を終了したいとき(ヘッドフォンA及びBの操作を終了したいとき)には、F4キーを押下操作した後、コマンド・ボタン(例えばvolume up)を押下する。
図6には、図5に示すようなピコネット20内における、システム・コントローラとしてのメディア・プレーヤ21によるシステム・コントロールの処理手順をフローチャートの形式で概略的に示している。但し、メディア・プレーヤ21は、上述したような手続きを経て、ピコネット20内に存在する各スレーブ機器22,23,24の制御プロファイルAVRCP上のコントローラ及び/又はターゲット機能を把握するとともに、各ターゲット機器22,23のサポート・コマンドを管理しているものとする。以下、図6に示すフローチャートを参照しながら、ピコネット20内のシステム・コントロール処理について説明する。
メディア・プレーヤ21は、リモコン24からコマンドを受信すると(ステップS1)、まず、ヘッドフォンA制御モードか否かを判別する(ステップS2)。リモコン24は、ファンクション・キーF1を押下することにより、ヘッドフォンA22の制御モードであることを指定することができる(前述)。
ヘッドフォンA制御モードである場合には、判断ブロックS5に進み、さらに、リモコン24からF2,F3,F4に関するコマンドを受信したか否かをチェックする。
リモコン24からF2,F3,F4に関するコマンドを受信しない場合には、ヘッドフォンA制御モード下で、メディア・コントローラ21は、リモコン24からの受信コマンドに従い、ヘッドフォンA22の制御を実行する。
他方、リモコン24からF2,F3,F4に関するコマンドを受信した場合には、F2コマンドを受信したことに応答してヘッドフォンB制御モードに遷移する。また、F3コマンドを受信したことに応答してヘッドフォンAB制御モードに遷移する。また、F4コマンドを受信したことに応答して、ヘッドフォンA及びBの操作を停止して、メディア・プレーヤ21本体の制御モードに遷移する。
判断ブロックS2において、ヘッドフォンA制御モードでないと判定された場合には、後続の判断ブロックS3に進み、ヘッドフォンAB制御モードか否かを判別する。リモコン24は、ファンクション・キーF3を押下することにより、ヘッドフォンABの制御モードであることを指定することができる(前述)。
ヘッドフォンAB制御モードである場合には、判断ブロックS8に進み、さらに、リモコン24からF1,F2,F4に関するコマンドを受信したか否かをチェックする。
リモコン24からF1,F2,F4に関するコマンドを受信しない場合には、ヘッドフォンAB制御モード下で、メディア・コントローラ21は、リモコン24からの受信コマンドに従い、ヘッドフォンA及びB双方の制御を実行する。
他方、リモコン24からF1,F2,F4に関するコマンドを受信した場合には、F1コマンドを受信したことに応答してヘッドフォンA制御モードに遷移する。また、F2コマンドを受信したことに応答してヘッドフォンB制御モードに遷移する。また、F4コマンドを受信したことに応答して、ヘッドフォンA及びBの操作を停止して、メディア・プレーヤ21本体の制御モードに遷移する。
判断ブロックS3において、ヘッドフォンAB制御モードでないと判定された場合には、後続の判断ブロックS4に進み、ヘッドフォンB制御モードか否かを判別する。リモコン24は、ファンクション・キーF2を押下することにより、ヘッドフォンB制御モードであることを指定することができる(前述)。
ヘッドフォンB制御モードである場合には、判断ブロックS6に進み、さらに、リモコン24からF1,F3,F4に関するコマンドを受信したか否かをチェックする。
リモコン24からF1,F3,F4に関するコマンドを受信しない場合には、ヘッドフォンB制御モード下で、メディア・コントローラ21は、リモコン24からの受信コマンドに従い、ヘッドフォンBの制御を実行する。
他方、リモコン24からF1,F3,F4に関するコマンドを受信した場合には、F1コマンドを受信したことに応答してヘッドフォンA制御モードに遷移する。また、F3コマンドを受信したことに応答してヘッドフォンA及びB双方の制御モードに遷移する。また、F4コマンドを受信したことに応答して、ヘッドフォンA及びBの操作を停止して、メディア・プレーヤ21本体の制御モードに遷移する。
判断ブロックS4において、ヘッドフォンB制御モードでないと判定された場合には、後続の判断ブロックS7に進み、さらに、リモコン24からF1,F2,F4に関するコマンドを受信したか否かをチェックする。
リモコン24からF1,F2,F3に関するコマンドを受信しない場合には、メディア・プレーヤ21本体の制御モード下で、メディア・コントローラ21は、リモコン24からの受信コマンドを実行する。
他方、リモコン24からF1,F2,F3に関するコマンドを受信した場合には、F1コマンドを受信したことに応答してヘッドフォンA制御モードに遷移する。また、F2コマンドを受信したことに応答してヘッドフォンB制御モードに遷移する。また、F3コマンドを受信したことに応答して、ヘッドフォンA及びBの制御モードに遷移する。
図7には、ヘッドフォンA制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24からの送信コマンドを処理するための手順を、フローチャートの形式で概略的に示している。以下、このフローチャートに従って、メディア・プレーヤ21によるコマンド処理について説明する。
メディア・プレーヤ21内のシステム制御ブロック(前述)は、リモコン24からコマンドを受信すると、該コマンドがヘッドフォンA22のコマンド・リスト([表2]を参照のこと)に載っているコマンドであるか否か、言い換えれば、受信したコマンドがターゲットとしてのヘッドフォンA22によってサポートされているか否かをチェックする(ステップS11)。
受信コマンドがヘッドフォンAによってサポートされているときには、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返す(ステップS12)。他方、受信コマンドがヘッドフォンAによってサポートされていない場合には、コマンド送信元のリモコン24に対してコマンドの不受理を示すNOT IMPLEMENTEDレスポンスを返して(ステップS13)、本処理ルーチン全体を終了する。
次いで、ヘッドフォン22Aに該コマンドを転送して(ステップS14)、その後、本処理ルーチン全体を終了する。
以下、図8〜図17を参照しながら、図5に示すピコネット20内におけるシステム・コントローラとしてのメディア・プレーヤ21によるシステム・コントロールの処理手順について詳解する。但し、メディア・プレーヤ21は、上述したような手続を経て、ピコネット20内に存在する各スレーブ機器22,23,24の制御プロファイルAVRCP上のコントローラ及びターゲット機能を把握するとともに、各ターゲット機器22,23のサポート・コマンドを管理しているものとする。
図8において、メディア・プレーヤ21は、リモコン24からコマンドを受信すると(ステップS101)、まず、受信したコマンドが「F1」であるかどうかを判別する(ステップS102)。「F1」コマンドではなかった場合には、同様に、「F2」、「F3」、「F4」コマンドであるかどうかを順次判別する(ステップS102、S103、S104)。ここで、「F1」、「F2」、「F3」、「F4」の各コマンドは、機器制御モードを指定するコマンドであるので、受信したコマンドが「F1」、「F2」、「F3」、「F4」のいずれかである場合には、それぞれ図9、図10、図11、又は図12に示すコマンド処理に進む。また、受信したコマンドが「F1」、「F2」、「F3」、「F4」のうちいずれでもない場合には、機器制御モード指定ではなく、制御そのものを示すコマンドであるので、図13に示す機器制御コマンドの処理に進む。
図9には、「F1」コマンドを受信した際のメディア・プレーヤ21が実行する処理手順をフローチャートの形式で示している。まず、現在の制御モードの判別を行なう(ステップS106)。既にヘッドフォンA制御モードに入っているかどうかを判別し(ステップS107)、このモードでなかった場合には「ヘッドフォンA制御モード」に入れる(ステップS108)。また、既にヘッドフォンA制御モードであったならば、モードの入れ替えは行なわない。次いで、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返して(ステップS109)、本処理ルーチン全体を終了する。
図10には、「F2」コマンドを受信した際のメディア・プレーヤ21が実行する処理手順をフローチャートの形式で示している。まず、現在の制御モードの判別を行なう(ステップS110)。既にヘッドフォンB制御モードに入っているかどうかを判別し(ステップS111)、このモードでなかった場合には「ヘッドフォンB制御モード」に入れる(ステップS112)。また、既にヘッドフォンA制御モードであったならば、モードの入れ替えは行なわない。次いで、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返して(ステップS113)、本処理ルーチン全体を終了する。
図11には、「F3」コマンドを受信した際のメディア・プレーヤ21が実行する処理手順をフローチャートの形式で示している。まず、現在の制御モードの判別を行なう(ステップS114)。既にヘッドフォンAB制御モードに入っているかどうかを判別し(ステップS115)、このモードでなかった場合には「ヘッドフォンAB制御モード」に入れる(ステップS116)。また、既にヘッドフォンA制御モードであったならば、モードの入れ替えは行なわない。次いで、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返して(ステップS117)、本処理ルーチン全体を終了する。
図12には、「F4」コマンドを受信した際のメディア・プレーヤ21が実行する処理手順をフローチャートの形式で示している。まず、現在の制御モードの判別を行なう(ステップS118)。既に本体制御モードに入っているかどうかを判別し(ステップS119)、このモードでなかった場合には「本体制御モード」に入れる(ステップS120)。また、既に本体制御モードであったならば、モードの入れ替えは行なわない。次いで、コマンド送信元のリモコン24に対してコマンドの樹里を示すACCEPTEDレスポンスを返して(ステップS121)、本処理ルーチン全体を終了する。
図13には、メディア・プレーヤ21が行なう機器制御コマンド処理の手順をフローチャートの形式で示している。まず現在の制御モードを調べ(ステップS122)、ヘッドフォンA制御モードであるか(ステップS123)、ヘッドフォンB制御モードであるか(ステップS124)、ヘッドフォンAB制御モードであるか(ステップS125)を判別するるこれらの制御モードの場合には、それぞれ図14、図15、図16に示す各制御モード処理に進む。また、上記の3つのモードのいずれでもない場合には、メディア・プレーヤ21本体の制御を行なうモードであると判断し、図17に示す処理に進む。
図14には、ヘッドフォンA制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24から送信されたコマンドを処理するための手順をフローチャートの形式で示している。
メディア・プレーヤ21内のシステム制御ブロックは、リモコン24から受信したコマンドを見て(ステップS126)、該コマンドがヘッドフォンA22のコマンド・リスト([表2]を参照のこと)に載っているコマンドであるか否か、言い換えれば、受信したコマンドがターゲットとしてのヘッドフォンA22によってサポートされているか否かをチェックする(ステップS127)。
受信コマンドがヘッドフォンA22によってサポートされているときには、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返す(ステップS128)。そして、ヘッドフォンA22に該コマンドを転送して(ステップS129)、本処理ルーチン全体を終了する。他方、受信コマンドがヘッドフォンA22によってサポートされていない場合には、コマンド送信元のリモコン24に対して該コマンドに対応していないことを示すNOT IMPLEMENTEDレスポンスを返して(ステップS130)、本処理ルーチン全体を終了する。
また、図15には、ヘッドフォンB制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24から送信されたコマンドを処理するための手順をフローチャートの形式で示している。
メディア・プレーヤ21内のシステム制御ブロックは、リモコン24から受信したコマンドを見て(ステップS131)、該コマンドがヘッドフォンB23のコマンド・リストに載っているコマンドであるか否か、言い換えれば、受信したコマンドがターゲットとしてのヘッドフォンB23によってサポートされているか否かをチェックする(ステップS132)。
受信コマンドがヘッドフォンB23によってサポートされているときには、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返す(ステップS133)。そして、ヘッドフォンB23に該コマンドを転送して(ステップS134)、本処理ルーチン全体を終了する。他方、受信コマンドがヘッドフォンB23によってサポートされていない場合には、コマンド送信元のリモコン24に対して該コマンドに対応していないことを示すNOT IMPLEMENTEDレスポンスを返して(ステップS135)、本処理ルーチン全体を終了する。
また、図16には、ヘッドフォンAB制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24から送信されたコマンドを処理するための手順をフローチャートの形式で示している。
メディア・プレーヤ21内のシステム制御ブロックは、リモコン24から受信したコマンドを見て(ステップS136)、該コマンドがヘッドフォンA22又はB23のコマンド・リスト([表2]を参照のこと)に載っているコマンドであるか否か、言い換えれば、受信したコマンドがターゲットとしてのヘッドフォンA22によってサポートされているか否かをチェックする(ステップS137)。
受信コマンドがヘッドフォンA22又はB23によってサポートされているときには、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返す(ステップS138)。そして、ヘッドフォンA22並びにB23に該コマンドを転送して(ステップS139、S140)、本処理ルーチン全体を終了する。他方、受信コマンドがヘッドフォンA22又はB23によってサポートされていない場合には、コマンド送信元のリモコン24に対して該コマンドに対応していないことを示すNOT IMPLEMENTEDレスポンスを返して(ステップS141)、本処理ルーチン全体を終了する。
図17には、本体制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24から送信されたコマンドを処理するための手順をフローチャートの形式で示している。
メディア・プレーヤ21内のシステム制御ブロックは、リモコン24から受信したコマンドを見て(ステップS142)、該コマンドはメディア・プレーヤ21本体がサポートしているコマンドのリスト([表2]を参照のこと)に載っているコマンドであるか否かをチェックする(ステップS143)。
メディア・プレーヤ21自身がサポートするコマンドである場合には、同一機種21内のプレーヤ制御ブロックにコマンドを渡す(ステップS144)。このとき、プレーヤ制御ブロックに故障などの異常が発生してコマンドが実行できない状態になっていないかどうかを確認する(ステップS145)。
実行可能である場合には、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返し(ステップS146)、本処理ルーチン全体を終了する。また、コマンドをサポートしているが、現在実行することができない状態である場合には、コマンドの不受理を示すREJECTEDレスポンスを返し(ステップS147)、本処理ルーチン全体を終了する。また、受信したコマンドがメディア・プレーヤ21自身がサポートするコマンドではなかった場合には、コマンド送信元のリモコン24に対して該コマンドに対応していないことを示すNOT IMPLEMENTEDレスポンスを返して(ステップS148)、本処理ルーチン全体を終了する。
次いで、Bluetoothピコネット内での、システム・コントローラとしてのBluetoothマスタ機器によるAVRCPコントローラ及びAVRCPターゲット間のコマンド転送処理を例にとって、本発明の実施例について説明する。
図18には、Bluetoothワイヤレス・ネットワークの1つのピコネット30内に1台のマスタ機器31と、4台のスレーブ機器32,33,34,35が存在する様子を示している。
既に述べたように、マスタ機器31には、通信の秩序を保つように制御機能が与えられている。同一のピコネット10内に複数のスレーブが存在している場合には、同報通信を除いてスレーブとマスタ間の通信は、それらすべてのスレーブで時分割多重しながら共有されている。時分割多重の単位は「時間スロット」と呼ばれる625μsecの時間間隔である。
同一のピコネット10に存在するマスタと各スレーブの送受信パケットの方向は、スロット番号が偶数の場合はマスタからスレーブへのパケットの送信が行なわれ、スロット番号が奇数の場合はスレーブからマスタへのパケットの送信が行なわれる。このようにBluetoothでは、マスタと各スレーブの間でのパケットの送受信が可能であるが、スレーブ間での直接的な送受信はできない。
図18に示す例では、ピコネット30内には、マスタ機器としてのメディア・プレーヤ31と、スレーブ機器としてのテレビ(TV)チューナ32と、スレーブ機器としてのヘッドフォン33並びに34と、同じくスレーブ機器としてのリモコン35が存在する。リモコン35は、メディア・プレーヤ31に対するメディアの再生、停止、一時停止、早送り、巻き戻しなどの再生制御や、TVチューナ32に対する選局制御、ヘッドフォン33及び34に対する音量調節などの制御を遠隔的に行なうための装置である。
ピコネット30内では、Bluetoothのアプリケーション・プロファイルの1つであるAV Remote Control Profile(AVRCP)が実装されている。そして、スレーブ機器であるリモコン35は、AVRCPプロファイル上では、ピコネット30内の他の機器すなわちターゲットにコマンドを送信するコントローラの機能を備えている。また、マスタ機器であるメディア・コントローラ31は、コマンドを送信するコントローラ及びコマンドをサポートするターゲットの双方の機能を備えている。また、スレーブ機器であるテレビ・チューナ32、ヘッドフォンA33並びにヘッドフォンB34は、AVRCPコントローラが発行するコマンドをサポートするAVRCPターゲットとしての機能を装備している。
ピコネット30のマスタ機器であるメディア・プレーヤ31は、システム・コントローラとして稼働して、ピコネット30内の各スレーブ機器に問い合わせて、それぞれが制御プロファイルAVRCP上でコントローラ機能並びにターゲット機能を装備しているか否かを問い合わせることができる。
また、システム・コントローラとしてのメディア・コントローラ31は、さらに、ピコネット30内でAVRCPターゲットとして機能する各スレーブ機器32,33,34に問い合わせて、それぞれがサポートするコマンドを検知することができる。そして、メディア・コントローラ31は、このピコネット30内でのコマンド・リストを作成する。作成されたコマンド・リストの例を、以下の[表3]に示しておく。
次いで、システム・コントローラとしてのメディア・プレーヤ31が、ピコネット30内で、制御プロファイルAVRCP上のターゲットとして機能する各スレーブ機器32〜34に対して機能を問い合わせる処理手順について、図19を参照しながら説明する。
マスタ機器でありシステム・コントローラでもあるメディア・コントローラ31は、まず、スレーブ機器としてのTVチューナ32とService Discovery Protocol(SDP)用のL2CAPチャンネルを張り、さらに、Service Discovery手続により、TVチューナ32が制御プロファイルAVRCP上のターゲット機器であること、並びにチューナ機能とアンプ機能に対応していることを検知する。その後、メディア・プレーヤ31は、TVチューナ32とのL2CAPチャンネルを解く。
次いで、メディア・コントローラ31は、ピコネット30内の他のスレーブ機器であるヘッドフォンA33とService Discovery Protocol(SDP)用のL2CAPチャンネルを張り、次いで、Service Discovery手続により、ヘッドフォンA33が制御プロファイルAVRCP上のターゲット機器であること、並びにヘッドフォン機能に対応していることを検知する。その後、メディア・プレーヤ31は、ヘッドフォンA33とのL2CAPチャンネルを解く。
次いで、メディア・コントローラ31は、ピコネット30内の他のスレーブ機器であるヘッドフォンB34とService Discovery Protocol(SDP)用のL2CAPチャンネルを張り、次いで、Service Discovery手続により、ヘッドフォンB34が制御プロファイルAVRCP上のターゲット機器であること、並びにヘッドフォン機能に対応していることを検知する。その後、メディア・プレーヤ31は、ヘッドフォンB34とのL2CAPチャンネルを解く。
さらに、システム・コントローラとしてのメディア・プレーヤ31は、スレーブ機器としてのTVチューナ32と、今度はコントロール用のL2CAPチャンネルを張り、Specific Inquiryを用いて、TVチューナ32がAVRCPターゲットとしてサポートするコマンドを問い合わせて、そのサポート・コマンドを検知する。
次いで、メディア・プレーヤ31は、スレーブ機器としてのヘッドフォンA33と、コントロール用のL2CAPチャンネルを張り、Specific Inquiryを用いて、ヘッドフォンA33がAVRCPターゲットとしてサポートするコマンドを問い合わせて、そのサポート・コマンドを検知する。
次いで、メディア・プレーヤ31は、スレーブ機器としてのヘッドフォンB34と、コントロール用のL2CAPチャンネルを張り、Specific Inquiryを用いて、ヘッドフォンB34がAVRCPターゲットとしてサポートするコマンドを問い合わせて、そのサポート・コマンドを検知する。
このように、システム・コントローラとしてのメディア・プレーヤ31は、ピコネット30内の各AVRCPターゲット機器との間で、通常のBluetooth通信を利用することにより、それぞれがサポートするコマンドを検知することができ、この結果、上記の[表3]に示したようなコマンド・リストを作成することができる。
次いで、図20を参照しながら、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットに対してSpecific Inquiryによりサポート・コマンドを問い合わせる処理をさらに詳細に説明する。但し、以下の説明では、AVRCPターゲットとしてのヘッドフォンB34に対してサポート・コマンドを問い合わせるものとする。
システム・コントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのヘッドフォンB34に対して、コマンド”volume up”をサポートするか否かを問い合わせるSpecific Inquiryメッセージを送信する。
このSpecific Inquiryメッセージ・フレームは、PASS THROUGHコマンドを適用することができるが、図21にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Specific Inquiry”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”volume up”)を書き込む。
これに対し、AVRCPターゲットとしてのヘッドフォンB34は、問い合わされたコマンド”volume up”をサポートするので、Implementedメッセージを返信する。
このImplementedメッセージ・フレームは、PASS THROUGHコマンドを適用することができるが、図22にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Implemented”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”volume up”)を書き込む。
また、システム・コントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのヘッドフォンB34に対して、コマンド”input select”をサポートするか否かを問い合わせるInquiryメッセージを送信する。
このSpecific Inquiryメッセージ・フレームは、PASS THROUGHコマンドを適用することができるが、図23にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Specific Inquiry”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”input select”)を書き込む。
これに対し、AVRCPターゲットとしてのヘッドフォンB34は、問い合わされたコマンド”input select”をサポートしていないので、Not Implementedメッセージを返信する。
このNot Implementedメッセージ・フレームは、PASS THROUGHコマンドを適用することができるが、図24にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Not Implemented”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”input select”)を書き込む。
次いで、図25を参照しながら、AVRCPコントローラとして機能するリモコン35が、システム・コントローラとしてのメディア・プレーヤ31を介して各AVRCPターゲットに向けてPASS THROUGHコマンドを送信して遠隔操作する処理手順について説明する。
システム・コントローラとしてのメディア・プレーヤ31fはピコネット30内におけるマスタ機器でもある、という点を充分理解されたい。また、以下に示す例では、リモコン35は、F1コマンドによりTVチューナ制御モードに、F2コマンドによりヘッドフォンA制御モードに、F3コマンドによりヘッドフォンB制御モードに、それぞれ設定することができるものとする。
AVRCPコントローラであるリモコン35は、ピコネット30内ではスレーブ機器であり、マスタ機器でありシステム・コントローラでもあるメディア・プレーヤ31としか通信することができない。そこで、AVRCPターゲットとしての他のスレーブ機器32〜34に対するコマンドを送信したいときには、まず、マスタ機器としてのメディア・プレーヤ31とコントロール用のL2CAPチャンネルを張る。
そして、メディア・プレーヤ31とコントロール用のL2CAPチャンネルが確立した状態で、リモコン35は、システム・コントローラとしてのメディア・プレーヤ31にF1コマンドを送信する。
これに対しメディア・プレーヤ31側では、受信したF1コマンドを解釈して、TVチューナ32の制御モードを設定する。
さらに、AVRCPコントローラとしてのリモコン35は、AVRCPターゲットとしてのメディア・プレーヤ31に対して、muteコマンドを送信する。
これに対し、メディア・プレーヤ31側では、[表3]に示したようなコマンド・リストを参照して、muteコマンドはTVチューナ32、並びにヘッドフォンA33の双方でサポートされているコマンドであることを検知する。但し、この場合は、先にF1コマンドが発行されてTVチューナ制御モードが設定されている。そこで、AVRCPコントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのTVチューナ32にのみmuteコマンドを転送する。
次いで、AVRCPコントローラとしてのリモコン35は、AVRCPターゲットとしてのメディア・プレーヤ31に対して、channel upコマンドを送信する。
これに対し、メディア・プレーヤ31側では、上記の[表3]に示したようなコマンド・リストを参照して、channel upコマンドはTVチューナ32のみでサポートされているコマンドであることを検知する。そして、AVRCPコントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのTVチューナ32にchannel upコマンドを転送する。
次いで、AVRCPコントローラとしてのリモコン35は、AVRCPターゲットとしてのメディア・プレーヤ31に対して、playコマンドを送信する。
これに対し、メディア・プレーヤ31側では、上記の[表3]に示したようなコマンド・リストを参照して、playコマンドはメディア・プレーヤ31自身のみがサポートするコマンドであることを検知する。そこで、AVRCPターゲットとしてのメディア・プレーヤ31は、自らplayコマンドを実行する。
次いで、リモコン35は、システム・コントローラとしてのメディア・プレーヤ31にF3コマンドを送信する。
これに対しメディア・プレーヤ31側では、受信したF3コマンドを解釈して、ヘッドフォンB34の制御モードを設定する。
さらに、AVRCPコントローラとしてのリモコン35は、AVRCPターゲットとしてのメディア・プレーヤ31に対して、volume upコマンドを送信する。
これに対し、メディア・プレーヤ31側では、[表3]に示したようなコマンド・リストを参照して、volume upコマンドはTVチューナ32、ヘッドフォンA33、並びにヘッドフォンB34の双方でサポートされているコマンドであることを検知する。但し、この場合は、先にF3コマンドが発行されてヘッドフォンB制御モードが設定されている。そこで、AVRCPコントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのヘッドフォンB34にのみvolume upコマンドを転送する。
次いで、図26を参照しながら、AVRCPコントローラとして機能するリモコン35が、システム・コントローラとしてのメディア・プレーヤ31にPASS THROUGHコマンドを送信することによってAVRCPターゲットである他のスレーブ機器遠隔操作する処理手順についてさらに詳細に説明する。但し、以下の説明では、リモコン35は、AVRCPターゲットとしてのTVチューナ32の遠隔操作を行うものとする。
AVRCPコントローラであるリモコン35は、ピコネット30内ではスレーブ機器であり、マスタ機器であるメディア・プレーヤ31としか通信することができない。そこで、まず、TVチューナ制御モードを設定すべく、F1コマンドをメディア・プレーヤ31に送信する。
このF1コマンド送信には、PASS THROUGHコマンドを適用することができるが、図27にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Control”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”F1”)を書き込む。
これに対し、システム・コントローラとしてのメディア・プレーヤ31は、F1コマンドを受理して、TVチューナ制御モードを設定するとともに、AVRCPコントローラとしてのリモコン35に対して、F1コマンドを受理した旨を示すAcceptedメッセージを返信する。
このAcceptedメッセージの送信には、PASS THROUGHコマンドを適用することができるが、図28にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Accepted”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”F1”)を書き込む。
また、スレーブ機器でありAVRCPコントローラであるリモコン35は、マスタ機器でありAVRCPターゲットであるメディア・プレーヤ31に対して、muteコマンドを送信する。
このmuteコマンド送信には、PASS THROUGHコマンドを適用することができるが、図29にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Control”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”mute”)を書き込む。
これに対し、システム・コントローラとしてのメディア・プレーヤ31は、muteコマンドを受理して、上記の[表3]に示したようなコマンド・リストを参照して、muteコマンドがピコネット30内のAVRCPターゲットによってサポートされたコマンドであることを検知すると、AVRCPコントローラとしてのリモコン35に対して、muteコマンドを受理した旨を示すAcceptedメッセージを返信する。
このAcceptedメッセージの送信には、PASS THROUGHコマンドを適用することができるが、図30にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Accepted”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”mute”)を書き込む。
ピコネット30内では、TVチューナ32、並びにヘッドフォンA33の各AVRCPターゲットがmuteコマンドをサポートする。但し、この場合には、既にF1コマンドが発行されてTVチューナ制御モードに設定されている。そこで、システム・コントローラであるメディア・プレーヤ31は、AVRCPコントローラとして、AVRCPターゲットであるTVチューナ32に対して、muteコマンドを転送する。
このmuteコマンド送信には、PASS THROUGHコマンドを適用することができるが、図31にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Control”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”mute”)を書き込む。
AVRCPターゲットであるTVチューナ31は、自身がサポートするmuteコマンドを受信すると、AVRCPコントローラとしてのメディア・プレーヤ31に対して、muteコマンドを受理した旨を示すAcceptedメッセージを返信する。ピコネット30内では、メディア・プレーヤ31はマスタ機器であり、TVチューナ32はスレーブ機器なので、両機器間で通信が可能である。
このAcceptedメッセージの送信には、PASS THROUGHコマンドを適用することができるが、図32にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Accepted”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”mute”)を書き込む。
追補
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。
本明細書では、無線通信技術としてBluetoothを例にとって、同一ピコネット内のスレーブ機器間でリモート・コントロールを行なう方式について説明してきたが、本発明の要旨はBluetooth技術を適用した無線接続には限定されない。すなわち、同じピコネット内ではマスタ機器とスレーブ機器が定義され、且つ、マスタ機器〜スレーブ機器間の通信を基調としてデータやコマンドの交換が行なわれるような同種の無線通信技術についても本発明を適用することかできる。
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
[産業上の利用可能性]
本発明によれば、ワイヤレス接続された機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することができる。
また、本発明によれば、Bluetoothのように1台のマスタ(master)機器と複数台のスレーブ(slave)機器によって構成されるピコネット(piconet)内においてスレーブ機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することができる。
また、本発明によれば、ピコネット内において、マスタ機器としか直接接続されない2台以上のスレーブ機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することができる。
また、本発明によれば、Bluetoothの遠隔制御用プロファイルを用いて、同一ピコネット内のスレーブ機器間でリモート・コントロールを行なうことができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することができる。
また、本発明によれば、AV Remote Control Profile(AVRCP)などの従来のBluetooth制御用プロファイルを用いて、マスタ機器を介在させたスレーブ機器による他のスレーブ機器のコントロールを実現することができる、優れた無線通信制御装置及び無線通信制御方法、並びに記憶媒体を提供することができる。
本発明によれば、Bluetoothワイヤレス接続におけるマスタ及びスレーブの役割の特徴を活かし、マスタ機器がシステム・コントローラとなって、ピコネット内の各スレーブ機器がサポートする制御機能を一元的に管理することにより、各スレーブ機器はマスタ以外の機器の存在を意識することなく、結果としてピコネット内のスリーブ機器間での制御を行なうことが可能となる。
システム・コントローラというマスタ機器内のアプリケーションがピコネット内の各スレーブ機器の機能を管理することにより、各Bluetooth機器が実装する制御プロファイルは従来通りのままでよい。すなわち、本発明を具現化するために、制御プロファイルを新たに作成したり設計変更を行なう必要がなく、既存のBluetooth機器をスレーブ機器としてそのまま使用することができる。
【図面の簡単な説明】
図1は、本発明の第1の実施形態に係るBluetoothピコネット内の構成を模式的に示した図である。
図2は、図1に示したピコネット10を構成する各機器11〜13の構成を模式的に示した機能ブロック図である。
図3は、AV Remote Control Profile(AVRCP)のプロファイル・スタック構造を模式的に示した図である。
図4は、PASS THROUGHコマンドを例に、AVRCPコマンド・フレームの構造を示した図である。
図5は、Bluetoothワイヤレス・ネットワークの1つのピコネット20内に同じカテゴリーのスレーブ機器が複数存在する例を示した図である。
図6は、図5に示すようなピコネット20内における、システム・コントローラとしてのメディア・プレーヤ21によるシステム・コントロールの処理手順を概略的に示したフローチャートである。
図7は、ヘッドフォンA制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24からの送信コマンドを処理する手順を概略的に示したフローチャートである。
図8〜図17は、図5に示すピコネット20内におけるメディア・プレーヤ21によるシステム・コントロールの処理手順を示したフローチャートである。
図18は、Bluetoothワイヤレス・ネットワークの1つのピコネット30内に1台のマスタ機器31と、4台のスレーブ機器32,33,34,35が存在する様子を示した図である。
図19は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットとして機能する各スレーブ機器32〜34に対して機能を問い合わせる処理手順を示したチャートである。
図20は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットとして機能するスレーブ機器に対してSpecific Inquiryサポート・コマンドを問い合わせる処理手順を示したチャートである。
図21は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットとしてのヘッドフォンB34に対してコマンド”volume up”をサポートするか否かを問い合わせるためのInquiryメッセージ・フレームの構造を模式的に示した図である。
図22は、AVRCPターゲットとしてのヘッドフォンB34がシステム・コントローラとしてのメディア・プレーヤ31に対してコマンド”volume up”をサポートする旨を返すためのImplementedメッセージ・フレームの構造を模式的に示した図である。
図23は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットとしてのヘッドフォンB34に対してコマンド”input select”をサポートするか否かを問い合わせるためのInquiryメッセージ・フレームの構造を模式的に示した図である。
図24は、AVRCPターゲットとしてのヘッドフォンB34がシステム・コントローラとしてのメディア・プレーヤ31に対してコマンド”input select”をサポートしない旨を返すためのNot Implementedメッセージ・フレームの構造を模式的に示した図である。
図25は、AVRCPコントローラとして機能するリモコン35が、システム・コントローラとしてのメディア・プレーヤ31を介して各AVRCPターゲットに向けてコマンドを送信して遠隔操作する処理手順を示したチャートである。
図26は、AVRCPコントローラとして機能するリモコン35が、システム・コントローラとしてのメディア・プレーヤ31にPASS THROUGHコマンドを送信することによってAVRCPターゲットである他のスレーブ機器遠隔操作する処理手順を説明するためのチャートである。
図27は、AVRCPコントローラとしてのリモコン35がシステム・コントローラとしてのメディア・プレーヤ31に対してF1コマンドを送信するためのControlメッセージ・フレームの構造を模式的に示した図である。
図28は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPコントローラとしてのリモコン35に対してF1コマンドを受理した旨を返すためのAcceptedメッセージ・フレームの構造を模式的に示した図である。
図29は、AVRCPコントローラとしてのリモコン35がシステム・コントローラとしてのメディア・プレーヤ31に対してMuteコマンドを送信するためのControlメッセージ・フレームの構造を模式的に示した図である。
図30は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPコントローラとしてのリモコン35に対してMuteコマンドを受理した旨を返すためのAcceptedメッセージ・フレームの構造を模式的に示した図である。
図31は、AVRCPコントローラとしてのメディア・コントローラ31がAVRCPターゲットとしてのTVチューナ32に対してMuteコマンドを送信するためのControlメッセージ・フレームの構造を模式的に示した図である。
図32は、AVRCPターゲットとしてのTVチューナ32がAVRCPコントローラとしてのメディア・プレーヤ31に対してMuteコマンドを受理した旨を返すためのAcceptedメッセージ・フレームの構造を模式的に示した図である。
本発明は、複数の機器間をワイヤレスで接続するための無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムに係り、特に、所定の通信セル内でワイヤレス接続された機器間で機器操作用のコマンドの交換を制御するための無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムに関する。
さらに詳しくは、本発明は、Bluetoothのように1台のマスタ(master)機器と複数台のスレーブ(slave)機器によって構成されるピコネット(piconet)内において機器間で機器操作用のコマンドの交換を交換するための無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムに係り、特に、ピコネット内においてマスタ機器としか直接接続されない2台以上のスレーブ機器間で機器操作用のコマンドの交換を制御するための無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムに関する。
[背景技術]
最近、近距離の無線通信技術が脚光を浴び始めている。この種の無線通信方式によれば、機器や端末間の通信をコードレスで確立することができるので、機器どうしの接続作業が簡素化されるとともに、各機器の設置場所を選ぶ必要がなくなるので、利便性が高い。近距離無線通信は、例えばホーム・ネットワークなどのように、局所的で、ネットワーク・ケーブルの敷設が現実的でない場所における伝送媒体としても大いに期待されている。
近距離無線通信は、例えば、コンピュータ本体とその周辺機器間のデータ転送の他に、携帯型情報機器間のデータ交換や、電話機本体や携帯型音楽再生機とヘッドセット、親機と子機などの間におけるデータや音声の伝送に利用することができる。
近距離無線通信の代表例である”Bluetooth”は、さまざまな業界に対して適用可能なワイヤレス接続インターフェースを提供する標準規格であり、”Bluetooth SIG(Special Interest Group)”にその運営・管理が委ねられている。
Bluetoothは、2.4GHzのISM(Industry Science Medical)バンドと呼ばれるグローバルな無線周波数を使用し、全体のデータ伝送速度は1Mbpsであり、その中には電話の音声伝送に利用可能な64kbpsの同期伝送チャンネルと、データ伝送のための非同期伝送チャンネルが設けられている。前者の同期伝送チャンネルは、SCO(Synchronous Connection Oriented Link)伝送方式が採用され、回線接続に適用される。また、後者の非同期伝送チャンネルは、ACL(Asynchronous Connection Less Link)伝送方式が採用され、パケット交換によるデータ伝送に適用される。Bluetoothによる機器間の接続範囲は10m程度であるが、追加増幅器を使用することによって、さらに100mまで延長することができる。
Bluetoothの技術仕様は、「コア(Core)」と「プロファイル(Profile)」に大別される。コアは、Bluetoothが提供するワイヤレス接続の基礎を定義する。これに対し、プロファイルは、Bluetoothのコアに基づいて各種の機能やアプリケーションを開発して機器に組み込む際に、機器間の相互接続性を保証するための各機能毎に規定された技術要件の集まりである。
Bluetoothのプロファイルは複数存在し、その組み合わせにより1つのアプリケーション(「利用モデル(Usage)」とも呼ぶ)を提供する。実際には、アプリケーションを提供するプロファイルの組み合わせがコアとともにBluetooth製品に実装されることになる。
例えば、携帯電話やパーソナル・コンピュータ関連のプロファイルを始めとして、自動車、ネットワーク、プリンタ、オーディオ、ビデオなど、さまざまなBluetoothプロファイルが想定される。例えば、オーディオ・ビジュアル(AV)機器向けのリモコン制御用のプロファイルとして、”Bluetooth AV Remote Control Profile”(AVRCP)を挙げることができる。
Bluetoothは、本来、モバイル端末間を接続するためのワイヤレス通信技術であるが、勿論、固定装置への適用も図られている。例えば、電話機本体と子機間の接続、携帯型音楽再生機とヘッドセット、あるいは、ステレオ・コンポ(あるいはその他のメディア・プレーヤ)とスピーカ(あるいはディスプレイなどその他の出力装置)との接続に、Bluetoothに基づくワイヤレス接続を適用することができる。
機器間接続にBluetoothに基づくワイヤレス通信を適用することにより、ケーブル接続時に拘束されているコネクタ固有の形状や特性などの問題から解放される。また、Bluetoothは、2.4GHzのISM(Industry Science Medical)バンドと呼ばれるグローバルな無線周波数帯域を使用する世界規模の標準規格であることから、通信環境のグローバル化を進めることが容易となる。
Bluetoothは、1対1のケーブル代替接続だけではなく、1対多の簡易ワイヤレス・ネットワークの構築も提供する。このため、Bluetooth通信に関わる機器群の中の1つに制御機能を与えることで通信の秩序を保つようにしている。制御機能を与えられた機器のことを「マスタ(Master)」機器と呼び、それ以外を「スレーブ(Slave)」機器と呼ぶ。また、マスタ及びスレーブとなった機器群が通信状態にあるネットワークのことを「ピコネット(piconet)」と呼ぶ。
ピコネット内では、「ピコネット内同期」がとられており、通信状態にあるすべてのBluetooth機器は、マスタ機器を基準とした同一の周波数ホッピング・パターンと時間スロットを有している状態にある。時間スロットはマスタ機器が提供するBluetoothクロックを基準として各スレーブ機器が形成する。
ピコネット内には、必ず1つだけマスタ機器が存在し、このマスタ機器が1台以上のスレーブを制御しながら通信を行なう。また、ピコネット内では、すべてのパケットはマスタ機器とスレーブ機器の間でのみ受信され、スレーブ機器どうしが直接通信を行なうことはできない。
そして、1つのピコネット内で同じ通信できるスレーブは最大7台までと決められている。これらにマスタ機器を含めて、最大で8台のBluetooth機器がピコネット内で同時通信を行なうことができる。
ここで、Bluetooth通信において、スレーブ機器間で機器制御を行いたいという要請がある。例えば、オーディオ・ビジュアル(AV)機器の分野において、Bluetooth通信を導入した場合、ステレオ・コンポやメディア・プレイヤをマスタ機器として定義する一方で、出力ターゲットとしてのTVやヘッドフォン、さらには、この出力機器を遠隔操作するリモコンをスレーブ機器として定義することができる。このようなBluetoothピコネット内では、ユーザは、マスタ機器としてのステレオ・コンポがTVやヘッドフォンなどのターゲットをコントロールできることは勿論のこと、スレーブ機器としてのリモコン上からも、TVの選局や音量調節、ヘッドフォンの音量調節などを行えなければ意味がない。しかしながら、既に述べたように、Bluetoothでは、スレーブ機器間の直接通信を行なうことはできない。
例えば、Bluetooth対応のAV機器制御用プロファイルの1つとして、”AV Remote Control Profile”(AVRCP)を挙げることができる。しかしながら、Bluetoothは本来、1台のマスタ機器と複数のスレーブ機器で1つのピコネットを構成し通信することができるが、このAVRCP制御プロファイルは、マスタ機器と1台のスレーブ機器間での1対1の制御のみを実現するものである。
スレーブ機器であるリモコンからマスタ機器を介してもう一方のスレーブ機器の制御を行うためには、それを可能とするメカニズムを新たに定義して、新規の制御用プロファイルとして実装する方法を考えることができる。しかしながら、新たな制御用プロファイルを用いて、マスタ機器を介在させたスレーブ機器による他のスレーブ機器のコントロールを実現させた場合、従来のAV Remote Control Profileのだけ対応した機器で実現することは当然できない。
[発明の開示]
本発明の目的は、ワイヤレス接続された機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明のさらなる目的は、Bluetoothのように1台のマスタ(master)機器と複数台のスレーブ(slave)機器によって構成されるピコネット(piconet)内において機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明のさらなる目的は、ピコネット内において、マスタ機器としか直接接続されない2台以上のスレーブ機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明のさらなる目的は、Bluetoothの遠隔制御用プロファイルを用いて、同一ピコネット内のスレーブ機器間でリモート・コントロールを行なうことができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明のさらなる目的は、AV Remote Control Profileなどの従来のBluetooth制御用プロファイルを用いて、マスタ機器を介在させたスレーブ機器による他のスレーブ機器のリモート・前記ピコネット内でコントロールを実現することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することにある。
本発明は、上記課題を参酌してなされたものであり、その第1の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されて、各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御する無線通信制御装置又は無線通信制御方法であって、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せ手段又はステップと、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せ手段又はステップと、
各ターゲット機器がサポートするコマンドを管理するサポート・コマンド管理手段又はステップと、
を具備することを特徴とする無線通信制御装置又は無線通信制御方法である。
本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法が適用される通信セル内では、各スレーブ機器はマスタ機器とのみ通信可能である以外に、所定の制御プロファイル上では、マスタ機器及びスレーブ機器の各々は、コマンドを発行するコントローラ、及び/又は、コマンドをサポートするターゲットとして動作することができる。
また、本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法は、このような通信セル内においてマスタとなる機器に適用することで、発明の効果を好適に奏することができる。また、このようなマスタ機器自身は、所定の制御プロファイル上では、コントローラ及びターゲットの双方として機能することができるものとする。また、前記サポート・コマンド管理手段又はステップは、マスタ機器自身のサポート・コマンドも管理するようにする。
本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法によれば、マスタ機器がシステム・コントローラとなって、通信セル内でターゲットとして稼働する各スレーブ機器の制御機能すなわちサポート・コマンドを管理する。また、通信セル内でコントローラとして稼働するスレーブ機器が他のスレーブ機器を制御したいときには、このマスタ機器をターゲットとしてコマンドを発行する。そして、マスタ機器はコントローラとして、コマンドをサポートするターゲットすなわち他のスレーブ機器にコマンドを転送することができる。
したがって、通信セル内の各スレーブ機器は、所定の制御プロファイル上でコントローラとして機能する場合には、マスタ以外の機器の存在を意識することなく、通信セル内のターゲットに対するコマンドを発行することができる。同様に、所定の制御プロファイル上でターゲットとして機能する各スレーブ機器は、マスタ以外の機器の存在を意識することなく(すなわちコントローラとして機能する他のスレーブ機器からのコマンドであるか否かを意識することなく)、マスタ機器から受信したコマンドを実行すればよい。
略言すれば、コントローラとして稼働するスレーブ機器はマスタ機器をターゲットとしてコマンドを送信し、他方のターゲットとして稼働するスレーブ機器はマスタ機器から受信したコマンドだけを処理すればよい。すなわち、本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法によれば、各スレーブ機器はマスタ機器とのみ通信可能な通信セル内において、マスタ機器の介在により、スレーブ機器間での制御を実現することができる訳である。
本発明の第1の側面に係る無線通信制御装置及び無線通信制御方法は、前記通信セル内のコントローラからコマンドを受信するコマンド受信手段又はステップと、受信コマンドを処理するコマンド処理手段又はステップとをさらに備えていてもよい。
このような前記コマンド処理手段又はステップは、前記サポート・コマンド管理手段に問い合わせて、受信コマンドをサポートするターゲットに該コマンドを転送するようにすればよい。
また、前記コマンド処理手段又はステップは、前記サポート・コマンド管理手段に問い合わせて、本発明の第1の側面に係る無線通信制御装置又は無線通信制御方法を実装したマスタ機器自身が、受信コマンドをサポートする場合にはマスタ機器自身にこのコマンドを実行させるようにすればよい。
また、前記通信セル内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合には、コマンド送信元であるコントローラ機器は、特定のターゲット機器をコマンドを実行させる機器として指定する機能を備えていてもよい。
あるいは、コマンド受信時の受信履歴を記憶する受信履歴記憶手段又はステップと、前記受信履歴記憶手段又はステップに記憶された最新履歴を基に受信したコマンドを実行するターゲットを特定するターゲット特定手段又はステップとをさらに備えていてもよい。
このような場合には、前記コマンド処理手段又はステップは、コマンド送信元のコントローラ機器の指定に従って特定のターゲット機器にのみコマンドを転送するようにすればよい。
あるいは、前記コマンド処理手段又はステップは、前記通信セル内において、該受信したコマンドをサポートするすべてのターゲット機器にコマンドを転送するようにしてもよい。
また、本発明の第2の側面は、1台のマスタ(master)機器と複数台のスレーブ(slave)機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット(piconet)内において、機器間でのコマンド交換を行う無線通信制御装置又は無線通信制御方法であって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ(controller)機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット(target)機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、
前記ピコネット内でのBluetooth通信を確立する接続手段又はステップと、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握手段又はステップと、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握手段又はステップと、
を具備することを特徴とする無線通信制御装置又は無線通信制御方法である。
本発明の第2の側面に係る無線通信制御装置及び無線通信制御方法が適用されるBluetoothワイヤレス・ネットワークのピコネット内では、各スレーブ機器はマスタ機器とのみ通信可能である。また、所定の制御プロファイル上では、ピコネット内のマスタ機器及びスレーブ機器の各々は、コマンドを発行するコントローラ、及び/又は、コマンドをサポートするターゲットとして動作することができる。
また、本発明の第2の側面に係る無線通信制御装置及び無線通信制御方法は、このようなBluetoothワイヤレス・ネットワークのピコネット内においてマスタとなる機器に適用することで、発明の効果を好適に奏することができる。また、このようなマスタ機器自身は、所定の制御プロファイル上でコントローラ及びターゲットの双方として機能することができるものとする。また、前記サポート・コマンド把握手段又はステップは、マスタ機器自身のサポート・コマンドも管理するようにする。
本発明の第2の側面に係る無線通信制御装置及び無線通信制御方法によれば、マスタ機器がシステム・コントローラとなって、ピコネット内でターゲットとして稼働する各スレーブ機器の制御機能すなわちサポート・コマンドを管理することができる。そして、ピコネット内でコントローラとして稼働するスレーブ機器が他のスレーブ機器を制御したいときには、ターゲットとしてのマスタ機器にコマンドを発行すればよい。そして、マスタ機器はコントローラとして、コマンドをサポートするターゲットすなわち他のスレーブ機器にコマンドを転送することができる。
したがって、ピコネット内の各スレーブ機器は、所定の制御プロファイル上でコントローラとして機能する場合には、マスタ以外の機器の存在を意識することなく、ピコネット内のターゲットに対するコマンドを発行することができる。
同様に、所定の制御プロファイル上でターゲットとして機能する各スレーブ機器は、マスタ以外の機器の存在を意識することなく(すなわちコントローラとして機能する他のスレーブ機器からのコマンドであるか否かを意識することなく)、マスタ機器から受信したコマンドを実行すればよい。
略言すれば、コントローラとして稼働するスレーブ機器はマスタ機器をターゲットとしてコマンドを送信し、他方のターゲットとして稼働するスレーブ機器はマスタ機器から受信したコマンドを受信すればよい。すなわち、本発明の第2の側面に係る無線通信制御装置及び無線通信制御方法によれば、各スレーブ機器はマスタ機器とのみ通信可能なBluetoothワイヤレス・ネットワークのピコネット内において、マスタ機器の介在により、スレーブ機器間での制御を実現することができる訳である。
ここで、前記コントローラ/ターゲット機能把握手段又はステップは、例えば、ピコネット内の各スレーブ機器と論理リンク(L2CAP)を張り、Service Discovery Protocol(SDP)を用いることによって、各スレーブ機器に対してコントローラ機能並びにターゲット機能の問合せを行うことができる。
また、前記サポート・コマンド把握手段は、例えば、前記ピコネット内でターゲットとして稼働する各スレーブ機器と論理リンク(L2CAP)を張り、Specific Inquiryのような上位アプリケーション・プロトコルで定義された方式によって、サポートするコマンドの問合せを行なうことができる。
また、本発明の第2の側面に係る無線通信制御装置又は無線通信制御方法は、前記ピコネット内でコントローラとして稼働するスレーブ機器と接続してコマンドを受信する手段又はステップと、受信コマンドを処理するコマンド処理手段又はステップをさらに備えていてもよい。
このコマンド処理手段又はステップは、同じピコネット内で、受信コマンドをサポートするターゲットに該コマンドを転送するようにすればよい。
また、本発明の第2の側面に係る無線通信制御装置又は無線通信制御方法を実装したマスタ機器自身が自身コマンドをサポートするような場合には、前記コマンド処理手段又はステップは、マスタ機器自身に受信コマンドを実行させるようにしてもよい。
また、前記ピコネット内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合に、コマンド送信元であるコントローラ機器には、特定のターゲット機器をコマンドを実行させる機器として指定する機能を備えていてもよい。
あるいは、コマンド受信時の受信履歴を記憶する受信履歴記憶手段又はステップと、前記受信履歴記憶手段又はステップに記憶された最新履歴を基に受信したコマンドを実行するターゲットを特定するターゲット特定手段又はステップとをさらに備えていてもよい。
このような場合には、前記コマンド処理手段又はステップは、コマンド送信元のコントローラ機器の指定に従って特定のターゲット機器にのみコマンドを転送するようにすればよい。
あるいは、前記コマンド処理手段又はステップは、前記通信セル内において、該受信したコマンドをサポートするすべてのターゲット機器にコマンドを転送するようにしてもよい。
また、本発明の第3の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されて、各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、前記コンピュータ・ソフトウェアは、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せステップと、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せステップと、
各ターゲット機器がサポートするコマンドを管理するサポートコマンド管理ステップと、
を具備することを特徴とする記憶媒体である。
また、本発明の第4の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、前記コンピュータ・ソフトウェアは、
前記ピコネット内でのBluetooth通信を確立する接続ステップと、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握ステップと、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握ステップと、
を具備することを特徴とする記憶媒体である。
本発明の第3及び第4の各側面に係る記憶媒体は、例えば、さまざまなプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ・ソフトウェアをコンピュータ可読な形式で提供する媒体である。このような媒体は、例えば、CD(Compact Disc)やFD(Flexible Disk)、MO(Magneto−Opticaldisc)などの着脱自在で可搬性の記憶媒体である。あるいは、ネットワーク(ネットワークは無線、有線の区別を問わない)などの伝送媒体などを経由してコンピュータ・ソフトウェアを特定のコンピュータ・システムに提供することも技術的に可能である。
このような記憶媒体は、コンピュータ・システム上で所定のコンピュータ・ソフトウェアの機能を実現するための、コンピュータ・ソフトウェアと記憶媒体との構造上又は機能上の協働的関係を定義したものである。換言すれば、本発明の第3及び第4の各側面に係る記憶媒体を介して所定のコンピュータ・ソフトウェアをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第1及び第2の各側面に係る無線通信制御装置及び無線通信制御方法と同様の作用効果を得ることができる。
また、本発明の第5の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されて、各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せステップと、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せステップと、
各ターゲット機器がサポートするコマンドを管理するサポート・コマンド管理ステップと、
を具備することを特徴とするコンピュータ・プログラムである。
また、本発明の第6の側面は、1台のマスタ機器と複数台のスレーブ機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、
前記ピコネット内でのBluetooth通信を確立する接続ステップと、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握ステップと、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握ステップと、
を具備することを特徴とするコンピュータ・プログラムである。
本発明の第5及び第6の各側面に係るコンピュータ・プログラムは、コンピュータ・システム上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータ・プログラムを定義したものである。換言すれば、本発明の第5及び第6の各側面に係るコンピュータ・プログラムをコンピュータ・システムにインストールすることによって、コンピュータ・システム上では協働的作用が発揮され、本発明の第1及び第2の各側面に係る無線通信制御装置及び無線通信制御方法と同様の作用効果を得ることができる。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。
[発明を実施するための最良の形態]
以下、図面を参照しながら本発明の実施形態について詳解する。
まず、図1に示すような、Bluetoothワイヤレス・ネットワークの1つのピコネット10について考察してみる。既に述べたように、ピコネット10内には、通信の秩序を保つように制御機能が与えられた1台のマスタ機器と、最大7台までのスレーブ機器が存在する。
同一のピコネット10内に複数のスレーブが存在している場合には、同報通信を除いてスレーブとマスタ間の通信は、それらすべてのスレーブで時分割多重しながら共有されている。時分割多重の単位は「時間スロット」と呼ばれる625μsecの時間間隔である。
同一のピコネット10に存在するマスタと各スレーブの送受信パケットの方向は、スロット番号が偶数の場合はマスタからスレーブへのパケットの送信が行なわれ、スロット番号が奇数の場合はスレーブからマスタへのパケットの送信が行なわれる。このようにBluetoothでは、マスタと各スレーブの間でのパケットの送受信が可能であるが、スレーブ間での直接的な送受信はできない。
図1に示す例では、AV機器どうしのワイヤレス接続のためにBluetoothが適用されている。そして、このピコネット10内には、マスタ機器としてのメディア・プレーヤ11と、スレーブ機器としてのヘッドフォン12と、同じくスレーブ機器としてのリモコン13が存在する。リモコン13は、メディア・プレーヤ11に対するメディアの再生(play)、停止(stop)、一時停止(pause)、早送り(fast forward)、巻き戻し(rewind)などの再生制御や、ヘッドフォン12に対する音量調節(volume up/down)などの制御を遠隔的に行なうための装置である。
図2には、図1に示したピコネット10を構成する各機器11〜13の構成を模式的に示している。
メディア・プレーヤ11は、Bluetoothインターフェース・ブロック11Aと、信号生成ブロック11Bと、プレーヤ制御ブロック11Cと、システム制御ブロック11Dとで構成される。
Bluetoothインターフェース・ブロック11Aは、ピコネット10内におけるBluetoothワイヤレス接続を実現するための機能ブロックであり、ピコネット10内における各スレーブ機器12,13とのコマンド及びレスポンスの授受などを行なう。
信号生成ブロック11Bは、Bluetoothクロックなどピコネット10内の通信状態を制御するための信号を生成するための機能ブロックである。
プレーヤ制御ブロック11Cは、メディア・プレーヤ11上におけるメディアの再生、停止、一時停止、早送り、巻き戻しなどのメディア再生制御機能を実現するための機能ブロックである。
システム制御ブロック11Dは、ピコネット10内における各スレーブ機器12,13の統合的な制御を実現するための機能ブロックである。本実施形態では、システム制御ブロック11Dは、AV機器のリモート・コントロール用の制御プロファイルAVRCPにおけるコントローラ及びターゲットの機能を管理して、マスタ機器11を介在させたスレーブ機器による他のスレーブ機器のコントロール、すなわち、スレーブ機器としてのリモコン13による他のスレーブ機器としてのヘッドフォン12のコントロールを可能にする。但し、システム制御ブロック11Dによるピコネット10内のシステム・コントロールの詳細については後述に譲る。
ヘッドフォン12は、Bluetoothインターフェース・ブロック12Aと、ヘッドフォン制御ブロック12Bと、信号処理ブロック12Cとで構成される。
Bluetoothインターフェース・ブロック12Aは、ピコネット10内におけるBluetoothワイヤレス接続を実現するための機能ブロックであり、マスタ機器11とのコマンド及びレスポンス、並びにデータ・ストリームの授受などを行なう。
ヘッドフォン制御ブロック12Bは、ボリューム・アップ、ボリューム・ダウン、ミュートなどヘッドフォン12による音声出力機能を実現するための機能ブロックである。
信号処理ブロック12Cは、Bluetoothワイヤレス通信によりマスタ機器11から受信された制御信号や、ヘッドフォン制御ブロック12Bによる制御信号を処理する機能ブロックである。
本実施形態では、ヘッドフォン12は、従来のAV機器制御用プロファイル”AV Remote Control Profile”(AVRCP)だけに対応したスレーブ機器として構成することができる。
リモコン13は、Bluetoothインターフェース・ブロック13Aと、リモコン制御ブロック13Bとで構成される。
Bluetoothインターフェース・ブロック13Aは、ピコネット10内におけるBluetoothワイヤレス接続を実現するための機能ブロックであり、マスタ機器11とのコマンド及びレスポンスの授受などを行なう。
リモコン制御ブロック13Bは、メディア・プレーヤ11に対するメディアの再生、停止、一時停止、早送り、巻き戻しなどのメディア再生制御や、ヘッドフォン12に対するボリューム・アップ、ボリューム・ダウン、ミュートなどの音声出力制御などのリモート・コントロールを実現するための機能ブロックである。
本実施形態では、リモコン13は、ヘッドフォン12と同様に、従来のAV機器制御用プロファイル”AV Remote Control Profile”(AVRCP)だけに対応したスレーブ機器として構成することができる。
Bluetoothのアプリケーション・プロファイルの1つであるAV Remote Control Profile(AVRCP)は、赤外線リモコンと同様のAV機器制御をBluetoothワイヤレス・ネットワーク上で実現するものである。コマンドを送信する側を「コントローラ(Controller)」と呼び、コマンドを受けてレスポンスを返す側を「ターゲット(Target)」と呼ぶ。
図3には、AV Remote Control Profile(AVRCP)のプロファイル・スタック構造を模式的に図解している。
同図において、ベースバンド層、LMP層、及びL2CAP層の各層は、OSI(Open Systems Interconnect:開放型システム間相互接続)基本参照モデルの第1層及び第2層に相当するBluetoothプロトコルである。
AVCTP(AV Control Transport Protocol)層は、AV機器をコントロールするための処理手順やメッセージ交換を規定するプロトコル層である。
SDP層は、Bluetoothサービス・ディスカバリ・プロトコル(Service Discovery Protocol)を規定するプロトコル層であり、システム・コントローラとしてのマスタ機器11は該プロトコルを用いてピコネット10内の各スレーブ機器12,13が備えるコントローラ機能やターゲット機能を検出することができる。
AVコントロール層は、AV機器をAV/Cコマンド・ベースでコントロールするエンティティである。
本実施形態では、ヘッドフォン12は、外部からボリューム・アップ及びボリューム・ダウンの制御を行うことができるように、AVRCPのターゲット機能を実装している。
また、リモコン13は、ヘッドフォン12などの外部機器のリモート・コントロールを行なうことができるように、AVRCPのコントローラ機能を実装している。
また、メディア・プレーヤ11は、AVRCPのコントローラ及びターゲットの双方の機能を実装している。すなわち、ヘッドフォン12に対してボリュームのアップ/ダウンを指示するコマンドを送信するコントローラ機能と、リモコン13からメディアの再生や停止などのコマンドを受信して処理するターゲット機能とを備えている。
既に述べたように、本実施形態に係るピコネット10内では、メディア・プレーヤ11はBluetoothワイヤレス通信におけるマスタ機器として定義され、その他のヘッドフォン12及びリモコン13はスレーブ機器として定義されている。
ここで、さまざまなカテゴリの機器を遠隔制御することができる、いわゆる「万能リモコン」を例に考察してみる。
この種のリモコンには、再生(play)、停止(stop)、早送り(FF)、巻き戻し(rewind)、一時停止(pause)、ボリューム・アップ(volume up)、ボリューム・ダウン(volume down)、チャンネル・アップ(channel up)、チャンネル・ダウン(channel down)、上(up)、下(down)、右(right)、左(left)、実行(execute)などの各キーが配設されており、ユーザによるキー操作に応じて対応するコマンドを発行することができる。
本実施形態では、リモコン13はスレーブ機器として定義されているので、マスタ機器であるメディア・プレーヤ11としか通信することができない。言い換えれば、リモコン13から発される上述の各コマンドは、メディア・プレーヤ11に対してのみ送信することができる。
他方、リモコン13の通信相手であるメディア・プレーヤ11は、リモコン13から受信するコマンドのうち、メディア再生制御に関連する再生(play)、停止(stop)、早送り(FF)、巻き戻し(rewind)、一時停止(pause)などのコマンドを実行することはできるが、スピーカを内蔵していないので、ボリューム・アップ(volume up)、ボリューム・ダウン(volume down)などの音量調節に関するコマンドを実行することはできない。勿論、TVチューナを内蔵していないので、チャンネル・アップ(channel up)、チャンネル・ダウン(channel down)などのコマンドも実行することができない。
本実施形態に係るメディア・プレーヤ11は、後述するシステム制御ブロック11Dの機能により、ピコネット10内のシステム・コントローラとなって、自分が受信したボリューム・アップ(volume up)、ボリューム・ダウン(volume down)などのコマンドを、ヘッドフォン12に転送することができる。
システム制御ブロック11Dによって実現される、メディア・プレーヤ11のピコネット10内システム・コントロール機能の処理手順について、以下に説明する。
(1)ピコネット内でのBluetooth通信の確立
問い合わせ(inquiry)及び呼出し(page)のフェーズを経て、ピコネット10内のBluetooth通信の接続が確立される。この結果、ピコネット10内でシステム・コントローラとして稼働するメディア・プレーヤ11がマスタ機器として定義される。
なお、ここで行う問い合わせ(inquiry)は、ピコネット内同期を図るための第1段階の処理フェーズであり、マスタ機器11がその周辺すなわちピコネット10内のスレーブ機器12,13の存在を調査する。また、呼出し(page)は、ピコネット内同期を図るための第2段階の処理フェーズであり、問い合わせでの処理結果に基づいてマスタ機器11は特定のスレーブ機器12,13との間でピコネット内同期を確立させる。
(2)ピコネット内の各スレーブ機器のAVRCPコントローラ/ターゲット機能の把握
システム・コントローラとしてのメディア・プレーヤ11は、同じピコネット10内のスレーブ機器としてのヘッドフォン12及びリモコン13のそれぞれに対して、Service Discoveryを行うための論理リンク(L2CAP)のコネクションを張り、Service Discovery Protocol(SDP)を用いて、各スレーブ機器12,13がAVRCPプロファイルにおいて持つ機能を把握する。
図1に示す例では、システム・コントローラとしてのメディア・プレーヤ11は、SDPを用いて、リモコン13がAVRCPのコントローラ機能を備えていること、並びに、ヘッドフォン12がAVRCPのターゲット機能に対応していることを知る。また、本実施形態では、ヘッドフォン12は、AVRCPのカテゴリ2(monitor/amplifier)の機能に対応しているが、このこともSDP手続きにより把握される。(これらの情報は、service recordとして各機器に保持されている。)
システム・コントローラとしてのメディア・プレーヤ11は、次いで、ヘッドフォン12との間に機器コントロール用の論理リンク(L2CAP)のコネクションを張る。そして、メディア・プレーヤ11は、ヘッドフォンがAVRCPのどのコマンドをサポートしているかを調べるために、サポート問い合わせのコマンドを送る。AVRCPでは、AV機器制御のプロトコルとしてAV/Cコマンドを用いている(図3を参照のこと)。
リモコン制御用のコマンドとしては、AV/C Panel subunitで定義されているPASS THROUGHコマンドを適用する。図4には、PASS THROUGHコマンドを例に、AVRCPコマンド・フレームの構造を図解している。図示の通り、該コマンド・フレームは、パケット・ヘッダ,L2CAPヘッダ,AV Control Transport Protocol(AVCTP)ヘッダにAV/Cコマンドが続く構造となっている。パケット・ヘッダにはピコネット内で通信中のスレーブを特定するための識別子が含まれている。AV/Cコマンドでは、各コントロール・コマンドのサポート状態を問い合わせるために、SPECIFIC INQUIRYコマンドという種類のコマンドがある。コントロールと同じオペコード及びオペランドを付けてSPECIFIC INQUIRYコマンドを送ると、ターゲット装置における実際の動作を伴わずに実装の有無を確認することができる。このSPECIFIC INQUIRYにより、PASS THROUGHコマンドの各オペレーションの実装状態を知ることができる。
本実施形態では、ヘッドフォンがカテゴリ2に属していること(前述)があらかじめ分っているので、カテゴリ2のオペレーションのみを調べればよい。カテゴリ2におけるオペレーションを以下の[表1]に挙げておく。
カテゴリ2では、volume up並びにvolume downの2つはターゲット機器でのサポートがmandatory(義務)となっているので、ここでサポートの有無を調べる必要はない。例えば、ヘッドフォン12がvolume up並びにvolume down以外に、muteをサポートしていたとする。システム・コントローラとしてのメディア・プレーヤ11からそれぞれのオペレーションIDに対してSPECIFIC INQUUIRYを受信したヘッドフォン12は、実装しているこれら3種類のオペレーションに対応したコマンドに対してはIMPLEMENTEDというレスポンスを返す。その他の実装していないオペレーションに関する問い合わせに対してはNOT IMPLEMENTEDというレスポンスを返す。
(3)ピコネット内の各AVRCPターゲットのサポート・コマンドの管理
また、システム・コントローラであるメディア・プレーヤ11は、自分自身がターゲット機器として機能するときにサポートするコマンド、並びに、自分がコントローラとしてピコネット10内のターゲット機器(図1に示す例ではヘッドフォン12)を制御することができるコマンドのリスト(すなわち、ヘッドフォン12がサポートしているコマンド)を作成する。作成されたリストの例を以下の[表2]に示しておく。
(4)AVRCPコントローラとBluetoothマスタ機器との接続
リモコン13は、ピコネット10内では、AVRCPコントローラとして、メディア・プレーヤ11との間に論理リンク(L2CAP)のコネクションを張りにいく。これに対し、メディア・プレーヤ11は、システム・コントローラとして機能する準備が整った時点で、このコネクションに応じる。
(5)AVRCPコントローラからのコマンド送信
ユーザが、AV機器に対してコマンド送信にするために、リモコン13上の所望のキーを操作する。これに応答して、リモコン13は、AVRCPコントローラとしてAVRCPターゲットであるメディア・プレーヤ11に、該当するコマンドを送信する。
(6)AVRCPターゲットへのコマンド転送
AVRCPターゲットであるメディア・プレーヤ11は、システム制御ブロック11Dを内蔵している(前述)。このシステム制御ブロック11Dは、ピコネット10内のAVRCPコントローラ(図1に示す例では、リモコン13)から受信したコマンドを解析する。
コマンド解析の結果、”play”すなわちメディア再生開始など、[表2]の左欄すなわちメディア・プレーヤ11自身がサポートするメディア再生制御のためのコマンドである場合には、同一機器11内のプレーヤ制御ブロック11Cにコマンドを渡すとともに、要求元のリモコン13に対してはコマンド受理を示すACCEPTEDレスポンスを返す。
また、コマンド解析の結果、”volume up”などのように、[表2]の右欄すなわちメディア・プレーヤ11以外のAVRCPターゲット(図1に示す例では、ヘッドフォン12)がサポートするコマンドであった場合には、コマンド送信元のリモコン13に対してコマンド受理を示すACCEPTEDレスポンスを返すとともに、受信したコマンドをそのまま該コマンドをサポートする機器すなわちヘッドフォン12に転送する。
なお、システム制御ブロックが受信したコマンドが[表2]に載っていない、すなわちピコネット10内のいずれのAVRCPターゲットもサポートしていないコマンドである場合には、コマンド送信元のリモコン13に対して、コマンド不受理を示すNOT IMPLEMENTEDレスポンスを返して、受信コマンドの処理を無視する。
(7)AVRCPターゲットによるコマンド実行
上述したように、ヘッドフォン12に対してコマンドが転送された場合には、ヘッドフォン12は、Bluetoothマスタ機器としてのメディア・プレーヤ11がコントローラとなってvolume upのコマンドを送ったものと解釈して(言い換えれば、リモコン13からコマンドが発行されたことを意識することなく)、メディア・プレーヤ11に対してコマンド受理を示すACCEPTEDレスポンスを返すとともに、volume upコマンドを実行する。
上述したように、メディア・コントローラ11は、AVRCP制御プロファイル上では、自らターゲット機能並びにコントローラ機能を装備するとともに、システム制御ブロック11Dにおいてコマンド・リストを作成して、ピコネット10内の各ターゲット機器(図1に示す例では、ヘッドフォン12並びにメディア・プレーヤ11自身)がサポートするコマンドを把握する。
この結果、リモコン13は、自分がAVRCPコントローラとなって、メディア・プレーヤ11をヘッドフォン12の機能を持ったターゲットとして制御すればよい。したがって、リモコン13を従来のAVRCPに対応したスレーブ機器として構成することができる。
また、ヘッドフォン12は、AVRCPコントローラであるメディア・プレーヤ11からのコマンドを、AVRCPターゲットとして受信して実行するだけである。したがって、ヘッドフォン12を従来のAVRCPに対応したスレーブ機器として構成することができる。勿論、ヘッドフォン12は、受信したコマンドがリモコン13からのものであることを意識する必要はない。
次に、上述したようなBluetoothマスタ機器のシステム・コントローラ機能を利用したアプリケーションの一例について説明する。
例えば、マスタ機器としてのメディア・プレーヤ11にLCD(Liquid Crystal Display)表示機能が搭載されており(図示しない)、ここでAVRCPコマンド・コントロールに関する各種の設定を行なうことができるようになっているものとする。
このような場合、リモコン13上での操作をメディア・プレーヤ11本体だけに限定するか、あるいは同じピコネット10内の他のスレーブ機器すなわちターゲットまで対象にするかを、メニュー画面上(図示しない)で指定できるようにすることもできる。あるいは、LCDのような表示装置を用いるのではなく、コマンド転送に関するオン/オフ・スイッチあるいはこれと等価な機械ボタン(図示しない)をメディア・プレーヤ11本体に配設するようにしてもよい。
さらに高度なアプリケーションでは、1つのピコネット内に、同一カテゴリーの機器(すなわち、同じコマンドをサポートするターゲット機器)が存在するような場合にも対応することができる。
図5には、Bluetoothワイヤレス・ネットワークの1つのピコネット20内に同じカテゴリーのスレーブ機器が複数存在する例を示している。
同図に示すピコネット20内には、マスタ機器としてのメディア・プレーヤ21と、スレーブ機器としてのヘッドフォンA22並びにヘッドフォンB23と、同じくスレーブ機器としてのリモコン24が存在する。
ここで、ピコネット20内のスレーブ機器であるリモコン24は、制御プロファイルAVRCP上では、メディア再生制御や出力音量調整などに関するコマンドを発行するコントローラとして稼働する。
また、ピコネット20内のマスタ機器でもあるメディア・コントローラ21は、制御プロファイルAVRCP上では、ヘッドフォンA22並びにヘッドフォンB23に対して音量調節などのコマンドを発行するコントローラ機能と、リモコン24からのコマンドに応答してメディアの再生、停止、一時停止、早送り、巻き戻しなどのメディア再生制御を行なうターゲット機能を備えている。
また、ピコネット20内のスレーブ機器でもあるヘッドフォンA22並びにヘッドフォンB23の各々は、制御プロファイルAVRCP上ではターゲットとして、ともに音量調節に関する同一カテゴリーのコマンドをサポートしている。
図5に示すように、メディア・プレーヤ21がマスタとなるピコネット20内に、2台のヘッドフォン22,23が存在する場合、ピコネット内のシステム・コントローラとしてのメディア・プレーヤ21は、リモコン24から”volume up”というコマンドを受信したときには、どちらのヘッドフォン22,23にコマンドを転送すべきか不明となる。
そこで、本実施形態では、ピコネット内に同一カテゴリーのターゲットが複数台存在する場合には、コマンド発行元であるコントローラすなわちリモコン24側に、いずれのターゲットにコマンドを転送すべきかを指定することができるように、システム制御のルールを決めるようにする。
例えば、リモコン24上にF1,F2,F3,F4,…などのファンクション・キーが装備されている場合には、このキー・ボタン操作をターゲット機器の指定に割り当てるようにする。ファンクション・キーをターゲット機器の指定に割り当てた一例を以下に示す。
● ヘッドフォンAにコマンドを送信したいとき(ヘッドフォンAを音量調節したいとき)には、F1キーを押下操作した後、コマンド・ボタン(例えばvolume up)を押下する。
● ヘッドフォンBにコマンドを送信したいとき(ヘッドフォンBを音量調節したいとき)には、F2キーを押下操作した後、コマンド・ボタン(例えばvolume up)を押下する。
● ヘッドフォンA及びBの双方にコマンドを送信したいとき(ヘッドフォンA及びBの双方を音量調節したいとき)には、F3キーを押下操作した後、コマンド・ボタン(例えばvolume up)を押下する。
● ヘッドフォンA及びBへのコマンド送信を終了したいとき(ヘッドフォンA及びBの操作を終了したいとき)には、F4キーを押下操作した後、コマンド・ボタン(例えばvolume up)を押下する。
図6には、図5に示すようなピコネット20内における、システム・コントローラとしてのメディア・プレーヤ21によるシステム・コントロールの処理手順をフローチャートの形式で概略的に示している。但し、メディア・プレーヤ21は、上述したような手続きを経て、ピコネット20内に存在する各スレーブ機器22,23,24の制御プロファイルAVRCP上のコントローラ及び/又はターゲット機能を把握するとともに、各ターゲット機器22,23のサポート・コマンドを管理しているものとする。以下、図6に示すフローチャートを参照しながら、ピコネット20内のシステム・コントロール処理について説明する。
メディア・プレーヤ21は、リモコン24からコマンドを受信すると(ステップS1)、まず、ヘッドフォンA制御モードか否かを判別する(ステップS2)。リモコン24は、ファンクション・キーF1を押下することにより、ヘッドフォンA22の制御モードであることを指定することができる(前述)。
ヘッドフォンA制御モードである場合には、判断ブロックS5に進み、さらに、リモコン24からF2,F3,F4に関するコマンドを受信したか否かをチェックする。
リモコン24からF2,F3,F4に関するコマンドを受信しない場合には、ヘッドフォンA制御モード下で、メディア・コントローラ21は、リモコン24からの受信コマンドに従い、ヘッドフォンA22の制御を実行する。
他方、リモコン24からF2,F3,F4に関するコマンドを受信した場合には、F2コマンドを受信したことに応答してヘッドフォンB制御モードに遷移する。また、F3コマンドを受信したことに応答してヘッドフォンAB制御モードに遷移する。また、F4コマンドを受信したことに応答して、ヘッドフォンA及びBの操作を停止して、メディア・プレーヤ21本体の制御モードに遷移する。
判断ブロックS2において、ヘッドフォンA制御モードでないと判定された場合には、後続の判断ブロックS3に進み、ヘッドフォンAB制御モードか否かを判別する。リモコン24は、ファンクション・キーF3を押下することにより、ヘッドフォンABの制御モードであることを指定することができる(前述)。
ヘッドフォンAB制御モードである場合には、判断ブロックS8に進み、さらに、リモコン24からF1,F2,F4に関するコマンドを受信したか否かをチェックする。
リモコン24からF1,F2,F4に関するコマンドを受信しない場合には、ヘッドフォンAB制御モード下で、メディア・コントローラ21は、リモコン24からの受信コマンドに従い、ヘッドフォンA及びB双方の制御を実行する。
他方、リモコン24からF1,F2,F4に関するコマンドを受信した場合には、F1コマンドを受信したことに応答してヘッドフォンA制御モードに遷移する。また、F2コマンドを受信したことに応答してヘッドフォンB制御モードに遷移する。また、F4コマンドを受信したことに応答して、ヘッドフォンA及びBの操作を停止して、メディア・プレーヤ21本体の制御モードに遷移する。
判断ブロックS3において、ヘッドフォンAB制御モードでないと判定された場合には、後続の判断ブロックS4に進み、ヘッドフォンB制御モードか否かを判別する。リモコン24は、ファンクション・キーF2を押下することにより、ヘッドフォンB制御モードであることを指定することができる(前述)。
ヘッドフォンB制御モードである場合には、判断ブロックS6に進み、さらに、リモコン24からF1,F3,F4に関するコマンドを受信したか否かをチェックする。
リモコン24からF1,F3,F4に関するコマンドを受信しない場合には、ヘッドフォンB制御モード下で、メディア・コントローラ21は、リモコン24からの受信コマンドに従い、ヘッドフォンBの制御を実行する。
他方、リモコン24からF1,F3,F4に関するコマンドを受信した場合には、F1コマンドを受信したことに応答してヘッドフォンA制御モードに遷移する。また、F3コマンドを受信したことに応答してヘッドフォンA及びB双方の制御モードに遷移する。また、F4コマンドを受信したことに応答して、ヘッドフォンA及びBの操作を停止して、メディア・プレーヤ21本体の制御モードに遷移する。
判断ブロックS4において、ヘッドフォンB制御モードでないと判定された場合には、後続の判断ブロックS7に進み、さらに、リモコン24からF1,F2,F4に関するコマンドを受信したか否かをチェックする。
リモコン24からF1,F2,F3に関するコマンドを受信しない場合には、メディア・プレーヤ21本体の制御モード下で、メディア・コントローラ21は、リモコン24からの受信コマンドを実行する。
他方、リモコン24からF1,F2,F3に関するコマンドを受信した場合には、F1コマンドを受信したことに応答してヘッドフォンA制御モードに遷移する。また、F2コマンドを受信したことに応答してヘッドフォンB制御モードに遷移する。また、F3コマンドを受信したことに応答して、ヘッドフォンA及びBの制御モードに遷移する。
図7には、ヘッドフォンA制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24からの送信コマンドを処理するための手順を、フローチャートの形式で概略的に示している。以下、このフローチャートに従って、メディア・プレーヤ21によるコマンド処理について説明する。
メディア・プレーヤ21内のシステム制御ブロック(前述)は、リモコン24からコマンドを受信すると、該コマンドがヘッドフォンA22のコマンド・リスト([表2]を参照のこと)に載っているコマンドであるか否か、言い換えれば、受信したコマンドがターゲットとしてのヘッドフォンA22によってサポートされているか否かをチェックする(ステップS11)。
受信コマンドがヘッドフォンAによってサポートされているときには、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返す(ステップS12)。他方、受信コマンドがヘッドフォンAによってサポートされていない場合には、コマンド送信元のリモコン24に対してコマンドの不受理を示すNOT IMPLEMENTEDレスポンスを返して(ステップS13)、本処理ルーチン全体を終了する。
次いで、ヘッドフォン22Aに該コマンドを転送して(ステップS14)、その後、本処理ルーチン全体を終了する。
以下、図8〜図17を参照しながら、図5に示すピコネット20内におけるシステム・コントローラとしてのメディア・プレーヤ21によるシステム・コントロールの処理手順について詳解する。但し、メディア・プレーヤ21は、上述したような手続を経て、ピコネット20内に存在する各スレーブ機器22,23,24の制御プロファイルAVRCP上のコントローラ及びターゲット機能を把握するとともに、各ターゲット機器22,23のサポート・コマンドを管理しているものとする。
図8において、メディア・プレーヤ21は、リモコン24からコマンドを受信すると(ステップS101)、まず、受信したコマンドが「F1」であるかどうかを判別する(ステップS102)。「F1」コマンドではなかった場合には、同様に、「F2」、「F3」、「F4」コマンドであるかどうかを順次判別する(ステップS102、S103、S104)。ここで、「F1」、「F2」、「F3」、「F4」の各コマンドは、機器制御モードを指定するコマンドであるので、受信したコマンドが「F1」、「F2」、「F3」、「F4」のいずれかである場合には、それぞれ図9、図10、図11、又は図12に示すコマンド処理に進む。また、受信したコマンドが「F1」、「F2」、「F3」、「F4」のうちいずれでもない場合には、機器制御モード指定ではなく、制御そのものを示すコマンドであるので、図13に示す機器制御コマンドの処理に進む。
図9には、「F1」コマンドを受信した際のメディア・プレーヤ21が実行する処理手順をフローチャートの形式で示している。まず、現在の制御モードの判別を行なう(ステップS106)。既にヘッドフォンA制御モードに入っているかどうかを判別し(ステップS107)、このモードでなかった場合には「ヘッドフォンA制御モード」に入れる(ステップS108)。また、既にヘッドフォンA制御モードであったならば、モードの入れ替えは行なわない。次いで、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返して(ステップS109)、本処理ルーチン全体を終了する。
図10には、「F2」コマンドを受信した際のメディア・プレーヤ21が実行する処理手順をフローチャートの形式で示している。まず、現在の制御モードの判別を行なう(ステップS110)。既にヘッドフォンB制御モードに入っているかどうかを判別し(ステップS111)、このモードでなかった場合には「ヘッドフォンB制御モード」に入れる(ステップS112)。また、既にヘッドフォンA制御モードであったならば、モードの入れ替えは行なわない。次いで、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返して(ステップS113)、本処理ルーチン全体を終了する。
図11には、「F3」コマンドを受信した際のメディア・プレーヤ21が実行する処理手順をフローチャートの形式で示している。まず、現在の制御モードの判別を行なう(ステップS114)。既にヘッドフォンAB制御モードに入っているかどうかを判別し(ステップS115)、このモードでなかった場合には「ヘッドフォンAB制御モード」に入れる(ステップS116)。また、既にヘッドフォンA制御モードであったならば、モードの入れ替えは行なわない。次いで、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返して(ステップS117)、本処理ルーチン全体を終了する。
図12には、「F4」コマンドを受信した際のメディア・プレーヤ21が実行する処理手順をフローチャートの形式で示している。まず、現在の制御モードの判別を行なう(ステップS118)。既に本体制御モードに入っているかどうかを判別し(ステップS119)、このモードでなかった場合には「本体制御モード」に入れる(ステップS120)。また、既に本体制御モードであったならば、モードの入れ替えは行なわない。次いで、コマンド送信元のリモコン24に対してコマンドの樹里を示すACCEPTEDレスポンスを返して(ステップS121)、本処理ルーチン全体を終了する。
図13には、メディア・プレーヤ21が行なう機器制御コマンド処理の手順をフローチャートの形式で示している。まず現在の制御モードを調べ(ステップS122)、ヘッドフォンA制御モードであるか(ステップS123)、ヘッドフォンB制御モードであるか(ステップS124)、ヘッドフォンAB制御モードであるか(ステップS125)を判別するるこれらの制御モードの場合には、それぞれ図14、図15、図16に示す各制御モード処理に進む。また、上記の3つのモードのいずれでもない場合には、メディア・プレーヤ21本体の制御を行なうモードであると判断し、図17に示す処理に進む。
図14には、ヘッドフォンA制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24から送信されたコマンドを処理するための手順をフローチャートの形式で示している。
メディア・プレーヤ21内のシステム制御ブロックは、リモコン24から受信したコマンドを見て(ステップS126)、該コマンドがヘッドフォンA22のコマンド・リスト([表2]を参照のこと)に載っているコマンドであるか否か、言い換えれば、受信したコマンドがターゲットとしてのヘッドフォンA22によってサポートされているか否かをチェックする(ステップS127)。
受信コマンドがヘッドフォンA22によってサポートされているときには、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返す(ステップS128)。そして、ヘッドフォンA22に該コマンドを転送して(ステップS129)、本処理ルーチン全体を終了する。他方、受信コマンドがヘッドフォンA22によってサポートされていない場合には、コマンド送信元のリモコン24に対して該コマンドに対応していないことを示すNOT IMPLEMENTEDレスポンスを返して(ステップS130)、本処理ルーチン全体を終了する。
また、図15には、ヘッドフォンB制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24から送信されたコマンドを処理するための手順をフローチャートの形式で示している。
メディア・プレーヤ21内のシステム制御ブロックは、リモコン24から受信したコマンドを見て(ステップS131)、該コマンドがヘッドフォンB23のコマンド・リストに載っているコマンドであるか否か、言い換えれば、受信したコマンドがターゲットとしてのヘッドフォンB23によってサポートされているか否かをチェックする(ステップS132)。
受信コマンドがヘッドフォンB23によってサポートされているときには、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返す(ステップS133)。そして、ヘッドフォンB23に該コマンドを転送して(ステップS134)、本処理ルーチン全体を終了する。他方、受信コマンドがヘッドフォンB23によってサポートされていない場合には、コマンド送信元のリモコン24に対して該コマンドに対応していないことを示すNOT IMPLEMENTEDレスポンスを返して(ステップS135)、本処理ルーチン全体を終了する。
また、図16には、ヘッドフォンAB制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24から送信されたコマンドを処理するための手順をフローチャートの形式で示している。
メディア・プレーヤ21内のシステム制御ブロックは、リモコン24から受信したコマンドを見て(ステップS136)、該コマンドがヘッドフォンA22又はB23のコマンド・リスト([表2]を参照のこと)に載っているコマンドであるか否か、言い換えれば、受信したコマンドがターゲットとしてのヘッドフォンA22によってサポートされているか否かをチェックする(ステップS137)。
受信コマンドがヘッドフォンA22又はB23によってサポートされているときには、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返す(ステップS138)。そして、ヘッドフォンA22並びにB23に該コマンドを転送して(ステップS139、S140)、本処理ルーチン全体を終了する。他方、受信コマンドがヘッドフォンA22又はB23によってサポートされていない場合には、コマンド送信元のリモコン24に対して該コマンドに対応していないことを示すNOT IMPLEMENTEDレスポンスを返して(ステップS141)、本処理ルーチン全体を終了する。
図17には、本体制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24から送信されたコマンドを処理するための手順をフローチャートの形式で示している。
メディア・プレーヤ21内のシステム制御ブロックは、リモコン24から受信したコマンドを見て(ステップS142)、該コマンドはメディア・プレーヤ21本体がサポートしているコマンドのリスト([表2]を参照のこと)に載っているコマンドであるか否かをチェックする(ステップS143)。
メディア・プレーヤ21自身がサポートするコマンドである場合には、同一機種21内のプレーヤ制御ブロックにコマンドを渡す(ステップS144)。このとき、プレーヤ制御ブロックに故障などの異常が発生してコマンドが実行できない状態になっていないかどうかを確認する(ステップS145)。
実行可能である場合には、コマンド送信元のリモコン24に対してコマンドの受理を示すACCEPTEDレスポンスを返し(ステップS146)、本処理ルーチン全体を終了する。また、コマンドをサポートしているが、現在実行することができない状態である場合には、コマンドの不受理を示すREJECTEDレスポンスを返し(ステップS147)、本処理ルーチン全体を終了する。また、受信したコマンドがメディア・プレーヤ21自身がサポートするコマンドではなかった場合には、コマンド送信元のリモコン24に対して該コマンドに対応していないことを示すNOT IMPLEMENTEDレスポンスを返して(ステップS148)、本処理ルーチン全体を終了する。
次いで、Bluetoothピコネット内での、システム・コントローラとしてのBluetoothマスタ機器によるAVRCPコントローラ及びAVRCPターゲット間のコマンド転送処理を例にとって、本発明の実施例について説明する。
図18には、Bluetoothワイヤレス・ネットワークの1つのピコネット30内に1台のマスタ機器31と、4台のスレーブ機器32,33,34,35が存在する様子を示している。
既に述べたように、マスタ機器31には、通信の秩序を保つように制御機能が与えられている。同一のピコネット10内に複数のスレーブが存在している場合には、同報通信を除いてスレーブとマスタ間の通信は、それらすべてのスレーブで時分割多重しながら共有されている。時分割多重の単位は「時間スロット」と呼ばれる625μsecの時間間隔である。
同一のピコネット10に存在するマスタと各スレーブの送受信パケットの方向は、スロット番号が偶数の場合はマスタからスレーブへのパケットの送信が行なわれ、スロット番号が奇数の場合はスレーブからマスタへのパケットの送信が行なわれる。このようにBluetoothでは、マスタと各スレーブの間でのパケットの送受信が可能であるが、スレーブ間での直接的な送受信はできない。
図18に示す例では、ピコネット30内には、マスタ機器としてのメディア・プレーヤ31と、スレーブ機器としてのテレビ(TV)チューナ32と、スレーブ機器としてのヘッドフォン33並びに34と、同じくスレーブ機器としてのリモコン35が存在する。リモコン35は、メディア・プレーヤ31に対するメディアの再生、停止、一時停止、早送り、巻き戻しなどの再生制御や、TVチューナ32に対する選局制御、ヘッドフォン33及び34に対する音量調節などの制御を遠隔的に行なうための装置である。
ピコネット30内では、Bluetoothのアプリケーション・プロファイルの1つであるAV Remote Control Profile(AVRCP)が実装されている。そして、スレーブ機器であるリモコン35は、AVRCPプロファイル上では、ピコネット30内の他の機器すなわちターゲットにコマンドを送信するコントローラの機能を備えている。また、マスタ機器であるメディア・コントローラ31は、コマンドを送信するコントローラ及びコマンドをサポートするターゲットの双方の機能を備えている。また、スレーブ機器であるテレビ・チューナ32、ヘッドフォンA33並びにヘッドフォンB34は、AVRCPコントローラが発行するコマンドをサポートするAVRCPターゲットとしての機能を装備している。
ピコネット30のマスタ機器であるメディア・プレーヤ31は、システム・コントローラとして稼働して、ピコネット30内の各スレーブ機器に問い合わせて、それぞれが制御プロファイルAVRCP上でコントローラ機能並びにターゲット機能を装備しているか否かを問い合わせることができる。
また、システム・コントローラとしてのメディア・コントローラ31は、さらに、ピコネット30内でAVRCPターゲットとして機能する各スレーブ機器32,33,34に問い合わせて、それぞれがサポートするコマンドを検知することができる。そして、メディア・コントローラ31は、このピコネット30内でのコマンド・リストを作成する。作成されたコマンド・リストの例を、以下の[表3]に示しておく。
次いで、システム・コントローラとしてのメディア・プレーヤ31が、ピコネット30内で、制御プロファイルAVRCP上のターゲットとして機能する各スレーブ機器32〜34に対して機能を問い合わせる処理手順について、図19を参照しながら説明する。
マスタ機器でありシステム・コントローラでもあるメディア・コントローラ31は、まず、スレーブ機器としてのTVチューナ32とService Discovery Protocol(SDP)用のL2CAPチャンネルを張り、さらに、Service Discovery手続により、TVチューナ32が制御プロファイルAVRCP上のターゲット機器であること、並びにチューナ機能とアンプ機能に対応していることを検知する。その後、メディア・プレーヤ31は、TVチューナ32とのL2CAPチャンネルを解く。
次いで、メディア・コントローラ31は、ピコネット30内の他のスレーブ機器であるヘッドフォンA33とService Discovery Protocol(SDP)用のL2CAPチャンネルを張り、次いで、Service Discovery手続により、ヘッドフォンA33が制御プロファイルAVRCP上のターゲット機器であること、並びにヘッドフォン機能に対応していることを検知する。その後、メディア・プレーヤ31は、ヘッドフォンA33とのL2CAPチャンネルを解く。
次いで、メディア・コントローラ31は、ピコネット30内の他のスレーブ機器であるヘッドフォンB34とService Discovery Protocol(SDP)用のL2CAPチャンネルを張り、次いで、Service Discovery手続により、ヘッドフォンB34が制御プロファイルAVRCP上のターゲット機器であること、並びにヘッドフォン機能に対応していることを検知する。その後、メディア・プレーヤ31は、ヘッドフォンB34とのL2CAPチャンネルを解く。
さらに、システム・コントローラとしてのメディア・プレーヤ31は、スレーブ機器としてのTVチューナ32と、今度はコントロール用のL2CAPチャンネルを張り、Specific Inquiryを用いて、TVチューナ32がAVRCPターゲットとしてサポートするコマンドを問い合わせて、そのサポート・コマンドを検知する。
次いで、メディア・プレーヤ31は、スレーブ機器としてのヘッドフォンA33と、コントロール用のL2CAPチャンネルを張り、Specific Inquiryを用いて、ヘッドフォンA33がAVRCPターゲットとしてサポートするコマンドを問い合わせて、そのサポート・コマンドを検知する。
次いで、メディア・プレーヤ31は、スレーブ機器としてのヘッドフォンB34と、コントロール用のL2CAPチャンネルを張り、Specific Inquiryを用いて、ヘッドフォンB34がAVRCPターゲットとしてサポートするコマンドを問い合わせて、そのサポート・コマンドを検知する。
このように、システム・コントローラとしてのメディア・プレーヤ31は、ピコネット30内の各AVRCPターゲット機器との間で、通常のBluetooth通信を利用することにより、それぞれがサポートするコマンドを検知することができ、この結果、上記の[表3]に示したようなコマンド・リストを作成することができる。
次いで、図20を参照しながら、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットに対してSpecific Inquiryによりサポート・コマンドを問い合わせる処理をさらに詳細に説明する。但し、以下の説明では、AVRCPターゲットとしてのヘッドフォンB34に対してサポート・コマンドを問い合わせるものとする。
システム・コントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのヘッドフォンB34に対して、コマンド”volume up”をサポートするか否かを問い合わせるSpecific Inquiryメッセージを送信する。
このSpecific Inquiryメッセージ・フレームは、PASS THROUGHコマンドを適用することができるが、図21にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Specific Inquiry”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”volume up”)を書き込む。
これに対し、AVRCPターゲットとしてのヘッドフォンB34は、問い合わされたコマンド”volume up”をサポートするので、Implementedメッセージを返信する。
このImplementedメッセージ・フレームは、PASS THROUGHコマンドを適用することができるが、図22にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Implemented”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”volume up”)を書き込む。
また、システム・コントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのヘッドフォンB34に対して、コマンド”input select”をサポートするか否かを問い合わせるInquiryメッセージを送信する。
このSpecific Inquiryメッセージ・フレームは、PASS THROUGHコマンドを適用することができるが、図23にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Specific Inquiry”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”input select”)を書き込む。
これに対し、AVRCPターゲットとしてのヘッドフォンB34は、問い合わされたコマンド”input select”をサポートしていないので、Not Implementedメッセージを返信する。
このNot Implementedメッセージ・フレームは、PASS THROUGHコマンドを適用することができるが、図24にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Not Implemented”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”input select”)を書き込む。
次いで、図25を参照しながら、AVRCPコントローラとして機能するリモコン35が、システム・コントローラとしてのメディア・プレーヤ31を介して各AVRCPターゲットに向けてPASS THROUGHコマンドを送信して遠隔操作する処理手順について説明する。
システム・コントローラとしてのメディア・プレーヤ31fはピコネット30内におけるマスタ機器でもある、という点を充分理解されたい。また、以下に示す例では、リモコン35は、F1コマンドによりTVチューナ制御モードに、F2コマンドによりヘッドフォンA制御モードに、F3コマンドによりヘッドフォンB制御モードに、それぞれ設定することができるものとする。
AVRCPコントローラであるリモコン35は、ピコネット30内ではスレーブ機器であり、マスタ機器でありシステム・コントローラでもあるメディア・プレーヤ31としか通信することができない。そこで、AVRCPターゲットとしての他のスレーブ機器32〜34に対するコマンドを送信したいときには、まず、マスタ機器としてのメディア・プレーヤ31とコントロール用のL2CAPチャンネルを張る。
そして、メディア・プレーヤ31とコントロール用のL2CAPチャンネルが確立した状態で、リモコン35は、システム・コントローラとしてのメディア・プレーヤ31にF1コマンドを送信する。
これに対しメディア・プレーヤ31側では、受信したF1コマンドを解釈して、TVチューナ32の制御モードを設定する。
さらに、AVRCPコントローラとしてのリモコン35は、AVRCPターゲットとしてのメディア・プレーヤ31に対して、muteコマンドを送信する。
これに対し、メディア・プレーヤ31側では、[表3]に示したようなコマンド・リストを参照して、muteコマンドはTVチューナ32、並びにヘッドフォンA33の双方でサポートされているコマンドであることを検知する。但し、この場合は、先にF1コマンドが発行されてTVチューナ制御モードが設定されている。そこで、AVRCPコントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのTVチューナ32にのみmuteコマンドを転送する。
次いで、AVRCPコントローラとしてのリモコン35は、AVRCPターゲットとしてのメディア・プレーヤ31に対して、channel upコマンドを送信する。
これに対し、メディア・プレーヤ31側では、上記の[表3]に示したようなコマンド・リストを参照して、channel upコマンドはTVチューナ32のみでサポートされているコマンドであることを検知する。そして、AVRCPコントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのTVチューナ32にchannel upコマンドを転送する。
次いで、AVRCPコントローラとしてのリモコン35は、AVRCPターゲットとしてのメディア・プレーヤ31に対して、playコマンドを送信する。
これに対し、メディア・プレーヤ31側では、上記の[表3]に示したようなコマンド・リストを参照して、playコマンドはメディア・プレーヤ31自身のみがサポートするコマンドであることを検知する。そこで、AVRCPターゲットとしてのメディア・プレーヤ31は、自らplayコマンドを実行する。
次いで、リモコン35は、システム・コントローラとしてのメディア・プレーヤ31にF3コマンドを送信する。
これに対しメディア・プレーヤ31側では、受信したF3コマンドを解釈して、ヘッドフォンB34の制御モードを設定する。
さらに、AVRCPコントローラとしてのリモコン35は、AVRCPターゲットとしてのメディア・プレーヤ31に対して、volume upコマンドを送信する。
これに対し、メディア・プレーヤ31側では、[表3]に示したようなコマンド・リストを参照して、volume upコマンドはTVチューナ32、ヘッドフォンA33、並びにヘッドフォンB34の双方でサポートされているコマンドであることを検知する。但し、この場合は、先にF3コマンドが発行されてヘッドフォンB制御モードが設定されている。そこで、AVRCPコントローラとしてのメディア・プレーヤ31は、AVRCPターゲットとしてのヘッドフォンB34にのみvolume upコマンドを転送する。
次いで、図26を参照しながら、AVRCPコントローラとして機能するリモコン35が、システム・コントローラとしてのメディア・プレーヤ31にPASS THROUGHコマンドを送信することによってAVRCPターゲットである他のスレーブ機器遠隔操作する処理手順についてさらに詳細に説明する。但し、以下の説明では、リモコン35は、AVRCPターゲットとしてのTVチューナ32の遠隔操作を行うものとする。
AVRCPコントローラであるリモコン35は、ピコネット30内ではスレーブ機器であり、マスタ機器であるメディア・プレーヤ31としか通信することができない。そこで、まず、TVチューナ制御モードを設定すべく、F1コマンドをメディア・プレーヤ31に送信する。
このF1コマンド送信には、PASS THROUGHコマンドを適用することができるが、図27にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Control”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”F1”)を書き込む。
これに対し、システム・コントローラとしてのメディア・プレーヤ31は、F1コマンドを受理して、TVチューナ制御モードを設定するとともに、AVRCPコントローラとしてのリモコン35に対して、F1コマンドを受理した旨を示すAcceptedメッセージを返信する。
このAcceptedメッセージの送信には、PASS THROUGHコマンドを適用することができるが、図28にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Accepted”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”F1”)を書き込む。
また、スレーブ機器でありAVRCPコントローラであるリモコン35は、マスタ機器でありAVRCPターゲットであるメディア・プレーヤ31に対して、muteコマンドを送信する。
このmuteコマンド送信には、PASS THROUGHコマンドを適用することができるが、図29にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Control”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”mute”)を書き込む。
これに対し、システム・コントローラとしてのメディア・プレーヤ31は、muteコマンドを受理して、上記の[表3]に示したようなコマンド・リストを参照して、muteコマンドがピコネット30内のAVRCPターゲットによってサポートされたコマンドであることを検知すると、AVRCPコントローラとしてのリモコン35に対して、muteコマンドを受理した旨を示すAcceptedメッセージを返信する。
このAcceptedメッセージの送信には、PASS THROUGHコマンドを適用することができるが、図30にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Accepted”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”mute”)を書き込む。
ピコネット30内では、TVチューナ32、並びにヘッドフォンA33の各AVRCPターゲットがmuteコマンドをサポートする。但し、この場合には、既にF1コマンドが発行されてTVチューナ制御モードに設定されている。そこで、システム・コントローラであるメディア・プレーヤ31は、AVRCPコントローラとして、AVRCPターゲットであるTVチューナ32に対して、muteコマンドを転送する。
このmuteコマンド送信には、PASS THROUGHコマンドを適用することができるが、図31にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Control”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”mute”)を書き込む。
AVRCPターゲットであるTVチューナ31は、自身がサポートするmuteコマンドを受信すると、AVRCPコントローラとしてのメディア・プレーヤ31に対して、muteコマンドを受理した旨を示すAcceptedメッセージを返信する。ピコネット30内では、メディア・プレーヤ31はマスタ機器であり、TVチューナ32はスレーブ機器なので、両機器間で通信が可能である。
このAcceptedメッセージの送信には、PASS THROUGHコマンドを適用することができるが、図32にそのフレーム構造を模式的に示している。同図に示すように、メッセージ・フレームのCtype/responseフィールドに”Accepted”と指定する。オペコードにPASS THROUGHを書き込むとともに、オペランドにオペレーション識別子(ここでは、コマンド”mute”)を書き込む。
追補
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。
本明細書では、無線通信技術としてBluetoothを例にとって、同一ピコネット内のスレーブ機器間でリモート・コントロールを行なう方式について説明してきたが、本発明の要旨はBluetooth技術を適用した無線接続には限定されない。すなわち、同じピコネット内ではマスタ機器とスレーブ機器が定義され、且つ、マスタ機器〜スレーブ機器間の通信を基調としてデータやコマンドの交換が行なわれるような同種の無線通信技術についても本発明を適用することかできる。
要するに、例示という形態で本発明を開示してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
[産業上の利用可能性]
本発明によれば、ワイヤレス接続された機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することができる。
また、本発明によれば、Bluetoothのように1台のマスタ(master)機器と複数台のスレーブ(slave)機器によって構成されるピコネット(piconet)内においてスレーブ機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することができる。
また、本発明によれば、ピコネット内において、マスタ機器としか直接接続されない2台以上のスレーブ機器間で機器操作用のコマンドを好適に交換することができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することができる。
また、本発明によれば、Bluetoothの遠隔制御用プロファイルを用いて、同一ピコネット内のスレーブ機器間でリモート・コントロールを行なうことができる、優れた無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラムを提供することができる。
また、本発明によれば、AV Remote Control Profile(AVRCP)などの従来のBluetooth制御用プロファイルを用いて、マスタ機器を介在させたスレーブ機器による他のスレーブ機器のコントロールを実現することができる、優れた無線通信制御装置及び無線通信制御方法、並びに記憶媒体を提供することができる。
本発明によれば、Bluetoothワイヤレス接続におけるマスタ及びスレーブの役割の特徴を活かし、マスタ機器がシステム・コントローラとなって、ピコネット内の各スレーブ機器がサポートする制御機能を一元的に管理することにより、各スレーブ機器はマスタ以外の機器の存在を意識することなく、結果としてピコネット内のスリーブ機器間での制御を行なうことが可能となる。
システム・コントローラというマスタ機器内のアプリケーションがピコネット内の各スレーブ機器の機能を管理することにより、各Bluetooth機器が実装する制御プロファイルは従来通りのままでよい。すなわち、本発明を具現化するために、制御プロファイルを新たに作成したり設計変更を行なう必要がなく、既存のBluetooth機器をスレーブ機器としてそのまま使用することができる。
【図面の簡単な説明】
図1は、本発明の第1の実施形態に係るBluetoothピコネット内の構成を模式的に示した図である。
図2は、図1に示したピコネット10を構成する各機器11〜13の構成を模式的に示した機能ブロック図である。
図3は、AV Remote Control Profile(AVRCP)のプロファイル・スタック構造を模式的に示した図である。
図4は、PASS THROUGHコマンドを例に、AVRCPコマンド・フレームの構造を示した図である。
図5は、Bluetoothワイヤレス・ネットワークの1つのピコネット20内に同じカテゴリーのスレーブ機器が複数存在する例を示した図である。
図6は、図5に示すようなピコネット20内における、システム・コントローラとしてのメディア・プレーヤ21によるシステム・コントロールの処理手順を概略的に示したフローチャートである。
図7は、ヘッドフォンA制御モード下で、システム・コントローラとしてのメディア・プレーヤ21がコントローラとしてのリモコン24からの送信コマンドを処理する手順を概略的に示したフローチャートである。
図8〜図17は、図5に示すピコネット20内におけるメディア・プレーヤ21によるシステム・コントロールの処理手順を示したフローチャートである。
図18は、Bluetoothワイヤレス・ネットワークの1つのピコネット30内に1台のマスタ機器31と、4台のスレーブ機器32,33,34,35が存在する様子を示した図である。
図19は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットとして機能する各スレーブ機器32〜34に対して機能を問い合わせる処理手順を示したチャートである。
図20は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットとして機能するスレーブ機器に対してSpecific Inquiryサポート・コマンドを問い合わせる処理手順を示したチャートである。
図21は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットとしてのヘッドフォンB34に対してコマンド”volume up”をサポートするか否かを問い合わせるためのInquiryメッセージ・フレームの構造を模式的に示した図である。
図22は、AVRCPターゲットとしてのヘッドフォンB34がシステム・コントローラとしてのメディア・プレーヤ31に対してコマンド”volume up”をサポートする旨を返すためのImplementedメッセージ・フレームの構造を模式的に示した図である。
図23は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPターゲットとしてのヘッドフォンB34に対してコマンド”input select”をサポートするか否かを問い合わせるためのInquiryメッセージ・フレームの構造を模式的に示した図である。
図24は、AVRCPターゲットとしてのヘッドフォンB34がシステム・コントローラとしてのメディア・プレーヤ31に対してコマンド”input select”をサポートしない旨を返すためのNot Implementedメッセージ・フレームの構造を模式的に示した図である。
図25は、AVRCPコントローラとして機能するリモコン35が、システム・コントローラとしてのメディア・プレーヤ31を介して各AVRCPターゲットに向けてコマンドを送信して遠隔操作する処理手順を示したチャートである。
図26は、AVRCPコントローラとして機能するリモコン35が、システム・コントローラとしてのメディア・プレーヤ31にPASS THROUGHコマンドを送信することによってAVRCPターゲットである他のスレーブ機器遠隔操作する処理手順を説明するためのチャートである。
図27は、AVRCPコントローラとしてのリモコン35がシステム・コントローラとしてのメディア・プレーヤ31に対してF1コマンドを送信するためのControlメッセージ・フレームの構造を模式的に示した図である。
図28は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPコントローラとしてのリモコン35に対してF1コマンドを受理した旨を返すためのAcceptedメッセージ・フレームの構造を模式的に示した図である。
図29は、AVRCPコントローラとしてのリモコン35がシステム・コントローラとしてのメディア・プレーヤ31に対してMuteコマンドを送信するためのControlメッセージ・フレームの構造を模式的に示した図である。
図30は、システム・コントローラとしてのメディア・プレーヤ31がAVRCPコントローラとしてのリモコン35に対してMuteコマンドを受理した旨を返すためのAcceptedメッセージ・フレームの構造を模式的に示した図である。
図31は、AVRCPコントローラとしてのメディア・コントローラ31がAVRCPターゲットとしてのTVチューナ32に対してMuteコマンドを送信するためのControlメッセージ・フレームの構造を模式的に示した図である。
図32は、AVRCPターゲットとしてのTVチューナ32がAVRCPコントローラとしてのメディア・プレーヤ31に対してMuteコマンドを受理した旨を返すためのAcceptedメッセージ・フレームの構造を模式的に示した図である。
Claims (44)
- 1台のマスタ機器と複数台のスレーブ機器によって構成されて各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御するための無線通信制御装置であって、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せ手段と、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せ手段と、
各ターゲット機器がサポートするコマンドを管理するサポート・コマンド管理手段と、
を具備することを特徴とする無線通信制御装置。 - 前記通信セル内のマスタ機器及びスレーブ機器は、コマンドを発行するコントローラ、及び/又は、コマンドをサポートするターゲットとして動作することができる、
ことを特徴とする請求項1に記載の無線通信制御装置。 - 前記通信セル内において通信状態を制御するマスタ機器である、
ことを特徴とする請求項1に記載の無線通信制御装置。 - 前記無線通信制御装置自身はコントローラ及びターゲットの双方として機能することができ、
前記サポート・コマンド管理手段は、ターゲットとして機能する前記無線通信制御装置自身のサポート・コマンドも管理する、
ことを特徴とする請求項1に記載の無線通信制御装置。 - 前記通信セル内のコントローラからコマンドを受信するコマンド受信手段と、
受信コマンドを処理するコマンド処理手段とをさらに備える、
ことを特徴とする請求項1に記載の無線通信制御装置。 - 前記コマンド処理手段は、前記サポート・コマンド管理手段に問い合わせて、受信コマンドをサポートするターゲットに該コマンドを転送する、
ことを特徴とする請求項5に記載の無線通信制御装置。 - 前記コマンド処理手段は、前記サポート・コマンド管理手段に問い合わせて、自ら受信コマンドをサポートする場合には自らコマンドを実行する、
ことを特徴とする請求項5に記載の無線通信制御装置。 - 前記通信セル内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合に、前記コントローラ機器は、特定のターゲット機器を指定する機能を備え、
前記コマンド処理手段は、コマンド送信元のコントローラ機器の指定に従ってターゲット機器にコマンドを転送する、
ことを特徴とする請求項5に記載の無線通信制御装置。 - コマンド受信時の受信履歴を記憶する受信履歴記憶手段と、
前記受信履歴記憶手段に記憶された最新履歴を基に受信したコマンドを実行するターゲットを特定するターゲット特定手段と、
をさらに備えることを特徴とする請求項5に記載の無線通信制御装置。 - 前記通信セル内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合には、前記コマンド処理手段は、該受信したコマンドをサポートするすべてのターゲット機器にコマンドを転送する、
ことを特徴とする請求項5に記載の無線通信制御装置。 - 1台のマスタ機器と複数台のスレーブ機器によって構成されて各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御するための無線通信制御方法であって、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せステップと、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せステップと、
各ターゲット機器がサポートするコマンドを管理するサポート・コマンド管理ステップと、
を具備することを特徴とする無線通信制御方法。 - 前記通信セル内のマスタ機器及びスレーブ機器は、コマンドを発行するコントローラ、及び/又は、コマンドをサポートするターゲットとして動作することができる、
ことを特徴とする請求項11に記載の無線通信制御方法。 - 前記通信セル内において通信状態を制御するマスタ機器における通信制御方法である、
ことを特徴とする請求項11に記載の無線通信制御方法。 - コントローラ及びターゲットの双方として機能することができるマスタ機器における通信制御方法であり、
前記サポート・コマンド管理ステップでは、該マスタ機器自身のサポート・コマンドも管理する、
ことを特徴とする請求項11に記載の無線通信制御方法。 - 前記通信セル内のコントローラからコマンドを受信するコマンド受信ステップと、
受信コマンドを処理するコマンド処理ステップとをさらに備える、
ことを特徴とする請求項11に記載の無線通信制御方法。 - 前記コマンド処理ステップでは、前記通信セル内の各ターゲットについてのサポート・コマンドを問い合わせて、受信コマンドをサポートするターゲットに該コマンドを転送する、
ことを特徴とする請求項15に記載の無線通信制御方法。 - 前記コマンド処理ステップでは、前記通信セル内の各ターゲットについてのサポート・コマンドを問い合わせて、該無線通信制御方法を実行する機器上で該受信コマンドをサポートする場合にはそのまま当該機器上で実行する、
ことを特徴とする請求項15に記載の無線通信制御方法。 - 前記通信セル内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合に、前記コントローラ機器から特定のターゲット機器を指定するターゲット機器指定ステップを備え、
前記コマンド処理ステップでは、コマンド送信元のコントローラ機器による機器指定に従ってターゲット機器にコマンドを転送する、
ことを特徴とする請求項15に記載の無線通信制御方法。 - コマンド受信時の受信履歴を記憶する受信履歴記憶ステップと、
前記受信履歴記憶ステップにおいて記憶された最新履歴を基に受信したコマンドを実行するターゲットを特定するターゲット特定ステップと、
をさらに備えることを特徴とする請求項15に記載の無線通信制御方法。 - 前記通信セル内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合には、前記コマンド処理ステップでは、該受信したコマンドをサポートするすべてのターゲット機器にコマンドを転送する、
ことを特徴とする請求項15に記載の無線通信制御方法。 - 1台のマスタ機器と複数台のスレーブ機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット内において、機器間でのコマンド交換を制御するための無線通信制御装置であって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、
前記ピコネット内でのBluetooth通信を確立する接続手段と、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握手段と、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握手段と、
を具備することを特徴とする無線通信制御装置。 - 前記ピコネット内における通信状態を制御するマスタ機器である、
ことを特徴とする請求項21に記載の無線通信制御装置。 - 前記ピコネット内における通信状態を制御するマスタ機器として稼動し、
前記コントローラ/ターゲット機能把握手段は、前記ピコネット内の各スレーブ機器と論理リンク(L2CAP)を張り、Service Discovery Protocol(SDP)を用いて各スレーブ機器に対して機能問合せを行なう、
ことを特徴とする請求項21に記載の無線通信制御装置。 - 前記ピコネット内における通信状態を制御するマスタ機器として稼動し、
前記サポート・コマンド把握手段は、前記ピコネット内でターゲットとして稼働する各スレーブ機器と論理リンク(L2CAP)を張り、上位アプリケーション・プロトコルで定義された方式によりサポート・コマンドの問合せを行なう、
ことを特徴とする請求項21に記載の無線通信制御装置。 - 前記ピコネット内における通信状態を制御するマスタ機器として稼動し、
前記ピコネット内でコントローラとして稼働するスレーブ機器と接続してコマンドを受信する手段と、
受信コマンドを処理するコマンド処理手段をさらに備える、
ことを特徴とする請求項21に記載の無線通信制御装置。 - 前記コマンド処理手段は、受信コマンドをサポートするターゲットに該コマンドを転送する、
ことを特徴とする請求項25に記載の無線通信制御装置。 - 前記コマンド処理手段は、自ら受信コマンドをサポートする場合には自らコマンドを実行する、
ことを特徴とする請求項25に記載の無線通信制御装置。 - 前記ピコネット内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合に、前記コントローラ機器は、特定のターゲット機器を指定する機能を備え、
前記コマンド処理手段は、コマンド送信元のコントローラ機器の指定に従ってターゲット機器にコマンドを転送する、
ことを特徴とする請求項25に記載の無線通信制御装置。 - コマンド受信時の受信履歴を記憶する受信履歴記憶手段と、
前記受信履歴記憶手段に記憶された最新履歴を基に受信したコマンドを実行するターゲットを特定するターゲット特定手段と、
をさらに備えることを特徴とする請求項25に記載の無線通信制御装置。 - 前記ピコネット内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合には、前記コマンド処理手段は、該受信したコマンドをサポートするすべてのターゲット機器にコマンドを転送する、
ことを特徴とする請求項25に記載の無線通信制御装置。 - 1台のマスタ機器と複数台のスレーブ機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット内において、機器間でのコマンド交換を制御するための無線通信制御方法であって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、
前記ピコネット内でのBluetooth通信を確立する接続ステップと、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握ステップと、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握ステップと、
を具備することを特徴とする無線通信制御方法。 - 前記ピコネット内における通信状態を制御するマスタ機器上で実現される、
ことを特徴とする請求項31に記載の無線通信制御方法。 - 前記ピコネット内における通信状態を制御するマスタ機器上で実現され、
前記コントローラ/ターゲット機能把握ステップでは、前記ピコネット内の各スレーブ機器と論理リンク(L2CAP)を張り、Service Discovery Protocol(SDP)を用いて機能問合せを行なう、
ことを特徴とする請求項31に記載の無線通信制御方法。 - コネット内における通信状態を制御するマスタ機器上で実現され、
前記サポート・コマンド把握ステップでは、前記ピコネット内でターゲットとして稼働する各スレーブ機器と論理リンク(L2CAP)を張り、上位アプリケーション・プロトコルで定義された方式によりサポートコマンドの問合せを行なう、
ことを特徴とする請求項31に記載の無線通信制御方法。 - 前記ピコネット内における通信状態を制御するマスタ機器上で実現され、
前記ピコネット内でコントローラとして稼働するスレーブ機器と接続してコマンドを受信するステップと、
受信コマンドを処理するコマンド処理ステップをさらに備える、
ことを特徴とする請求項31に記載の無線通信制御方法。 - 前記コマンド処理ステップでは、受信コマンドをサポートするターゲットに該コマンドを転送する、
ことを特徴とする請求項35に記載の無線通信制御方法。 - 前記コマンド処理手段は、前記マスタ機器が受信コマンドをサポートする場合にはマスタ機器自身に該コマンドを実行させる、
ことを特徴とする請求項35に記載の無線通信制御方法。 - 前記ピコネット内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合に、前記コントローラ機器が特定のターゲット機器を指定するステップを備え、
前記コマンド処理ステップでは、コマンド送信元のコントローラ機器の指定に従ってターゲット機器にコマンドを転送する、
ことを特徴とする請求項35に記載の無線通信制御方法。 - コマンド受信時の受信履歴を記憶する受信履歴記憶ステップと、
前記受信履歴記憶ステップにおいて記憶された最新履歴を基に受信したコマンドを実行するターゲットを特定するターゲット特定ステップと、
ことを特徴とする請求項35に記載の無線通信制御方法。 - 前記ピコネット内に受信したコマンドをサポートする2以上のターゲット機器が存在する場合には、前記コマンド処理ステップでは、該受信したコマンドをサポートするすべてのターゲット機器にコマンドを転送する、
ことを特徴とする請求項35に記載の無線通信制御方法。 - 1台のマスタ機器と複数台のスレーブ機器によって構成されて、各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、前記コンピュータ・ソフトウェアは、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せステップと、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せステップと、
各ターゲット機器がサポートするコマンドを管理するサポート・コマンド管理ステップと、
を具備することを特徴とする記憶媒体。 - 1台のマスタ機器と複数台のスレーブ機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するように記述されたコンピュータ・ソフトウェアをコンピュータ可読形式で物理的に格納した記憶媒体であって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、前記コンピュータ・ソフトウェアは、
前記ピコネット内でのBluetooth通信を確立する接続ステップと、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握ステップと、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握ステップと、
を具備することを特徴とする記憶媒体。 - 1台のマスタ機器と複数台のスレーブ機器によって構成されて、各スレーブ機器はマスタ機器とのみ通信可能なタイプの通信セル内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、
前記通信セル内の各機器に対してコントローラ又はターゲットのいずれとして稼働するかを問い合わせるコントローラ/ターゲット問合せステップと、
ターゲット機能を装備する各機器に対してサポートするコマンドを問い合わせるサポート・コマンド問合せステップと、
各ターゲット機器がサポートするコマンドを管理するサポート・コマンド管理ステップと、
を具備することを特徴とするコンピュータ・プログラム。 - 1台のマスタ機器と複数台のスレーブ機器によって構成されるBluetoothワイヤレス・ネットワークのピコネット内において、機器間でのコマンド交換を制御する無線通信制御をコンピュータ・システム上で実行するようにコンピュータ可読形式で記述されたコンピュータ・プログラムであって、前記ピコネット内の少なくとも1つのスレーブ機器はコマンドを発行するコントローラ機能を装備するとともに少なくとも1つのスレーブ機器はコマンドをサポートするターゲット機能を装備し、且つ、前記マスタ機器はコントローラ及びターゲットの両機能を装備することができ、
前記ピコネット内でのBluetooth通信を確立する接続ステップと、
前記ピコネット内で、ターゲット及び/又はコントローラとして機能するスレーブ機器を把握するコントローラ/ターゲット機能把握ステップと、
前記ピコネット内の各ターゲットがサポートするコマンドを管理するサポート・コマンド把握ステップと、
を具備することを特徴とするコンピュータ・プログラム。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001194137 | 2001-06-27 | ||
| JP2001194137 | 2001-06-27 | ||
| PCT/JP2002/006322 WO2003003659A1 (fr) | 2001-06-27 | 2002-06-25 | Dispositif et procede, en controle de radiocommunications, support d'informations, et programme |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPWO2003003659A1 true JPWO2003003659A1 (ja) | 2004-10-21 |
Family
ID=19032316
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003509712A Pending JPWO2003003659A1 (ja) | 2001-06-27 | 2002-06-25 | 無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラム |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US7149475B2 (ja) |
| EP (1) | EP1401148A1 (ja) |
| JP (1) | JPWO2003003659A1 (ja) |
| CN (1) | CN1466835A (ja) |
| WO (1) | WO2003003659A1 (ja) |
Families Citing this family (109)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7461936B2 (en) * | 2000-06-02 | 2008-12-09 | Oakley, Inc. | Eyeglasses with detachable adjustable electronics module |
| US7278734B2 (en) * | 2000-06-02 | 2007-10-09 | Oakley, Inc. | Wireless interactive headset |
| US8482488B2 (en) | 2004-12-22 | 2013-07-09 | Oakley, Inc. | Data input management system for wearable electronically enabled interface |
| US20120105740A1 (en) | 2000-06-02 | 2012-05-03 | Oakley, Inc. | Eyewear with detachable adjustable electronics module |
| US7013009B2 (en) | 2001-06-21 | 2006-03-14 | Oakley, Inc. | Eyeglasses with wireless communication features |
| CN1647576A (zh) * | 2002-04-23 | 2005-07-27 | 皇家飞利浦电子股份有限公司 | 信号传输系统 |
| BR0312909A (pt) * | 2002-07-26 | 2005-07-12 | Oakley Inc | Interfaces áudio sem fios, portáveis, sistemas de interfaces áudio, óculos, armações oculares e dispositivos áudio interativos e métodos de recebimento de chamadas telefônicas, de manipulação de sinal numa rede sem fios e de navegação em menus |
| JP2004110613A (ja) * | 2002-09-20 | 2004-04-08 | Toshiba Corp | 制御装置、制御プログラム、対象装置及び制御システム |
| TWI226593B (en) * | 2002-10-28 | 2005-01-11 | Sin Etke Technology Co Ltd | Message transmission method among vehicles and devices thereof |
| US8014339B1 (en) * | 2003-02-25 | 2011-09-06 | Hewlett-Packard Company | Methods for providing universal network access within a wireless communication system |
| JP3725880B2 (ja) * | 2003-03-04 | 2005-12-14 | 株式会社東芝 | 電子機器およびプログラム |
| US7627343B2 (en) * | 2003-04-25 | 2009-12-01 | Apple Inc. | Media player system |
| US11650784B2 (en) | 2003-07-28 | 2023-05-16 | Sonos, Inc. | Adjusting volume levels |
| US11106425B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
| US8086752B2 (en) | 2006-11-22 | 2011-12-27 | Sonos, Inc. | Systems and methods for synchronizing operations among a plurality of independently clocked digital data processing devices that independently source digital data |
| US8234395B2 (en) | 2003-07-28 | 2012-07-31 | Sonos, Inc. | System and method for synchronizing operations among a plurality of independently clocked digital data processing devices |
| US11106424B2 (en) | 2003-07-28 | 2021-08-31 | Sonos, Inc. | Synchronizing operations among a plurality of independently clocked digital data processing devices |
| US8290603B1 (en) | 2004-06-05 | 2012-10-16 | Sonos, Inc. | User interfaces for controlling and manipulating groupings in a multi-zone media system |
| US9207905B2 (en) | 2003-07-28 | 2015-12-08 | Sonos, Inc. | Method and apparatus for providing synchrony group status information |
| US11294618B2 (en) | 2003-07-28 | 2022-04-05 | Sonos, Inc. | Media player system |
| EP1656767A1 (en) * | 2003-08-11 | 2006-05-17 | Philips Intellectual Property & Standards GmbH | Radio communication system |
| US7070425B2 (en) * | 2003-12-10 | 2006-07-04 | Ennova Direct, Inc. | Thumb drive with retractable USB connector |
| KR100575579B1 (ko) * | 2003-12-18 | 2006-05-03 | 한국전자통신연구원 | 블루투스를 이용한 리모콘명령 생성 시스템, 리모콘명령처리 시스템 및 리모콘명령 처리 방법 |
| JP2005235019A (ja) * | 2004-02-20 | 2005-09-02 | Sony Corp | ネットワークシステム、分散処理方法、情報処理装置 |
| JP2005252501A (ja) * | 2004-03-03 | 2005-09-15 | Nec Corp | 通信システム、通信制御装置及び通信制御方法 |
| CN1676374B (zh) * | 2004-03-31 | 2011-12-07 | 深圳市朗科科技股份有限公司 | 车载视听系统 |
| US9374607B2 (en) | 2012-06-26 | 2016-06-21 | Sonos, Inc. | Media playback system with guest access |
| US9977561B2 (en) | 2004-04-01 | 2018-05-22 | Sonos, Inc. | Systems, methods, apparatus, and articles of manufacture to provide guest access |
| US7797471B2 (en) | 2004-04-27 | 2010-09-14 | Apple Inc. | Method and system for transferring album artwork between a media player and an accessory |
| US7529872B1 (en) | 2004-04-27 | 2009-05-05 | Apple Inc. | Communication between an accessory and a media player using a protocol with multiple lingoes |
| US7673083B2 (en) * | 2004-04-27 | 2010-03-02 | Apple Inc. | Method and system for controlling video selection and playback in a portable media player |
| US7529871B1 (en) | 2004-04-27 | 2009-05-05 | Apple Inc. | Communication between an accessory and a media player with multiple protocol versions |
| US7441062B2 (en) * | 2004-04-27 | 2008-10-21 | Apple Inc. | Connector interface system for enabling data communication with a multi-communication device |
| US7826318B2 (en) * | 2004-04-27 | 2010-11-02 | Apple Inc. | Method and system for allowing a media player to transfer digital audio to an accessory |
| US8117651B2 (en) | 2004-04-27 | 2012-02-14 | Apple Inc. | Method and system for authenticating an accessory |
| US7526588B1 (en) * | 2004-04-27 | 2009-04-28 | Apple Inc. | Communication between an accessory and a media player using a protocol with multiple lingoes |
| US7634605B2 (en) | 2004-04-27 | 2009-12-15 | Apple Inc. | Method and system for transferring stored data between a media player and an accessory |
| US7441058B1 (en) * | 2006-09-11 | 2008-10-21 | Apple Inc. | Method and system for controlling an accessory having a tuner |
| US7895378B2 (en) * | 2004-04-27 | 2011-02-22 | Apple Inc. | Method and system for allowing a media player to transfer digital audio to an accessory |
| US7529870B1 (en) | 2004-04-27 | 2009-05-05 | Apple Inc. | Communication between an accessory and a media player with multiple lingoes |
| US8326951B1 (en) | 2004-06-05 | 2012-12-04 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
| US8868698B2 (en) | 2004-06-05 | 2014-10-21 | Sonos, Inc. | Establishing a secure wireless network with minimum human intervention |
| US7823214B2 (en) | 2005-01-07 | 2010-10-26 | Apple Inc. | Accessory authentication for electronic devices |
| US7525216B2 (en) * | 2005-01-07 | 2009-04-28 | Apple Inc. | Portable power source to provide power to an electronic device via an interface |
| US7672637B2 (en) * | 2005-03-01 | 2010-03-02 | Audiological Engineering Corp. | Method and system for delivering from a loudspeaker into a venue |
| US20060205349A1 (en) * | 2005-03-08 | 2006-09-14 | Enq Semiconductor, Inc. | Apparatus and method for wireless audio network management |
| US8244179B2 (en) | 2005-05-12 | 2012-08-14 | Robin Dua | Wireless inter-device data processing configured through inter-device transmitted data |
| US20070004472A1 (en) * | 2005-06-30 | 2007-01-04 | Gitzinger Thomas E | Method and apparatus for wireless audio management |
| US7632114B2 (en) * | 2006-03-30 | 2009-12-15 | Apple Inc. | Interface connecter between media player and other electronic devices |
| US8006019B2 (en) | 2006-05-22 | 2011-08-23 | Apple, Inc. | Method and system for transferring stored data between a media player and an accessory |
| JP2007324831A (ja) * | 2006-05-31 | 2007-12-13 | Toshiba Corp | 音声再生装置及び音声再生システムの音声同期方法 |
| US7415563B1 (en) | 2006-06-27 | 2008-08-19 | Apple Inc. | Method and system for allowing a media player to determine if it supports the capabilities of an accessory |
| KR20080006253A (ko) * | 2006-07-12 | 2008-01-16 | 삼성전자주식회사 | 전송 효율을 개선한 블루투스 마스터 및 이를 이용한데이터 전송 방법 |
| US20080057887A1 (en) * | 2006-08-30 | 2008-03-06 | General Instrument Corporation | Method for Communicating Meta Data |
| US7558894B1 (en) | 2006-09-11 | 2009-07-07 | Apple Inc. | Method and system for controlling power provided to an accessory |
| US8483853B1 (en) | 2006-09-12 | 2013-07-09 | Sonos, Inc. | Controlling and manipulating groupings in a multi-zone media system |
| US9202509B2 (en) | 2006-09-12 | 2015-12-01 | Sonos, Inc. | Controlling and grouping in a multi-zone media system |
| US12167216B2 (en) | 2006-09-12 | 2024-12-10 | Sonos, Inc. | Playback device pairing |
| US8788080B1 (en) | 2006-09-12 | 2014-07-22 | Sonos, Inc. | Multi-channel pairing in a media system |
| JP2008085785A (ja) * | 2006-09-28 | 2008-04-10 | Olympus Corp | モバイル機器システムおよびモバイル機器 |
| KR100773443B1 (ko) * | 2006-10-02 | 2007-11-05 | 삼성전자주식회사 | 휴대 단말기의 스테레오 지원 시스템 및 그 운용 방법 |
| KR100782083B1 (ko) * | 2006-10-11 | 2007-12-04 | 삼성전자주식회사 | 휴대 단말기의 소리 재생 시스템 및 그 운용 방법 |
| KR100811794B1 (ko) * | 2006-10-12 | 2008-03-10 | 삼성전자주식회사 | 휴대단말기의 블루투스 기능을 이용하여 프린터를 제어하는방법 |
| KR100799885B1 (ko) * | 2006-11-03 | 2008-01-31 | 주식회사 카서 | 근거리 피코 셀 내에서 방송과 통신 및 제어의 융합이가능한 무선 네트워크 프로토콜 |
| US7740353B2 (en) | 2006-12-14 | 2010-06-22 | Oakley, Inc. | Wearable high resolution audio visual interface |
| US8204256B2 (en) * | 2007-01-30 | 2012-06-19 | Sony Corporation | System and method for muting TV speakers when headphones in use |
| US8472874B2 (en) * | 2007-03-14 | 2013-06-25 | Apple Inc. | Method and system for pairing of wireless devices using physical presence |
| JP4459253B2 (ja) * | 2007-05-29 | 2010-04-28 | 株式会社東芝 | 通信端末 |
| US8086781B2 (en) * | 2007-06-22 | 2011-12-27 | Apple Inc. | Serial pass-through device |
| US8078787B2 (en) | 2007-06-22 | 2011-12-13 | Apple Inc. | Communication between a host device and an accessory via an intermediate device |
| US9467735B2 (en) * | 2007-09-04 | 2016-10-11 | Apple Inc. | Synchronizing digital audio and analog video from a portable media device |
| JP4954021B2 (ja) * | 2007-11-02 | 2012-06-13 | 株式会社リコー | 無線通信中継装置、通信制御方法、無線通信システム、無線通信中継用プログラム及びその記録媒体 |
| US8331922B2 (en) * | 2007-11-29 | 2012-12-11 | Broadcom Corporation | Remote host controller interface control for devices |
| US8055307B2 (en) | 2008-01-18 | 2011-11-08 | Aliphcom, Inc. | Wireless handsfree headset method and system with handsfree applications |
| US8047966B2 (en) * | 2008-02-29 | 2011-11-01 | Apple Inc. | Interfacing portable media devices and sports equipment |
| JP4553034B2 (ja) | 2008-05-22 | 2010-09-29 | ソニー株式会社 | 無線通信装置、プログラム、無線通信方法、および無線通信システム |
| US20090298420A1 (en) * | 2008-05-27 | 2009-12-03 | Sony Ericsson Mobile Communications Ab | Apparatus and methods for time synchronization of wireless audio data streams |
| US8208853B2 (en) * | 2008-09-08 | 2012-06-26 | Apple Inc. | Accessory device authentication |
| US8238811B2 (en) | 2008-09-08 | 2012-08-07 | Apple Inc. | Cross-transport authentication |
| US8676239B2 (en) * | 2009-02-23 | 2014-03-18 | Mitsubishi Electric Corporation | Wireless communication system, wireless communication device, and wireless communication method |
| US8452903B2 (en) | 2009-03-16 | 2013-05-28 | Apple Inc. | Mobile computing device capabilities for accessories |
| US8909803B2 (en) | 2009-03-16 | 2014-12-09 | Apple Inc. | Accessory identification for mobile computing devices |
| US9386054B2 (en) * | 2009-04-07 | 2016-07-05 | Qualcomm Incorporated | System and method for coordinated sharing of media among wireless communication devices |
| US8626932B2 (en) | 2009-09-01 | 2014-01-07 | Apple Inc. | Device-dependent selection between modes for asymmetric serial protocols |
| US20110167176A1 (en) * | 2010-01-06 | 2011-07-07 | Apple Inc. | Connecting multiple accessories to a portable computing device |
| JP2012019556A (ja) * | 2010-03-31 | 2012-01-26 | Toshiba Corp | 制御システム及び電子機器 |
| US11265652B2 (en) | 2011-01-25 | 2022-03-01 | Sonos, Inc. | Playback device pairing |
| US11429343B2 (en) | 2011-01-25 | 2022-08-30 | Sonos, Inc. | Stereo playback configuration and control |
| WO2012101682A1 (ja) * | 2011-01-28 | 2012-08-02 | パイオニア株式会社 | 電子機器、音声出力機器、通信システムおよび電子機器の通信制御方法 |
| US9344292B2 (en) | 2011-12-30 | 2016-05-17 | Sonos, Inc. | Systems and methods for player setup room names |
| US9864211B2 (en) | 2012-02-17 | 2018-01-09 | Oakley, Inc. | Systems and methods for removably coupling an electronic device to eyewear |
| US9729115B2 (en) | 2012-04-27 | 2017-08-08 | Sonos, Inc. | Intelligently increasing the sound level of player |
| US9306879B2 (en) | 2012-06-08 | 2016-04-05 | Apple Inc. | Message-based identification of an electronic device |
| US9008330B2 (en) | 2012-09-28 | 2015-04-14 | Sonos, Inc. | Crossover frequency adjustments for audio speakers |
| WO2014149631A2 (en) | 2013-03-15 | 2014-09-25 | Oakley, Inc. | Electronic ornamentation for eyewear |
| EP2991425B1 (en) * | 2013-04-26 | 2018-08-29 | Clarion Co., Ltd. | Communication device and bluetooth communication system |
| US9307508B2 (en) * | 2013-04-29 | 2016-04-05 | Google Technology Holdings LLC | Systems and methods for syncronizing multiple electronic devices |
| WO2014201213A1 (en) | 2013-06-12 | 2014-12-18 | Oakley, Inc. | Modular heads-up display system |
| CN103475775B (zh) * | 2013-08-15 | 2017-03-15 | 宇龙计算机通信科技(深圳)有限公司 | 通信终端及其连接方法 |
| US9226073B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
| US9226087B2 (en) | 2014-02-06 | 2015-12-29 | Sonos, Inc. | Audio output balancing during synchronized playback |
| US9826558B2 (en) * | 2014-08-25 | 2017-11-21 | Echostar Technologies L.L.C. | Wireless mute device and method |
| US10248376B2 (en) | 2015-06-11 | 2019-04-02 | Sonos, Inc. | Multiple groupings in a playback system |
| US10303422B1 (en) | 2016-01-05 | 2019-05-28 | Sonos, Inc. | Multiple-device setup |
| US10496271B2 (en) | 2016-01-29 | 2019-12-03 | Bose Corporation | Bi-directional control for touch interfaces |
| US10712997B2 (en) | 2016-10-17 | 2020-07-14 | Sonos, Inc. | Room association based on name |
| CN107705539A (zh) * | 2016-12-21 | 2018-02-16 | 深圳中盛智兴科技有限公司 | 智能遥控器和智能主设备、智能遥控方法及系统 |
| US20230206747A1 (en) * | 2020-06-05 | 2023-06-29 | Panasonic Intellectual Property Management Co., Ltd. | Main body device, method of controlling main body device, operation device, method of controlling operation device, and recording medium |
| CN116016472B (zh) * | 2023-02-20 | 2023-06-09 | 北京格如灵科技有限公司 | 客户端交互方法、装置、计算机设备及介质 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1089499A2 (en) | 1999-09-30 | 2001-04-04 | Kabushiki Kaisha Toshiba | Radio communications network system and its radio terminal |
| JP2001168881A (ja) * | 1999-09-30 | 2001-06-22 | Toshiba Corp | 無線通信ネットワークシステムとその無線機器 |
| JP2001144765A (ja) * | 1999-11-12 | 2001-05-25 | Sony Corp | 着信検出装置及び方法 |
| KR100677078B1 (ko) * | 1999-11-26 | 2007-02-01 | 삼성전자주식회사 | 블루투스 장착 기기간 네트워크 운영 방법 |
| JP3600505B2 (ja) * | 2000-04-28 | 2004-12-15 | シャープ株式会社 | 無線通信システム |
-
2002
- 2002-06-25 US US10/362,481 patent/US7149475B2/en not_active Expired - Fee Related
- 2002-06-25 JP JP2003509712A patent/JPWO2003003659A1/ja active Pending
- 2002-06-25 WO PCT/JP2002/006322 patent/WO2003003659A1/ja not_active Application Discontinuation
- 2002-06-25 CN CNA028026810A patent/CN1466835A/zh active Pending
- 2002-06-25 EP EP02741282A patent/EP1401148A1/en not_active Withdrawn
Also Published As
| Publication number | Publication date |
|---|---|
| US20040048569A1 (en) | 2004-03-11 |
| US7149475B2 (en) | 2006-12-12 |
| CN1466835A (zh) | 2004-01-07 |
| WO2003003659A1 (fr) | 2003-01-09 |
| EP1401148A1 (en) | 2004-03-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPWO2003003659A1 (ja) | 無線通信制御装置及び無線通信制御方法、記憶媒体、並びにプログラム | |
| US10524300B2 (en) | Wireless low-latency audio content sharing | |
| JP6026668B2 (ja) | マルチバンドサービスディスカバリを実行するためのシステム及び方法 | |
| JP3928489B2 (ja) | 通信方法、通信システム及び通信機器 | |
| EP2375708B1 (en) | Radio communication method and system | |
| US7257398B1 (en) | Telephone set, communication adaptor, home appliance control method, and program recording medium | |
| CN113366439A (zh) | 一种连接蓝牙设备方法及设备 | |
| EP1447944A2 (en) | Bluetooth wireless communication apparatus and method of notifying users of devices connectable to ad-hoc networks to establish effective connections based on a user's selection | |
| KR20050002799A (ko) | 통신 방법, 통신 시스템 및 통신 장치 | |
| CN105050033A (zh) | 基于低功耗蓝牙和传统蓝牙的微微网组网互连方法及系统 | |
| WO2008101407A1 (fr) | Procédé et système d'entrée/sortie de flux de données audio | |
| JP2001345817A (ja) | 無線機制御端末装置、無線システム、及びマルチメディアシステムの構成方法 | |
| US10817249B2 (en) | Audio system control method, control terminal device, and information storage medium | |
| WO2016155286A1 (zh) | 一种基于蓝牙的多设备智能互连方法及系统 | |
| CN111447602A (zh) | 蓝牙设备及其蓝牙抢占方法和装置、计算机可读存储介质 | |
| US20180189025A1 (en) | Control method, audio device, and information storage medium | |
| EP3800904B1 (en) | Device control method and device | |
| KR100419422B1 (ko) | 블루투스 시스템의 긴급구조 요청방법 | |
| JP2013126092A (ja) | 近距離無線通信システム | |
| CN115996371A (zh) | 蓝牙连接方法、装置、电子设备及存储介质 | |
| JP5294416B2 (ja) | リモコン制御システムおよびリモコン制御方法 | |
| JP2008124776A (ja) | 電子機器 | |
| JP2011197822A (ja) | 電子機器 | |
| JP2007505588A (ja) | アドホック無線ネットワーク用のupnp端末 | |
| WO2007012257A1 (fr) | Procédé et appareil de contrôle distant sans fil du lecteur multimédia en diffusion continue dans le système hôte et système correspondant |