(57)【特許請求の範囲】
【請求項１】
複数のコンタクトを有する第１のコネクタと、
前記複数のコンタクトの少なくとも一部に動作可能に結合された制御回路とを備える電子デバイスであって、前記制御回路が、
アクセサリに関連付けられた第２のコネクタが前記第１のコネクタと嵌合されたことを検出し、
前記検出に応じて、前記複数のコンタクトのうちの１つ以上のコンタクトを設定するための設定情報を要求する、複数のビットを有するコマンドを前記複数のコンタクトのうちの第１のコンタクトを介して前記アクセサリに送信し、
前記コマンドに対する応答が前記アクセサリから前記第１のコンタクトを介して受信された場合に、前記応答内の情報に基づいて前記複数のコンタクトのうちの１つ以上のコンタクトに内部接続を設定するように構成されることを特徴とする電子デバイス。
【請求項２】
前記第２のコネクタの嵌合の検出に応じて、前記第１のコンタクトを開状態から前記制御回路に接続されるように切り替えて、それによって、前記制御回路が前記第１のコンタクトを介して前記コマンドを送信可能にするように構成された検出回路を更に備えることを特徴とする請求項１に記載の電子デバイス。
【請求項３】
前記第１のコンタクトを介して応答が受信されない場合に、前記制御回路が、前記複数のコンタクトのうちの第２のコンタクトを介して前記コマンドを送信するように更に構成されていることを特徴とする請求項１又は２に記載の電子デバイス。
【請求項４】
前記制御回路が、前記第２のコネクタ内のコンタクトの前記設定情報に基づき前記複数のコンタクトのうちの前記１つ以上のコンタクトに内部接続を設定することを特徴とする請求項１乃至３のいずれか１項に記載の電子デバイス。
【請求項５】
前記第２のコネクタが前記第１のコネクタに嵌合されたことを検出するために、前記制御回路が、
前記複数のコンタクトのうちの接続検出コンタクトをモニタし、
前記接続検出コンタクトで論理ローを検出した場合に、前記第２のコネクタが前記第１のコネクタに嵌合されていると判定するように更に構成されていることを特徴とする請求項１乃至４のいずれか１項に記載の電子デバイス。
【請求項６】
前記複数のコンタクトが２個から１０個のコンタクトを含むことを特徴とする請求項１乃至５のいずれか１項に記載の電子デバイス。
【請求項７】
前記第１のコネクタがレセプタクルコネクタであり、前記第２のコネクタがプラグコネクタであることを特徴とする請求項１乃至６のいずれか１項に記載の電子デバイス。
【請求項８】
前記制御回路が、前記プラグコネクタが前記レセプタクルコネクタに挿入されたことを検出するように更に構成されることを特徴とする請求項７に記載の電子デバイス。
【請求項９】
前記第１のコネクタが、前記第２のコネクタを受容するように構成された空洞を形成する筐体を備え、前記複数のコンタクトが、前記空洞内に単一の列として配列されていることを特徴とする請求項１乃至８のいずれか１項に記載の電子デバイス。
【請求項１０】
前記第１のコネクタが、
前記第２のコネクタを受容するように構成された空洞を形成する筐体を備え、
前記複数のコンタクトが、前記空洞の上部前面に沿った第１の列と、前記空洞の底部前面に沿った第２の列とに配列されていることを特徴とする請求項１乃至９のいずれか１項に記載の電子デバイス。
【請求項１１】
前記応答で受信された前記第２のコネクタ内のコンタクトの設定に関する前記情報が複数のビットを含むことを特徴とする請求項１乃至１０のいずれか１項に記載の電子デバイス。
【請求項１２】
前記応答で受信された前記第２のコネクタ内のコンタクトの設定に関する前記情報が、コマンド応答フィールドと、それに続くペイロードフィールドと、それに続く巡回冗長検査フィールドとを含むことを特徴とする請求項１１に記載の電子デバイス。
【請求項１３】
プラグコネクタを挿入可能な内部空洞を画定する筐体と、前記内部空洞の第１の内面に沿って配置された第１の複数の電気コンタクトとを有するレセプタクルコネクタを設定する方法であって、前記プラグコネクタは第２の複数の電気コンタクトを有し、前記方法は、
前記内部空洞に前記プラグコネクタが挿入されたことを、前記レセプタクルコネクタに結合された第１のデバイスによって検出するステップであって、前記第１の複数の電気コンタクトの各コンタクトが前記第２の複数の電気コンタクトの対応するコンタクトと物理的に接触している、ステップと、
前記検出に応じて、前記第１のデバイスにより、前記第１の複数の電気コンタクトのうちの１つ以上のコンタクトを設定するための設定情報を要求する、複数のビットを有するコマンドを、前記第１の複数の電気コンタクトから第１のコンタクトを介して第２のデバイスに送信するステップと、
前記第１のデバイスにより、前記設定情報を受信するステップと、
前記第１のデバイスにより、前記設定情報に基づいて前記第１の複数の電気コンタクトの少なくとも一部に内部接続を設定するステップとを含むことを特徴とする方法。
【請求項１４】
前記プラグコネクタの前記内部空洞への挿入を検出したことに応じて、前記第１のコンタクトが開状態から、前記第１のコンタクトを介して送信される信号を生成する回路に切り替えられることを特徴とする請求項１３に記載の方法。
【請求項１５】
前記信号への応答が所定時間内に前記第１のコンタクトを介して受信されたかを判定するために、前記第１のコンタクトをモニタするステップと、
前記応答が前記所定時間内に前記第１のコンタクトを介して受信されない場合に、前記第１のデバイスにより、前記レセプタクルコネクタ経由で、前記第１の複数の電気コンタクトの第２のコンタクトを介して信号を送信するステップとを更に含むことを特徴とする請求項１４に記載の方法。
【請求項１６】
前記応答が所定時間内に前記第２のコンタクトを介して受信されたかどうかを判定するために、前記第２のコンタクトをモニタするステップと、
前記応答が前記所定時間内に前記第１のコンタクトから受信されない場合に、前記第１のコンタクトを介して信号を送信し、その後、前記第２のコンタクトを介して信号を送信するシーケンスを、応答が受信されるか又は所定時間が経過するまで反復するステップとを更に含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
前記プラグコネクタの前記内部空洞への挿入を検出するステップが、
前記第１の複数の電気コンタクトからの少なくとも１個のコンタクトを前記プラグコネクタの接地コンタクトに電気的に結合するステップと、
前記第１のデバイスにより、前記結合を示すインジケーションを受信するステップと、
前記第１のデバイスにより、前記インジケーションに基づいて前記プラグコネクタが前記レセプタクルコネクタに挿入されていることを判定するステップとを更に含むことを特徴とする請求項１３乃至１６のいずれか１項に記載の方法。
【請求項１８】
前記インジケーションが論理ローと同等の電気的信号を含むことを特徴とする請求項１７に記載の方法。
【請求項１９】
前記プラグコネクタの前記第２の複数の電気コンタクトに関する前記設定情報が複数のビットを含むことを特徴とする請求項１３乃至１８の何れか１項に記載の方法。
【請求項２０】
前記プラグコネクタの前記第２の複数の電気コンタクトに関する前記設定情報が、コマンド応答フィールドと、それに続くペイロードフィールドと、それに続く巡回冗長検査フィールドとを有する応答に含まれることを特徴とする請求項１９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願の相互参照）
本願は、米国法典第３５巻第１１９条（ｅ）に基づき、全ての目的のために、参照することによりその開示が全体として本明細書に組み込まれる（ａ）２０１１年１１月７日に出願された米国特許仮出願第６１／５５６，７９２号及び（ｂ）２０１１年１１月３０日に出願された米国特許仮出願第６１／５６５，４６３号の利益を主張するものである。
【背景技術】
【０００３】
コネクタは至る所に存在し、２個の電子デバイスを接続するために様々な用途で使用されている。殆どのコネクタは、通常、コネクタを使って接続されたデバイス間での信号送信を円滑にするいくつかの種類のコンタクトを有する。従来、コネクタ内の各コンタクトは、特定の、予め割り当てられた機能を有する。換言すれば、コネクタ内の各コンタクトは、特定の種類の信号、例えば、電力、データなどを伝送するために指定されている。
【０００４】
多くの電気的コネクタは、単一方向でのみ接続し得る。これらのコネクタは、予め割り当てられた機能を持つコンタクトを有し、その機能は変更できない。通常、これらの電気的コネクタは、単一方向のみの接続を考慮した物理設計を有する。換言すれば、嵌め合わせが単一方向のコネクタ２個は、１つの向きでしか嵌合できない。したがって、コネクタの差し込み方を間違えるとコネクタを損傷し、及び／又はコネクタが物理的に差し込まれたか電気的に接続されたかのいずれか又はその両方であるデバイスを損傷する恐れがあるので、単一方向コネクタを使用する場合は注意が必要である。
【発明の概要】
【０００５】
本発明は、概して、２個のデバイスを接続するためのコネクタに関する。具体的には、本発明の特定の実施形態は、設定可能なコンタクトを有するリバーシブルコネクタに関する。上述の通り、従来のコネクタは予め割り当てられた機能を持つコンタクトを有する。例えば、標準的なＵＳＢコネクタでは、４個のコンタクトのそれぞれが、例えば、電力、データなど、対応する特定の機能有している。このコネクタ内の予め割り当てられたコンタクトの位置もまた、決められている。要するに、このような従来のコネクタ内のコンタクトは、設定できず、コネクタの種類と用途に基づいて予め割り当てられた機能しか実行できない。
【０００６】
本発明の実施形態は、ホストシステムに関連付けられているホスト側コネクタのコンタクトを動的に設定する技術を提供する。本発明の一実施形態において、ホスト側コネクタのコンタクトには、いくつかの機能のうちの１つを割り当てることができる。このコンタクト（及び、このコネクタ内の他のコンタクト）に割り当てられる機能は、ホストシステムに接続するアクセサリ及びアクセサリが出力／使用する信号に依存し得る。例えば、オーディオ機能のみのアクセサリをホストシステムに接続する場合、ホスト側コネクタ上の少なくとも１つのコンタクトは、オーディオデータを伝送できるように設定し得る。
【０００７】
いくつかの実施形態において、ホスト側コネクタとアクセサリ側コネクタは、２つ以上の向きで互いに嵌合し得る。ホスト側コネクタとアクセサリ側コネクタが２つ以上の向きで互いに嵌合できる場合、ホスト側コネクタのコンタクトを設定する前にホスト側コネクタに対するアクセサリ側コネクタの向きを最初に判定することが有益である。
【０００８】
本発明の特定の実施形態は、対応するホスト側コネクタに対するアクセサリ側コネクタの向きを判定するための技術を提供する。一実施形態によれば、アクセサリ側コネクタをホスト側コネクタに物理的に嵌合すると、ホストシステムは、ホスト側コネクタ内の２個の選択されたコンタクトを介してコマンドを交互にアクセサリに送信し、アクセサリからの応答を待つ。２個の選択されたコンタクトのどちらから応答を受信したかによって、ホストシステムは、ホスト側コネクタに対するアクセサリ側コネクタの向きを判定し得る。
【０００９】
他の実施形態において、ホスト側コネクタ内のコンタクトは、アクセサリ側コネクタの判定された向きに基づいて設定される。一実施形態において、アクセサリからの応答は、アクセサリ側コネクタの各コンタクトに割り当てられた機能に関する情報を含むことがあり得る。この情報を使用し、アクセサリ側コネクタの向きを認識することによって、ホストシステムは、アクセサリと通信するためにホスト側コネクタのコンタクトを設定し得る。
【００１０】
いくつかの実施形態において、向きの検出及びコンタクトの設定は、互いに独立して行われ得る。他の実施形態において、向きの検出が先行し、検出された向きをホスト側コネクタのコンタクトの設定に使用し得る。いくつかの実施形態において、ホスト側コネクタのコンタクトは、アクセサリ側コネクタと嵌合する前にフローティングモードであり得る。
【００１１】
以下の詳細な説明及び添付の図面を参照することにより、本発明の性質及び利点の理解をより深めることができよう。
【図面の簡単な説明】
【００１２】
【図１Ａ】本発明の一実施形態に係るプラグコネクタを示す。
【図１Ｂ】本発明の一実施形態に係るプラグコネクタの正面図である。
【図１Ｃ】本発明の一実施形態に係るプラグコネクタの断面図である。
【図１Ｄ】本発明の一実施形態に係るプラグコネクタのピンアウトである。
【図１Ｅ】本発明の別の実施形態に係るプラグコネクタのピンアウトである。
【図２Ａ】本発明の一実施形態に係るレセプタクルコネクタを示す。
【図２Ｂ】本発明の一実施形態に係るレセプタクルコネクタの断面図である。
【図２Ｃ】本発明の別の実施形態に係るレセプタクルコネクタを示す。
【図２Ｄ】本発明の一実施形態に係る、８個の信号コンタクトと２個の接続検出コンタクトを有するレセプタクルコネクタの断面図である。
【図２Ｅ】図１Ｄに示すように、プラグコネクタ１００に嵌合するように構成された、本発明の一実施形態に係るレセプタクルコネクタのピンアウト配列を示す図である。
【図２Ｆ】図１Ｅに示すように、プラグコネクタ１０１に嵌合するように構成された、本発明の別の実施形態に係るレセプタクルコネクタのピンアウト配列を示す図である。
【図３Ａ】本発明の一実施形態に係る、第１の向きのレセプタクルコネクタに接続されるプラグコネクタの概略図である。
【図３Ｂ】本発明の一実施形態に係る、第２の向きのレセプタクルコネクタに接続されるプラグコネクタを示す概略図である。
【図４】本発明の一実施形態に係る、別のコネクタに対する１つのコネクタの向きを判定するためのシステムを示す概略図である。
【図５】本発明の一実施形態に係る、他のコネクタに対する１つのコネクタの向きを判定するためのプロセスのフローチャートである。
【図６】本発明の一実施形態に係る、コネクタのコンタクトを設定するためのプロセスのフローチャートである。
【図７Ａ】本発明の一実施形態に係るコマンド構造を示す。
【図７Ｂ】本発明の一実施形態におけるコマンドの応答構造を示す。
【図８Ａ】本発明の一実施形態に係る、第１の向きのレセプタクルコネクタに嵌合されたプラグコネクタの簡略断面図を示す。
【図８Ｂ】本発明の一実施形態に係る、第２の向きのレセプタクルコネクタに嵌合されたプラグコネクタの簡略断面図を示す。
【図９Ａ】本発明の別の実施形態に係る、コネクタの向きを判定し、向きに基づいてコンタクトを設定するためのプロセスのフローチャートである。
【図９Ｂ】本発明の別の実施形態に係る、コネクタの向きを判定し、向きに基づいてコンタクトを設定するためのプロセスのフローチャートである。
【発明を実施するための形態】
【００１３】
本発明の実施形態は、概して、コネクタに関する。より詳細には、本発明の特定の実施形態は、１つのコネクタの別のコネクタに対する向きを判定するための技術を提供する。いくつかの実施形態において、アクセサリ側つまり「プラグ」コネクタは、ホスト側つまり「レセプタクル」コネクタに２つ以上の向きで挿入し得る。この場合、本明細書に記載されている技術は、レセプタクルコネクタに対するプラグコネクタの正確な向きを判定する方法を提供し得る。
【００１４】
本発明のいくつかの実施形態は、接続されたアクセサリから受信する情報に基づいてホスト側コネクタのコンタクトを動的に設定する技術を提供する。
【００１５】
本発明の特定の実施形態は、ホスト側コネクタに対するアクセサリ側コネクタの向きを判定し、判定された向きとアクセサリから受信した情報とに基づいてホスト側コネクタを設定するシステム及び方法を提供する。
【００１６】
図１Ａは、本発明の一実施形態に係るプラグコネクタ１００（つまり、アクセサリ側コネクタ１００）を示す。プラグコネクタ１００は例示的なもので、本明細書では、本発明の様々な実施形態を説明するために使用されている。当業者には、プラグコネクタ１００以外のその他多くの形態及び種類のコネクタが使用でき、本明細書に記載されている技術が、プラグコネクタ１００の特性を有する任意のプラグコネクタに適用されることが理解されよう。いくつかの実施形態において、プラグコネクタ１００はホストデバイスに接続し得るアクセサリに関連付けることができる。
【００１７】
プラグコネクタ１００は、本体１０２と、タブ部１０４を含む。ケーブル１０６は、本体１０２とタブ部１０４に取り付けられ、本体１０２から長手方向に離れて、コネクタ１００の長さに対して平行な方向に延在する。タブ１０４は、嵌合時に対応するレセプタクルコネクタに挿入できる大きさであって、第１の主表面１０４ａ上に形成された第１のコンタクト領域１０８ａと、表面１０４ａの反対側の第２の主表面１０４ｂ（図１Ａには図示せず）に形成された第２のコンタクト領域１０８ｂ（同様に、図１Ａには図示せず）を含む。表面１０４ａ、１０４ｂは、タブの遠位端から、タブ１０４が対応するレセプタクルコネクタに挿入された場合にレセプタクルコネクタの筐体又はレセプタクルコネクタが組み込まれているポータブル電子デバイスに当接するスパイン１０９まで延在する。タブ１０４はまた、第１の主表面１０４ａと第２の主表面１０４ｂとの間に延在する、相対する第１の側面１０４ｃ及び第２の側面１０４ｄ（図示せず）を含む。１つの特定の実施形態において、タブ１０４は、幅が約６．６ｍｍ、厚さが約１．５ｍｍで、約７．９ｍｍの挿入深さ（タブ１０４の先端からスパイン１０９までの距離）を有する。
【００１８】
タブ１０４が対応するレセプタクルコネクタに挿入された場合に、領域１０８ａ又は１０８ｂ内のコンタクト１１２がレセプタクルコネクタ内の対応するコンタクトに電気的に接続されるように、複数のコンタクト１１２をコンタクト領域１０８ａ及びコンタクト領域１０８ｂのそれぞれに形成し得る。いくつかの実施形態において、コンタクト１１２は、最初、嵌合時に、レセプタクルコネクタのコンタクトと接触した後、最終的な望ましい接触位置に到達する前に、払拭動作でレセプタクルコネクタのコンタクトを過ぎて更にスライドする、自洗式ワイピングコンタクトである。
【００１９】
一例として、１つの実施形態において、ＩＤモジュールが、コネクタ１００のコンタクトと動作可能に接続されたＩＣ内で具現化されている。ＩＤモジュールは、嵌合時にホストデバイスと通信し得るコネクタ及び／又はそれに関連付けられるアクセサリ／アダプタに関する識別及び設定情報でプログラムし得る。別の例として、ホストデバイス上の回路を使用して認証ルーチン、例えば、公開鍵暗号方式ルーチンを実行するようにプログラムされた認証モジュールを、コネクタ１００に動作可能に接続されたＩＣ内で具現化し得る。ＩＤモジュール及び認証モジュールは、同一のＩＣ内又は異なるＩＣ内で具現化し得る。更に別の例として、ＩＣ１１３ａ又は１１３ｂのいずれか１つの中で電流調整器を具現化し得る。電流調整器は、ポータブル電子デバイスのバッテリを充電する電力を送ることができるコンタクトに動作可能に接続でき、入力電圧に関係なく、また、入力電圧が一時的に変動した場合でさえ、定電流を保証するためにかかるコンタクトを介して送られる電流を調整し得る。ＩＣの機能を、図４を参照して以下で更に説明する。
【００２０】
ボンディングパッド１１５もまた、ＰＣＢ１０７の端部付近の本体１０２内に形成し得る。各ボンディングパッドは、領域１０８ａ及び１０８ｂ内のコンタクト又はコンタクト対と接続し得る。配線（図示せず）をボンディングパッドにはんだ付けして、コンタクトからコネクタ１００に関連付けられるアクセサリ内の回路までの電気的接続を確立し得る。しかし、いくつかの実施形態においては、ボンディングパッドは必要なく、代わりに、コネクタ１００のコンタクト及び構成要素とアクセサリ内の他の回路との間の全ての電気的接続は、回路が接続されているＰＣＢ上の配線を通じて、及び／又はアクセサリ内の複数のＰＣＢ間の相互接続によって製作される。
【００２１】
タブ１０４の構造及び形状は、ステンレス鋼又は別の硬い導電材料で製作し得る接地リング１０５によって画定される。コネクタ１００は、接地コンタクトの役割も果たす接地リング１０５の側部に湾曲ポケットとして形成されている保持構造部１１４ａ、１１４ｂ（図示せず）を含む。本体１０２は、本体内の特定の構成要素を目視できるように透明な形（点線で示す）で図１Ａに示されている。図示のように、本体１０２内では、プリント配線基板（ＰＣＢ）１０７がコネクタ１００の遠位端に向かってコンタクト領域１０８ａと１０８ｂとの間を接地リング１０５の中まで延在している。特定用途向け集積回路（ＡＳＩＣ）チップ１１３ａ及び１１３ｂなどの１つ以上の集積回路（ＩＣ）が、コネクタ１００に関する情報を提供し、及び／又は認証、識別、コンタクト設定及び電流又は電力調整などの特定の機能を実行するように、ＰＣＢ１０７に動作可能に接続されている。
【００２２】
図１Ｂは、プラグコネクタ１００の正面図を示す。この正面図はキャップ１２０を示す。キャップ１２０は、金属又はその他の導電材料で製作でき、コネクタ１００の遠位端からコネクタの側部に沿って本体１０２に向かって延在し、コンタクト領域１０８ａ及び１０８ｂに形成されたコンタクト１１２をＸ及びＹ方向に全体的又は部分的に囲み得る。いくつかの実施形態において、キャップ１２０は、接地してコネクタ１００のコンタクト１１２で生じ得る干渉を最小限に抑えることができ、したがって、接地リング、例えば、図１Ａに示す接地リング１０５と呼ぶことができる。コンタクト１１２（１）〜１１２（Ｎ）はコンタクト領域１０８ａ内に配置でき、追加のコンタクト１１４（１）〜１１４（Ｎ）をタブ１０４の反対側表面上の領域１０８ｂ内に配置し得る。いくつかの実施形態において、Ｎは２〜８であり得る。コンタクト１１２（１）〜１１２（Ｎ）及び１１４（１）〜１１４（Ｎ）は、デジタル信号及びアナログ信号並びに電力及び接地を含む多種多様な信号を伝送するために使用し得る。
【００２３】
図１Ｃは、コンタクト１１２、１１４とこれらのコンタクト配置を示す概略断面図である。コンタクト１１２、１１４は、図示のように、ＰＣＢ  １５０のいずれかの側に実装し得る。いくつかの実施形態において、反対側のコンタクト、例えば、１１２（１）と１１４（１）は、例えば、ビアを使って、ＰＣＢ  １５０を介して互いに短絡又は電気的に接続して、インラインコネクタ設計を創出し得る。他の実施形態において、全てのコンタクトは、任意のコンタクト間の接続がない状態で独立しているか、又は、これらのコンタクトは、コンタクト間で他の接続構成を有し得る。各コンタクトが独立しており任意の他のコンタクトと接続されていない場合、異なるレセプタクルコネクタ、例えば、図２Ｃのコネクタ２５０を使用できる。コンタクト１１２、１１４は、銅、ニッケル、真鍮、金属合金又はその他の任意の適当な導電材料から製作し得る。プラグコネクタ１００を２つの向きのいずれかで対応するレセプタクルコネクタに挿入できるように、間隔は、前側及び後側のそれぞれのコンタクトの間、及びコンタクトと１８０度対称のコネクタの縁部との間で一定である。
【００２４】
コネクタ１００がレセプタクルコネクタと正しく係合している場合、コンタクト１１２（１）〜１１２（Ｎ）又は１１４（１）〜１１４（Ｎ）のそれぞれは、レセプタクルコネクタの対応するコンタクトと電気的接続の状態にある。
【００２５】
図１Ｄは、上記の図１Ｃに関連して説明されているように、本発明の１つの特定の実施形態に係るコネクタ１００のピンアウト構成を示す。
【００２６】
図１Ｄで示されているピンアウトは、電気的に接続されて接続されたホストデバイスへの電力伝送専用の単一コンタクトとして機能する４個のコンタクト１１２（４）、１１２（５）、１１４（４）、及び１１４（５）を含む。コネクタ１００はまた、アクセサリＩＤコンタクト１１２（８）及び１１４（８）と、アクセサリ電力コンタクト１１２（１）及び１１４（１）と、４対で配列された８個のデータコンタクトとを含む。４対のデータコンタクトは、（ａ）１１２（２）及び１１２（３）、（ｂ）１１２（６）及び１１２（７）、（ｃ）１１４（２）及び１１４（３）、（ｄ）１１４（６）及び１１４（７）であってもよい。ホスト電力コンタクト１１２（４）、１１２（５）、１１４（４）及び１１４（５）は、電力を、コネクタ１００に関連付けられるアクセサリからコネクタ１００を介してアクセサリに接続されたポータブル電子デバイスに伝送し得る。ホスト電力コンタクトは、電子デバイス又はホストデバイスの妥当な電力要求量を処理し得る大きさであり、例えば、アクセサリから３〜２０ボルトを伝送してコネクタ１００に接続されたポータブル電子デバイスを充電するように設計し得る。この実施形態において、ホスト電力コンタクト１１２（４）、１１２（５）、１１４（４）及び１１４（５）は、電力を接地リング１０５の側面からできるだけ遠ざけることによってシグナルインテグリティを高めるために、コンタクト領域１０８ａ、１０８ｂの中心に配置される。
【００２７】
アクセサリ電力コンタクト１１２（１）及び１１４（１）は、電力を電子デバイス（つまり、ホストデバイス）からアクセサリに供給するアクセサリ電力信号用に使用し得る。アクセサリ電力信号は、典型的には、ホスト電力コンタクト１１２（４）及び１１２（５）を介して受信された信号のホスト電力より低い電圧信号、例えば、５ボルト以上に対して３．３ボルトである。アクセサリＩＤコンタクトは、ホストデバイスがアクセサリを認証することを可能にし、アクセサリが以下でより詳細に説明されているアクセサリの能力に関する情報をホストデバイスに伝達することを可能にする通信チャネルを提供する。
【００２８】
４対のデータコンタクト（ａ）１１２（２）及び１１２（３）、（ｂ）１１２（６）及び１１２（７）、（ｃ）１１４（２）及び１１４（３）、（ｄ）１１４（６）及び１１４（７）を使用して、いくつかの異なる通信プロトコルのうちの１つ以上を使ったホストとアクセサリとの間の通信を可能にし得る。例えば、データコンタクト１１２（２）と１１２（３）は、電力コンタクトに隣接した一方の側に配置され、データコンタクト１１２（６）と１１２（７）は電力コンタクトに隣接しているがもう一方の側に配置される。コンタクトの同様の配置を、ＰＣＢの他の表面上のコンタクト１１４についてみることができる。アクセサリ電力コンタクトとアクセサリＩＤコンタクトは、コネクタの各端部に配置される。データコンタクトは、アクセサリＩＤコンタクトを介して送信されるどの信号よりも２〜３桁早い速度で動作する高速データコンタクトであり得、アクセサリＩＤコンタクトは、アクセサリＩＤ信号を、本質的に、高速データラインに送られるＤＣ信号のように見せる。したがって、データコンタクトを電力コンタクトとＩＤコンタクトとの間に配置すると、ＤＣ信号又は本質的なＤＣ信号に指定されたコンタクト間にデータコンタクトを挟むことによってシグナルインテグリティが高まる。
【００２９】
図１Ｅは、本発明の別の特定の実施形態に係るコネクタ１０１のピンアウト構成を示す。
【００３０】
コネクタ１０１はまた、コネクタ１００と同様にリバーシブルコネクタである。換言すれば、コネクタ１０１がホストデバイスの対応するコネクタと嵌合する向きに基づいて、表面１０８ａ又は１０８ｂ上のそれぞれのコンタクトがホストデバイスの対応するコネクタ内のコンタクトと物理的及び電気的に接触する。図１Ｅに示すように、コネクタ１０１は、ＰＣＢ  １５０の上面に配置された８個のコンタクトと、ＰＣＢ  １５０の下面に配置された８個のコンタクトを有し得る。
【００３１】
コネクタ１０１は、アクセサリＩＤコンタクトとして機能してアクセサリとポータブル電子デバイスとの間で識別信号を伝送できる２個のコンタクト１１２（１）及び１１４（４）を含む。コンタクト１１２（１）及び１１４（４）は、図１Ｅに示すように、互いに電気的に接続されている。コネクタ１０１は、４対のデータコンタクト、（ａ）１１２（２）及び１１２（３）、（ｂ）１１２（６）及び１１２（７）、（ｃ）１１４（２）及び１１４（３）、（ｄ）１１４（６）及び１１４（７）を有し得る。この特定の実施形態において、対向するデータコンタクト、例えば、１１２（２）及び１１４（２）は、図１Ｅに示すように、ＰＣＢ１５０を介して互いに電気的に接続されている。コネクタ１０１は、互いに電気的に接続し得るホスト電力コンタクト１１２（４）又は１１４（５）を更に含んでもよい。ホスト電力コンタクト１１２（４）又は１１４（５）は、コネクタ１０１と嵌合するホストデバイスに電力を伝送し得る。例えば、プラグコネクタ１０１は、ホストデバイスに電力を供給するように設計されている電源システムの一部であり得る。この場合、コンタクト１１２（４）又は１１４（５）のいずれかが、例えば、ホストデバイス内のバッテリを充電するために、電源からホストデバイスに電力を伝送し得る。
【００３２】
コネクタ１０１は、例えば、ＰＣＢ  １５０を介して、互いに電気的に接続し得るアクセサリ電力コンタクト１１２（５）及び１１４（８）を更に含んでもよい。アクセサリ電力コンタクトはホストデバイスから接続されたアクセサリに電力を伝送する。例えば、いくつかの場合、ホストデバイスに接続されたアクセサリは、電源を内蔵しておらず、ホストデバイスから電力を得ることがある。この場合、ホストデバイスは、ホストデバイスの対応するコネクタに対するコネクタ１０１の向きによって、アクセサリコンタクトのいずれかを介してアクセサリに電力を供給できる。コネクタ１０１は、互いに電気的に接続された２個の接地コンタクト１１２（８）及び１１４（１）を更に含み得る。接地コンタクトは、コネクタ１０１の接地経路を提供する。
【００３３】
図２Ａは、本発明の一実施形態に係るレセプタクルコネクタ２００を示す。レセプタクルコネクタ２００は、空洞２０４を画定し空洞内にＮ個のコンタクト２０６（１）〜２０６（Ｎ）を収容する筐体２０２を含む。動作中、プラグコネクタ１００（又は、コネクタ１０１）などのコネクタプラグを空洞２０４に挿入して、コンタクト１１２（１）〜１１２（Ｎ）又は１１４（１）〜１１４（Ｎ）をそれぞれのコンタクト２０６（１）〜２０６（Ｎ）に電気的に接続し得る。各レセプタクルコネクタコンタクト２０６（１）〜２０６（Ｎ）は、レセプタクルコネクタ２００が収容されている電気的／ホストデバイスに関連付けられる回路に、そのそれぞれのプラグコンタクトを電気的に接続する。例えば、レセプタクルコネクタ２００は、ポータブルメディアデバイスの一部であり得、メディアデバイスに関連付けられる電子回路は、筐体２０２の外部に延在するコンタクト２０６（１）〜２０６（Ｎ）の先端を、ポータブルメディアデバイス内のプリント配線基板（ＰＣＢ）にはんだ付けすることによってレセプタクル２００に電気的に接続される。コネクタ２００は、薄くできるように１つの側面のみにコンタクトを含むことに留意されたい。他の実施形態において、コネクタ２００は、それぞれの側面にコンタクトを有してもよい。
【００３４】
図２Ｂは、本発明の一実施形態に係るレセプタクルコネクタ２００の断面図を示す。図示のように、いくつかの実施形態において、追加のコンタクト２０８（１）及び２０８（２）がコンタクト２０６（１）〜２０６（Ｎ）の両方の端部に配置されている。コンタクト２０８（１）及び２０８（２）は、プラグコネクタが空洞２０４に完全に挿入されているかどうかを検出するために、又は、プラグコネクタ１００（又はコネクタ１０１）のコンタクト１１２（又は、１１４）がレセプタクルコネクタ２００のコンタクト２０６に物理的に接続される点まで挿入されているかどうかを検出するために使用し得る。いくつかの実施形態において、コンタクト２０８（１）及び２０８（２）はまた、プラグコネクタがレセプタクルコネクタから切り離されているかどうかを検出するためにも使用できる。いくつかの実施形態において、コンタクト２０８は、プラグコネクタが空洞２０４内の特定の距離を越えて挿入された場合、プラグコネクタ１００のキャップ１２０と接触し得る。いくつかの実施形態において、コンタクト２０８は、コンタクト１１２がコンタクト２０６と確実に物理的に接続している場合にのみ、プラグコネクタの接地リングと接触するように配置されている。いくつかの実施形態において、コンタクト２０８がプラグコネクタの接地リングに接続する場合、接続を示す信号が生成され得る。
【００３５】
いくつかの実施形態において、レセプタクルコネクタは、空洞２０４の上側と底側の両方にコンタクトを有してもよい。図２Ｃは、上部にコンタクト２０７（１）〜２０７（Ｎ）を、底部にコンタクト２０６（１）〜２０６（Ｎ）を含むレセプタクルコネクタ２５１の断面図を示す。いくつかの実施形態において、上側と底側に電気的に絶縁されたコンタクトを有するプラグコネクタは、図２Ｃのレセプタクルコネクタ２５１を使用し得る。
【００３６】
いくつかの実施形態において、レセプタクルコネクタは、上記の説明における空洞２０４の内側の１つの側のみにコンタクト２０６（１）〜（Ｎ）を有し得る。特定の実施形態において、レセプタクルコネクタ２５０は、図２Ｄに示すように、８個のコンタクト２０６（１）〜２０６（８）を有し得る。これらのコンタクトの一部又は全ては、プラグコネクタ上で利用できる信号によって、いくつかの機能のうちの１つを実行するように設定し得る。プラグコネクタ１００（又は、コネクタ１０１）は、レセプタクルコネクタ２５０に関連付けられるホストデバイスと協働するように設計されたいくつかのアクセサリのうちの任意の１つに関連付けられ得る。例えば、プラグコネクタ１００（又は、コネクタ１０１）は、プラグコネクタのコンタクト、例えば、１０６（１）〜１０６（Ｎ）上で利用可能な信号がオーディオ及び関連の信号を含む場合、オーディオ専用のアクセサリに関連付けることができる。プラグコネクタ１００（又は、コネクタ１０１）が、ビデオアクセサリなどのより複雑なアクセサリに関連付けられている他の場合、プラグコネクタのコンタクトはオーディオ、ビデオ、及び関連信号を伝送し得る。したがって、レセプタクルコネクタ２５０が様々な異なる種類の信号で動作できるようにするために、レセプタクルコネクタ２５０のコンタクト２０６（１）〜（８）は、プラグコネクタ１００（又は、コネクタ１０１）から利用できる信号に基づいて設定可能とし得る。
【００３７】
図２Ｄに示す特定の実施形態において、レセプタクルコネクタ２５０は、２個の接続検出コンタクト２０８（１）及び２０８（２）に加えて、８個のコンタクト２０６（１）〜（８）を有する。接続検出コンタクト２０８（１）及び２０８（２）の動作は、図２Ｂに関連して上述されている。コンタクト２０６（１）〜（８）のうちの一部又は全ては、例えば、図４に示すように、多くの可能な信号のうちの１つを伝送するようにコンタクトを設定し得る関連スイッチを有してもよい。しかし、説明を簡単にするため、コンタクト２０６（８）に接続した１つのスイッチ２２０のみを図２Ｄに示す。コンタクト２０６（１）〜２０６（８）のうちのその他のいくつかのコンタクトは、それぞれ、そのコンタクトに接続された類似のスイッチ２２０を有し得ることに留意されたい。図２Ｄに示すように、スイッチ２２０は、プラグコネクタの構成によって信号Ｓ（１）〜Ｓｎのうちの任意の１つを伝送するようにコンタクト２０６（８）を設定するために使用し得る。
【００３８】
特定の実施形態において、コンタクト２０６（１）は、識別バスピン（ＡＣＣ＿ＩＤ）であってもよく、アクセサリに機能を実行させ、コマンドに固有のホストデバイスに対して応答させるように動作可能なコマンドを伝達するように設定し得る。このコマンドは、様々なコマンド（例えば、コネクタピンを識別し、識別されたコネクタピンを介して通信するために複数の通信プロトコルのうちの１つを選択する要求、アクセサリの状態を設定する要求、及びアクセサリの状態を取得する要求）のうちの任意の１つ以上のコマンドであってよい。コンタクト２０６（１）はまた、あるいは代替的に、ホストデバイスからアクセサリ（例えば、Ａｃｃ＿Ｐｗｒ）に電力を伝送するように構成され得る。例えば、コンタクト２０６（１）は、別のコンタクト（接地コンタクト、例えば、コンタクト２０６（８）など）と電圧差を生じるようにホストデバイス内の正（又は、負）電圧源に接続し得る。
【００３９】
特定の実施形態において、コンタクト２０６（２）及び２０６（３）は第１の対のデータコンタクト（ＤＰ１／ＤＮ１）を形成し得る。このデータコンタクトは、（ａ）ＵＳＢ差動データ信号、（ｂ）非ＵＳＢ差動データ信号、（ｃ）ＵＡＲＴ送信信号、（ｄ）ＵＡＲＴ受信信号、（ｅ）デジタルデバッグ入／出力信号、（ｆ）デバッグクロック信号、（ｇ）オーディオ信号、（ｈ）ビデオ信号などの様々な信号のうちの１つ以上の信号を伝送するように構成され得る。
【００４０】
特定の実施形態において、コンタクト２０６（４）は、受信電力（例えば、接地ピンなどの別のコンタクトに対する正電圧）をレセプタクルコネクタ２００が関連するホストデバイスに（例えば、アクセサリ内又はアクセサリに接続されている電源から）伝送し得る。また、コンタクト２０６（５）は、上記のコンタクト２０６（１）と同様に、識別バスピン（ＡＣＣ＿ＩＤ）として機能し得る。コンタクト２０６（５）はまた、あるいは代替的に、接続されたプラグコネクタ１００（又は、コネクタ１０１）のレセプタクルコネクタ２００に対する向きによって、ホストデバイスからアクセサリ（例えば、Ａｃｃ＿Ｐｗｒ）に電力を伝送するように構成され得る。
【００４１】
特定の実施形態において、コンタクト２０６（６）及び２０６（７）は、第２の対のデータピン（ＤＰ２／ＤＮ２）を形成し得、それぞれ、（ａ）ＵＳＢ差動データ信号、（ｂ）非ＵＳＢ差動データ信号、（ｃ）ＵＡＲＴ送信信号、（ｄ）ＵＡＲＴ受信信号、（ｅ）デジタルデバッグ入／出力信号、（ｆ）デバッグクロック信号、（ｇ）オーディオ信号、（ｈ）ビデオ信号などの様々な信号のうちの１つ以上の信号を伝送するように構成され得る。
【００４２】
特定の実施形態において、コンタクト２０６（８）は、接地ピンであってもよく、それ以外の場合は、ホストデバイスに供給される又はホストデバイスから供給される電力に対してボルテージポテンシャルをもたらすようにコンタクト２０６（１）、２０６（４）、及び２０６（５）より低いボルテージポテンシャルで提供できる。
【００４３】
いくつかの実施形態において、タブ１０４は、プラグコネクタ１００（又は、コネクタ１０１）のレセプタクル２００への第１の向きと第２の向きの両方での挿入を可能にする１８０度対称の２方向設計を有する。図３Ａ及び図３Ｂは、コネクタ１００（又は、コネクタ１０１）がコネクタ２００と嵌合し得る異なる向きを示す模式図である。図３Ａに示すように、コネクタ１００（又は、コネクタ１０１）は、コネクタ１００（又は、コネクタ１０１）のコンタクト１１２が、コネクタ２００のコンタクト２０６と接続できる位置でコネクタ２００と嵌合し得る。説明の適用上、これを第１の向きと呼ぶことができる。
【００４４】
図２Ｅ及び図２Ｆは、本発明の２つの異なる実施形態に係る、レセプタクルコネクタのピンアウト構成を示す。１つの実施形態において、レセプタクルコネクタ２００は、図１Ｄのコネクタ１００のピンアウトに一致する図２Ｅに示すピンアウトを有し、別の実施形態において、レセプタクルコネクタ２００は、図１Ｅのコネクタ１０１のピンアウトに一致する図２Ｆに示すピンアウトを有する。図２Ｅ及び図２Ｆのそれぞれにおいて、ＡＣＣ１ピン及びＡＣＣ２ピンは、プラグコネクタの挿入の向きによって、プラグコネクタのアクセサリ電力（ＡＣＣ＿ＰＷＲ）ピンかアクセサリＩＤ（ＡＣＣ＿ＩＤ）ピンのいずれかに嵌合するように設定され、データＡコンタクトの対は、プラグコネクタのデータ１コンタクトの対かデータ２コンタクトの対のいずれかに嵌合するように設定され、Ｐ＿ＩＮ（電力受信）ピンは、プラグコネクタのホスト電力コンタクトに嵌合するように設定される。更に、図２Ｆのピンアウトにおいて、ＧＮＤコンタクトは、プラグコネクタ内のＧＮＤコンタクトと嵌合するように設定される。
【００４５】
いくつかの実施形態において、コネクタ１００（又は、コネクタ１０１）は、図３Ｂに示すようにコネクタ２００と第２の向きで嵌合し得る。第２の向きにおいて、コネクタ１００（又は、コネクタ１０１）のコンタクト１１４は、コネクタ２００のコンタクト２０６と接続される。図３Ａ及び図３Ｂに示すように、第２の向きは、第１の向きから１８０度回転された方向であり得る。しかし、可能な向きはこれらに限られない。例えば、コネクタ１００（又は、コネクタ１０１）が正方形のコネクタで、コネクタ２００が対応する正方形である場合、コネクタ１００（又は、コネクタ１０１）は、４つの可能な向きのうちの１つの向きでコネクタ２００と嵌合し得る。したがって、当業者には、当該コネクタについて２つ以上の向きが可能であり得ることが理解されよう。
【００４６】
図４は、本発明の一実施形態に係るシステム４００のブロック図である。システム４００は、電子デバイス／ホストデバイス４０２を含む。ホストデバイス４０２は、ＰＣ、ＰＤＡ、携帯型コンピュータデバイス、メディアプレーヤ、ポータブル通信機器、ラップトップコンピュータ、タブレットコンピュータ等であってよい。ホストデバイス４０２は、マイクロコントローラ４１２と、マイクロコントローラ４０２に接続されたコネクタ４０４とを含む。コネクタ４０４は、例えば、図２Ａのコネクタ２００として実装し得る。ホストデバイス４０２は、マイクロコントローラ４１２に加えて、その他の構成要素を含み得ることを留意されたい。しかし、追加の構成要素については、本明細書に記載されている実施形態とは直接に関係がないので、説明を明確にするためにここでは省略する。
【００４７】
マイクロコントローラ４１２は、１つ以上の集積回路、１つ以上のシングルコア又はデュアルコアプロセッサ等を使って実装し得る。いくつかの実施形態において、マイクロコントローラ４１２は、コネクタ４０４に接続されたアクセサリ側コネクタの向きを検出するための方向検出回路４２０を含み得る。
【００４８】
コネクタ４０４は、例えば、図２Ａのコネクタ２００として実装し得る。コネクタ４０４は、複数のコンタクト２０６（１）〜２０６（Ｎ）を有してもよい。コネクタ４０４のコンタクトの一部には、コネクタ４０６がコネクタ４０４と嵌合する向きを含むがそれに限定されないいくつかの要因に基づいていくつかの機能のうちの１つを割り当てることができる。換言すれば、コネクタ４０４内のコンタクトを多重化することによって、複数の異なる機能を実行し得る。コネクタ４０４内の各コンタクトは、デバイス４０２に配置されたいくつかの回路に電気的に接続される。図４に示すように、コネクタ４０４のいくつかのコンタクトはスイッチ１〜Ｎに接続される。いくつかの実施形態において、検出された向きによって、スイッチ１〜Ｎは、これらのコンタクトがいくつかの機能の１つを実行するように設定し得る。例えば、これらの機能には、差動データ信号、ＵＳＢ電力及び／又はデータ、ＵＡＲＴ送信及び／又は受信、テストポート、デバッグポート、動作電力等が含まれる。各スイッチは、関連するコンタクトが多くの可能な信号の１つを伝送するように設定するために使用し得る。プラグコネクタ４０６の構成を以下に説明する。
【００４９】
システム４００はまた、コネクタ４０４と嵌合する対応コネクタであり得るコネクタ４０６を含む。例えば、コネクタ４０４がレセプタクルコネクタである場合、コネクタ４０６は、対応するプラグコネクタであってよい。いくつかの実施形態において、コネクタ４０６は、例えば、上記のコネクタ１００（又は、コネクタ１０１）として実装し得る。コネクタ４０６は、デバイス４０２と併用するように設計されているアクセサリに関連付けられ得る。コネクタ４０６はまた、いくつかのコンタクトを有してもよい。コネクタ４０６がコネクタ４０４と物理的に嵌合されている場合、コネクタ４０６の少なくとも１つのセットのコンタクトは、コネクタ４０４内のコンタクトに物理的及び電気的に接続される。この結果、コネクタ４０６内のコンタクトがコネクタ４０４を介してデバイス４０２に電気的に接続される。上記の通り、コネクタ４０６はリバーシブルなので、コンタクト１１２（１）から１１２（Ｎ）がコネクタ４０４のコンタクト２０６（１）〜２０６（Ｎ）に電気的に接続されるか、又はコンタクト１１４（１）から１１４（Ｎ）が、コネクタ４０４のコンタクト２０６（１）〜２０６（Ｎ）と電気的に接続される。しかし、デバイス４０２は、コネクタ４０６のどのコンタクトセットがコネクタ４０４内のコンタクトに接続されているか認識しない可能性がある。所定のアクセサリについては、関連するコネクタ４０６の各コンタクトは、それに関連付けられた、予め定義された機能を有することができる。上記の通り、コネクタ４０６が伝送する信号の種類は、関連付けられたアクセサリの種類によって決まる。例えば、コネクタ４０６が、充電／同期ケーブルに関連付けられている場合、コネクタ４０６のコンタクトは、とりわけ、少なくとも電力信号及び通信信号を伝送し得る。したがって、コネクタ４０６がコネクタ４０４と嵌合されている場合、コネクタ４０６内の各コンタクトが伝送する情報を予め定義し得る。この情報は、ホストデバイス４０２がコネクタ４０４のコンタクト２０６（１）〜２０６（Ｎ）を適正に設定できるように、ホストデバイス４０２に送信され得る。したがって、コネクタ４０４と４０６とが嵌合する前に、コネクタ４０４のコンタクトは「フローティングモード」になる。換言すれば、コネクタ４０４のコンタクトは、ホストデバイス４０２内の他の回路から絶縁される。
【００５０】
したがって、コネクタ４０４のコンタクト２０６（１）〜２０６（Ｎ）を設定する前に、コネクタ４０６のコネクタ４０４に対する向きを理解することが有益である。換言すれば、コンタクト、例えば、コネクタ４０６の１１２（１）から１１２（Ｎ）又は、１１４（１）から１１４（Ｎ）の２セットのうちのどちらが、コネクタ４０４のコンタクト２０６（１）〜２０６（Ｎ）に現在接続されているかを理解することが有益である。これを判定するために、本明細書で方向検出と称するプロセスを実行し得る。
【００５１】
しかし、方向検出プロセスを開始する前に、デバイス４０２において、コネクタ４０６がコネクタ４０４に確実に嵌合されていること、つまり、両方のコネクタの少なくともいくつかのコンタクトが互いに物理的に接触していることを確かめる必要がある。これによって、２つのコネクタが適正に嵌合されていること、及び、潜在的なフローティング、部分的な接続、又は電力コンタクトの非接続によるアーク発生若しくは短絡のリスクが低いことを確実にする。コネクタ４０４と４０６との間の物理的嵌合を判定するために、本明細書で接続検出と称するプロセスを実行し得る。
【００５２】
ホストデバイスがアクセサリとの通信を開始できる前に、プラグコネクタとレセプタクルコネクタが互いに物理的に接続又は「嵌合」されているかどうかを判定することは有益であり得る。上記の通り、レセプタクルコネクタ、例えば、コネクタ４０４は、レセプタクルコネクタ内の他のコンタクトより奥にある、接続検出コンタクト、例えば、図２Ｂに示すコンタクト２０８（１）を有する。この接続検出コンタクトは、図４で「Ｃｏｎ  Ｄｅｔｅｃｔ」として示されており、ラストメイク／ファーストブレークタイプのコンタクトである。換言すれば、プラグコネクタ４０６がレセプタクルコネクタ４０４に嵌合された場合、接続検出コンタクトはコネクタ４０６の任意の部分と物理的に接触するコネクタ４０４内の最後のコンタクトである。嵌合解除シーケンスの間、この接続検出コンタクトは、コネクタ４０６から物理的に係合離脱するコネクタ４０４内の最初のコンタクトである。いくつかの実施形態において、接続検出コンタクトは、信号線４１４を介してマイクロコントローラ４１２に接続される。コネクタ４０６がコネクタ４０４と嵌合されていない場合、信号線４１４は、マイクロコントローラ４１２によって論理「ハイ」の状態に保持される。したがって、信号線４１４が論理「ハイ」の状態である限り、ホストデバイスは、コネクタ４０４に嵌合されているコネクタはないと判断し得る。
【００５３】
コネクタ４０６がコネクタ４０４に嵌合されている場合、コネクタ４０６の接地リング、例えば、図１のキャップ１２０は、コネクタ４０６の空洞内を特定の距離移動した後で、接続検出コネクタと物理的に接触する。これによって、信号線４１４は論理「ハイ」の状態から論理「ロー」の状態に変わる。マイクロコントローラ４１２は信号線４１４の状態のこの変化を検出し、コネクタ４０６がコネクタ４０４と物理的に接続されたと判定する。いくつかの実施形態において、これら２個のコネクタの物理的設計に基づき、信号線４１４が論理「ロー」の状態になった場合、プラグコネクタ内の他のコンタクトもまたレセプタクルコネクタ内の対応するコンタクトと物理的に接続していると判断され得る。いくつかの実施形態において、この嵌合が検出されることによって、以下で説明されているように、方向検出、アクセサリ認証、コンタクト設定などの更なるプロセスが開始される。
【００５４】
いくつかの実施形態において、接続検出コンタクトは、切断検出にも使用し得る。いくつかの実施形態において、害を及ぼす可能性のある許可されていないアクセサリからデバイス４０２を保護するために、デバイス４０２内の全てのスイッチ、例えば、スイッチ１〜Ｎ及びスイッチＯＤ１及びＯＤ２は、接続検出の前は開状態に保持される。同様に、コネクタ４０６が切断されると、有害な信号がデバイス４０２に伝送されないようにこれらのスイッチが「開」状態に戻されることが好ましい。
【００５５】
コネクタ４０６がコネクタ４０４から嵌合解除又は切断された場合、接続検出コンタクトは、コネクタ４０６との物理的接続を失う最初のコンタクトである（これがラストメイク／ファーストブレークタイプコンタクトであることを思い出していただきたい）。接続検出コンタクトがコネクタ４０６から物理的に切断されると、信号線４１４が論理「ハイ」の状態に戻る。マイクロコントローラ４１２はこの状態の変化を検出し、コネクタ４０６がコネクタ４０４から切断されたと判断する。この判定に基づいて、マイクロコントローラは１つ以上のスイッチを作動させて「開」状態にし、プラグコネクタの対応するコンタクトのいずれかがこれらの電源をオンにした場合の潜在的なアーク発生及び短絡の危険からデバイス４０２の内部回路を保護し得る。
【００５６】
後にコネクタ４０６が再びコネクタ４０４に嵌合されると、デバイス４０２は上記の接続検出プロセスを再び実行し得る。
【００５７】
上記の通り、いくつかの実施形態において、アクセサリ側コネクタ、例えば、コネクタ４０６は、ホスト側コネクタ、例えば、コネクタ４０４と２つ以上の向きで嵌合し得る。このような場合、ホストデバイスとアクセサリとの間で信号を適正にルーティングするためにホスト側コネクタに対するアクセサリ側コネクタの向きを判定することが好ましい。
【００５８】
いくつかの実施形態において、向きを判定するために、コネクタ４０４内の１つ以上のコンタクトを使用し得る。上記の通り、コネクタ４０４のそれぞれのコンタクトを制御するマイクロコントローラ４１２内の全てのスイッチは、初めは「開」状態である。図４の実施形態において、ＯＤ１及びＯＤ２として示されている２つのコンタクトを使用して向きを判定し得る。方向検出プロセスとコンタクト設定プロセスを説明するために、例えば、コネクタ４０４のコンタクト２０６（１）〜２０６（Ｎ）からコンタクト２０６（１）（図４で「ＯＤ２」として示す）及び２０６（８）（図４で「ＯＤ１」として示す）を選ぶことができるとする。これらのコンタクトＯＤ１及びＯＤ２は、それぞれ、対応するスイッチ４１６及び４１８にそれぞれ接続される。コネクタ４０４の任意の他のコンタクトもまた選択でき、コンタクト２０６（１）及び２０６（８）は単に技術を説明するために使用されていることを理解されたい。コンタクトＯＤ１及びＯＤ２はまた、コンタクト２０６（１）〜２０６（Ｎ）と同様に、いくつかの機能のうちの１つを実行するように構成され得る。いくつかの実施形態において、コンタクトＯＤ１及びＯＤ２は、先ず、向きの検出に使用され、次に、方向検出が完了した後で、特定の他の機能、例えば、アクセサリとホストデバイスとの間の通信信号の伝送、及び／又はホストデバイスからアクセサリへのアクセサリ電力の伝送を実行するように構成され得る。いくつかの実施形態において、コネクタ４０４内のコンタクト２０６（１）〜２０６（Ｎ）は、方向検出プロセスが完了するまでフローティング状態であってよい。この状況における「フローティング」は、コンタクト２０６（１）〜２０６（Ｎ）が、方向検出の前に何の機能も割り当てられず、非アクティブ又は絶縁された状態にあることを意味する。これは、スイッチ１〜Ｎのうちの１つ以上のスイッチを「開」状態にすることによって達成し得る。
【００５９】
いくつかの実施形態において、方向検出回路４２０は、コンタクトＯＤ１及びＯＤ２に接続でき、コンタクトＯＤ１及びＯＤ２をモニタしてこれらのコンタクトのいずれかでの特定の信号又は予想される信号の存在を検出し得る。方向検出回路４２０は、コンタクトＯＤ１及びＯＤ２のいずれかを介してコマンドを送信し、そのコマンドに対する応答を検出し得る。これについては以下で詳細に説明する。
【００６０】
いくつかの実施形態において、システム４００は、ＩＤモジュール４０８を含み得る。ＩＤモジュール４０８は、特定の機能を実行するようにプログラムされた特定用途向け集積回路（ＡＳＩＣ）チップ、例えば、図１Ａのチップ１１３ａ又は１１３ｂのうちの１つとして実装し得る。いくつかの実施形態において、ＩＤモジュール４０８は、ホストデバイス４０２に接続するアクセサリ内に配置し得る。他の実施形態において、ＩＤモジュール４０８は、コネクタ４０６の一体部品であり得、例えば、図１Ａに示すように、コネクタ４０６の筐体内に配置し得る。いくつかの実施形態において、ＩＤモジュール４０８は、コンタクトＯＤ２を介してホストデバイス４０２からコマンドを受信し、そのコマンドに対して同じコンタクトＯＤ２を介して所定の応答を返すことができる。いくつかの実施形態において、ＩＤモジュール４０８は、コネクタ４０６と密着して一体化し得る。換言すれば、ＩＤモジュール４０８及びコネクタ４０６は、デバイス４０２と協働するように構成されたアクセサリ内に配置し得る。したがって、アクセサリがケーブルである場合、コネクタ４０６とＩＤモジュール４０８は、ケーブルの一部であり得る。いくつかの実施形態において、ＩＤモジュール４０８は、関連付けられたコネクタ４０６のコンタクトに関連する設定情報を含み得る。ホストデバイス４０２との接続に成功すると、ＩＤモジュール４０８は、以下で説明されているように設定情報をホストデバイス４０２に提供する。
【００６１】
いくつかの実施形態において、システム４００はまた、アクセサリハードウェア４１０も含み得る。アクセサリハードウェア４１０は、デバイス４０２と共に動作可能に設計されたアクセサリのプロセッサ及びその他の関連回路であり得る。いくつかの実施形態において、アクセサリはデバイス４０２に電力を供給し、他の実施形態において、アクセサリはデバイス４０２から電力の供給を受け得る。アクセサリハードウェア４１０は、アクセサリの種類及び機能によって異なる。
【００６２】
本明細書に記載されているシステム構成と構成要素は説明上のものであり、変更や修正が可能であることが認識されよう。デバイス及び／又はアクセサリは、本明細書で具体的に説明されていない他の構成要素を含み得る。更に、デバイス及びアクセサリは、本明細書において特定のブロックを参照して説明されているが、これらのブロックは説明の都合上定義されたものであって、構成部品の特定の物理的構成を意味することを意図していないことが理解されよう。更に、ブロックは、物理的に異なる構成要素に対応する必要はない。ブロックは、例えば、プロセッサをプログラムすることによって、又は適正な制御回路を設けることによって様々な動作を実行するように構成でき、様々なブロックは、初期の構成を取得する方法によって再構成が可能であるか又は不可能であり得る。本発明の実施形態は、回路とソフトウェアとの任意の組み合わせを使って実装される電子デバイスを含む様々なデバイスにおいて実現し得る。
【００６３】
本発明の一実施形態において、動作中、コネクタ４０６がコネクタ４０６に物理的に嵌合されている状態で、コネクタ４０４の接続検出コンタクトがコネクタ４０６の接地リング部分に物理的に接触すると、信号線４１４がその状態を論理「ハイ」から論理「ロー」に変更する。この状態の変化により、コネクタ４０６が、ここで、コネクタ４０４に接続されていることをデバイス４０２に知らせる。この後、マイクロコントローラ４１２が方向検出動作を開始する。
【００６４】
コネクタ４０６は、コネクタ４０６内の１つのコンタクト、例えば、上記のコンタクトＯＤ１又はＯＤ２のうちの１つに対応し得るＩＤコンタクト４２２が識別信号を伝送するように構成されている。アクセサリ識別信号を伝送するコンタクトが識別されると、デバイス４０２は、コネクタ４０６のコネクタ４０４に対する向きを判定することができる。また、図３Ａ及び図３Ｂに関連して上記で説明されているように、コネクタ４０６は２つ以上の向きでコネクタ４０４に嵌合し得る。また、上記のように、方向検出プロセスを説明するために、コネクタ４０４のコンタクトＯＤ１又はＯＤ２のいずれかをコネクタ４０６のＩＤコンタクト４２２に接続することを検討した。その結果、１つの向きにおいて、ＩＤコンタクト４２２は、コネクタ４０４のコンタクトＯＤ２に接続でき、第１の向きから１８０度回転した第２の向きにおいて、ＩＤコンタクト４２２は、コネクタ４０４のコンタクトＯＤ２に接続し得る。コンタクトＯＤ１及びＯＤ２のどちらがＩＤコンタクト４２２に接続されているかを判定するために次のプロセスを使用し得る。
【００６５】
コネクタ４０６がコネクタ４０４に嵌合されていると判定されると、スイッチ４１６又はスイッチ４１８のいずれかが閉じられ、その閉じられたスイッチに対応するコンタクトが「アクティブ」になる。換言すれば、閉じたスイッチに関連付けられたコンタクトは、ここで、コネクタ４０６内の対応するコンタクトと電気的に接続している。上記のように、スイッチ４１６と４１８は両方とも、コネクタ４０４とコネクタ４０６が最初に互いに嵌合された場合に「開」状態にある。スイッチ４１６が最初に閉じられた場合を検討する。この場合、関連するＯＤ２コンタクト上に電力信号又はその他の有害な信号が現れないようにスイッチ４１８は開の状態で維持される。図４に示されている場合、スイッチ４１６を閉じると、コンタクトＯＤ１が、コネクタ４０６を介してアクセサリ電力線に電気的に接続される。（図４の点線で示されているように）コネクタ４０６がどの向きでコネクタ４０４に接続されたかによって、コンタクトＯＤ１はまたＩＤモジュール４０８にも接続されていることを理解されよう。しかし、方向検出プロセスを説明するために、図４では、コンタクトＯＤ２がＩＤモジュール４０８に接続されている場合にコンタクトＯＤ１がアクセサリ電力線に接続されていることを想定している。
【００６６】
スイッチ４１６が閉じられると、マイクロコントローラ４１２は、例えば、ＯＤ回路４２０を使用し、ＯＤ１コンタクトを介してコマンドを送信する。ＯＤ回路４２０は、この後、ＯＤ１コンタクト上のコマンドに対する特定の及び／又は予期される応答に「傾注する」。いくつかの実施形態において、このコマンドはＩＤモジュール４０８だけが解釈でき、ＩＤモジュール４０８は、解釈した後でコマンドに対する応答を生成する。しかし、この例において、ＯＤ１コンタクトはアクセサリ電力線に接続されており、ＩＤモジュール４０８に接続されていない。したがって、ＩＤモジュール４０８は、コマンドを受信せず、そのため、コマンドに対する応答を生成しない。結果として、ＯＤ回路４２０は、コマンドに対する応答をＯＤ１コンタクトを介して受信しない。
【００６７】
所定の時間が経過した後でＯＤ回路４２０がＯＤ１コンタクト上で応答を検出しない場合、マイクロコントローラ４１２は、ＯＤ１コンタクトがアクセサリ側のＩＤモジュール４０８に接続されていないと判断し、スイッチ４１６を開く。その後、マイクロコントローラ４１２は、スイッチ４１８を閉じる。これによって、コンタクトＯＤ２はＩＤコンタクト４２２を介してＩＤモジュール４０８に電気的に接続される。この後、ＯＤ回路４２０は、上記と同じコマンドをＯＤ２コンタクトを介して送信する。ＯＤ２コンタクトがＩＤモジュール４０８に接続されているので、ＩＤモジュール４０８は、コマンドを受信すると、応答を生成し、ＯＤ２コンタクトを介してマイクロコントローラ４１２に送信する。この応答は、ＯＤ回路４２０によって検出される。したがって、マイクロコントローラ４１２は、ＯＤ２コンタクトがＩＤモジュール４０８に接続されていることを認識し、ＯＤ２コンタクトに接続されている線をアクセサリ通信線（例えば、図１ＥのＡＣＣ＿ＩＤ）として指定する。したがって、本発明者の例では、コンタクト２０６（１）又は２０６（８）の１つがアクセサリ通信信号を伝送し、もう１つのコンタクトがアクセサリ電力コンタクト（例えば、図１ＥのＡＣＣ＿ＰＷＲ）として指定され得る。アクセサリ通信コンタクト及びアクセサリ電力コンタクトの位置／配置に基づいて、ホストデバイス４０２は、コネクタ４０６のコネクタ４０４に対する向きを判定し得る。
【００６８】
図５は、本発明の一実施形態に係る、アクセサリ側コネクタのホスト側コネクタに対する向きを判定するプロセス５００のフローチャートである。プロセス５００は、例えば、図４のホストデバイス４０２によって実行し得る。
【００６９】
ブロック５０２では、ホストデバイスは、アクセサリの（第１の）コネクタとホストデバイスの（第２の）コネクタとの接続を検出し得る。換言すれば、ホストデバイスは、アクセサリコネクタが、例えば、そのコネクタのコネクタ検出コンタクトを介して、ホストデバイスのコネクタと物理的に接続されていることを検出し得る。アクセサリコネクタがホストデバイスのコネクタと物理的に接続されていることをホストデバイスが判定すると、ブロック５０４において、ホストデバイスはマイクロコントローラ経由で、ホストデバイスのコネクタ（例えば、上記ＯＤ１コンタクト）の第１のコンタクト（例えば、図４のＯＤ１）を介してコマンドを送信する。例えば、ホストデバイスは、以下で図７Ａを参照して説明されているＩＤコマンドを送信し得る。ホストデバイスは、このコマンドを送信すると、アクセサリからのこのコマンドに対する応答を待つ。ブロック５０６では、ホストデバイスは、コマンドに対する応答がアクセサリから第１のコンタクトを介して受信されたかどうかをチェックする。第１のコンタクトを介して応答が受信されると、ホストデバイスは、ブロック５０８において、アクセサリコネクタのホストデバイスのコネクタに対する向きを判定する。例えば、応答に基づいて、ホストデバイスは、ホストデバイスのコネクタのどちらのコンタクトがアクセサリ側コネクタのＩＤモジュールに接続されているかを認識し、したがって、そのコンタクトをＩＤバスライン又はアクセサリ通信線として指定し得る。ＩＤバスライン／コンタクトを認識すると、ホストデバイスは、アクセサリコネクタが差しこまれている向きを判定する。ホストデバイスは、向きを認識すると、ブロック５１０で、判定された向きに基づいて第２のコネクタの残りのコンタクトを設定し得る。
【００７０】
ブロック５０６でホストデバイスがコマンドに対する応答を受信しなかった場合、ホストデバイスは、ブロック５１２で、ホストデバイスのコネクタの第２のコンタクト（例えば、図４のＯＤ２）を介して同じコマンドを送信し得る。ブロック５１４で、ホストデバイスは、そのコマンドに対する有効な応答がＩＤモジュールから第２のコンタクトを介して受信されたか再度チェックし得る。有効な応答が受信された場合、プロセス５００は上記の通りブロック５０８及び５１０に進み、これに応じて、ホストデバイスは、ホストデバイスの（第２の）コネクタ内の残りのコンタクトを設定する。ブロック５１４で応答が受信されない場合、プロセスはブロック５０４に戻り、ホストデバイスが再び第１のコンタクトを介して同じコマンドを送信する。したがって、ホストデバイスは、第１の及び第２のコンタクトのうちの１つを介して有効な応答を受信するまで、コマンドを交互に第１のコンタクト及び第２のコンタクトを介して送信する。いくつかの実施形態において、プロセス５００は、特定の時間又は特定の回数の試みの後でタイムアウトになるようにプログラムし得る。
【００７１】
図５で説明されている具体的なステップは、本発明の一実施形態に係る、向きを判定するための特定の方法を提供するものであることが認識されるであろう。代替的実施形態によると、ステップの他のシーケンスもまた実行し得る。例えば、本発明の代替的実施形態では上記のステップを異なった順序で実行し得る。更に、図５で説明されている個々のステップは、その個々のステップにおいて適切な様々な順序で実行し得る複数の副ステップを含んでもよい。更に、特定の用途によって、ステップを追加したり削除したりしてもよい。特に、いくつかの実施形態においては、複数のステップを省略し得る。当業者であれば、多くの変形、修正、及び代替案を認識するであろう。
【００７２】
本発明の特定の実施形態は、ホスト側コネクタのコンタクトを動的に設定する技術を提供する。コンタクトの設定は、初めにアクセサリ側コネクタの向きを判定することなく行い得る。いくつかの実施形態において、ホストデバイスは、上記のように、アクセサリにコマンドを送信し得る。コマンドに対する応答には、アクセサリ側コネクタのコンタクト割当／構成に関する情報を含み得る。アクセサリは、このコンタクト割当情報を後述のパケットと類似の応答パケットでホストデバイスに提供し得る。コマンドと応答の詳細は、図７Ａ及び図７Ｂに関連して後述する。コンタクト設定情報に加えて、アクセサリはまた、例えば、ＩＤモジュール４０８を介して、アクセサリ、アクセサリ識別子等の設定情報をホストデバイスに送信することもできる。
【００７３】
いくつかの実施形態において、アクセサリ設定情報は、とりわけ、アクセサリの種類、アクセサリが提供／要求する信号の種類等を含み得る。例えば、アクセサリは、コネクタ４０６の各コンタクトが伝送するように設定された信号に関する情報を提供し得る。例えば、第１のコンタクトは電力信号を伝送し得、第２のコンタクトはデータ信号を伝送し得る、など。マイクロコントローラ４１２は、このコンタクト設定情報をアクセサリから受信すると、コネクタ４０４内の対応するコンタクトに関連付けられたスイッチ１〜Ｎを作動させ、コネクタ４０６内の対応するコンタクトと同じ信号を伝送するように、かかるコンタクトを設定し得る。
【００７４】
ホストデバイス内のコンタクト設定は、アクセサリ側コネクタの方向検出とは独立して生じ得ることに留意されたい。例えば、アクセサリ側コネクタ、例えば、コネクタ４０６は、単一方向のみでコネクタ４０４と接続し得る。この場合、コネクタ４０６のコネクタ４０４に対する向きを判定する必要がない。接続が完了すると、アクセサリは、コネクタ４０６に関するコンタクト設定情報をホストデバイスに送信し得る。その後、ホストデバイスは、コネクタ４０６の設定に合うようにホストデバイスのコネクタ４０４のコンタクトを設定し得る。したがって、いくつかの実施形態において、コンタクト設定は、最初に方向検出を実行することなく行い得る。
【００７５】
コネクタ４０４内のコンタクトが正しく設定されると、デバイス４０２とアクセサリとの間で連続した電気的リンクが確立され、デバイス４０２が実質的にアクセサリと通信できる、例えば、コマンドとデータのやり取り、アプリケーションプログラムの実行等ができる。
【００７６】
図６は、本発明の一実施形態に係る、コネクタのコンタクトを設定するためのプロセス６００のフローチャートである。プロセス６００は、例えば、図４のデバイス４０２によって実行し得る。
【００７７】
ホストデバイスは、先ず、ホスト側コネクタとアクセサリ側コネクタとの間の物理的接続を検出する（ブロック６０２）。一実施形態において、ホストデバイスは、上記の接続検出コンタクトを使用して物理的接続を判定し得る。２つのコネクタが物理的に接続されると、ホストデバイスは、アクセサリ側コネクタのコンタクトに関する設定情報を提供するようにアクセサリにコマンドを送信し得る（ブロック６０４）。いくつかの実施形態において、ホストデバイスはこの情報を要求する必要がなく、２つのコネクタ間の物理的接続が判定されると、アクセサリが自動的にこの情報を提供し得る。ホストデバイスは、コンタクト設定情報をアクセサリから受信する（ブロック６０６）。コンタクト設定情報により、ホストデバイスは、アクセサリ側コネクタ内の各コンタクトに関連付けられた機能を判定できる。この情報に基づき、ホストデバイスは、対応するアクセサリ側コネクタのコンタクトの機能に一致するようにホスト側コネクタのコンタクトを設定する（ブロック６０８）。いくつかの実施形態において、ホストデバイスは、適当な機能をホスト側コネクタ内の一部のコンタクトに付与するように図４に示すスイッチ１〜Ｎを作動させ得る。
【００７８】
いくつかの実施形態において、アクセサリは、コンタクト設定情報をホストデバイスに送信しない場合さえもある。代わりに、ホストデバイスが、例えば、アクセサリ識別子に基づいて、ホストデバイスに接続されているアクセサリの種類を判定し得る。アクセサリの種類を判定すると、ホストシステムは、ルックアップテーブルを参照して、アクセサリ側コネクタのコンタクト設定を判定し、それに基づいてホスト側コネクタのコンタクトを設定し得る。この場合、ルックアップテーブルは、各アクセサリに関連付けられた一意のアクセサリ識別子を使用して索引付できる様々なアクセサリ側コネクタに関するコンタクト設定情報を含み得る。
【００７９】
図６で説明されている具体的なステップは、本発明の一実施形態に係る、コンタクトを設定するための特定の方法を提供するものであることが認識されるであろう。また、代替的実施形態によると、ステップの他のシーケンスもまた実行し得る。例えば、本発明の代替的実施形態では上記のステップを異なった順序で実行し得る。更に、図６で説明されている個々のステップは、その個々のステップにおいて適切な様々な順序で実行し得る複数の副ステップを含んでもよい。更に、特定の用途によって、ステップを追加したり削除したりしてもよい。特に、いくつかの実施形態においては、複数のステップを省略し得る。当業者であれば、多くの変形、修正、及び代替案を認識するであろう。
【００８０】
いくつかの実施形態において、アクセサリ側コンタクトの設定は、初期の設定情報が提供された後でアクセサリによって変更し得る。これは、アクセサリが２つの異なる機能、例えば、ＵＳＢ及びＵＡＲＴを実行できる場合に起こり得る。最初に、アクセサリは、アクセサリ側コネクタのコンタクトをＵＳＢ信号用に設定されていると指定して、その情報をホストに伝達し得る。その後、ホストは、アクセサリ側コネクタのコンタクトと一致するように、ホスト側コネクタのコンタクトを設定し得る。その後、動作中に、アクセサリがアクセサリ側コネクタのコンタクトを今度はＵＡＲＴ信号を伝送するように変更すると想定する。この場合、アクセサリは新しい設定情報をホストデバイスに送信し、ホストデバイスは、新しい設定に一致するように、ホスト側コネクタのコンタクトの設定を動的に変更し得る。
【００８１】
上記のように、ＩＤモジュールは、マイクロコントローラからコマンドを受信すると、所定の応答をマイクロコントローラに送り返す。図７Ａ及び図７Ｂは、本発明の一実施形態に係る、コマンド及び応答シーケンスを示す。
【００８２】
図７Ａは、本発明の一実施形態に係る、マイクロコントローラがＯＤ１線又はＯＤ２線を介して送信し得るコマンドシーケンス７００の構造を示す。コマンドシーケンス７００は、ブレークパルス７０２を含み得る。いくつかの実施形態において、ブレークパルス７０２は、コマンドがマイクロコントローラによって送信されていることをＩＤモジュールに知らせるために、及び／又はコマンドの開始を知らせるために使用し得る。いくつかの実施形態において、ブレークパルスの持続時間はプログラム可能であってよい。いくつかの実施形態において、ブレークパルス７０２は、ＩＤモジュールがマイクロコントローラからコマンドを受信できるようにＩＤモジュールを既知の状態にリセットする。ブレークパルス７０２の後にコマンド７０４が続いてもよい。いくつかの実施形態において、コマンド７０４は、８〜１６ビットを含み得る。いくつかの実施形態において、コマンド７０４の後にＮバイトのペイロード７０６が続いてもよい。他の実施形態において、コマンド７０４はペイロードなしに送信し得る。向きを検出する目的で、コマンド７０４の後に１６ビット以下のペイロード７０６が続いてもよい。この場合、ペイロード７０６は、マイクロコントローラに関連付けられた一意の識別子を含み得る。ＩＤモジュールはこの一意の識別子を使ってマイクロコントローラ及び／又はデバイスを認識し、コマンド７０４に対する応答を作成し得る。例えば、この一意の識別子は、デバイスが、電話、メディアプレーヤ、又は、例えば、タブレットコンピュータ、又はデバッグアクセサリのパーソナルコンピュータデバイスであることをＩＤモジュールに知らせ得る。
【００８３】
いくつかの実施形態において、ペイロード７０６（又は、コマンド７０４）の後に巡回冗長検査（ＣＲＣ）シーケンス７０８が続いてもよい。ＣＲＣは、生のコンピュータデータに対する偶発的な変更を検出することを意図したエラー検出コードであり、一般的に、デジタルネットワーク及び記憶装置で使用されている。これらのシステムのデータ入力ブロックには、コンテンツの多項式除法の剰余から導き出された短いチェック値が添付されている。検索すると、計算が繰り返され、チェック値が一致しない場合は、想定されるデータ破壊に対して是正措置を講じ得る。いくつかの実施形態において、ＣＲＣシーケンス７０８は、８次の多項式関数Ｘ８＋Ｘ７＋Ｘ４＋１を使って生成し得る。いくつかの実施形態において、ＣＲＣ７０８の後に、コマンドシーケンスの終了を知らせる別のブレークパルス７０２が続いてもよい。このブレークパルスは、マイクロコントローラがコマンドと、該当があれば、関連データの送信を終了し、応答を受信できる状態にあることをＩＤモジュールに知らせる。ＩＤモジュールのみがこのコマンドを解釈し応答できることが理解されよう。したがって、コマンドシーケンス７００がＩＤモジュールに接続されていないラインを介して送信された場合、ホストデバイス内のマイクロコントローラはそのコマンドに対する応答を受信しない。いくつかの実施形態において、コマンドは、応答がホストデバイスから受信されない場合はタイムアウトになり得る。この場合、マイクロコントローラは、ラインがＩＤモジュールに接続されておらず、したがって、ＩＤバスラインではないものと判断する。
【００８４】
当業者であれば、コマンドシーケンス７００は例示的なものにすぎず、デバイスと、ＩＤモジュールを含むアクセサリとの間の通信の特定要件によって、図７Ａに示されるもの以外の情報を多かれ少なかれ含むものと認識されよう。
【００８５】
ＩＤモジュールは、コマンドシーケンス７００を受信すると、図７Ｂに示す応答シーケンス７２０を送信し得る。応答シーケンス７２０は、コマンド応答７２２を含み得る。コマンド応答７２２は、コマンド７０４に対する所定の応答であってもよい。例えば、接続されたデバイスの種類に関係なく、各ＩＤモジュールは、デバイスからのコマンド７０４の受信に応じて同じコマンド応答７２２を生成し得る。応答シーケンス７２０はまた、４８ビット以下の長さであり得るペイロード７２４を含んでもよい。いくつかの実施形態において、ペイロード７２４は、ＩＤモジュールが組み込まれたアクセサリに関連付けられた識別子、例えば、アクセサリの通し番号を含み得る。いくつかの実施形態において、ペイロード７２４はまた、アクセサリの種類などのアクセサリに関連する設定情報、デバイスと通信するためにアクセサリが必要とする様々な信号等を含み得る。いくつかの実施形態において、ペイロード７２４は、アクセサリ側コネクタ内の各コネクタに関連付けられた機能に関する情報を含み得る。例えば、４ビット以下を使用してＯＤ１スイッチ及びＯＤ２スイッチに付与する機能を表示し得る。いくつかの実施形態において、ペイロード７２４内の２対以下の２ビットで、Ｎ＝４である場合のスイッチ１〜Ｎの設定方法、又は換言すれば、スイッチ１〜Ｎに関連付けられたコンタクトに付与される機能をマイクロコントローラに知らせ得る。設定されると、各スイッチはコネクタ４０４内の様々なコンタクトをデバイス４０２内の他の回路に接続する。追加のスイッチには追加のビットが使用され、システムが拡張可能であることが理解されよう。したがって、マイクロコントローラは、コマンド応答を受信すると、上記の様々なスイッチ１〜Ｎ、ＯＤ１及びＯＤ２の設定方法を認識する。いくつかの実施形態において、ペイロード７２４の後にＣＲＣ  ７２６が続いてもよい。ＣＲＣ  ７２６は、ＣＲＣ  ７０８と類似であり得る。いくつかの実施形態において、コマンドシーケンス７００を送信し、応答シーケンス７２０を受信するための総時間は約３ミリ秒である。
【００８６】
図４を再度参照すると、いくつかの実施形態において、コネクタ４０６がコネクタ４０４から物理的に取り外され／切り離されると、デバイス４０２はコネクタ検出４１４を介して取り外しを検出し、その結果、マイクロコントローラ４１２は全てのスイッチ１〜Ｎを「開」状態にする。例えば、論理「ハイ」が信号線４１４上で所定時間以上の間検出されると、マイクロコントローラはコネクタ４０６がコネクタ４０４から切り離されたものと判断し、デバイス４０２にその旨を指示し得る。いくつかの実施形態において、上記の所定時間は２０マイクロ秒〜１００マイクロ秒である。
【００８７】
上記の実施形態は、互いに独立し得る。例えば、方向検出は、コンタクト設定を伴わずに実行し得る。方向検出は、全てのコンタクトが固定された機能を有している場合に有用であり得、アクセサリ側コネクタがどの向きでホスト側コネクタに接続されているかを判定するのみが望ましい。また、別の実施形態において、コンタクト設定は、ホスト側コネクタに対するアクセサリ側コネクタの向きを最初に判定することなく実行し得る。例えば、いくつかの実施形態において、２つのコネクタは単一方向でのみ嵌合し得る。この場合、向きを判定する必要がなく、接続と同時に、ホストデバイスがアクセサリ側コネクタに基づいてホスト側コネクタのコンタクトを設定し得る。
【００８８】
本発明の更に別の実施形態において、コンタクト設定は、アクセサリ側コネクタのホスト側コネクタに対する向きに従い、その向きに基づいて実行し得る。例えば、２つのコネクタを２つ以上の向きで互いに嵌合し得る場合、１つのコネクタの別のコネクタに対する向きを（例えば、上記の技術を使用して）先ず判定し、その後で、判定した向きに基づいてコンタクトを設定することが有益な場合がある。
【００８９】
図８Ａは、本発明の一実施形態に係る、ホスト側コネクタ２５０に嵌合されたアクセサリ側コネクタ１００（又はコネクタ１０１）を示す断面図である。図８Ａに示すように、コネクタ１００のコンタクト１１４（１）は、コネクタ２５０のコンタクト２０６（１）に接触している。コネクタ１００はリバーシブルであり、少なくとも２つの向きでコネクタ２５０と嵌合し得る。図８Ａで示す向きに加えて、コネクタ１００はまた、図８Ｂで示す別の向きでコネクタ２５０と嵌合し得る。別の向きで、コネクタ１００のコンタクト１１２（８）は、コネクタ２５０のコンタクト２０６（１）に接触している。したがって、この２つの向きにおいて、コネクタ１００の２つの異なるコンタクトがコネクタ２５０の同じコンタクトに接続し得ることが分かる。したがって、この場合、いずれかのコンタクトを設定する前に、先ず、コネクタ１００が嵌合されている向きを判定することが有益である。例えば、一部のコンタクトは電力を伝送し得るので、ホスト側コネクタの間違ったコンタクトが電力を伝送できるように設定すると不都合である。
【００９０】
この実施形態において、コネクタ１００が、例えば、上記の接続検出コンタクトを使って、コネクタ２５０に物理的に接続されていることが確認されると、ホストデバイスは、コネクタ１００がコネクタ２５０と嵌合されている向きを判定しようと試みる。換言すれば、ホストデバイスは、コネクタ１００のどのコンタクトがコネクタ２５０のコンタクトと実際に物理的に接続されているかを判定する。ホストデバイスは、向きを判定すると、その情報とコネクタ１００のコンタクト設定情報を使ってコネクタ２５０のコンタクトを設定し得る。
【００９１】
図９Ａ及び図９Ｂは、本発明の一実施形態に係る、コネクタのコンタクトの向きを判定し設定するためのプロセス９００のフローチャートを示す。プロセス９００は、例えば、図４のホストデバイス４０２によって実行し得る。
【００９２】
上記のように、ホストデバイスがそのホスト側コネクタを介してどのアクセサリにも接続されていない場合、ホスト側コネクタのコンタクトを制御する全てのスイッチは「開」状態になり、全てのコンタクトが非アクティブ／絶縁状態になる。これは、ホストデバイスが不要信号を受信できないようにしてホストデバイスを損傷から保護するためである。ブロック９０２で、ホストデバイスは、例えば、ホスト側コネクタ内の接続検出コンタクトを使って、アクセサリ側コネクタがホスト側コネクタに物理的に嵌合されていることを判定する。２つのコネクタの物理的嵌合の検出に応じて、ホストデバイスは、ブロック９０４で、向きの検出に使用するホスト側コネクタの第１のコンタクトに関連付けられたスイッチを閉じる。この結果、第１のコンタクトがアクティブになり、又は換言すれば、これで第１のコンタクトを介してホストデバイスとアクセサリとの間に連続した接続経路が存在するようになる。
【００９３】
その後、ホストデバイスはブロック９０６で第１のコンタクトを介してアクセサリにコマンドを送信する。いくつかの実施形態において、このコマンドは、アクセサリから特定の情報を要求し得る。第１のコンタクトを介してコマンドを送信した後、ホストデバイスはブロック９０８でアクセサリからの応答の受信を待つ。この後、ホストデバイスは、ブロック９１０でアクセサリから応答が受信されたかどうかチェックする。ホストデバイスは、第１のコンタクト上でアクセサリから応答を受信すると、その第１のコンタクトをアクセサリ通信信号を伝送するコンタクトとして指定する。上記のように、ホストデバイスが送信するコマンドは、アクセサリ内又はアクセサリ側コネクタ内のＩＤモジュールだけが解釈し得る。したがって、応答が第１のコンタクト上で受信されたという事実は、第１のコンタクトがアクセサリ内のＩＤモジュールに接続されていることを意味する。
【００９４】
第１のコンタクトがアクセサリ側コネクタのアクセサリ通信コンタクトに接続されていることが確認されると、ホストデバイスは、ブロック９１２でアクセサリ側コネクタのホスト側コネクタに対する向きを判定し得る。換言すれば、ホストデバイスはここで、アクセサリ側コネクタのどのコンタクトがホスト側コネクタのコンタクトと物理的に接続しているかを認識する。第１のコンタクトを介してアクセサリから受信された応答は、アクセサリ側コネクタの各コンタクトに関連付けられた機能を特定する情報を含む。ブロック９１４で、ホストデバイスは、アクセサリから受信した情報を分析し、アクセサリ側コネクタの各コンタクトに関連付けられた機能を判定する。この情報と以前に判定された方向情報に基づき、ホストデバイスはここで、アクセサリ側コネクタと一致させるために、ホスト側コネクタのどのコンタクトにどの機能が割り当てられるかを認識する。これを達成するために、ホストデバイスは、ブロック９１６で、ホスト側コネクタの１つ以上のコンタクトに関連付けられたスイッチを作動させ、判定された機能を実行できるようにコンタクトを設定する。
【００９５】
しかし、ブロック９１０で、ホストデバイスがアクセサリから何の応答も受信しない場合、ホストデバイスは第１のスイッチを開にし、図９Ｂに示すようにブロック９１８で第１のコンタクトを非アクティブにする。その後、ブロック９２０で、ホストデバイスは第２のコンタクトに関連付けられた第２のスイッチを閉じて、第２のコンタクトをアクティブにする。ブロック９２２で、ホストデバイスは同じコマンドを第２のコンタクトを介して送信し、アクセサリからの応答を待つ。ブロック９２４で第２のコンタクトを介してアクセサリから応答が受信されると、プロセス９００は、ステップ９１２へと続く。ブロック９２４でホストデバイスがアクセサリから応答を受信しなかった場合、ホストデバイスはブロック９２８で、第２のスイッチを開にし、第２のコンタクトを非アクティブにする。その後、プロセス９００はステップ９０４に戻り、第１のコンタクトが再びアクティブにされる。
【００９６】
ホストデバイスは、第１のコンタクトと第２のコンタクトを、交互に、アクティブにし、アクティブなコンタクトを介してコマンドを送信しアクセサリからの応答を待つことができる。いくつかの実施形態において、ホストデバイスは、アクセサリから応答を受信するまでこのプロセスを無限に繰り返し得る。他の実施形態において、所定の時間が経過した後、ホストはプロセス９００を停止し、エラーを報告し得る。いくつかの実施形態において、向きの判定に使用された第１のコンタクトと第２のコンタクトは、予め決定されてホストデバイスにプログラムされる。他の実施形態において、第１のコンタクト及び／又は第２のコンタクトは動的に選択し得る。
【００９７】
図９Ａ及び図９Ｂで説明されている具体的なステップは、本発明の一実施形態に係る、向きを判定しコンタクトを設定するための特定の方法を提供するものであることが認識されるであろう。代替的実施形態によると、ステップの他のシーケンスもまた実行し得る。例えば、本発明の代替的実施形態では上記のステップを異なった順序で実行し得る。更に、図９Ａ及び図９Ｂで説明されている個々のステップは、その個々のステップにおいて適切な様々な順序で実行し得る複数の副ステップを含んでもよい。更に、特定の用途によって、ステップを追加したり削除したりしてもよい。特に、いくつかの実施形態においては、複数のステップを省略し得る。当業者であれば、多くの変形、修正、及び代替案を認識するであろう。
【００９８】
回路、論理モジュール、プロセッサ及び／又はその他の構成要素は、本明細書において、様々な動作を実行するように「設定」されているものとして説明し得る。当業者には、そのような設定が、実装に応じて、具体的な構成要素の設計、セットアップ、相互接続、及び／又はプログラミングを通じて達成することができ、また、同様に実装に応じて、構成された構成要素を、異なる動作のために再構成可能とする場合も、又は再構成可能としない場合もあることが理解されるであろう。例えば、適切な実行可能コードを提供することによって、プログラム可能プロセッサを構成することができ、論理ゲートと他の回路素子とを適切に接続することによって、専用論理回路を構成することができる、などである。
【００９９】
更には、上述の実施形態は、具体的なハードウェア及びソフトウェアの構成要素に言及する場合があるが、当業者には、ハードウェア及び／又はソフトウェアの構成要素の、異なる組み合わせも使用することができ、ハードウェアの形態で実装されているとして説明される特定の動作はまた、ソフトウェアの形態でも実装することができ、又は逆も同様であることが理解されるであろう。
【０１００】
本発明の様々な機能が組み込まれたコンピュータプログラムは、様々な永続的なコンピュータ可読記憶媒体にコード化することができ、好適な媒体としては、磁気ディスク又はテープ、コンパクトディスク（ＣＤ）又はＤＶＤ（デジタル汎用ディスク）などの光学的記憶媒体、フラッシュメモリなどが挙げられる。プログラムコードでコード化されるコンピュータ可読記憶媒体は、対応デバイスと共にパッケージ化するか、又は他のデバイスとは別個に提供することができる。更には、プログラムコードは、インターネットを含めた、様々なプロトコルに準拠する有線ネットワーク、光ネットワーク、及び／又は無線ネットワークを介して、コード化して送信することができるため、例えばインターネットダウンロードを介して、配信が可能となる。
【０１０１】
それゆえ、本発明は、特定の実施形態に関して説明されているが、本発明は、以下の特許請求の範囲内での、全ての修正形態及び均等物を包含することを意図するものであることが理解されるであろう。
【図１Ａ】
0005771752.tif 000002
【図１Ｂ】
0005771752.tif 000003
【図１Ｃ】
0005771752.tif 000004
【図１Ｄ】
0005771752.tif 000005
【図１Ｅ】
0005771752.tif 000006
【図２Ａ】
0005771752.tif 000007
【図２Ｂ】
0005771752.tif 000008
【図２Ｃ】
0005771752.tif 000009
【図２Ｄ】
0005771752.tif 000010
【図２Ｅ】
0005771752.tif 000011
【図２Ｆ】
0005771752.tif 000012
【図３Ａ】
0005771752.tif 000013
【図３Ｂ】
0005771752.tif 000014
【図４】
0005771752.tif 000015
【図５】
0005771752.tif 000016
【図６】
0005771752.tif 000017
【図７Ａ】
0005771752.tif 000018
【図７Ｂ】
0005771752.tif 000019
【図８Ａ】
0005771752.tif 000020
【図８Ｂ】
0005771752.tif 000021
【図９Ａ】
0005771752.tif 000022
【図９Ｂ】
0005771752.tif 000023