(57)【要約】【課題】ＢＬＵＥＴＯＯＴＨのスレーブ機器などの無線機器の電力消費量を節約するシステムおよび方法を提供する。【解決手段】マスタ機器は、ポーリング期間においてスレーブ機器をポーリングする。スレーブ機器は、データパケットを送信することにより応答する。データの送信においてエラーがある場合には、マスタ機器は、ＴＩＭＥＯＵＴ期間において、スレーブ機器にＡＲＱ（自動反復要求）を送信して、データパケットが受信されなかったことを指示することができる。スレーブ機器は、ＴＩＭＥＯＵＴ期間の間に電力消費量を低減するか、または電源をオフにして、後続のポーリング期間において再送信ＡＲＱを受信することができる。【選択図】図５
2006186971.tif 000002
【特許請求の範囲】
【請求項１】
関連するポーリング期間の間に送信されるデータを再送信するために少なくとも予約されている関連の追加期間を有しているポーリング期間を有する通信プロトコルを使用して、第２の機器と無線通信する第１の機器を処理する方法であって、
前記第１の機器において、第１のポーリング期間の第１のタイムスロット中に第１の送信を受信するステップと、
前記第１の送信を受信することに応答する第１の応答を、前記第１のポーリング期間の第２のタイムスロット中に送信するステップと、
前記第１のポーリング期間に関連付けられた第１の追加期間の間に、電力消費量を低減するステップと、
前記第１の応答が適切に受信されなかったことを指示する第２の送信を、第２のポーリング期間の第１のタイムスロット中に受信するステップと、
前記第２の送信を受信することに応答する第２の応答を、前記第２のポーリング期間の第２のタイムスロットの間に送信するステップと
を備えたことを特徴とする方法。
【請求項２】
前記第２の応答を、前記第２のポーリング期間の第２のタイムスロットの間に送信するステップは、前記第１の応答を再送信するステップを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記第２の応答は、ユーザデータを有しているデータパケットを有することを特徴とする請求項２に記載の方法。
【請求項４】
前記第２の応答は、送信されるべきユーザデータの欠如を指示するパケットを有することを特徴とする請求項３に記載の方法。
【請求項５】
前記送信されるべきユーザデータの欠如を指示するパケットは、ＮＵＬＬパケットであることを特徴とする請求項４に記載の方法。
【請求項６】
前記電力消費量を低減するステップは、トランシーバの電源をオフにするステップを含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記電力消費量を低減するステップは、前記第１の応答が適切に受信されなかったことを指示する第３の送信を受信することができないように、トランシーバの電源をオフにするステップを含むことを特徴とする請求項６に記載の方法。
【請求項８】
前記第２の送信は、前記第１の追加期間の間に送信され、および前記電力消費量を低減するステップは、前記第２の送信が前記第１の追加期間の間に受信されないように、トランシーバの電源をオフにするステップを含むことを特徴とする請求項１に記載の方法。
【請求項９】
前記通信プロトコルは、ＢＬＵＥＴＯＯＴＨプロトコルであり、前記ポーリング期間はＳＮＩＦＦ期間であり、および追加期間はＴＩＭＥＯＵＴ期間であることを特徴とする請求項１に記載の方法。
【請求項１０】
以前の応答が適切に受信されなかったことを指示する第３の送信を、第３のポーリング期間の第１のタイムスロット中に受信するステップと、
前記第３の送信を受信することに応答する第３の応答を、前記第３のポーリング期間の第２のタイムスロット中に送信するステップと、
以前の連続送信のうちの予め定められた数の各々は応答が適切に受信されなかったことを指示した場合、前記第３のポーリング期間に関連付けられた追加期間の間、電力を維持するステップと、
以前の応答が適切に受信されたことを指示する、予め定められた別の数のポーリング期間の送信後に、追加期間中に電力消費量を低減するステップと
をさらに備えたことを特徴とする請求項１に記載の方法。
【請求項１１】
バッテリ電源と、
前記バッテリにより電力供給された無線トランシーバと、
格納された命令を有しているメモリと、
関連するポーリング期間の間に送信されたデータを再送信するために少なくとも予約されいる関連する追加期間を有しているポーリング期間を有する通信プロトコルを使用して、第２の機器と無線通信する第１の機器を処理するための命令を実行するように構成され、および前記トランシーバと前記メモリとに結合され、
前記第１の機器において、第１のポーリング期間の第１のタイムスロット中に第１の送信を受信する手段と、
前記第１の送信を受信することに応答する第１の応答を、前記第１のポーリング期間の第２のタイムスロット中に送信する手段と、
前記第１のポーリング期間に関連付けられた第１の追加期間の間に、電力消費量を低減する手段と、
前記第１の応答が適切に受信されなかったことを指示する第２の送信を、第２のポーリング期間の第１のタイムスロット中に受信する手段と、
前記第２の送信を受信することに応答する第２の応答を、前記第２のポーリング期間の第２のタイムスロットの間に送信する手段と
を含んでいるコントローラと
を備えたことを特徴とする無線機器。
【請求項１２】
前記コントローラは、前記コントローラが前記第２の応答を前記第２のポーリング期間の前記第２のタイムスロットの間に送信する場合、前記第１の応答を再送信することを特徴とする請求項１１に記載の無線機器。
【請求項１３】
前記第２の応答は、データパケット、および送信されるべきデータの欠如を指示するパケットのうちの１つを有することを特徴とする請求項１２に記載の無線機器。
【請求項１４】
前記無線機器は、マウスおよびキーボードからなるグループから選択されることを特徴とする請求項１１に記載の無線機器。
【請求項１５】
関連するポーリング期間の間に送信されたデータを再送信するために少なくとも予約されいる関連する追加期間を有しているポーリング期間を有する通信プロトコルを使用して、第２の機器と無線通信する第１の機器を処理するための命令のシーケンスを表すデータを格納しているコンピュータ読取可能な媒体であって、
前記第１の機器において、第１のポーリング期間の第１のタイムスロット中に第１の送信を受信するステップと、
前記第１の送信を受信することに応答する第１の応答を、前記第１のポーリング期間の第２のタイムスロット中に送信するステップと、
前記第１のポーリング期間に関連付けられた第１の追加期間の間に、電力消費量を低減するステップと、
前記第１の応答が適切に受信されなかったことを指示する第２の送信を、第２のポーリング期間の第１のタイムスロット中に受信するステップと、
前記第２の送信を受信することに応答する第２の応答を、前記第２のポーリング期間の第２のタイムスロットの間に送信するステップと
を備え、プロセッサによって実行されると、前記プロセッサに実行させることを特徴とするコンピュータ読取可能な媒体。
【請求項１６】
前記第２の応答を、前記第２のポーリング期間の前記第２のタイムスロットの間に送信するステップは、前記第１の応答を再送信するステップを含むことを特徴とする請求項１５に記載のコンピュータ読取可能な媒体。
【請求項１７】
前記第２の応答は、データパケットを有することを特徴とする請求項１６に記載のコンピュータ読取可能な媒体。
【請求項１８】
前記第２の応答は、送信されるべきデータの欠如を指示するパケットを有することを特徴とする請求項１７に記載のコンピュータ読取可能な媒体。
【請求項１９】
前記電力消費量を低減するステップは、前記第１の応答が適切に受信されなかったことを指示する第３の送信を受信することができないように、トランシーバの電源をオフにするステップを含むことを特徴とする請求項１５に記載のコンピュータ読取可能な媒体。
【請求項２０】
以前の応答が適切に受信されなかったことを指示する第３の送信を、第３のポーリング期間の第１のタイムスロット中に受信するステップと、
前記第３の送信を受信することに応答する第３の応答を、前記第３のポーリング期間の第２のタイムスロット中に送信するステップと、
以前の連続送信のうちの予め定められた数の各々は応答が適切に受信されなかったことを指示した場合、前記第３のポーリング期間に関連付けられた追加期間の間に電力を維持するステップと、
以前の応答が適切に受信されたことを指示する、予め定められた数の送信後に、追加期間中に電力消費量を低減するステップと
をさらに備え、実行するための命令のシーケンスを表すデータを格納していることを特徴とする請求項１５に記載のコンピュータ読取可能な媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般には、無線リンクによって通信する電子機器における電源管理に関し、より詳細には、エラー復旧のためにタイムスロットを予約している無線プロトコルによって通信する無線機器に関する。
【背景技術】
【０００２】
電子機器間の無線通信は、ますます一般的になっている。一例は、マウス、キーボードおよび他の周辺コンポーネントと通信するコンピュータである。過度にケーブルを接続することを回避し、そうでない場合は利便性を提供するために、多数のマウス、キーボードおよび他のコンポーネントは、現在、ワイヤレスである。無線通信のためのいくつかの規格があるが、ＢＬＵＥＴＯＯＴＨは、多数のアプリケーションのためのデファクトスタンダードになりつつある。Ｂｌｕｅｔｏｏｔｈ  ＳＩＧ，  Ｉｎｃ．によって開発されたＢＬＵＥＴＯＯＴＨ無線仕様は、比較的低電力の無線通信を使用して電子機器間の双方向無線通信のためのプロトコルおよび規格を確立する。ＢＬＵＥＴＯＯＴＨは、例えば、＜ｈｔｔｐ：／／ｗｗｗ．ｂｌｕｅｔｏｏｔｈ．ｃｏｍ＞のＢｌｕｅｔｏｏｔｈ  ＳＩＧ，  Ｉｎｃ．から入手可能な様々な他の文書によって説明されている（例えば、非特許文献１および２参照。）。数ある中でも、ＢＬＵＥＴＯＯＴＨは、「ピコネット」と呼ばれる短距離無線ネットワークにおける複数の機器間の双方向無線リンクを提供する。
【０００３】
ＢＬＵＥＴＯＯＴＨピコネットは、通常、１つまたは複数の「スレーブ」（例えば、無線マウスまたは無線キーボード）から入力を受信する、「マスタ」（例えば、パーソナルコンピュータ）を含む。一連の照会（ｉｎｑｕｉｒｙ）、ページングおよび他のメッセージは、マスタとスレーブとの間で交換される。ＢＬＵＥＴＯＯＴＨプロトコルは、ＳＮＩＦＦと呼ばれる特別なプロビジョンを含み、いくつかのスレーブ機器が、電力消費量を、ピコネット上での「アクティブ」モードにおいて通常消費するであろう量よりも低く低減することが可能となる。このような機器は、通常、適度のレベルのデータフローを有し、および数十または数百ミリ秒の応答待ち時間を許容することができる機器である。ＳＮＩＦＦモードでは、マスタは、定期的に各スレーブをポーリングし、およびスレーブがデータを送信することを要求する。応答において、各スレーブは、ユーザデータの送信、または、スレーブがユーザデータを有していないことを指示するための「ＮＵＬＬ」のいずれかを含む、データパケットを送信することができる。例えば、ユーザデータは、マウスの動きまたはボタンの押し下げを含む場合がある。ＮＵＬＬ応答は、スレーブが、なおピコネットの一部であることをマスタが知るようにするために、必要である。ＳＮＩＦＦモードでは、通常、マスタとスレーブとの通信間に、よりアクティブな通信モードの場合よりも長い間隔がある。通信間では、スレーブは、シャットダウン、すなわち「スリープする」ことができ、したがって、マスタからの次の送信に対して受信し、かつ応答するための時間になるまで、節電することができる。しかし、干渉または類似の困難のために起こり得るスレーブからのデータ損失を回復するために、プロビジョンは、なお作成されなければならない。この問題に対処するため、第１のスロットのセットに隣接し、「タイムアウト」スロットと呼ばれる、第２のスロットのセットが提供される。
【０００４】
図１は、ＢＬＵＥＴＯＯＴＨのＳＮＩＦＦモードを例示する。ＳＮＩＦＦスロットは、マスタとスレーブとの間で決定されたタイムスロットであり、および種々の取り決められた時間長または頻度のいずれか１つにすることができる。本発明の目的のために、ＳＮＩＦＦスロットは、「ＳＮＩＦＦ期間（ｐｅｒｉｏｄ）」と呼び、およびタイムアウトスロットは、「ＴＩＭＥＯＵＴ期間」と呼ぶ。この例では、簡略化されたＳＮＩＦＦ期間およびＴＩＭＥＯＵＴ期間を示す。しかし、ＳＮＩＦＦ期間およびＴＩＭＥＯＵＴ期間の頻度および持続時間は、ＳＮＩＦＦ期間に続くＴＩＭＥＯＵＴ期間の数も同様に、例えば、マスタとスレーブとの機器間のネゴシエーションに基づいて変わる場合があることを理解されたい。省略符号を図に示して、ＳＮＩＦＦ期間の間の様々なタイムスロット数を、ＴＩＭＥＯＵＴ期間の終了と次のＳＮＩＦＦ期間との間に介在する期間も同様に、例示する。
【０００５】
マスタ機器（例えば、コンピュータ）およびスレーブ機器（例えば、無線キーボードまたはマウス）は、図１で「ＳＮＩＦＦ期間１」と示すｓｎｉｆｆスロットにおいて、通信を開始する。ＳＮＩＦＦ期間１の第１のタイムスロットでは、マスタ機器は、ＰＯＬＬパケットをスレーブ機器に送信することによって、スレーブ機器をポーリングする。マスタ機器からのＰＯＬＬパケットに応答して、スレーブは、ＳＮＩＦＦ期間１の第２のタイムスロットにおいて、データパケットかまたは「ＮＵＬＬ」をマスタ機器に送信することによって応答する。この例では、スレーブは、マウスの動きまたはボタンの押し下げなど、ユーザデータを含む場合があるデータパケット（Ｄａｔａ１）を送信して、このデータパケットがマスタによってうまく受信される。マスタは、ＴＩＭＥＯＵＴ期間１の第１のスロットの間にＮＵＬＬを送信することによって、受信の成功を確認する。スレーブ機器は、ＳＮＩＦＦ期間１に続くＴＩＭＥＯＵＴ期間１の第１のスロットの間にリッスン（ｌｉｓｔｅｎ）する。スレーブ機器は、ＴＩＭＥＯＵＴ期間１の第２のタイムスロットで電源をオフにし、次のＳＮＩＦＦ期間の開始までオフのままである。
【０００６】
さらに、図１は、スレーブ機器からの送信がマスタ機器において受信されない場合の、マスタおよびスレーブ機器通信を例示する。この例は、図１のＳＮＩＦＦ期間２およびＴＩＭＥＯＵＴ期間２において例示される。ＳＮＩＦＦ期間２の第１のタイムスロットでは、スレーブ機器がピコネットをリッスンする間に、マスタ機器は、ＰＯＬＬパケットをスレーブ機器（電源がオンにされている）に送信することによって、スレーブ機器をポーリングする。ＰＯＬＬパケットをマスタ機器から受信することに応答して、スレーブ機器は、第２のタイムスロットにおいて、データパケット（Ｄａｔａ２）をマスタ機器に送信することによって応答する。この例では、マスタ機器は、送信を受信することができない。送信の失敗は、限定をするものではないが、送信におけるエラー、または障害のある送信状態などの様々な要因による場合がある。送信が成功しなかったので、マスタ機器はＡＲＱ（Ａｕｔｏｍａｔｉｃ  Ｒｅｐｅａｔ  Ｒｅｑｕｅｓｔ；自動反復要求）をスレーブ機器に送信する。ＡＲＱをスレーブ機器に送信することで、スレーブ機器に、ＴＩＭＥＯＵＴ期間２の第２のタイムスロットにおいてデータパケット（Ｄａｔａ２）を再送信させる。
【０００７】
ＳＮＩＦＦ期間の間に、マスタがＰＯＬＬパケットをスレーブ機器に送信するが、スレーブ機器が、その時点でマスタ機器に送信するべきデータを有していない場合、スレーブ機器は、ＮＵＬＬパケットをマスタ機器に送信することができる。これを、図１のＳＮＩＦＦ期間３およびＴＩＭＥＯＵＴスロット３において例示する。この例では、マスタ機器は、ＳＮＩＦＦ期間３の第１のタイムスロットの間に、ＰＯＬＬパケットをスレーブ機器に送信することによって、スレーブ機器をポーリングする。この場合、スレーブ機器は、マスタ機器に送信するべきデータを有していない。したがって、ＰＯＬＬパケットをマスタ機器から受信することに応答して、スレーブ機器は、ＳＮＩＦＦ期間３の第２のタイムスロットにおいて、ＮＵＬＬパケット（ＮＵＬＬ）をマスタ機器に送信することによって応答する。マスタ機器がＮＵＬＬパケット（ＮＵＬＬ）をスレーブ機器から受信した後、マスタ機器とスレーブ機器との間の通信は終了する。スレーブ機器は、ＴＩＭＥＯＵＴ期間３の第１のタイムスロットの間にリッスンしなくてもよい。マスタ機器は、ＴＩＭＥＯＵＴ期間３の第１のタイムスロットの間に、スレーブ機器に、ＡＲＱまたは他のパケットを送信しないので、スレーブ機器は、ＴＩＭＥＯＵＴ期間３の第２のタイムスロット中に電源をオフにする。
【０００８】
ＳＮＩＦＦ期間の間にスレーブ機器からマスタ機器へのデータの送信においてエラーがない場合、スレーブ機器は、ＴＩＭＥＯＵＴ  ＰＥＲＩＯＤの間に電源をオンにしたままであることにより、電力を無駄にする必要はない。
【０００９】
【非特許文献１】"Specification of the Bluetooth System" (versions 1.1 and 1.2)
【非特許文献２】"Human Interface Device (HID) Profile version 1.0"
【発明の開示】
【発明が解決しようとする課題】
【００１０】
しかしながら、ＳＮＩＦＦ期間の間にスレーブ機器への電力を維持することにより、スレーブ機器は、電力を無駄にするという問題があった。スレーブ機器は、バッテリで動く機器である可能性が高いので、バッテリ電力が不必要に使い果たされる可能性があるという問題もあった。したがって、本技術分野において、タイムアウトの間の不必要な電力使用を除く必要が依然としてある。
【００１１】
本発明は、このような問題に鑑みてなされたもので、その目的とするところは、無線機器の電力消費量を節約するためのシステムおよび方法を提供することにある。
【課題を解決するための手段】
【００１２】
一実施形態では、マスタ機器（例えば、コンピュータ）は、スレーブ機器（例えば、マウス）をポーリング期間においてポーリングする。マウスは、データパケットをコンピュータに送信することによって応答することができる。スレーブは、マスタがスレーブにより送信されたデータを受信したかどうかにかかわらず、タイムアウト期間の間に電力を低減することができる。データの送信においてエラーがある場合、コンピュータは、次のポーリング期間において再送信を要求することができる。マウスは、ポーリング期間の間に、ポーリングパケット、または、コンピュータからのデータ再送信の要求に応答することができ、および介在する期間の間に電力消費量を低減するか、または電源をオフにすることができる。いかなるポーリング期間においても、マウスは、以前に送信が成功しなかったデータパケットを再送信することができる。さらに、マウスは、ＴＩＭＥＯＵＴ期間など、ポーリング期間に関連付けられた追加期間の間に、データパケットを送信することもできる。本発明の別の実施形態では、予め定められた数の連続データパケットの送信がうまく送信できなかった場合、マウスは電力消費量を低減せず、または電源をオフにしない。マウスは、十分な数のデータパケットがうまく送信される場合、電力低減（または電源オフ）を再開することができる。
【００１３】
本発明のこれらおよび他の利点は、添付の図面に関連して解釈される、以下の好ましい実施形態の詳細な説明から容易に明らかとなり、十分に理解されるであろう。
【発明を実施するための最良の形態】
【００１４】
本発明は、別の無線機器と通信する無線機器における電力消費量を管理するシステムおよび方法を提供する。本発明を、ＢＬＵＥＴＯＯＴＨ規格に従って通信するデスクトップコンピュータと無線コンピュータマウスとの実施例によって説明する。しかし、本発明は特定の種類の機器またはＢＬＵＥＴＯＯＴＨ規格に限定されない。さらに、本発明を、いくつかの他の汎用または専用コンピューティングシステム環境または構成とともに、他の種類の機器と共に、および、他の無線通信規格およびプロトコルの少なくとも一方によって通信する機器において実施することができる。
【００１５】
図２は、本発明を実施することができる、適切なコンピューティングシステム環境１の一実施例を例示する。図２の側面図に示すように、モニタ４およびキーボード６を有するデスクトップコンピュータ２である。同じく示すものは無線マウス１００であり、ドングル８内のＲＦトランシーバによってコンピュータ２と通信する。ドングル８は、コンピュータ２のＵＳＢまたは他のポートに接続され、コンピュータ２の外部に位置する（図示）。少なくとも１つの実施形態では、ドングル８は、ＢＬＵＥＴＯＯＴＨ通信をリモート機器（マウスまたはキーボードなど）から受信し、およびＢＬＵＥＴＯＯＴＨ通信をリモート機器に送信するために、必要とされた電子コンポーネントおよびファームウェアを収容する。少なくとも１つの実施形態では、ドングル８内のコンポーネントは、受信されたＢＬＵＥＴＯＯＴＨデータを、ＵＳＢポートによってコンピュータ２に渡すことができるフォーマットに変換し、同様に、ＵＳＢデータを、ＢＬＵＥＴＯＯＴＨリンクによって送信することができるフォーマットに変換する。具体的には、ドングル８は、コンピュータ２のための無線、ベースバンド、リンクマネージャおよびＬ２ＣＡＰ  ＢＬＵＥＴＯＯＴＨレイヤを実装するために必要とされるコンポーネントおよびファームウェアを含む。他の実施形態では、ＢＬＵＥＴＯＯＴＨ通信を実施するための電子コンポーネントおよびファームウェアを、コンピュータ２の内部におくことができ、中間のＵＳＢ接続なしにシステムまたは他のバスに直接接続することができる。
【００１６】
一実施形態では、ＢＬＵＥＴＯＯＴＨピコネットにおける入力またはスレーブ機器は、マウスである。図３は、マウス１００の側面の断面図である。マウス１００は、ユーザーにより押すことができる１つまたは複数のボタン１０２、スクロールホィール１０４、または、ユーザーによって作動することができる他の種類の入力制御を有することができる。図示した入力制御の数、配置および種類は、例示的でしかなく、および他の組み合わせおよび配置は、本発明の範囲内である。スイッチ、スクロールホィールおよび他の種類の入力制御の処理は、本技術分野において知られており、したがって本明細書ではさらに説明しない。さらに、マウス１００は、１つまたは複数の内部回路基板１０６または他の基板を有することもでき、これらの基板上で、様々な電子コンポーネントが接続され、物理的に支持される。これらのコンポーネントは、イメージングアレイ１０８、ＬＥＤまたはレーザーソース１１０、ＲＦアンテナ１１２、コントローラ１１４およびバッテリ／電源１２６を含む場合がある。他のコンポーネントは、図３に図示しないが、メモリおよび他の電子コンポーネントを含む場合がある。ＬＥＤまたはレーザーソース１１０は、発光し、この光はデスクトップまたは他の表面のエリアを照射し、およびイメージングアレイ１０８によりイメージングされる。アレイ１０８からのイメージは、比較されて、デスクトップまたは他の表面に渡るマウス１００の動きを検出する。
【００１７】
図４は、本発明の少なくとも１つの実施形態にかかるマウス１００の内部回路のブロック図である。マウス１００の処理は、マイクロプロセッサ（μＰ）コントローラ１１４によって制御される。コントローラ１１４をマイクロプロセッサとして示すが、コントローラ１１４は、代替として、本明細書において説明するように、マウス１００の処理を制御することができる状態マシン回路または他の適切なコンポーネントを含む可能性がある。コントローラ１１４は、メモリ１１６と通信する。メモリ１１６は、揮発性および不揮発性メモリを含む場合があり、ソフトウェア（またはファームウェア）命令、イメージングデータおよびコンフィギュレーション設定の格納のために使用されるマシン読取可能な媒体である。メモリ１１６は、バッテリ式のＳＲＡＭまたはＥＥＰＲＯＭなどの再書き込み可能な不揮発性コンポーネント、およびＲＯＭなどの再書きこみ不可能なコンポーネントの少なくとも一方を含む場合がある。さらに、コントローラ１１４は、ＬＥＤまたはレーザーソース１１０（図３）、およびイメージングアレイ１０８（図３）を、他のイメージング要素も同様に、制御し、これらのすべてがブロック１１８により集合的に表す。さらに、コントローラ１１４は、ＲＦ通信回路１２０を制御し、およびアンテナ１１２（図３）を介してコンピュータ２と通信するためにデータをＲＦ通信回路１２０に渡す。同様に、マウス１００に通信されたデータは、アンテナ１１２（図３）およびＲＦ回路１２０によって受信され、かつコントローラ１１４に送信される。コントローラ１１４は、イメージング要素１１８、ＲＦ回路１２０およびメモリ１１６と、１つまたは複数のバス１２２によって通信し、これらのバスを集合的に太字の双方向の矢印として示す。さらに、コントローラ１１４は、マウスボタン１０２（図３）、スクロールホィール１０４（図３）または他の入力制御のユーザーによる作動に対応する、電子信号を受信する。これらの電子信号は、集合的にユーザー入力１２４により表す。マウス１００の様々な電子コンポーネントは、電源１２６により電力供給され、電源１２６は１つまたは複数のバッテリがを含む可能性がある。
【００１８】
図４は、コントローラ１１４、イメージング回路１１８、ＲＦ回路１２０およびメモリ１１６を離散コンポーネントとして示すが、これはそうである必要はない。例えば、これらのコンポーネントのうちの１つまたは複数は、単一の集積回路（ＩＣ）または他のコンポーネントに含まれる可能性がある。別の実施例として、コントローラ１１４は、ＲＯＭなどの内部プログラムメモリを含む場合がある。同様に、本明細書において説明するこれらのコンポーネントの機能を、追加のコンポーネント（例えば、複数のコントローラまたは他のコンポーネント）に渡って分散させることができる。
【００１９】
本発明の一実施例では、マウス１００（スレーブ）は、コンピュータ２（マスタ）とのＢＬＵＥＴＯＯＴＨ接続において、ＳＮＩＦＦモードで電力消費量を低減する。説明のために、スレーブ機器が電力消費量を低減するか、または電源をオフにして電力消費量を保つ、簡略化された電力消費の方法およびシステムを示す。しかし、本発明の他の実施形態による機器は、追加および／またはより複雑な電源管理アルゴリズムを有することができることを理解されよう。
【００２０】
本発明がＢＬＵＥＴＯＯＴＨピコネット内など、無線ネットワークに適用される場合、スレーブ無線機器は、マスタ機器の修正を必要とすることなく、電力を節約することができる。例えば、異なるＢＬＵＥＴＯＯＴＨコンポーネントを、異なるソースまたはメーカーから作成することができる。関連機器（例えば、コンピュータ）の修正を必要としない１つの機器（例えば、マウス）の修正により、機器間の互換性を保つ可能性を増大する。
【００２１】
図５は、本発明の一実施例を例示する。図５に示すように、コンピュータ２は、ＳＮＩＦＦ期間１の第１のタイムスロットにおいて、ＰＯＬＬパケットをマウス１００に送信する。マウス１００は、ＳＮＩＦＦ期間１の第１のタイムスロットの間にピコネットをリッスンし、およびＰＯＬＬパケットをコンピュータ２から受信する。この実施例では、マウス１００は、コンピュータ２に送信するべきデータパケット（Ｄａｔａ１）を有し、ＳＮＩＦＦ期間１の第２のタイムスロットにおいてデータパケットをコンピュータ２に送信する。データパケットは、マウスの動きまたはボタンの押し下げなどのユーザデータを含むことができる。ユーザデータ（Ｄａｔａ１）を含むデータパケットを送信した後、マウス１００は、ＴＩＭＥＯＵＴ期間１の第１のタイムスロットにおいて、そのトランシーバの電源を落とす。マウス１００は、次のＳＮＩＦＦ期間（この実施例ではＳＮＩＦＦ期間２として例示する）まで、この電源を落とした状態のままである。図１に関連して前述したように、図５〜９の省略符号は、例えば、ＴＩＭＥＯＵＴ期間の終わりと次のＳＮＩＦＦ期間の開始との間に、追加の期間が存在する場合があることを示す。
【００２２】
さらに、図５に示すように、コンピュータ２は、ＳＮＩＦＦ期間１の間に、マウス１００によるＤａｔａ１の送信を適切に受信しなかった。例えば、干渉がある場合があり、または、そうでない場合は送信の受信が損なわれる場合がある。したがって、ＢＬＵＥＴＯＯＴＨプロトコルによって規定されるように、コンピュータ２は、ＴＩＭＥＯＵＴ期間１の第１のタイムスロットにおいて、ＡＲＱ（自動反復要求）をマウス１００に送信する。しかし、マウス１００が電源を落としているので、マウス１００は、ＡＲＱを受信せず、またはコンピュータ２からのＡＲＱに応答しない。
【００２３】
次のＳＮＩＦＦ期間が生じ（この実施例では、ＳＮＩＦＦ期間２）、および以前のＳＮＩＦＦ期間の直後に送信されたＡＲＱへの応答を受信していない場合、コンピュータ２は、ＳＮＩＦＦ期間２の第１のタイムスロットにおいて別のＡＲＱを送信する。マスタによるこの送信は、既存のＢＬＵＥＴＯＯＴＨプロトコルの一部である。マウス１００は、ＳＮＩＦＦ期間２の間に電源を入れてピコネットをリッスンしているので、マウス１００は、ＳＮＩＦＦ期間２の第１のタイムスロットにおいてＡＲＱをコンピュータ２から受信する。この実施例では、マウス１００は、ＳＮＩＦＦ期間２で送信されるべき追加のユーザデータを有していない。Ｄａｔａ１のパケットがうまくコンピュータ２によって受信されていた場合、マウス１００は通常、ＳＮＩＦＦ期間２で、コンピュータ２からＰＯＬＬパケットへの応答において、ＮＵＬＬパケットを送信するようになる。この実施例では、しかし、マウス１００は、ＳＮＩＦＦ期間２でコンピュータ２からＡＲＱを受信する。したがって、マウス１００は、以前にマウス１００によってＳＮＩＦＦ期間１で送信されたが、コンピュータ２によって受信されなかった、データパケット（この場合、Ｄａｔａ１のパケット）を再送信する。ＳＮＩＦＦ期間２の終わりまでに、マウス１００はその現在保留中のデータパケットのすべてをコンピュータ２に送信しており、ＴＩＭＥＯＵＴ期間２の第１のタイムスロットで電源を落とす。マウス１００は、次のＳＮＩＦＦ期間（ＳＮＩＦＦ期間３）まで、電源を落としたままである。データパケット（Ｄａｔａ１）の送信の遅延は１ＳＮＩＦＦ間隔のみであり、この遅延は平均的なユーザーにとって感知できない。
【００２４】
さらに、図５は、コンピュータ２がＳＮＩＦＦ期間３でもう１つのＰＯＬＬパケットをマウス１００に送信することを例示する。この時点で、マウス１００はコンピュータ２に送信されるべきもう１つのデータパケット（Ｄａｔａ２）を有し、Ｄａｔａ２をコンピュータ２へ、ＳＮＩＦＦ期間３の第２のタイムスロットで送信する。Ｄａｔａ２を送信した後、マウス１００は、ＴＩＭＥＯＵＴ期間３で電源を落とす。このように、スレーブ機器の電力は、ＳＮＩＦＦ期間中にデータのエラーの頻度または発生に応じた量で節約される。
【００２５】
図６は、本発明のもう１つの実施例を示し、コンピュータ２は、ＰＯＬＬパケットをマウス１００に、ＳＮＩＦＦ期間１の第１のタイムスロットで送信する。マウス１００は、ＳＮＩＦＦ期間１の第１のタイムスロット中にピコネットをリッスンし、ＰＯＬＬパケットをコンピュータ２から受信する。この実施例では、マウス１００は、コンピュータ２に送信するべきユーザデータを有しておらず、したがって、ＮＵＬＬパケットを、ＳＮＩＦＦ期間１の第２のタイムスロットで送信する。ＮＵＬＬパケットを送信した後、マウス１００は、ＴＩＭＥＯＵＴ期間１の第１のタイムスロットでそのトランシーバの電源を落とす。マウス１００は、次のＳＮＩＦＦ期間（この実施例ではＳＮＩＦＦ期間２として例示）まで、この電源を落とした状態のままである。
【００２６】
また、図６に示すように、コンピュータ２は、ＳＮＩＦＦ期間１のタイムスロット１中にマウス１００によるＮＵＬＬ送信を適切に受信しなかった。したがって、コンピュータ２はＡＲＱ（自動反復要求）をマウス１００に、ＴＩＭＥＯＵＴ期間１の第１のタイムスロットで送信する。しかし、マウス１００が電源を落としているので、マウス１００はＡＲＱを受信せず、または、コンピュータ２からのＡＲＱに応答しない。
【００２７】
次のＳＮＩＦＦ期間が生じ（ＳＮＩＦＦ期間２）、以前のＳＮＩＦＦ期間の直後に送信されたＡＲＱへの応答を受信していないとき、コンピュータ２はＡＲＱを、ＳＮＩＦＦ期間２の第１のタイムスロットで送信する。マウス１００は、ＳＮＩＦＦ期間２中に電源を入れてピコネットをリッスンしているので、マウス１００はＡＲＱをコンピュータ２から、ＳＮＩＦＦ期間２の第１のタイムスロットで受信し、ＳＮＩＦＦ期間１で最初に送信されたがコンピュータ２によって受信されなかったデータパケットを再送信することによって、応答する。この実施例では、以前に送信されたパケットはＮＵＬＬパケットである。
【００２８】
図６の実施例では、マウス１００は、ＳＮＩＦＦ期間２で送信されるべきユーザデータを有しておらず、そのため、マウス１００はＮＵＬＬパケットを、ＳＮＩＦＦ期間２の第２のタイムスロットで送信し、その後、マウス１００はＴＩＭＥＯＵＴ期間２の第１のタイムスロットで電源を落として、電力を節約する。図６の次のＳＮＩＦＦ期間（ＳＮＩＦＦ期間３）で、マウス１００はユーザデータ（Ｄａｔａ１）をコンピュータ２に送信する。マウス１００は次いで、ＴＩＭＥＯＵＴ期間３中に電源を落とすことによって、電力を節約する。
【００２９】
図７は、本発明のもう１つの実施例を例示する。この実施例では、コンピュータ２はＳＮＩＦＦ期間１の第１のタイムスロットで、ＰＯＬＬパケットをマウス１００に送信する。この実施例では、マウス１００は、コンピュータ２に送信するべきユーザデータを有していないので、マウス１００はＮＵＬＬパケットを、ＳＮＩＦＦ期間１の第２のタイムスロットで送信する。ＮＵＬＬパケットを送信した後、マウス１００は、ＴＩＭＥＯＵＴ期間１の第１のタイムスロットでそのトランシーバの電源を落とす。マウス１００は、次のＳＮＩＦＦ期間（この実施例ではＳＮＩＦＦ期間２として例示）まで、この電源を落とした状態のままである。
【００３０】
また、図７に示すように、コンピュータ２は、ＳＮＩＦＦ期間１のタイムスロット１中にマウス１００によるＮＵＬＬ送信を適切に受信しなかった。したがって、コンピュータ２はＡＲＱ（自動反復要求）をマウス１００に、ＴＩＭＥＯＵＴ期間１の第１のタイムスロットで送信する。しかし、マウス１００が電源を落としているので、マウス１００はＡＲＱを受信せず、または、コンピュータ２からのＡＲＱに応答しない。
【００３１】
次のＳＮＩＦＦ期間が生じ（ＳＮＩＦＦ期間２）、以前のＳＮＩＦＦ期間の直後に送信されたＡＲＱへの応答を受信していないとき、コンピュータ２はＡＲＱを、ＳＮＩＦＦ期間２の第１のタイムスロットで送信する。マウス１００は、ＳＮＩＦＦ期間２中に電源を入れてピコネットをリッスンしているので、マウス１００はＡＲＱをコンピュータ２から、ＳＮＩＦＦ期間２の第１のタイムスロットで受信する。
【００３２】
この場合、マウス１００はこのとき、ＳＮＩＦＦ期間２でコンピュータ２に送信されるべきユーザデータのデータパケット（Ｄａｔａ１）を有している。例えば、ユーザーは、ＳＮＩＦＦ期間１の終わりとＳＮＩＦＦ期間２の開始の間の間隔で、マウスボタンの押し下げを完了している場合がある。ＳＮＩＦＦ期間１で送信されたＮＵＬＬパケットを再送信するのではなく、マウス１００は、ユーザデータの介在するデータパケット（Ｄａｔａ１）をＳＮＩＦＦ期間２の第２のタイムスロットで送信する。マウス１００は次いで、ＴＩＭＥＯＵＴ期間２の第１のタイムスロットで電源を落とす。図７はさらに、後続のＳＮＩＦＦ期間３でのユーザデータのデータパケット（Ｄａｔａ２）の後続の送信、および、データパケットの送信後にマウス１００の電源を落とすことを例示する。
【００３３】
図８は、本発明のもう１つの実施例を例示する。この実施例では、コンピュータ２はＳＮＩＦＦ期間１の第１のタイムスロットで、ＰＯＬＬパケットをマウス１００に送信する。マウス１００は、ＳＮＩＦＦ期間１に送信するべきユーザデータを有し、ユーザデータパケット（Ｄａｔａ１）をコンピュータ２へ送信することによって、ＰＯＬＬパケットに応答し、その後、マウス１００は、ＴＩＭＥＯＵＴ期間１の第１のタイムスロットでそのトランシーバの電源を落とす。マウス１００は、次のＳＮＩＦＦ期間（この実施例ではＳＮＩＦＦ期間２として例示）まで、この電源を落とした状態のままである。
【００３４】
また、図８に示すように、コンピュータ２は、ＳＮＩＦＦ期間１のタイムスロット１中にマウス１００によるＤａｔａ１の送信を適切に受信しなかった。しかし、マウス１００は、いかなるＡＲＱ（自動反復要求）をもＴＩＭＥＯＵＴ期間１の第１のタイムスロットで受信せず、これはマウス１００が電源を落としており、次のＳＮＩＦＦ期間（この実施例では、ＳＮＩＦＦ期間２）まで受信または応答しないからである。
【００３５】
次のＳＮＩＦＦ期間が生じ（ＳＮＩＦＦ期間２）、以前のＳＮＩＦＦ期間の直後に送信されたＡＲＱへの応答を受信していないとき、コンピュータ２はＡＲＱを、ＳＮＩＦＦ期間２の第１のタイムスロットで送信する。マウス１００（このとき電源が入っている）は、ＡＲＱをコンピュータ２から、ＳＮＩＦＦ期間２の第１のタイムスロットで受信する。結果として、マウス１００はユーザデータパケット（Ｄａｔａ１）をマスタ機器へ、ＳＮＩＦＦ期間２の第２のタイムスロットで再送信する。
【００３６】
この実施例では、マウス１００はまた、ＳＮＩＦＦ期間１からの以前のユーザデータパケット（Ｄａｔａ１）を再送信することに加えて、ＳＮＩＦＦ期間２で送信されるべきユーザデータパケット（Ｄａｔａ２）をも有している。したがって、ＳＮＩＦＦ期間２の第２のタイムスロットで、最初にＳＮＩＦＦ期間１で送信された以前のユーザデータパケット（Ｄａｔａ１）を再送信した後、マウス１００は次のユーザデータパケット（Ｄａｔａ２）を、ＴＩＭＥＯＵＴ期間２の第２のタイムスロットで送信する。
【００３７】
この実施例では、第１のユーザデータパケット（Ｄａｔａ１）は、コンピュータ２によって、ＳＮＩＦＦ期間２の第２のタイムスロットでうまく受信される。コンピュータ２はマウス１００に、データパケットがうまく受信されたことを、ＮＵＬＬパケットをマウス１００にＴＩＭＥＯＵＴ期間２の第１のタイムスロットで送信することによって、通知する。マウス１００は、ＴＩＭＥＯＵＴ期間２の第１のタイムスロット中にピコネットをリッスンし、ＮＵＬＬパケットをコンピュータ２から受信してＤａｔａ１の送信の成功を確認することに応答して、第２のユーザデータパケット（Ｄａｔａ２）をコンピュータ２へ、ＴＩＭＥＯＵＴ期間２の第２のタイムスロットで送信する。代替として、Ｄａｔａ１がＳＮＩＦＦ期間２の第２のタイムスロット中にうまく受信されなかった場合、コンピュータ２はＡＲＱをマウス１００に、ＴＩＭＥＯＵＴ期間２で送信するようになる（図示せず）。マウス１００は次いで、そのＡＲＱに応答して、Ｄａｔａ１をコンピュータ２に再送信するようになる。この実施例では、Ｄａｔａ１の送信は、次に使用可能なタイムスロットまで遅延される。
【００３８】
もう１つの実施形態では、マウス１００は、所定の数のＡＲＱが連続して受信される場合、ＴＩＭＥＯＵＴ中にそのトランシーバの電源を落とすことができない。パケットの送信が損なわれ、所定の数の連続パケットがコンピュータ２でうまく受信されない場合、マウス１００は、送信エラーを引き起こす状態が弱まるまで、ＴＩＭＥＯＵＴ中に電源オンのままであることができる。
【００３９】
図９Ａおよび９Ｂは、この実施形態の一実施例を例示する。コンピュータ２はＳＮＩＦＦ期間１の第１のタイムスロットで、ＰＯＬＬパケットをマウス１００に送信する。マウス１００は、ＳＮＩＦＦ期間１の第２のタイムスロットで、ユーザデータのデータパケット（Ｄａｔａ１）をコンピュータ２へ送信することによって、応答する。Ｄａｔａ１のパケットを送信した後、マウス１００は、ＴＩＭＥＯＵＴ期間１の第１のタイムスロットでそのトランシーバの電源を落とす。マウス１００は、次のＳＮＩＦＦ期間（この実施例ではＳＮＩＦＦ期間２として例示）まで、この電源を落とした状態のままである。
【００４０】
また、図９Ａに示すように、コンピュータ２は、ＳＮＩＦＦ期間１中にマウス１００によるＤａｔａ１の送信を適切に受信しなかった。したがって、コンピュータ２はＡＲＱをマウス１００へ、ＴＩＭＥＯＵＴ期間１の第１のタイムスロットで送信する。しかし、マウス１００が電源を落としているので、マウス１００はＡＲＱを受信せず、または、コンピュータ２からのＡＲＱに応答しない。
【００４１】
以前の実施例のように、コンピュータ２は別のＡＲＱを、ＳＮＩＦＦ期間２の第１のタイムスロットで送信する。マウス１００は、ユーザデータのＤａｔａ１のパケットを、ＳＮＩＦＦ期間２の第２のタイムスロットで再送信することによって、ＡＲＱに応答し、その後、マウス１００はそのトランシーバの電源を落として電力を節約する。しかし、この実施例では、ＳＮＩＦＦ期間２の第２のタイムスロット中のＤａｔａ１のパケットの再送信においてエラーがある。
【００４２】
Ｄａｔａ１のパケットがＳＮＩＦＦ期間２で受信されなかったので、および、ＴＩＭＥＯＵＴ期間２中にコンピュータ２からマウス１００（電源が落とされていた）に送信されたＡＲＱから応答が受信されなかったので、コンピュータ２はＡＲＱを、次のＳＮＩＦＦ期間（この実施例ではＳＮＩＦＦ期間３）の第１のタイムスロットで送信する。図９Ａが例示するように、マウス１００は、ＳＮＩＦＦ期間３の第２のタイムスロットでＤａｔａ１のパケットを再送信することによって、ＳＮＩＦＦ期間３でＡＲＱに応答し、その後、マウス１００はそのトランシーバの電源を落として電力を節約する。図９Ａの実施例を見るとわかるように、継続する送信の問題が存在し、コンピュータ２は送信を受信しない。したがって、マウス１００が、これらのＳＮＩＦＦ期間の少なくともいくつかについてコンピュータ２に送信するべきデータパケットを有した場合、いくつかのＳＮＩＦＦ期間が経過した後にまだコンピュータ２に送信されていない複数のデータパケットが存在する場合がある。マウス１００が、コンピュータ２がＡＲＱを所定の数の連続ＳＮＩＦＦサイクルで送信していることを検出する場合、マウス１００は、この問題がもはや存在しなくなるまで、ＴＩＭＥＯＵＴ期間中に電源をオンにされたままである。例えば、マウス１００は、未完了のデータパケットが送信され、後続のＡＲＱがコンピュータ２から受信されなくなるまで、電源をオンにされたままでいることができる。
【００４３】
これを図９Ｂに示す。マウス１００がＡＲＱをコンピュータ２から、ｎ連続ＳＮＩＦＦ期間で受信した後、マウス１００はＴＩＭＥＯＵＴ期間中に電源を落とすことをやめる。ＴＩＭＥ期間ｎで示すように、マウス１００はＡＲＱをＴＩＭＥＯＵＴ期間ｎ、スロット１で受信し、Ｄａｔａ１を再送信する。マウス１００は、ＡＲＱを受信することなく指定された数のＳＮＩＦＦ期間が経過するまで、ＴＩＭＥＯＵＴ期間中に電源をオンにされたままであり続ける。図９Ｂに示すように、ＡＲＱなしにｋ個の連続ＳＮＩＦＦ期間ポールを受信した後、マウス１００は再度、ＴＩＭＥＯＵＴ期間中に電源を落とすことを開始する。パラメータｎおよびｋを、適用可能なマスタおよびスレーブ機器によるネットワークまたはピコネットの所望の機能のために必要なように選択することができる。
【００４４】
前述の実施例は本発明を例示するだけであり、本発明の範囲内である多数の修正を作成することができる。例えば、これまでの例示は、無線機器が電源を落としているとき、コンピュータ２がＴＩＭＥＯＵＴ期間でＡＲＱを送信することを示す。代替実施形態では、コンピュータ２は、次のＳＮＩＦＦ期間まで、ＡＲＱをマウス１００に送信しない場合がある。
【００４５】
このように、本発明の態様は多数の形態および実施形態を取ることができることを理解されたい。本明細書に示す実施形態は、本発明を限定するのでなく、例示するように意図され、本発明の精神および範囲から逸脱することなく変形形態を作成することができることを理解されたい。
【図面の簡単な説明】
【００４６】
【図１】ＢＬＵＥＴＯＯＴＨプロトコルにおける従来技術のＳＮＩＦＦモード処理の一例を示す図である。
【図２】本発明の少なくとも１つの実施形態を実施するコンピューティングシステム環境の図である。
【図３】図２の無線マウスの断面の側面を例示する図である。
【図４】図２および３のマウスの回路を例示するブロック図である。
【図５】所与のポーリング期間においてデータパケットをマスタ機器に送信し、および後続のポーリング期間においてデータパケットを再送信する場合であると同時に、２つのポーリング期間の間の時間間隔において電力消費量を低減するスレーブ機器の電源管理の一実施例を示す図である。
【図６】第１のポーリング期間でＮＵＬＬパケットを送信し、このＮＵＬＬパケットがマスタ機器によってうまく受信されない場合に、２つのポーリング期間の間の期間において電力消費量を低減するスレーブ機器の電源管理の別の実施例を示す図である。
【図７】第１のポーリング期間においてＮＵＬＬパケットを送信し、このＮＵＬＬパケットがマスタ機器によって受信されず、第２のポーリング期間においてデータパケットを送信する場合に、第１および第２のポーリング期間の間の期間において電力消費量を低減するスレーブ機器の電源管理の別の実施例を示す図である。
【図８】第１のポーリング期間において第１のデータパケットをマスタ機器に送信し、このデータパケットがうまく受信されず、第２のポーリング期間において第１のデータパケットを再送信し、第２のポーリング期間に関連付けられた追加期間において第２のデータパケットを送信する場合であると同時に、第１および第２のポーリング期間の間の時間間隔において電力を低減するスレーブ機器の電源管理の別の実施例を示す図である。
【図９Ａ】データ再送信のために予め定められた数の連続要求がマスタ機器から受信されるという条件において、スレーブ機器がＴＩＭＥＯＵＴ期間の間にオフにならない場合である、スレーブ機器の電源管理の別の実施例を示す図である。
【図９Ｂ】データ再送信のために予め定められた数の連続要求がマスタ機器から受信されるという条件において、スレーブ機器がＴＩＭＥＯＵＴ期間の間にオフにならない場合である、スレーブ機器の電源管理の別の実施例を示す図である。
【符号の説明】
【００４７】
１  コンピューティングシステム環境
２  デスクトップコンピュータ
４  モニタ
６  キーボード
８  ドングル
１００  無線マウス
１０２  ボタン
１０４  スクロールホィール
１０６  内部回路基板
１０８  イメージングアレイ
１１０  レーザーソース
１１２  ＲＦアンテナ
１１４  コントローラ
１２６  バッテリ
【図１】
2006186971.tif 000003
【図２】
2006186971.tif 000004
【図３】
2006186971.tif 000005
【図４】
2006186971.tif 000006
【図５】
2006186971.tif 000007
【図６】
2006186971.tif 000008
【図７】
2006186971.tif 000009
【図８】
2006186971.tif 000010
【図９Ａ】
2006186971.tif 000011
【図９Ｂ】
2006186971.tif 000012