各例示的実施形態は、以下の説明及び添付の図面を参照することによって更に理解することができ、各図において、同様の要素は同じ参照番号で表されている。例示的実施形態は、例えば、自動化されたアプローチが近距離通信リンクを確立するために使用されるときに、スリープ状態時に使用される電力を低減又は最小化するためのデバイス、システム、及び方法を説明する。例示的実施形態は、スリープ状態が識別されたときの第1の態様を含み、この第1の態様は、アクセサリデバイスがスリープ状態にある間に、自動化されたアプローチの接続動作がどのように使用されるべきかを規定する。例示的実施形態はまた、アクセサリデバイスがスリープ状態からウェイク状態又は使用状態に遷移するときの第2の態様も含み、この第2の態様は、ソースデバイスとの近距離通信リンクを自動的に確立するための、アクセサリデバイスにおける更なる接続動作をトリガする。このようにして、例示的実施形態は、アクセサリデバイスが使用されるべきときに、近距離通信リンクを比較的短時間で確立することができ、またアクセサリデバイスが低電力状態にある間により多くの電力を節約するメカニズムを提供する。
本明細書では、例示的実施形態は、近距離通信リンク(又は、近距離通信接続)の確立に関して説明され、ここで、近距離通信リンクは、Bluetoothリンクである。しかしながら、Bluetoothリンクの使用は単に例示的なものに過ぎず、Bluetoothリンクは、任意の近距離通信リンクを表してよい(又は任意の近距離通信リンクに置換されてよい)。更に、近距離通信リンクの使用も単に例示的なものに過ぎず、例示的実施形態は、2つ以上のデバイス間の任意のタイプの接続(例えば、中距離接続又は長距離接続)のために使用又は修正することができる。例示的実施形態は、本明細書において説明されているように、識別情報(又は識別子)のブロードキャスト、及びブロードキャストされた識別情報/識別子を検出するためのスキャン動作に関するアドバタイジングスキームを含む。しかしながら、このタイプのアドバタイジングスキームの使用は単に例示的なものに過ぎず、例示的実施形態は、任意のより低電力の、高速検出識別スキームのために使用又は修正されてもよい。本明細書では、例示的実施形態は、アクセサリデバイスとソースデバイスとの間に確立されているBluetoothリンクに関して説明される。しかしながら、このアクセサリ及びソースの構成の使用は単に例示的なものに過ぎず、例示的実施形態は、本明細書において説明されるメカニズムを使用して接続を確立することができる任意の2つ以上のデバイスのために使用又は修正することができる。すなわち、一方のデバイスが他方のデバイスに下位である必要はない。用語「ソースデバイス」及び「アクセサリデバイス」は、本明細書における2つのデバイスを区別することの利便性のために用いられているに過ぎない。更に、例示的実施形態は、スリープ状態に関して本明細書において説明される。しかしながら、スリープ状態は、デバイスの性能及び/又はコンポーネントの一部又は全てが、電源切断されているか、ないしは別の方法で通常動作よりも低い電力消費状態で構成されている、任意のより低電力の状態を表すことができる。加えて、電源切断されているコンポーネントは、コンポーネントが電力を引き出さないことを必要とするか、又は通常の完全な動作状態の間に引き出される電力量以下の電力しか必要としない。例示的実施形態は、デバイスが使用される見込みであるときに関して説明される。使用される見込みであるということは、情報が評価されて、デバイスが使用される見込みを示す確率が判定されるときに関連させることができる。
無線通信システム及び無線通信プロトコルは、この方式で接続することができる、使用のタイプ及びデバイスのタイプを更に増大させるように開発されている。無線通信システムの1つのタイプは、複数のデバイス間でのデータ伝送のために使用されるコンピュータネットワークとして定義することができるパーソナルエリアネットワーク(「PAN」)を利用することができる。例えば、PANは、デバイス自体間の通信(例えば、インターパーソナルコミュニケーション)のために、又はアップリンクを介してより高次のネットワーク及び/又はインターネットに1つ以上のデバイスを接続するために使用することができ、1つの「マスタ」(又はプライマリ)デバイスは、ルータに関連付けられた動作を実行する責任を負うことができる。更に、無線PANは、Bluetoothプロトコルなどの近距離無線技術を使用してデバイスを相互接続するためのネットワークであってもよい。
無線PAN内では、特定のアプリケーション又は動作は、比較的大量の電力を使用するとみなすことができ、その一方で、その他のアプリケーション又は動作は、比較的少量の電力を使用するとみなすことができる。同様に、特定のアプリケーション又は動作は、比較的大量の時間を必要とするとみなすことができる一方で、その他のアプリケーション又は動作は、比較的少量の時間を必要とするとみなすことができる。例えば、Bluetooth接続に関しては、相対的に言えば、Bluetoothページング動作/Bluetoothページスキャン動作は、Bluetoothアドバタイジングスキームよりも多くの電力及びより多くの時間のいずれも利用する場合がある。Bluetoothページング動作/Bluetoothページスキャン動作は、Bluetooth接続動作がどのように実行されるかを定義するBluetoothプロトコルに基づいてもよい。Bluetoothアドバタイジングスキームは、低エネルギアプリケーションプロファイルが低エネルギリンクを介して短いデータを送受信するプロトコルに関することができる。プロファイルは、デバイスが意図した方式でBluetoothなどの特定の技術を使用できるようにするために、製造業者が従う標準を提供することができる。そのようなアドバタイジングスキームの1つは、Bluetooth Special Interest Groupによって、例えば、ヘルスケア、フィットネス、位置特定、ビーコン、セキュリティ、及び家庭用娯楽産業における用途を目的として、設計及び市販されている無線PAN技術であるBluetooth低エネルギ(以下、「BLE」と記す)又は「Bluetooth Smart」として定義されている。上述のように、Bluetoothページング動作/Bluetoothページスキャン動作を含むClassic Bluetooth(又はBluetooth Classic)と比較して、BLEは、同様の通信距離を維持しつつ、並びに近接性及びBluetooth接続の確立についての可能性を識別するためにBluetoothデバイスによって使用される時間を低減しつつ、大幅に低減された電力消費及びコストを提供することを意図している。しかしながら、特にデバイスが低電力状態にある場合には、Bluetoothリンクを確立するときの自動化されたアプローチにおいてBLEプロトコルが使用されたとしても、Bluetoothページスキャン動作並びにBLEスキャン動作は、ブロードキャストすることができるあらゆるページ又はアドバタイズメントそれぞれを受信し続ける。上述のように、それらの動作は、より多くの時間及び/又は電力を使用する場合がある。
例示的実施形態は、アクセサリデバイスがスリープ状態にある間に、引き出される電力の量を低減又は最小化するように構成されている。以下で更に詳細に説明されるように、スリープ状態に入ると、例示的実施形態は、Bluetoothページ動作及びBluetoothページスキャン動作並びにBLEスキャン動作を終了することができ、かつ増大された間隔が使用される修正された方式でソースデバイスを検出するためにBLEアドバタイズメント動作のみを維持することができる。アクセサリデバイスの使用が見込まれるときにスリープ状態から離れるために、アクセサリデバイスは、ソースデバイスからの要求を受信するか、又はアクセサリデバイスが使用される見込みを検出することができる。許可されたデバイスとしてソースデバイスが確認されると、アクセサリデバイスは、確立されるBluetooth接続のためのBluetoothページング動作及びBluetoothページスキャン動作を開始することができる。アクセサリデバイスがスリープ状態に入ったことによりBluetoothページング動作及びBluetoothページスキャン動作並びにBLEスキャン動作が除去され、更なる接続動作が修正されると、アクセサリデバイスにおける無線機は、その使用を大幅に少なくすることができ、改善された電力性能を可能にすることができる。
図1は、例示的実施形態に係る、近距離通信リンクを利用するコンポーネントのシステム100を示す。システム100は、ソースデバイス105と、プライマリオーディオバッド(audio bud)110及びセカンダリオーディオバッド115を含むペアリングされたオーディオデバイス108との間、又はソースデバイス105とオーディオデバイス135との間の、近距離接続の可能なネットワークを示す。システム100は、ソースデバイス105とアクセサリデバイス(例えば、ペアリングされたオーディオデバイス108又はオーディオデバイス135)との間に近距離接続が確立される場合を示す。しかしながら、例示的実施形態は、近距離通信リンクが確立されておらず、後に、近距離通信リンクが確立されるときの期間を対象とするので、図示した近距離通信リンクは継続的にアクティブでなくてもよい。ペアリングされたオーディオデバイス108は、2つのテザリングされていないオーディオバッド110、115を含むシステムであってよく、例えば、オーディオバッド110、115間に有線接続は存在しないが、それらのオーディオバッド110、115が相互に連動して機能するように設計されている。例えば、第1のオーディオバッド110は、ソースデバイス105からストリーミングされたオーディオの右チャネルを出力することができ、第2のオーディオバッドは、ソースデバイス105からストリーミングされたオーディオの左チャネルを出力することができる。以下で更に詳細に説明されるように、ソースデバイス105から受信したデータを出力する際に、一方のオーディオバッド(例えば、プライマリオーディオバッド110)は、ソースデバイス105との直接的な無線接続を有する主要な役割を担うことになり、他方のオーディオバッド(例えば、セカンダリオーディオバッド115)は、ソースデバイスとの間接的な無線接続及びプライマリオーディオバッドとの直接的な接続を有する2次的な役割を担うことになる。
確立することができる第1の近距離通信リンクは、ソースツーオーディオバッド(S2B)リンク120を介して、ソースデバイス105とペアリングされたオーディオデバイス108のプライマリオーディオバッド110との間に存在してよい。確立することができる第2の近距離通信リンクは、オーディオバッドツーオーディオバッド(B2B)リンク125を介して、ペアリングされたオーディオデバイス108におけるプライマリオーディオバッド110とセカンダリオーディオバッド115との間に存在してよい。セカンダリオーディオバッド115は、S2Bリンク120において交換されるか、又はソースデバイス105によってブロードキャスト/送信される通信(例えば、データ)の傍受130(又はスヌープ)を実行するように構成されてもよい。確立することができる第3の近距離通信リンクは、ソースツーデバイス(S2D)リンク140を介して、ソースデバイス105とオーディオデバイス135との間に存在してよい。S2Dリンク140は、S2Bリンク120と実質的に同様であってよい。システム100は、ソースデバイス105とセカンダリオーディオバッド115との間などの更なる近距離通信リンク(図示せず)を含んでもよい。一部の実施例では、近距離通信リンクはBluetooth接続であってよい。
従来のアプローチ(例えば、Classic Bluetoothプロトコルによって定義されているようなアプローチ)では、S2Bリンク120及び/又はS2Dリンク140は、ユーザが手動でデバイスを選択する手動のアプローチを使用して確立することができる。例えば、近距離通信リンクを確立するためにソースデバイス105がプライマリオーディオバッド110及びオーディオデバイス135の両方を利用できる場合、ソースデバイス105は、それらのデバイスを検出し、ユーザが接続のためにそれらのデバイスのうちの1つを選択することを可能にするリストとしてそれらのデバイスを表示することができる。対照的に、B2Bリンク125は、近接性の検出及び/又はB2Bリンク125の確立についての可能性が常に(例えば、所定の間隔で)実行される自動化されたアプローチを使用して確立することができる。以下で詳細に説明されるように、S2Bリンク120、B2Bリンク125、及びS2Dリンク140は、それぞれ、例示的実施形態による自動化されたアプローチを使用して確立することができる。
ソースデバイス105は、S2Bリンク120及び/又はS2Dリンク140を確立することができる任意の電子デバイスであってもよい。例えば、ソースデバイス105は、モバイルデバイス(例えば、モバイルコンピューティングデバイス、携帯電話、タブレットコンピュータ、パーソナルコンピュータ、VoIP電話、パーソナルディジタルアシスタント、ウェアラブルデバイス、周辺デバイス、インターネットオブシングス(IoT)デバイスなど)又は固定のデバイス(例えば、デスクトップ端末、サーバ、IoTデバイスなど)であってよい。プライマリオーディオバッド110及びセカンダリオーディオバッド115を含むペアリングされたオーディオデバイス108は、一緒に使用される任意の複数のワイヤレスオーディオ出力コンポーネント(例えば、イヤホン)であってよい。特に、プライマリオーディオバッド110及びセカンダリオーディオバッド115は、ソースデバイス105にテザリングされていなくてよく、並びに相互にテザリングされていなくてよい。オーディオデバイス135は、任意の単一のワイヤレスオーディオ出力コンポーネント(例えば、ワイヤレスヘッドホン、スピーカなど)であってよい。特に、オーディオデバイス135は、ソースデバイス105にテザリングされていなくてよいが、複数のオーディオ出力サブコンポーネントのためのテザリングされた構成を利用することができる。オーディオバッド及びオーディオデバイスなどのオーディオ関連デバイスの使用は単なる例示である。例示的実施形態は、任意のタイプ(単数又は複数)のデバイス(単数又は複数)間の近距離通信リンクを確立するために使用することができる。従って、プライマリオーディオバッド110、セカンダリオーディオバッド115、及びオーディオデバイス135は、ソースデバイス105並びに他のタイプのデバイス(例えば、アクセサリデバイス)についての上述のタイプを含む任意の電子デバイス(単数又は複数)を表すことができる。例えば、プライマリオーディオバッド110、セカンダリオーディオバッド115、及びオーディオデバイス135は、Bluetooth対応ハンズフリーヘッドセット、ワイヤレススピーカ、インターカム、フィットネストラッキングデバイス、センサ、自動車サウンドシステムなどであってよい。
システム100において、ソースデバイス105及びプライマリオーディオバッド110、又はソースデバイス105及びオーディオデバイス135は、S2Bリンク120又はS2Dリンク140それぞれにわたるマスタ/スレーブ(又は主/従)関係を有することができる。特に、ソースデバイス105は、マスタコンポーネントであってよく、その一方で、プライマリオーディオバッド110又はオーディオデバイス135は、スレーブコンポーネントであってよい。同様に、プライマリオーディオバッド110及びセカンダリオーディオバッド115は、B2Bリンク125にわたるマスタ/スレーブ関係を有することができる。特に、プライマリオーディオバッド110はマスタコンポーネントであってよく、その一方で、セカンダリオーディオバッド115はスレーブコンポーネントであってよい。しかしながら、マスタ/スレーブ関係は、単なる例示である。別の例示的実施形態によれば、近距離通信リンクを介して接続されているコンポーネントは、相互的な関係(例えば、ピア・ツー・ピア)を有することができ、その場合、いずれのコンポーネントも優先権を有していない(例えば、等しい優先権を共有する)か、又はいずれのコンポーネントも実行されなければならない所定の動作を有していない(例えば、所定の動作が共有されてもよい、又は実行すべき責務が共有されてもよい)。更に別の例示的実施形態では、マスタ/スレーブ関係は、動的に設定することができる。例えば、プライマリオーディオバッド110が最初にマスタコンポーネントとして設定されており、その一方で、セカンダリオーディオバッド115が最初にスレーブコンポーネントとして設定されているが、セカンダリオーディオバッド115がソースデバイス105との接続を維持するか、又はソースデバイス105とのより良好な近距離接続を有するように条件が変化する場合、セカンダリオーディオバッド115はマスタコンポーネントになることができ、その一方で、プライマリオーディオバッド110はスレーブコンポーネントになることができる。システム100は、S2Bリンク120、B2Bリンク125、S2Dリンク140、又はシステム100のデバイスのうちのいずれかとの別の接続のいずれにも存在することができる1つ以上の他のデバイスを含むことができる。
近距離通信リンク(例えば、S2Bリンク120、B2Bリンク125、又はS2Dリンク140)の確立に際し、ソースデバイス105、プライマリオーディオバッド110、セカンダリオーディオバッド115、及びオーディオデバイス135は、従来の動作並びに例示的実施形態による動作を実行するために必要なハードウェア、ソフトウェア、及び/又はファームウェアを含むことができる。加えて、プライマリオーディオバッド110、セカンダリオーディオバッド115、及びオーディオデバイス135が低電力状態にある期間中に、それらのコンポーネントは、従来の動作並びに例示的実施形態による動作を実行するために必要なハードウェア、ソフトウェア、及び/又はファームウェアを含むことができる。
図2は、近距離通信リンクを確立し、例示的実施形態に係る低電力状態にある間に使用される動作(例えば、Bluetoothページング動作、Bluetoothページスキャン動作、BLEアドバタイズメント動作、及びBLEスキャン動作)を実行するためのデバイス200を示す。デバイス200は、ソースデバイス105、プライマリオーディオバッド110、セカンダリオーディオバッド115、及びオーディオデバイス135のいずれかを表してよい。特に、デバイス200は、従来の動作及び例示的実施形態による動作を実行するために含むことができるコンポーネントを表してよい。
デバイス200は、アンテナ210に接続された送受信機205、ベースバンドプロセッサ215、及びコントローラ220、並びに他のコンポーネント(図示せず)を含むことができる。他のコンポーネントは、例えば、メモリ、アプリケーションプロセッサ、バッテリ、デバイス200を他の電子デバイスに電気的に接続するためのポートなどを含むことができる。送受信機205は、1つ以上の接続を介してデータを交換するように構成することができる。特に、送受信機205は、近距離通信プロトコルに関連付けられた周波数又はチャネル(例えば、Bluetooth接続に関連付けられたチャネル)を使用して、近距離通信リンクを確立することができる。コントローラ220は、送受信機205及びベースバンドプロセッサ215の通信機能を制御することができる。加えて、コントローラ220は、メモリ、バッテリなどの他のコンポーネントに関する非通信機能も制御することができる。従って、コントローラ220は、アプリケーションプロセッサに関連付けられた動作を実行することができる。
ベースバンドプロセッサ215は、Bluetoothなどの無線通信規格と互換性のあるチップであってよい。ベースバンドプロセッサ215は、デバイス200の複数の動作を実行するように構成することができる。例えば、動作は、デバイス200がスリープ状態(又はより低い電力状態/低減された電力状態)に入ると近距離通信リンクが解消される例示的実施形態に関する方法及び動作並びに修正されたアドバタイジングスキーム又は検出動作を含むことができ、続けて近距離通信リンクは、アドバタイジングスキームを使用し、対応する接続動作を実行して確立される。更に、送受信機205は、デバイス200の複数の動作を実行するように構成することもできる。例えば、動作は、例示的実施形態に関する方法及び動作を含むことができる。
プライマリオーディオバッド110、セカンダリオーディオバッド115、及びオーディオデバイス135に関して、それらのデバイスは、更なるコンポーネントを含むことができる。以下で更に詳細に説明されるように、それらのデバイスが使用中であるか、又は使用される見込みがある場合を示す利用可能な情報が存在してよい。従って、それらのデバイスは、この情報を生成するか、ないしは別の方法で検出する更なるコンポーネントを装備することができる。例えば、それらのデバイスは、デバイスが使用されているときを識別することができるセンサを含むことができる。特定の実施例では、センサは、相対的な(例えば、ペアリングされたオーディオデバイス108の場合には相互に相対的な、又はユーザに対して相対的な)向き又は位置を示すことができる。センサが、デバイスは例えばユーザの耳にある、ユーザの頭部に装着されている、などを示す場合、センサは、デバイスが使用されているか、又は使用される見込みがあることを示すように処理されるセンサデータを生成することができる。別の実施例では、センサはモーションセンサであってよい。モーションセンサが静止状態からの動きを検出すると、モーションセンサは、ユーザがデバイスを移動させ(例えば、拾い上げ)、デバイスを使用する見込みがあることを示すように処理されるモーションセンサデータを生成することができる。
例示を目的として、本明細書においては、例示的実施形態はオーディオデバイス135に関して説明される。しかしながら、当業者であれば、本明細書における説明は、プライマリオーディオバッド110を含むペアリングされたオーディオデバイス108にも関することを理解するであろう。ペアリングされたオーディオデバイス108がセカンダリオーディオバッド115を考慮して実施される場合に、例示的実施形態によるメカニズムが更なる動作を含む場合には、相応の説明も提供される。
最初に、オーディオデバイス135は、複数の状態のうちの1つを取るように構成することができる。例えば、状態は、出荷状態、休止状態、スタンバイ状態、スリープ状態、アイドル状態、レディ状態、及びアクティブ状態のいずれか/全てを含むことができる。これらの状態は、一般に、例えば電力を引き出す接続を確立する際に使用されるコンポーネントに関する相対的な電力状態に従って、種々のカテゴリに分類することができる。以下で説明されるように、出荷状態及び休止状態は、最も低い電力状態を使用することができ、スタンバイ状態は、休止状態に対して相対的な中間電力状態を使用することができ、スリープ状態は、低電力状態を使用することができ、アイドル状態は、スリープ状態に対して相対的な中間電力状態を使用することができ、レディ状態及びアクティブ状態は、(例えば、全ての接続動作が使用される)通常の電力(又は、高電力/フルパワー)状態を使用することができる。
状態は、オーディオデバイス135が小売業者から製品のユーザ/購入者に出荷されているときに関連させることができる。従って、無線機(例えば、送受信機205)を含むオーディオデバイス135は非アクティブ化することができ、それによって、Bluetoothページング動作及び、Bluetoothページスキャン動作並びにBLEアドバタイズメント動作及びBLEスキャン動作を含む接続動作が使用されない最も低い電力状態が利用される。ユーザ及び特定のオーディオデバイス135に関して、出荷状態は、任意の種類の最初の使用(例えば、充電動作、電源投入動作、接続動作など)が記録されるまでの、オーディオデバイス135がユーザに配送されているときにのみ使用することができる。
休止状態及びスタンバイ状態は、オーディオデバイス135が保管ケース内にあるとき、ないしは(利用可能であれば)別の方法で、デバイスが即座には使用されないことを示すモードになるときに関連させることができる。休止状態は、オーディオデバイス135が長期間にわたり保管ケース内にあるときに使用することができる。従って、オーディオデバイス135が使用される見込みは低いので、オーディオデバイス135は、出荷状態と実質的に同様の最も低い電力状態を利用することができる。この状態では、Bluetoothページング動作及びBluetoothページスキャン動作、並びにBLEアドバタイズメント動作及びBLEスキャン動作を含む接続動作は使用されない。オーディオデバイス135は、オーディオデバイス135が保管ケースから取り出されると休止状態を離れ、別の状態、例えば、(以下に記載される)アイドル状態に入ることができる。ユーザの観点から、保管ケース内にオーディオデバイス135が配置されると、無線機が非アクティブ化されることを保証することができる。
スタンバイ状態は、オーディオデバイス135が保管ケース内にあるとき、ないしは別の方法で、例えば、オーディオデバイス135が次の1分以内、5分以内などの時間内に使用されることが予想されるときに、デバイスが比較的短い期間は使用されないことを示すモードになる場合であってもよい。従って、オーディオデバイス135は、直近に、保管ケース内に配置された可能性がある。最後に使用された電力状態は一定期間保持することができる。その期間内にオーディオデバイス135を保管ケースから取り出すことがあるからである。例えば、保管ケース内に配置される前の最後に使用された電力状態は、アイドル状態であってよい。最後に使用された電力状態は、より短い期間にわたりスタンバイ状態に遷移し、続けて、より長い期間にわたり休止状態に遷移することができる。スタンバイ状態から遷移するための任意の期間(例えば、少なくとも1分、5分など)を使用することができるが、遷移が速くなるほど、省エネルギ性を高めることができる。
スリープ状態及びアイドル状態は、オーディオデバイス135が所定の期間にわたり使用されていないときに関連させることができる。例えば、オーディオデバイス135は、(例えば、オーディオバッドの場合には)ユーザの耳から取り外すことができる、(例えば、ヘッドホンの場合には)ユーザの頭部から取り外すことができる、などである。スリープ状態は、オーディオデバイス135が、より短い期間の後に入ることができるアイドル状態と比較して、比較的長い期間にわたり使用されなかった後に入ることができる。従って、オーディオデバイス135は、より低い電力状態を利用することができる。接続動作が実行されない最も低い電力状態とは対照的に、例示的実施形態によるより低い電力状態は、オーディオデバイス135が依然として検出されることを可能にするために、BLEプロトコルの動作を利用する(又は可能にする)ことができる。以下で詳細に説明されるように、オーディオデバイス135がスリープ状態にあるとき、オーディオデバイス135は、BLEアドバタイズメント動作を実行することができるか、ないしは別の方法でBLEアドバタイズメント動作に関与することができるが、Bluetoothページング動作及びBluetoothページスキャン動作又はBLEスキャン動作は実行しない。一部の実施例では、所定の時間(例えば、30分、1時間、2時間など)にわたり動きがほとんど又は全く検出されなかった後に、アイドル状態からスリープ状態に入ることができる。オーディオデバイス135は、オーディオデバイス135が使用される見込みである(例えば、要求がソースデバイス105から受信される、動きが検出される、など)と判定すると、スリープ状態から離れることができる。
アイドル状態は、オーディオデバイス135が比較的短い時間(例えば、1分、5分、15分など)にわたり使用されていないときに実施することができる。休止状態とスタンバイ状態との関係性と同様に、オーディオデバイス135は、使用後直近にアイドル状態に設定された可能性がある。オーディオデバイス135は再び使用することができるので、最後に使用された電力状態は維持することができる。例えば、オーディオデバイス135は、(以下に記載する)レディ状態に対応する位置から取ることができる。
レディ状態及びアクティブ状態は、オーディオデバイス135が使用中であるか、又は使用される見込みのときに関連させることができる。例えば、オーディオデバイス135が、(例えば、オーディオバッドの場合には)ユーザの耳に配置されている、(例えば、ヘッドホンの場合には)ユーザの頭部の上又は頭部周りに配置されている、などの場合には、オーディオデバイス135は、使用中である、又は使用できる場合がある。別の実施例では、オーディオデバイス135が代替の場所の近くにあるか、又は代替の場所に装着されている場合(例えば、ヘッドホンがユーザの首周りに装着されている場合、オーディオバッドが検出される動きを有している場合、など)、オーディオデバイス135は使用される見込みがある場合がある。使用中又は使用される見込みのオーディオデバイス135を考慮して、ソースデバイス105との接続動作を継続することができ、それによってS2Bリンク120又はS2Dリンク140が維持される。
当業者には理解されるように、スリープ状態は低電力状態であってよく、このスリープ状態中、オーディオデバイス135が比較的長い期間にわたり使用されていない間に、オーディオデバイス135は特定の電力使用量を維持する。スリープ状態中に無線機の活動を閾値に低減又は最小化することの目的は、改善された省電力を提供することにあってよい。上述のように、オーディオデバイス135がケース内にある場合(例えば、出荷状態、休止状態、及びスタンバイ状態)、使用されていない場合(例えば、スリープ状態及びアイドル状態)、並びに使用中の場合(例えば、レディ状態及びアクティブ状態)などの種々の状態は、種々の方式で分類することができる。当業者は、最も頻繁に使用される状態は、使用されていない状態及び使用中の状態に関する状態であることを理解するであろう。オーディオデバイス135が使用されるそれぞれの間に、オーディオデバイス135は、時間のかなりの部分にわたりスリープ状態にあってよい。従って、例示的実施形態は、オーディオデバイス135がスリープ状態にある間に、自動化されたアプローチに関連付けられた接続動作がどのように使用されるかを定義するメカニズムを提供する。
近距離通信リンクの確立に関して、例示的実施形態によるメカニズムは、Classic Bluetoothによって定義されている動作を使用してこのプロセスを完了させることができる。オーディオデバイス135がスリープ状態にあるとき、ソースデバイス105は、オーディオデバイス135に接続することができ、オーディオデバイス135にスリープ状態から離れさせることができる。上述のように、ソースデバイス105がオーディオデバイス135に接続することを可能にする、Classic Bluetoothにおいて使用される自動化されたアプローチは、オーディオデバイス135がスリープ状態にある間に能動的なBluetoothページスキャンを実行することを必要とする。これらのBluetoothページスキャンは、所定の間隔で、例えばBluetoothによって必要とされたときに実行されてよい。ページスキャンの実行は、オーディオデバイス135がスリープ状態にある間に、電源から電力を消費する場合がある。例示的実施形態は、例えば、異なる接続動作を使用することによって、オーディオデバイス135がスリープ状態にある間に消費される電力を低減又は最小化するように構成される。スリープ状態にある間に、オーディオデバイス135は、ソースデバイス105を検出するために(オーディオデバイス135を検出する及び/又はオーディオデバイス135にシグナリングするためのソースデバイス105に対して)使用することができるBLEアドバタイズメント動作のみを維持しながら、全てのBluetoothページング動作及びBluetoothページスキャン動作並びにBLEスキャン動作を終了することができる。更に、BLE動作は、消費される電力を更に低減するためにそれらのBLE動作が実行されるときに関して修正することもできる。
オーディオデバイス135は、ソースデバイス105からスキャン要求を受信することができ、これにより、オーディオデバイス135にスリープ状態を離れさせることができる。更に、オーディオデバイス135は、S2Dリンク140を確立することができる許可されたデバイスのホワイトリストを維持することができる。従って、ホワイトリストにあるデバイスは、オーディオデバイス135をトリガして、スリープ状態から離れさせることができ、その一方で、ホワイトリストにないデバイスは、オーディオデバイス135に対していずれのアクションもトリガしないので、オーディオデバイス135はスリープ状態に留まる。オーディオデバイス135がスリープ状態から離れると、BLE動作(例えば、アドバタイズメント及び/又はスキャン)及びBluetooth動作(ページング及び/又はページスキャン)を実行することができる。Bluetoothページング動作及びBluetoothページスキャン動作並びにBLEスキャン動作を実行する必要性を取り除き、スリープ状態にある間にBLEアドバタイズメント動作がどのように実行されるかを更に修正することによって、オーディオデバイス135の無線機の使用を大幅に少なくすることができ、その結果、改善された電力性能をもたらすことができる。
例示的実施形態は、フォールバックメカニズムを備えて構成されてよい。当業者であれば理解するように、ソースデバイス105は、ページング動作及びページスキャン動作を含め、Classic Bluetoothを利用するように構成されてよいが、BLEアドバタイズメント動作及びBLEスキャン動作のBLE動作を利用するように構成されていなくてよい。例示的実施形態は、オーディオデバイス135がスリープ状態にある間に、BLE動作を利用し、その一方で、自動化されたアプローチでClassic Bluetooth接続動作を終了するので、オーディオデバイス135は、ソースデバイス105がそのように構成されている場合には、S2Dリンク140を確立するように構成されなくてよい。従って、オーディオデバイス135は、オーディオデバイス135がBluetoothページスキャン動作を開始することができるフォールバックメカニズムを利用することができる。一部の実施形態では、Bluetoothページスキャン動作のこの使用は、ユーザによって制御される手動設定によって構成することができる。別の方法としては、Bluetoothページスキャンを自動的に可能にすることができる。例えば、Bluetoothページスキャン動作は、イベントが発生すると、トリガされてもよい。BLE動作を使用するように構成されているソースデバイス105から受信したスキャン要求を使用することとは対照的に、フォールバックメカニズムは、オーディオデバイス135の使用の見込みが検出されると、Bluetoothページスキャン動作をトリガすることができる。例えば、オーディオデバイス135は、オーディオデバイス135が使用される見込みであるときを識別する1つ以上のセンサ(例えば、モーションセンサ、光学センサなど)を装備することができる。
例示的実施形態によるメカニズムに戻ると、第1の態様は、オーディオデバイス135がスリープ状態に入り、後続の動作が実行されるときであってよい。オーディオデバイス135は、(例えば、レディ状態又はアクティブ状態からの)アイドル状態にあってよい。オーディオデバイス135は、様々な判定基準に基づいて、アイドル状態に入るときを検出することができる。例示的な判定基準としては、S2Dリンク140が制御データのためにのみ使用されている、オーディオデバイス135がもはやユーザに装着されていない、オーディオデバイス135が固定の表面に配置されている、などが挙げられる。アイドル状態に入った後に、判定は、オーディオデバイス135がアイドル状態に入った後の所定の(又は閾値)期間にわたり使用されておらず、従ってスリープ状態に入ることを示すことができる。スリープ状態に入ったことの判定は、アイドル状態に基づいてよい。例えば、オーディオデバイス135は、現在の状態がアイドル状態であり、アイドル状態が少なくとも所定の時間(例えば、30分、1時間、2時間など)にわたり維持されていると判定することができる。アイドル状態に入るときの識別に際して、オーディオデバイス135は、センサを介して、使用されていないこと又は使用の意図がないことを判定することができる。例えば、センサは、ユーザにおけるオーディオデバイス135の位置又は向きを示すことができ、この位置又は向きは、オーディオデバイス135が使用中であること(例えば、ユーザの頭部付近にある、ユーザの耳にある、など)、又は使用される見込みであること(例えば、ユーザの首付近にある)を示す。別の実施例では、センサは、オーディオデバイス135の動きを示すことができる。動きがないということは、オーディオデバイス135が使用中でないことを示すことができ、その一方で、選択動作は、オーディオデバイス135が使用される見込みであることを示すことができる。オーディオデバイス135は、例えば、使用又は意図の判定を行うために、検出された動きを個別に利用することができるか、又は動きを組み合わせて利用することができる。
オーディオデバイス135が、遷移中に、スリープ状態に入ることを判定すると、オーディオデバイス135は、1つ以上の動作を実行することができる。第1の実施例では、オーディオデバイス135は、S2Dリンク140が依然として確立されているときに、ソースデバイス105から切り離すことができ、S2Dリンク140を解消することができる。例えば、オーディオデバイス135は、ユーザによって装着されている状態から取り外して、近くの表面に置くことができるが、しかしながらユーザは、オーディオデバイス135の近くの実質的に同様の場所に留まる。従って、S2Dリンク140は依然として確立されてよい。この場合、スリープ状態に入ると、オーディオデバイス135は、この既存のS2Dリンク140を解消することができる。別の実施例では、オーディオデバイス135は、ユーザによって装着されている状態から取り外して、近くの表面に置くことができるが、ユーザは、ソースデバイス105がS2Dリンク140の動作範囲外に位置するようにその場所を離れている。従って、S2Dリンク140は、スリープ状態に入るときまでには切断することができる。この場合、リンクは、オーディオデバイスがスリープ状態に入るべきことが判定された前に解消することができた。
オーディオデバイス135がスリープ状態に入ってショートリンク通信リンクを切断することにより、又はオーディオデバイス135がスリープ状態に入る前に、種々の理由のうちのいずれかによりショートリンク通信リンクを維持できないことにより、S2Dリンク140が解消される場合、オーディオデバイス135は、オーディオデバイス135とソースデバイス105(又はオーディオデバイス135が接続されたいずれかの他のソースデバイス)との間の最後のS2Dリンク140に関連付けられたホスト接続情報を記憶するように構成されてよい。以下で詳細に説明されるように、オーディオデバイス135がメンバーであった最後のS2Dリンク140のホスト接続情報は、例えば、ソースデバイス105からのスキャン要求の受信とは対照的に、センサデータに基づいて、オーディオデバイス135がスリープ状態からウェイクするときに情報を提供することができる。
スリープ状態に入ると実行される動作の別の実施例では、オーディオデバイス135は、Bluetoothページング動作、Bluetoothページスキャン動作、及びBLEスキャン動作を終了することができる。それらの接続動作は、S2Dリンク140を確立するための自動化されたアプローチで実行することができる。ページング動作及び2つのスキャン動作を使用することで電力消費が増大するので、例示的実施形態は、電力を更に節約し、スリープ状態中のオーディオデバイス135による電力使用を低減するために、それらの動作を終了するように構成される。従って、BLEアドバタイズメント動作は、オーディオデバイス135が依然としてソースデバイス105によって検出され得るように、スリープ状態で実行される。例示的実施形態は、ページング動作及び2つのスキャン動作の終了に関して説明される。しかしながら、例示的実施形態は、スリープ状態中も継続されるか又は使用される動作の種々の選択を利用してもよい。例えば、最後に接続されたソースデバイス105がBLEにおけるアドバタイズメントプロトコルを用いるように構成されていない場合には、フォールバックメカニズムが存在してよい。従って、スリープ状態では、オーディオデバイス135は、Bluetoothページング動作を依然として実行することができる。別の実施例では、オーディオデバイス135は、Bluetoothページング動作及びBluetoothページスキャン動作を終了し、BLEアドバタイズメント動作及びBLEスキャン動作を維持する選択を行うことができる。BLEスキャン動作は、Bluetoothスキャン動作よりも少ない電力を引き出すことができる。従って、スリープ状態における従来の自動化されたアプローチから、省電力を更に改善することができる。
スリープ状態において実行される動作の別の実施例では、オーディオデバイス135は、BLEアドバタイズメント動作を第1の間隔から第2のより長い間隔に遷移させることができる。どの接続動作が実行されるかの選択に加えて、実行される動作を修正することができる。例えば、BLEアドバタイズメント動作は、スリープ状態に入る前に(例えば、アイドル状態、レディ状態、又はアクティブ状態にある間に)使用される標準的なアドバタイズメントブロードキャスト間隔(例えば、181.25ms)から、より長いスリープアドバタイズメントブロードキャスト間隔(例えば、2倍の長さの362.5ms)に修正することができる。ブロードキャストされるBLEアドバタイズメントの数を低減することによって、オーディオデバイス135は、更に電力を節約し、電力消費を低減することができる。スリープアドバタイズメントブロードキャスト間隔は、スリープアドバタイズメントブロードキャスト間隔が標準アドバタイズメントブロードキャスト間隔よりも長い限り、固定、動的、ランダムなどであってよい。間隔の長さは、本明細書で使用される実施例とは異なっていてもよい。例えば、BLEアドバタイズメントブロードキャスト間隔は、標準アドバタイズメントブロードキャスト間隔(例えば、181.25ms)より長くてもよいし、短くてもよい。また、スリープアドバタイズメントブロードキャスト間隔は、BLEアドバタイズメントブロードキャスト間隔に相対的な種々の乗数であってもよく、またBLEアドバタイズメントブロードキャスト間隔(例えば、362.5ms)の2倍より大又は2倍より小であってもよい。
BLEアドバタイズメントは、ペイロードの一部を変更するように修正することもできる。例えば、オーディオデバイス135がスリープ状態に入ると、BLEアドバタイズメント動作は、オーディオデバイス135の状態を示すペイロードを含むBLEアドバタイズメントを生成することができる。この場合、ペイロードは、オーディオデバイス135がスリープ状態である(又は、より低い電力状態にある)ことを示す。オーディオデバイス135がスリープ状態に留まることを示す継続的なBLEアドバタイズメントがブロードキャストされる場合、BLEアドバタイズメントを受信したデバイスは、S2Dリンク140を確立するためにオーディオデバイス135を利用できないという結論を下すことができる。従って、このデバイスは、オーディオデバイス135への送信(例えば、以下で説明されるようなスキャン要求)を終了することができる。
BLEアドバタイズメント動作は、スキャン可能なBLEアドバタイズメントを生成することができる。すなわち、適切に構成されている場合、ソースデバイス105は、ソースデバイス105によって実行されているBLEスキャン動作中に、オーディオデバイス135からブロードキャストされているBLEアドバタイズメントを受信することができる。ここでもまた、ソースデバイス105がBLEにおけるアドバタイズメントプロトコルを用いるように構成されていない場合には、オーディオデバイス135は、フォールバックメカニズムに戻ることができ、BLEアドバタイズメントを生成及びブロードキャストする代わりに、Bluetoothページスキャン動作を利用することができる。
スリープ状態で実行される動作の更に別の実施例では、オーディオデバイス135は、ソースデバイス105からスキャン要求を受信するように送受信機205を構成することができる。すなわち、オーディオデバイス135は受動的な受信動作を利用することができ、この受動的な受信動作では、ソースデバイス105から送信されるスキャン要求を、スリープ状態にある間に、オーディオデバイス135によって受信することができる。オーディオデバイス135は、ホワイトリストにあるソースデバイスのみに、S2Dリンク140を確立する際の動作のトリガが許可されるように送受信機205を構成することもできる。ホワイトリストは、手動で生成されたリスト、自動的に生成されたリスト、又はそれらの組み合わせであってよい。手動で生成されたリストとして、ユーザは、ホワイトリストに含まれるべき種々のソースデバイスを示す識別情報をオーディオデバイス135に提供することができる。自動的に生成されたリストとして、オーディオデバイス135は、それぞれのS2Dリンク140が確立された以前のソースデバイスを追跡することができる。従って、オーディオデバイス135は、ホワイトリストにある、それらの以前に接続されたソースデバイスを含むことができる。例示を目的として、ソースデバイス105はホワイトリストにあると仮定することができる。ホワイトリストに関連付けられた動作は、例えば、Bluetoothコアコントローラ、アプリケーションプロセッサなどによって実行することができる。
オーディオデバイス135は、スリープ状態に留まり、スリープ状態から離れるというインジケーションが受信される、又はスリープ状態から離れると判定されるまで、修正された方式で、選択された動作を利用することができる。オーディオデバイス135が、スリープ状態から離れることを判定すると、遷移中に、オーディオデバイス135は、1つ以上の動作を実行することができる。上述のように、オーディオデバイス135がスリープ状態から離れることを判定する複数の方法が存在してよい。第1の例示的な離脱アプローチでは、オーディオデバイス135は、(例えば、ソースデバイス105がホワイトリストにある場合には)スリープ状態から離れることをトリガすることができる、ソースデバイス105からのスキャン要求を受信することができる受動的な受信動作を利用することができる。第2の例示的な離脱アプローチでは、オーディオデバイス135は、例えば、オーディオデバイス135の1つ以上のセンサからのセンサデータに基づいて、ユーザによってオーディオデバイス135が使用される見込みを判定することができる。各離脱アプローチは、実行される動作の対応するセットを必要とし得る。
オーディオデバイス135がソースデバイス105からスキャン要求を受信する第1の例示的な離脱アプローチでは、オーディオデバイス135がスリープ状態からウェイクし、アイドル状態に入り、複数の動作を実行することができる。第1の実施例では、オーディオデバイス135は、(例えば、スキャン要求に含まれる識別情報に基づいて)ソースデバイス105を識別し、ソースデバイス105が既知のデバイスであるか否か、ないしは別の方法でホワイトリストに含まれているか否かを判定することができる。最初に、ソースデバイス105は、オーディオデバイス135によってブロードキャストされているBLEアドバタイズメントを受信するように位置決めすることができる。BLEアドバタイズメントに基づいて、ソースデバイス105は、スキャン要求をオーディオデバイス135に送信することができる。スキャン要求を送信するソースデバイス105がホワイトリストにない場合、オーディオデバイス135は、スリープ状態に戻って、修正された間隔でBLEアドバタイズメント動作を継続することができる。ソースデバイス105がホワイトリストにある場合、オーディオデバイス135は後続の動作を実行することができる。
後続の動作は、スリープ状態からアイドル状態への遷移に関連させることができる。第1の実施例では、オーディオデバイス135は、スキャン要求に応答し、スキャン応答を送信することができる。上述のように、BLEアドバタイズメント動作は、オーディオデバイス135のスリープ状態が示されている修正されたペイロードを含むBLEアドバタイズメントを生成することができる。ホワイトリストに記載されたソースデバイス105が、オーディオデバイス135との接続の試行を終了することを阻止するために、スキャン応答は、オーディオデバイス135がウェイク状態であり、もはやスリープ状態にないというインジケーションを(識別情報、制御情報などの他の情報と共に)含むことができる。第2の実施例では、オーディオデバイス135は、BLEアドバタイズメントのペイロードを更新することができる。スキャン応答と同様に、オーディオデバイス135は、ここで、オーディオデバイス135が非スリープ状態(例えば、アイドル状態)にあることをBLEアドバタイズメントで示すことができる。BLEアドバタイズメントの更新されたペイロードでもって、スキャン応答を選択的に利用して、ソースデバイス105にオーディオデバイス135の状態の変化を更新することができる。第3の実施例では、オーディオデバイス135は、BLEアドバタイズメントをブロードキャストする間隔を更新することができる。オーディオデバイス135は、例えば、362.5msのスリープアドバタイズメントブロードキャスト間隔から、例えば、181.25msの標準アドバタイズメントブロードキャスト間隔に戻ることができる。第4の実施例では、オーディオデバイス135は、Bluetoothページスキャン動作を開始することができる。上述のように、S2Dリンク140を確立するために使用されるメカニズムは、Classic Bluetoothにおいて使用される動作を含むことができる。従って、Bluetoothページング動作及びBluetoothページスキャン動作を使用することができる。つまり、オーディオデバイス135を検出し、その時点でオーディオデバイス135がスリープ状態にないことを認識しているソースデバイス105は、Bluetoothページを使用してオーディオデバイス135のページングを開始することができる。オーディオデバイス135は、Bluetoothページを受信するためにBluetoothページスキャンを実行することができる。第5の実施例では、オーディオデバイス135は、Bluetoothページスキャン動作を実行する間隔を設定することができる。例えば、オーディオデバイス135は、標準スキャンに対して相対的な、更なるBluetoothページスキャンが実行される高速スキャンレートを使用することができる。オーディオデバイス135は、高速スキャンレートを、所定の時間にわたり使用することができる、又はS2Dリンク140の確立に基づいて使用することができ、その後、Bluetoothページスキャンを標準スキャンレートに設定することができる。オーディオデバイス135は、それらの接続動作を所定の時間(例えば、5秒、10秒など)にわたり利用することができる。オーディオデバイス135が更なる試行を実行するように構成されている場合、各試行間に中断時間を伴って、接続動作を更なる試行のために循環させることができる。オーディオデバイス135がS2Dリンク140の確立に失敗した場合、オーディオデバイス135はスリープ状態に戻り、接続動作を更新することができる。
オーディオデバイス135が使用される見込みであることを判定する第2の例示的な離脱アプローチでは、オーディオデバイス135は、スリープ状態からウェイクして、アイドル状態に入り、スリープ状態にある間に実行されている他の動作に基づいて複数の動作を実行することができる。スリープ状態にある間、オーディオデバイス135のセンサは、位置、向き、動きなどのいずれか/全てなどのセンサデータを監視及び記録することができる。例えば、センサがオーディオデバイス135は比較的動いていないことを記録した場合、オーディオデバイス135が使用される見込みは比較的低い。対照的に、センサが静止状態からのオーディオデバイス135の動きを記録した場合、オーディオデバイス135が使用される見込みは比較的高い。別の実施例では、センサが、オーディオデバイス135は現在使用される見込みのある位置に対応する位置に(例えば、ユーザの首に置かれている)又は実際に使用される位置に対応する位置(例えば、ユーザの頭部、ユーザの耳の中などに置かれている)を記録した場合、オーディオデバイス135が使用されると判定することができる。従って、センサデータを使用して、オーディオデバイス135は、スリープ状態を離れて、アイドル状態、レディ状態、又はアクティブ状態になることができる。
スリープ状態から起動した後に後続の状態に入ると、オーディオデバイス135は、複数の動作を実行することができる。例えば、オーディオデバイス135は、オーディオデバイス135が接続を確立した以前のソースデバイス105が高速スキャンレートをサポートしているか否かを判定することができる。高速スキャンレートは、全てのBluetooth対応デバイスに実装することができないBluetooth規格における接続動作の特徴である場合、及びオーディオデバイス135が高速スキャンレートを用いるように構成されている場合、オーディオデバイス135は、対応するページスキャン間隔を有するようにBluetoothページスキャン動作を動的に設定することができる。従って、以前のソースデバイス105がこの機能をサポートする場合、オーディオデバイス135は、高速スキャンレートを設定することができる。別の方法としては、以前のソースデバイス105がこの機能をサポートしないか、又は高速スキャンレートを使用するタイマがタイムアウトした場合、オーディオデバイス135は、標準スキャンレートを設定することができる。上述の第1のアプローチと実質的に類似の方式で、別の動作も実行することができる。特に、BLEアドバタイズメントは、スリープアドバタイズメント(又は低電力)ブロードキャスト間隔(例えば、362.5ms)から標準アドバタイズメントブロードキャスト間隔(例えば、181.25ms)への新しい間隔でブロードキャストすることができる。BLEアドバタイズメントは、オーディオデバイスの新しい状態(例えば、非スリープ状態)を示すようにペイロードを修正することができる。
加えて、第2の例示的なアプローチでは、オーディオデバイス135はBluetoothページング動作を実行することができる。第2のアプローチでは、オーディオデバイス135は、センサデータに起因して、ソースデバイス105からのインジケーションによらずに、スリープ状態から離れる。従って、ソースデバイス105がS2Dリンク140を確立する位置にあることの実質的に明確なインジケーションであるスキャン要求を使用する第1の手法とは対照的に、センサデータを使用する第2のアプローチは、オーディオデバイス135が使用されることになるという仮定に依存し、更に、使用される見込みを示すセンサデータをトリガしたS2Dリンク140を確立する位置にソースデバイス105が存在することを仮定する。従って、オーディオデバイス135は、Bluetoothページング動作を更に利用し、Bluetoothページスキャン動作を実行しているソースデバイス105にBluetoothページを送信することができる。オーディオデバイス135は、所定の時間及び1つ以上のサイクルにわたり、Bluetoothページング動作を実行することができる。例えば、オーディオデバイス135は、例えば、1秒、5秒、5秒超などの所定の時間にわたりBluetoothページをブロードキャストすることができる。オーディオデバイス135は、S2Dリンク140が確立された場合に、Bluetoothページング動作を早期に終了することができる。所定の時間の経過後に、オーディオデバイス135は、短い期間(例えば、5秒、10秒など)待機することができ、Bluetoothページング動作を実行するように構成されている場合には、Bluetoothページング動作を実行することができる。例えば、オーディオデバイス135は、所定の回数のBluetoothページング動作サイクル(例えば、3回の試行、5回の試行など)を使用することができる。S2Dリンク140が確立されていない場合、オーディオデバイス135は、接続されていないアイドル状態に入ることができる。オーディオデバイス135が所定の理由(例えば、動きの検出)によりスリープ状態からウェイクすると、オーディオデバイス135はアイドル状態に入ることができ、タイマを始動させることができる。センサデータが、使用される見込みがあることをもはや示さなくなると、タイマは、アイドル状態にある間に始動することができる(例えば、オーディオデバイス135は静止した配置に戻る)。タイマがタイムアウトすると(例えば、30分、1時間、2時間など)、オーディオデバイス135はスリープ状態に戻ることができる。
別の方式では、オーディオデバイス135は、スキャン要求が受信されるが、しかしながらソースデバイス105との接続は生じないときに、接続されていないアイドル状態に到達することができる。ソースデバイス105がS2Dリンク140を確立するために適切な位置にあることの実質的に明確なインジケーションが存在するとはいえ、オーディオデバイス135は、依然としてソースデバイス105とのS2Dリンク140を確立できない場合がある。例えば、ソースデバイス105からのBluetoothページは、Bluetoothページスキャン中にオーディオデバイス135に到達できない場合がある。上述のように、高速スキャンレートが使用される(例えば、ソースデバイス105が適切に構成されている)場合、オーディオデバイス135は、高速スキャンレートを使用することに関連付けられた所定の時間がタイムアウトするまで高速スキャンレートを使用し続けることができ、所定の時間の経過後に、オーディオデバイスは標準スキャンレートに戻ることができる。いずれかのスキャンレートを使用して、オーディオデバイス135は、ソースデバイス105からBluetoothページを受信し続けることができる。Bluetoothページスキャン動作が標準スキャンレートに設定されると、オーディオデバイス135は、スリープタイマを非アクティブ化させることができ、その際、スキャン要求が終了したことを送信したソースデバイス105からBluetoothページを受信することを試行する。スリープタイマがタイムアウトすると、オーディオデバイス135は、第2のアプローチに対応する使用のインジケーション(例えば、使用される見込みを識別するための、位置、向き、動き、などを示すセンサデータ)などの使用のインジケーションが存在するか否かを判定することができる。使用のインジケーションが検出されない場合、オーディオデバイス135は、スリープ状態に戻り、接続動作を更新することができる。しかしながら、使用のインジケーションがある場合、オーディオデバイス135は、接続されていないアイドル状態に入ることができ、この接続されていないアイドル状態から、オーディオデバイス135は、アイドル状態からスリープ状態に入ることに関連付けられたタイマがタイムアウトした後(例えば、30分、1時間、2時間など)に、スリープ状態に戻ることができる。
オーディオデバイス135は、使用される見込みがあることを、センサデータに基づいて、種々のやり方で判定することができる。例示的実施形態に従って実行することができる特定の方式では、センサデータは、対応する閾値を含むことができる。例えば、センサデータが動きを示す場合、動きは動き閾値を上回ることが必要となり得る。このようにして、オーディオデバイス135は、オーディオデバイス135が経験し得る意図的でない運動ではなく、オーディオデバイス135の使用が意図されている妥当な見込みが存在する場合、スリープ状態から離れることができる。
例示的実施形態は、Bluetoothプロトコルの別の特徴を考慮することもできる。例えば、Bluetoothプロトコルは、sniff接続を含むことができる。当業者であれば、Bluetoothプロトコルにおいて使用することができる接続の1つのタイプは、オーディオデバイス135がよりアクティブでない省電力モードであるsniffモードであることを理解するであろう。従って、sniff接続は、実際にはスリープ状態にはないが、スリープ状態と実質的に同様であってよい。従って、sniff接続が存在する場合、オーディオデバイス135は、設定された間隔(例えば、100ms、200msなど)で送信をリスニングすることができる。sniff接続は、他の動作に優先させることができるsniffアンカーポイントを含むことができる。例えば、sniffアンカーポイントは、sniff接続を再確立するために、BLEアドバタイズメントよりも高い優先度を有することができる。
上述のように、ソースデバイス105は、ペアリングされたオーディオデバイス108とS2Bリンク120を確立することもできる。ペアリングされたオーディオデバイス108は、プライマリオーディオバッド110及びセカンダリオーディオバッド115の両方を含むので、上述のメカニズムは、セカンダリオーディオバッド115及びB2Bリンク125を取り入れるための別の動作及び修正を含むことができる。別の動作及び修正は、上述のように、ソースデバイス105に対するオーディオデバイス135と実質的に同様である、プライマリオーディオバッド110によって実行される動作に関連させることができる。
第1の実施例では、プライマリオーディオバッド110及びセカンダリオーディオバッド115はそれぞれ、センサを装備することができる。従って、プライマリオーディオバッド110は、オーディオデバイス135と実質的に同様の方式でセンサデータを生成することができる。更に、セカンダリオーディオバッド115は、セカンダリオーディオバッド115で検出されたセンサデータを生成することができ、このセンサデータを、更なる処理のためにプライマリオーディオバッド110及び/又は別のデバイスに送信することができる。このようにして、プライマリオーディオバッド110及び/又はセカンダリオーディオバッド115で検出されたセンサデータは、ペアリングされたオーディオデバイス108が使用される見込みであるか否かを判定するために、独立して又は組み合わせて使用することができる。
第2の実施例では、ペアリングされたオーディオデバイス108がスリープ状態に入る前に、しかしながらプライマリオーディオバッド110が(オーディオデバイス135と実質的に同様の方式で)スリープ状態に入るであろうと判定された後に、プライマリオーディオバッド110は、セカンダリ接続又はB2Bリンク125が依然として確立されているか否かを判定することができる。B2Bリンク125が解消された場合、ペアリングされたオーディオバッド108は、スリープ状態に入り、上述のように接続動作を実行することができる。しかしながら、B2Bリンク125が依然として確立されている場合、プライマリオーディオバッド110は、B2Bリンク125を、或る使用間隔(例えば、タイムアウト当たり500ms又は4ワット)で、sniff接続に変更することができる。続いて、プライマリオーディオバッド110は、BLEスキャン動作(並びに、まだ行われていない場合には、Bluetoothページング動作及びBluetoothページスキャン動作)を終了し、セカンダリオーディオバッド115とカップリングされたスリープ状態に入ることができる。プライマリオーディオバッド110は、sniff接続のためのsniff設定を更新し、この情報を、その使用のためにセカンダリオーディオバッド115に送信することができる。続いて、セカンダリオーディオバッド115は、BLEスキャン動作(並びに、まだ行われていない場合には、Bluetoothページング動作及びBluetoothページスキャン動作)を終了し、プライマリオーディオバッド110とカップリングされたスリープ状態に入ることができる。
B2Bリンク125が(例えば、バッテリ切れ、干渉、距離などに起因して)無くなると、セカンダリオーディオバッド115は、例えば、高速接続プロセスを使用して、B2Bリンク125を再確立する責任を負うことができる。そのようなシナリオでは、セカンダリオーディオバッド115は、BLEスキャン動作及びBLEアドバタイズメント動作(例えば、181.25msでのアドバタイズメントのブロードキャスト)を可能にすることができる。セカンダリオーディオバッド115は、セカンダリオーディオバッド115が現在の状態での接続を意図したスキャン要求を送信することができるプライマリオーディオバッド110からアドバタイズメントを受信することができる。プライマリオーディオバッド110は、スリープ状態から離れ、他の接続動作と共にページスキャンを開始するプロセスに従うことができる。セカンダリオーディオバッド115は、プライマリオーディオバッド110をページングし、接続を行う。プライマリオーディオバッド110は、その後、接続を切り替え、sniffモードに入り、ペアリングされたオーディオデバイス108に、上述のメカニズムを使用してスリープ状態に入らせる役割を果たすことができる。
ペアリングされたオーディオデバイス108がスリープ状態にある間に、プライマリオーディオバッド110は、BLEアドバタイズメント動作を実行し、プライマリオーディオバッド110及びセカンダリオーディオバッド115の両方の状態を示すBLEアドバタイズメントをブロードキャストするように構成することができる。プライマリオーディオバッド110からのBLEアドバタイズメントは、セカンダリオーディオバッド115に関する情報を含むので、セカンダリオーディオバッド115は、例えば、動き状態、バッテリレベルなどのセンサ情報及び/又は状態情報を用いて、プライマリオーディオバッド110を更新するために、sniff接続を利用することができる。プライマリオーディオバッド110が、BLEアドバタイズメント動作を実行する責任を負うことにより、スリープ状態で長時間経過した後に、プライマリオーディオバッド110は、セカンダリオーディオバッド115に比べて、その電源をより多く利用することができ、これには、上述の情報を用いてプライマリオーディオバッド110を更新することだけが必要とされる。効率を最大化し、ペアリングされたオーディオデバイス108のプライマリオーディオバッド110とセカンダリオーディオバッド115との間の電力使用を改善するために、協調されたバッドのスワップを使用することができ、このスワップにおいて、セカンダリオーディオバッド115はマスタになることができ、プライマリオーディオバッド110はスレーブになる。従って、セカンダリオーディオバッド115は、BLEアドバタイズメント動作を実行する責任を負うことができ、その一方で、プライマリオーディオバッド110は、セカンダリオーディオバッド115に更新情報を提供するように戻ることができる。任意の後続のスワップは、ペアリングされたオーディオデバイス108がスリープ状態に留まっている期間中に実行することができる。役割のスワップを開始するためのトリガは、時間、バッテリ閾値、或る期間にわたる電力消費量などの任意の状態(単数又は複数)に基づくことができる。更に、役割のスワップは、いつでも実行することができ、役割のスワップ間の期間は等しくなくてよい。交換は、ソースデバイス105との接続が存在しないときに実行することができる。
ペアリングされたオーディオデバイス108がスリープ状態から離れるときに実行される別の動作に関して、ペアリングされたオーディオデバイス108がスリープ状態に入るときに、上述の動作とは実質的に反対の動作のセットを実行することができる。例えば、プライマリオーディオバッド110及びセカンダリオーディオバッド115は、sniff接続を超えてB2Bリンク125を確立するために、BLEスキャン動作を開始することができる。S2Bリンク120及びB2Bリンク125がペアリングされたオーディオデバイス108によって使用される際に、(スリープ状態に入るための及びスリープ状態から離れるための)それらの別の動作が実行されるときの更なる詳細及び例示的なタイミングは、以下で更に詳細に説明される。
図3は、本明細書に記載される種々の例示的実施形態に係る、スリープ状態に入るときに近距離通信リンクを切断するための例示的な信号ダイアグラム300を示す。特に、信号ダイアグラム300は、オーディオデバイス135が非スリープ状態(例えば、アクティブ状態、レディ状態、又はアイドル状態)からスリープ状態に入る際の、発生するイベント、並びにオーディオデバイス135及びソースデバイス105によって実行される後続の接続動作の例示的なシーケンスを示す。図示のように、信号ダイアグラム300は、ベースバンドプロセッサ305及びコントローラ310を含んでいるソースデバイス105、並びにベースバンドプロセッサ315及びコントローラ320を含んでいるオーディオデバイス135を含むことができる。例示を目的として、信号ダイアグラム300は、S2Dリンク140が確立され、その後スリープ状態に入ると解消されるときにも関連する。
非スリープ状態では、ベースバンドプロセッサ305及びベースバンドプロセッサ315は、Bluetoothページング動作及びBluetoothページスキャン動作、並びにBLEアドバタイズメント動作及びBLEスキャン動作を含む接続動作を実行することができる。例えば、ベースバンドプロセッサ305は、BLEアドバタイズメント322をブロードキャストし、BLEスキャン324を実行することができる。ベースバンドプロセッサ315は、BLEアドバタイズメント326をブロードキャストし、BLEスキャン328を実行することができる。別の実施例では、ベースバンドプロセッサ305は、Bluetoothページスキャン動作(図示せず)を実行することができ、その一方で、ベースバンドプロセッサ315も、Bluetoothページスキャン動作332を実行することができる。更なる実施例では、ベースバンドプロセッサ305は、Bluetoothページ330を送信することができ、その一方で、ベースバンドプロセッサ315も、Bluetoothページ(図示せず)を送信することができる。
接続動作は、所定の間隔で実行することができる。第1の実施例では、ベースバンドプロセッサ305又は315がページ状態に入ると、Bluetoothページ動作を実行し、Bluetoothページ(例えば、Bluetoothページ330)を送信することができる。特別な実施形態では、Bluetoothページング動作は、32個のBluetoothチャネルが使用される場合、10ms毎に循環させることができる。第2の実施例では、ベースバンドプロセッサ305又は315は、その時点において非スリープ状態にある間に、Bluetoothページスキャン動作を利用するように構成することができる。特別な実施形態では、標準Bluetoothページスキャン動作間隔を使用して、プロセッサ305又は315は、1.28秒毎に11.25msにわたり、Bluetoothページ用のBluetoothチャネルをスキャンすることができる。第3の実施例では、ベースバンドプロセッサ305又は315は、その時点において非スリープ状態にある間に、BLEアドバタイズメント動作を利用するように構成することができる。特別な実施形態では、標準BLEアドバタイズメント動作間隔を使用して、ベースバンドプロセッサ305又は315は、181.25ms毎にBLEアドバタイズメントをブロードキャストすることができる。第4の実施例では、ベースバンドプロセッサ305又は315は、その時点において非スリープ状態にある間に、BLEスキャン動作を利用するように構成することができる。特別な実施形態では、標準BLEスキャン動作間隔を使用して、プロセッサ305又は315は、100ms毎に10msにわたり、BLEスキャンを実行することができる。
接続動作の上述の間隔は、信号ダイアグラム300に表されている。BLEアドバタイズメント322及びBLEアドバタイズメント326は、181.25ms毎にブロードキャストすることができる。BLEスキャン324及びBLEスキャン328は、100ms毎に10msにわたり実行することができる。オーディオデバイス135におけるBLEスキャン328は実行しなくてもよい。別の例示的実施形態によれば、オーディオデバイス135のベースバンドプロセッサ315は、BLEアドバタイズメント動作のみを実行することができる(BLEスキャン動作を実行しなくてもよい)。従って、ソースデバイス105のベースバンドプロセッサ305は、BLEスキャン動作を実行することができる(及び追加的にBLEアドバタイズメント動作を実行することができる)。アドバタイズメントプロトコルが、ソースデバイス105とオーディオデバイス135との間の検出を示すと、ページングプロトコルを使用して、S2Dリンク140を確立することができる。例えば、Bluetoothページ330は10ms毎に循環させることができ、Bluetoothページスキャン332は、1.28秒毎に11.25msにわたり実行することができる。従って、Bluetooth接続334(例えば、S2Dリンク140)を確立することができる。
後の時点において、コントローラ320は、オーディオデバイス135がスリープ状態336に入れることを判定することができる。上述のように、オーディオデバイス135は、オーディオデバイス135がもはや使用されていないときを識別するセンサデータを生成するセンサを含むことができる。例えば、ペアリングされたオーディオデバイス108は、ユーザの耳から取り外すことができる。別の実施例では、オーディオデバイス135は、表面に配置することができる。オーディオデバイス135が使用されないとき、コントローラ320は、最初に、オーディオデバイス135を(例えば、アクティブ状態又はレディ状態から)アイドル状態にすることができる。アイドル状態に入ると、タイマをアクティブ化させることができるので、タイマがタイムアウトするとスリープ状態が入ることができる。例えば、オーディオデバイス135が少なくとも2時間(又は他の所定の期間)にわたりアイドル状態に留まる場合、コントローラ320は、オーディオデバイス135をスリープ状態にすることができる。
コントローラ320が、オーディオデバイス135はスリープ状態336に入ると判定すると、コントローラ320は、スリープ状態インジケーション338をベースバンドプロセッサ315に転送し、(S2Dリンク140はもはや必要ないので)Bluetooth接続334を解消することができる。従って、ベースバンドプロセッサ305、315は、Bluetooth接続334を切断340するための標準的な解消プロシージャを利用することができる。信号ダイアグラム300は、スリープ状態336が判定されたときに、Bluetooth接続334が依然として確立されていることを仮定する。しかしながら、上述のように、Bluetooth接続334は、様々な他の理由のいずれかによって既に解消されていることも考えられる。
例示的実施形態によるメカニズムの第1の態様によれば、オーディオデバイス135がスリープ状態336に入ると判定されると、コントローラ320は、オーディオデバイス135がスリープ状態に入るときに、ベースバンドプロセッサ315が接続動作をどのように実行するかを設定することができる。上述のように、スリープ状態では、オーディオデバイス135は、Bluetoothページング動作及びBluetoothページスキャン動作、並びにBLEスキャン動作を終了することができ、その一方で、BLEアドバタイズメント動作のみを残すことができる。従って、コントローラ320は、BLEアドバタイズメントを設定342し、BLEアドバタイズメントインジケーション344を転送することができる。コントローラ320は、種々の方式で他の接続動作を終了するために、ベースバンドプロセッサ315に指示することができる。例えば、コントローラ320は、別個のインジケーション(図示せず)を転送することができるか、又はBLEアドバタイズメントインジケーション344に指示を含ませることができる。ベースバンドプロセッサ315がBLEアドバタイズメントインジケーション344を受信すると、ベースバンドプロセッサ315は、標準間隔(例えば、362.5ms)よりも長い間隔でスリープBLEアドバタイズメント346をブロードキャストすることによってBLEアドバタイズメント動作の実行を開始することができる。BLEアドバタイズメントインジケーション344は、オーディオデバイス135のスリープ状態が示されるように、BLEアドバタイズメントのペイロードを更新するようにベースバンドプロセッサ315に指示することができる。
図4は、本明細書に記載の種々の例示的実施形態に係る、スリープ状態から離れるときに近距離通信リンクを確立するための例示的な信号ダイアグラム400を示す。特に、信号ダイアグラム400は、オーディオデバイス135が非スリープ状態(例えば、アクティブ状態、レディ状態、又はアイドル状態)に入るためにスリープ状態から離れる際の、発生するイベント、並びにオーディオデバイス135及びソースデバイス105によって実行される後続の接続動作の例示的なシーケンスを示す。図示のように、信号ダイアグラム400は、ベースバンドプロセッサ405及びコントローラ410を含むソースデバイス105、並びにベースバンドプロセッサ415及びコントローラ420を含むオーディオデバイス135を含むことができる。例示を目的として、信号ダイアグラム400は、確立されるS2Dリンク140のために受信されているスキャン要求に基づいて、オーディオデバイス135がスリープ状態を離れるときにも関する。
スリープ状態では、ベースバンドプロセッサ415は、修正された間隔でBLEアドバタイズメント動作のみを実行することができる。従って、オーディオデバイス135のスリープ状態を示すペイロードを含むスリープBLEアドバタイズメント422は、362.5ms毎にブロードキャストすることができる。後の時点において、ソースデバイス105は、ソースデバイス105及びオーディオデバイス135が相互に検出できるように、アドバタイズメントをリスニングすることができる。例えば、ベースバンドプロセッサ415は、BLEスキャン428中にソースデバイス105によって受信される、スリープBLEアドバタイズメント426をブロードキャストすることができる。スリープBLEアドバタイズメント426を処理することができ、ペイロード内に示されたオーディオデバイス135のスリープ状態を記録することができる。受信したスリープBLEアドバタイズメント426によって、ベースバンドプロセッサ405をトリガして、アドバタイズメントインジケーション430をコントローラ410に転送することができる。アドバタイズメントインジケーション430は、オーディオデバイス135との接続をトリガ432するために、コントローラ410によって処理することができる。従って、コントローラ410は、接続インジケーション434をベースバンドプロセッサ405に転送することができる。その間に、ベースバンドプロセッサ415は、スリープBLEアドバタイズメント436のブロードキャストを継続することができる。スリープBLEアドバタイズメント426、436は、例示を目的として示されており、それらの間の距離は、実際のスリープブロードキャスト間隔を示すことを意図していない。従って、アドバタイズメントインジケーション430、トリガ432、及び接続インジケーション434は、2つのスリープBLEアドバタイズメントの間隔では全く発生しない場合がある。
ベースバンドプロセッサ405が接続インジケーション434を受信すると、ベースバンドプロセッサ405は、スキャン要求438をベースバンドプロセッサ415に送信することができる。上述のように、オーディオデバイス135は、S2Dリンク140を確立することを試行するソースデバイスからのスキャン要求を受動的にリスニングすることができる。ベースバンドプロセッサ415が、スキャン要求438をソースデバイス105から受信すると、ベースバンドプロセッサ415は、要求インジケーション440をコントローラ420に転送することができる。コントローラ420は、オーディオデバイス135をウェイク442させることができる。この場合、コントローラ420は、オーディオデバイス135をスリープ状態からアイドル状態に遷移させることができる。続いて、コントローラ420は、例えば、例示的実施形態によるメカニズムを使用して、オーディオデバイス135とのS2Dリンク140を確立することができる、許可されたソースデバイスのホワイトリストにソースデバイス105が含まれているか否かを判定することができる。コントローラ420が、ソースデバイス105は許可されているか、又はホワイトリストにあると判定444すると仮定した場合、コントローラ420は、許可されたインジケーション446をベースバンドプロセッサ415に転送することができる。
ベースバンドプロセッサ415が許可されたインジケーション446を受信すると、ベースバンドプロセッサ415は、スキャン応答448をベースバンドプロセッサ405に返送することができる。スキャン応答448は、オーディオデバイス135がもはやスリープ状態にないが、しかしながらアイドル状態、レディ状態、又はアクティブ状態などの非スリープ状態にあるというインジケーションを含むことができる。更に、許可されたインジケーション446は、オーディオデバイス135の状態がその時点では非スリープ状態にあると示されるように、BLEアドバタイズメントのペイロードを更新させることができる。上述のように、オーディオデバイス135は、スキャン応答448を使用して、又は更新されたBLEアドバタイズメント(例えば、BLEアドバタイズメント450)を介して、状態の変化をソースデバイス105に示すことができる。オーディオデバイス135はスリープ状態にないので、BLEアドバタイズメント動作は、181.25msの標準BLEアドバタイズメント間隔を使用して実行することができる。スキャン応答448でもって、BLEアドバタイズメントは、(例えば、スキャン応答448がソースデバイス105に到達しない場合には)バックアップインジケーションとして使用することができる。
スキャン応答448(又はBLEアドバタイズメント450)は、ソースデバイス105にBluetoothページング動作を実行させることができ、それによってS2Dリンク140を確立することができる。スリープ状態ではない状態に遷移しているオーディオデバイス135は、Bluetoothページスキャン動作をアクティブ化することもできる。例示的実施形態によれば、オーディオデバイス135は、高速スキャンレートを利用することができる。例えば、高速スキャンレートは、(1.28秒毎の11.25msの標準スキャンレートとは異なる)100ms毎のその都度11.25msにわたる1回以上のスキャンであってよい。ここでもまた、高速スキャンレートは、標準スキャンレートに戻る前に、所定の時間にわたり使用することができる。従って、オーディオデバイス135は、高速Bluetoothページスキャン452を実行することができ、その間に、ソースデバイス105は、Bluetoothページ454をブロードキャストすることができる。標準Classic Bluetooth接続プロシージャを使用して、Bluetooth接続456(例えば、S2Dリンク140)を確立することができる。
図5は、本明細書に記載の種々の例示的実施形態に係る、スリープ状態に入るときに近距離通信リンクを切断するための例示的な方法500を示す。方法500は、オーディオデバイス135が、利用可能な情報からの判定に基づいて、もはや使用されていないときに関する。つまり、方法500は、オーディオデバイス135がウェイク状態(例えば、アクティブ状態又はレディ状態)にあるが、先ずアイドル状態に遷移し、その後アイドル状態において所定時間が経過した後にスリープ状態に遷移するときに関する。方法500は、ソースデバイス105とのS2Dリンク140の解消、並びに後続の検出動作に関連付けられた動作を含む。方法500は、S2Dリンク140に関するオーディオデバイス135の観点から説明される。
505において、オーディオデバイス135は状態を判定する。上述のように、オーディオデバイス135は、出荷状態、休止状態、スタンバイ状態、スリープ状態、アイドル状態、レディ状態、及びアクティブ状態の任意の状態を含む複数の状態のうちのいずれかにある場合がある。スリープ状態に入ることに関する例示的実施形態によるメカニズムの第1の態様に関して、オーディオデバイス135は、アイドル状態及びスリープ状態に留意することができる。510において、状態はオーディオデバイス135が現在使用されていないアイドル状態であるか否かを、オーディオデバイス135が判定する。オーディオデバイス135がアイドル状態にない(例えば、アクティブ状態又はレディ状態にある)場合、オーディオデバイス135は、オーディオデバイス135の非スリープ状態(例えば、アクティブ又はレディ状態)が使用される515に進む。オーディオデバイス135がアイドル状態にある場合、オーディオデバイス135は525に進み、そこでオーディオデバイス135は、オーディオデバイス135がアイドル状態である時間は所定の閾値(例えば、30分、1時間、2時間など)よりも長いか否かを判定する。アイドル状態に入ると、オーディオデバイス135は、所定の閾値に対応するタイマをアクティブ化させることができる。タイマがタイムアウトすると、オーディオデバイス135は、アイドル状態からスリープ状態に遷移することができる。オーディオデバイス135が所定の閾値未満にわたりアイドル状態にある場合、オーディオデバイス135は、アイドル状態(非スリープ状態)が使用される515に進む。オーディオデバイス135が少なくとも所定の閾値にわたりアイドル状態にある場合、オーディオデバイス135は、オーディオデバイス135がスリープ状態にある状態に対応する530に進む。
530において、オーディオデバイス135は、S2Dリンク140が依然として確立されているか否かを判定する。オーディオデバイス135がスリープ状態にあるにもかかわらず、ソースデバイス105は、依然としてS2Dリンク140を確立したままにする位置にいることができる。しかしながら、オーディオデバイス135のスリープ状態への遷移でもって、S2Dリンク140を終了することができる。S2Dリンク140が依然として確立されている場合、オーディオデバイス135は、sniff接続が存在するか否かを判定するために535に進む。sniff接続は、オーディオデバイス135などのBluetooth対応デバイスによって使用されるスリープ状態ではない低電力状態であってよい。sniff接続が存在する場合、オーディオデバイス135は、S2Dリンク140を確立したままにすると仮定することができる。従って、オーディオデバイス135は515に戻る。つまり、オーディオデバイス135は、S2Dリンク140と共にアイドル状態を使用することができる。
sniff接続が存在しない場合、これは、S2Dリンク140が解消されることになるインジケーションである可能性がある。従って、オーディオデバイス135は535から540に進むことができ、そこではS2Dリンク140が解消されており、オーディオデバイス135は545に進む。あるいは、530の説明に戻ると、ソースデバイス105は、オーディオデバイス135とのS2Dリンク140をサポートする位置にもはや存在しないことも考えられる。例えば、ユーザは、近距離通信リンクの動作距離を超えるように、ソースデバイス105をオーディオデバイス135から遠ざける場合がある。つまり、S2Dリンク140は、既に切断されている場合がある。従って、オーディオデバイス135は、545に進むことができる。
545において、オーディオデバイス135はS2Dリンク140が解消されているスリープ状態にあり、実行が継続される接続動作を選択する。例えば、一部の実現形態では、オーディオデバイス135は、Bluetoothページング動作、Bluetoothページスキャン動作、及びBLEスキャン動作を終了することができる。従って、BLEアドバタイズメント動作のみを残すことができる。550において、オーディオデバイス135は、BLEアドバタイズメント動作でもってブロードキャストされることになるアドバタイズメントのペイロードを更新する。特に、ペイロードの更新は、オーディオデバイス135が現在ある状態に対するものであってよい。従って、オーディオデバイス135は、オーディオデバイス135がスリープ状態にあることを任意の受信デバイスに示すために、BLEアドバタイズメントのペイロードを更新することができる。555において、オーディオデバイス135は、BLEアドバタイズメントがBLEアドバタイズメント動作を使用してブロードキャストされるレートを更新することができる。例えば、レートを低減することができる。BLEアドバタイズメントは181.25ms毎にブロードキャストすることができる。しかしながら、スリープ状態では、BLEアドバタイズメントは362.5ms毎にブロードキャストすることができる。従って、560において、オーディオデバイス135は、残りの接続動作を実行し、565において、オーディオデバイス135はスリープ状態に入る。
スリープ状態に入っているデバイスに関する例示的実施形態によるメカニズムは、ソースデバイス105がペアリングされたオーディオデバイス108と対話しているときに、別の動作を含むことができる。方法500は、それらの別の動作をペアリングされたオーディオデバイス108と協働させるため、かつB2Bリンク125及びセカンダリオーディオバッド115を含むために実行することができる動作と協働させるために使用又は修正することができる。以下の実施例については、プライマリオーディオバッド110が方法500の動作を実行し、ソースデバイス105との関係に関してオーディオデバイス135と同等であると仮定することができる。
第1の実施例では、方法500は、510の実行に別の情報を組み込むことができる。例えば、オーディオデバイス135がアイドル状態にあるか否かを判定することができる。オーディオデバイス135と同様に、ペアリングされたオーディオデバイス108のプライマリオーディオバッド110及びセカンダリオーディオバッド115はそれぞれ、各使用に関する対応するセンサデータを生成する1つ以上のセンサを含むことができる。プライマリオーディオバッド110によって生成されたセンサデータが、オーディオデバイス135によって生成されたセンサデータと等価である場合、セカンダリオーディオバッド115によって生成されたセンサデータは、別の情報を表すことができる。従って、プライマリオーディオバッド110及びセカンダリオーディオバッド115の両方からのセンサデータは、ペアリングされたオーディオデバイス108がアイドルであるか、又は使用中であるか、又は使用される見込みであるかに関する情報を提供することができる。
第2の実施例では、方法500は、B2Bリンク125を準備するプライマリオーディオバッド110におけるプロセスを組み込むことができる。従って、560の後に、B2Bリンク125が依然として確立されているか否かについて判定することができる。B2Bリンク125が確立されておらず、既に解消されている場合、プライマリオーディオバッド110は、565に進むことができる。しかしながら、B2Bリンク125が依然として確立されている場合、プライマリオーディオバッド110は、B2Bリンク125を、或る使用間隔(例えば、タイムアウト当たり500ms又は4ワット)で、sniff接続に変更することができる。続いて、B2Bリンク125を確立するために使用されるアドバタイズメントプロトコルに関連付けられたBLEスキャン動作を終了することができる。それらの動作を実行すると、プライマリオーディオバッド110はスリープ状態に入ることができる。
第3の実施例では、セカンダリオーディオバッド115の観点から、B2Bリンク125がsniff接続に変更されると、プライマリオーディオバッド110は、sniff設定(例えば、タイムアウト当たり500ms又は4ワット)を更新することができる。セカンダリオーディオバッド115は、続いて、B2Bリンク125を確立するために使用されるアドバタイズメントプロトコルに関連付けられたBLEスキャン動作を終了することができる。それらの動作が実行されると、セカンダリオーディオバッド115もスリープ状態に入ることができ、それによって、ペアリングされたオーディオデバイス108がスリープ状態になる。
図6は、本明細書に記載の種々の例示的実施形態に係る、スリープ状態に入るときに近距離通信リンクを確立するための例示的な方法600を示す。具体的には、方法600は、オーディオデバイス135が、入力の受信又は利用可能な情報からの判定に基づいて使用されるときに関する。すなわち、方法600は、オーディオデバイス135がスリープ状態からウェイクするときに関し、かつソースデバイス105とのS2Dリンク140を確立するために使用される関連付けられた動作に関する。方法600は、S2Dリンク140を確立するときのオーディオデバイス135の観点から説明される。
602において、オーディオデバイス135はスリープ状態にある。従って、例示的実施形態では、オーディオデバイス135は、362.5msの修正された間隔でBLEアドバタイズメントを生成してブロードキャストするために、BLEアドバタイズメント動作を実行する。オーディオデバイス135はまた、スキャン要求を受動的にリスニングすることもできる。オーディオデバイス135がスリープ状態を離れ、スキャン要求の受信及び(例えば、センサデータに基づいた)使用の見込みの判定を含む後続の動作を実行することができる複数のやり方が存在してよい。
604において、オーディオデバイス135は、スキャン要求が(例えば、ソースデバイス105から)受信されたか否かを判定する。オーディオデバイス135がBLEアドバタイズメントをブロードキャストすると、ソースデバイス105はBLEスキャン中にBLEアドバタイズメントを受信することができる。BLEアドバタイズメントは、オーディオデバイス135が現在スリープ状態にあるというインジケーションを含むことができる。しかしながら、ソースデバイス105は、S2Dリンク140を確立することを試行するために、オーディオデバイス135にスキャン要求を送信することができる。スキャン要求が受信された場合、オーディオデバイス135は、ソースデバイス105がS2Dリンク140を確立する位置にあると仮定することができる。従って、上述のように、オーディオデバイス135は、スリープ状態を離れ非スリープ状態(例えば、アイドル状態)になることができ、606において、スキャン要求を送信したソースデバイス105にスキャン応答を送信することができる。スキャン応答を送信する前に、オーディオデバイス135は、ソースデバイス105が許可されたデバイスであるか、又はS2Dリンク140を確立することが許可されたデバイスのホワイトリストにあるか否かを判定することができる。従って、スキャン要求を送信したソースデバイス105が許可されている場合及び/又はホワイトリストにある場合、スキャン応答を生成し、ソースデバイス105に返送することができる。スキャン要求は、オーディオデバイス135がもはやスリープ状態にないというインジケーションを含むことができる。オーディオデバイス135が、スキャン要求と、ソースデバイス105は所定の位置にあるという基本的仮定とを受信すると、608において、オーディオデバイス135は、ソースデバイス105からBluetoothページをリスニングするためにBluetoothページスキャン動作を実行するために、高速スキャンレート(例えば、100ms毎に11.25msにわたる)を設定することができる。更に、BLEアドバタイズメント動作は、オーディオデバイス135が非スリープ状態にあることを考慮して更新することができる。従って、610において、オーディオデバイス135は、非スリープ状態としての現在の状態を示すためにBLEアドバタイズメントのペイロードを更新し、612において、オーディオデバイス135は、BLEアドバタイズメントをブロードキャストする間隔を更新する。例えば、間隔は、(例えば、362.5msから181.25msに)低減することができる。
614において、オーディオデバイス135は、Bluetoothページスキャン動作を実行することに関連付けられたタイマがタイムアウトしたか否かを判定する。上述のように、Bluetoothページスキャン動作は、所定の時間にわたり実行することができる。例えば、より速く、より積極的なスキャンレートでは、オーディオデバイス135は、この動作を実行するために付加的な電力が必要とされる場合がある。従って、タイマは、必要以上の電力がこの動作を実行するために提供されないことを保証することができる。タイマがタイムアウトしていない場合、オーディオデバイス135は616に進み、そこでオーディオデバイス135は、接続が確立されたか否かを判定する。すなわち、オーディオデバイス135は、ソースデバイス105からBluetoothページを受信することができ、Classic Bluetoothプロシージャを使用して、S2Dリンク140を確立することができる。接続が確立されると、オーディオデバイス135は618に進み、そこでオーディオデバイス135は、無線機のための接続された状態にあり、かつ(使用又は使用の見込みが検出されて、オーディオデバイス135がアクティブ状態又はレディ状態それぞれに遷移するまで)アイドル状態にある。616において接続がない場合、オーディオデバイス135は614に戻り、タイマの追跡を継続する。
高速スキャンレートを使用するBluetoothページスキャン動作に関するタイマがタイムアウトすると、オーディオデバイス135は614から620に進み、そこでオーディオデバイス135は標準スキャンレート(例えば、1.28秒毎に11.25msにわたる)に戻る。スリープ状態を離れている間に、オーディオデバイス135は、標準スキャンレートを使用してBluetoothページスキャン動作の実行を継続することができる。しかしながら、スキャン要求は受信されたが、オーディオデバイス135は使用されずに、(スキャン要求の受信によって起動された後に)オーディオデバイス135はスリープ状態に戻るべき場合も存在することもある。従って、622において、オーディオデバイス135は、スリープタイマを始動させて、オーディオデバイス135が遷移してスリープ状態に戻るか否かを判定する。624において、オーディオデバイス135は、スリープタイマがタイムアウトしたか否かを判定する。スリープタイマがタイムアウトしていない場合、オーディオデバイス135は626に進み、そこでは、例えば標準スキャンレートでBluetoothページスキャン動作を実行することによって、接続が確立されたか否かについての判定が行われる。接続が確立されると、オーディオデバイス135は618に進み、無線機を接続状態にし、オーディオデバイス135をアイドル状態にする。しかしながら、接続が確立されていない場合、オーディオデバイス135は624に戻る。
スリープタイマがタイムアウトすると、オーディオデバイス135は624から628に進み、そこでオーディオデバイス135は、オーディオデバイス135の使用インジケーションが受信されたか否かを判定する。使用インジケーションは、少なくとも部分的に、オーディオデバイス135が使用される見込みがあることを示す1つ以上のセンサからのセンサデータに基づくことができる。上述のように、1つ以上のセンサは、位置、向き、動きなどのいずれか/全てに関連付けられたセンサデータを生成することができる。例えばセンサデータに基づいて、使用インジケーションが存在する場合、オーディオデバイス135は630に進み、そこでオーディオデバイス135はアイドル状態を維持する。特に、630において、オーディオデバイス135は、接続されていないアイドル状態にある。この時点において、オーディオデバイス135がアイドル状態に留まっている時間の長さを判定するために、タイマを始動させることができる。オーディオデバイス135は、アイドル状態が所定の時間(例えば、30分、1時間、2時間など)維持されると、アイドル状態からスリープ状態に遷移することができる。従って、デバイスが接続されていないアイドル状態にある場合、オーディオデバイス135は、(例えば、使用インジケーションが判定されたことにより)タイマをアクティブ化させることができる。
スキャン要求が、高速スキャンレート又は標準スキャンレートでのBluetoothページスキャン動作を使用した接続をもたらさず、かつ使用インジケーションが受信されなかった場合、オーディオデバイス135は628から632に進み、そこでオーディオデバイス135はBluetoothページスキャン動作を終了する。その時点において、オーディオデバイス135は、スキャン要求を受信したにもかかわらず、オーディオデバイス135が使用される見込みはないと判定することができる。従って、634において、オーディオデバイス135は、BLEアドバタイズメント動作を使用してBLEアドバタイズメントを生成して送信する間隔を増大させる。また、636において、オーディオデバイス135は、オーディオデバイス135がスリープ状態にあることを示すために、BLEアドバタイズメントのペイロードを更新することができる。従って、オーディオデバイス135は602に戻り、そこではオーディオデバイスがスリープ状態にある。
604の説明に戻ると、オーディオデバイス135がスキャン要求を受信しない場合、オーディオデバイス135は638に進み、そこでオーディオデバイス135は、(628で実行される方式と実質的に同様の方式で)オーディオデバイス135の使用インジケーションが存在するか否かを判定する。使用インジケーションが存在しない場合、オーディオデバイス135は602に戻り、そこではスリープ状態が維持され、スリープ状態にある間は接続動作が継続される。使用インジケーションが存在する場合、オーディオデバイス135はアイドル状態に遷移して608に進み、そこでオーディオデバイス135は、高速スキャンレートでBluetoothページスキャン動作を実行する。
スリープ状態に入っているデバイスに関する例示的実施形態によるメカニズムは、ソースデバイス105がペアリングされたオーディオデバイス108と対話しているときに、別の動作を含むことができる。方法600は、それらの別の動作をペアリングされたオーディオデバイス108と協働させるため、かつB2Bリンク125及びセカンダリオーディオバッド115を含むために実行することができる動作と協働させるために使用又は修正することができる。以下の実施例については、プライマリオーディオバッド110が方法600の動作を実行し、ソースデバイス105との関係に関してオーディオデバイス135と同等であると仮定することができる。
第1の実施例では、608の後、プライマリオーディオバッド110は、(B2Bリンク125が確立されていないと仮定して)B2Bリンク125を確立するためにBLEスキャン動作を実行し始めることができる。すなわち、プライマリオーディオバッド110は、スキャン要求の受信によりスリープ状態から起動すると、一連の動作を利用することができる。プライマリオーディオバッド110は、アイドル状態にあり、スリープ状態にはないので、プライマリオーディオバッド110は、その後、B2Bリンク125の状態及びこの近距離通信リンクのための対応するsniffレートを更新することができる。
第2の実施例では、ウェイクされたプライマリオーディオバッド110が遷移して再びスリープ状態に戻ると、逆の一連の動作のセットが実行される。従って、636の後、プライマリオーディオバッド110は、B2Bリンク125に関するBLEスキャン動作を終了することができる。その後、B2Bリンク125が依然として確立されている場合、プライマリオーディオバッド110は、B2Bリンク125を、対応するsniff設定(例えば、タイムアウト当たり500ms又は4ワット)で、sniff接続に変更することができる。その後、プライマリオーディオバッド110及びセカンダリオーディオバッド115を含むペアリングされたオーディオバッド108は、スリープ状態に戻るために602に戻ることができる。
例示的実施形態は、低電力状態にある間に実行するための後続の動作と共に、アクセサリデバイスを低電力状態にするメカニズムのためのデバイス、システム、及び方法を提供する。特に、アクセサリデバイスが低電力状態に入ると判定されると、アクセサリデバイスは、接続動作の選択を終了し、修正された間隔で実行される他の接続動作を保持する。このようにして、アクセサリデバイスは低電力状態にある間に電力使用を最適化することができる。例示的実施形態はまた、低電力状態を離れたことにより実行するための後続の動作と共に、アクセサリデバイスが低電力状態から離れるための別のメカニズムを提供する。特に、アクセサリデバイスが、要求の受信又は使用の見込みの判定に基づいて低電力状態を離れると、アクセサリデバイスは、ソースデバイスとのリンクを確立するための接続動作を更新する。
当業者は、上記の例示的実施形態が、任意の好適なハードウェア構成又はソフトウェア構成又はそれらの組み合わせにおいて実現できることを理解するであろう。例示的実施形態を実現するための例示的なハードウェアプラットフォームとして、例えば、互換性のあるオペレーティングシステムを有するIntel(登録商標)x86をベースとしたプラットフォーム、Windows OS、Macプラットフォーム及びMAC OS、iOS、Android(登録商標)等のオペレーティングシステムを有するモバイルデバイスを挙げることができる。別の実施例においては、上記の方法の例示的実施形態は、コンパイルされると、プロセッサ又はマイクロプロセッサにおいて実行することができる非一時的コンピュータ可読記憶媒体に記憶されたコード行を含むプログラムとして実行することができる。
本発明の趣旨又は範囲から逸脱することなく、本発明において種々の修正を行えることは、当業者にとって明らかであろう。従って、本発明は、添付の特許請求の範囲及びそれらの等価物の範囲内であれば、本発明の修正形態及び変形形態を網羅することが意図されている。