(57)【要約】  例示的な実施例は、パーソナルコンピュータ、腕時計などを含むスマートフォンおよびタブレットおよび他の同様のデバイスなどの電子デバイスのためのプッシュユーザインターフェイス（ＵＩ）として使用され得る。システムは、固有のＵＩがリモートデバイスから電子デバイスにプッシュされて電子デバイス上にリモートデバイスに特有のユーザインターフェイスエクスペリエンスを作成するように、無線通信インターフェイスを有するリモートデバイスとともに使用され得る。
2017535001.tif 000002
【特許請求の範囲】
【請求項１】
特定のリモートデバイスに関連付けられる固有のユーザインターフェイスをモバイルデバイス上でユーザに提供するためのシステムであって、
前記モバイルデバイスにダウンロードおよび格納されるよう構成されたホストアプリケーションを備え、前記モバイルデバイスは、前記ホストアプリケーションを実行するためのプロセッサと、前記ホストアプリケーションによって解釈されるものとして前記固有のユーザインターフェイスを提供するための入力または出力デバイスと、複数のリモートデバイスから情報を受信するための無線通信インターフェイスとを備え、前記システムはさらに、
１つ以上のリモートデバイスを備え、前記１つ以上のリモートデバイスは、各々が無線通信インターフェイスとメモリとを備え、各リモートデバイスの前記メモリは、前記ホストアプリケーションによって実行されるよう構成された、前記リモートデバイスに関連付けられる前記固有のユーザインターフェイスに対応する非一時的な機械読取可能な実行可能な命令を格納している、システム。
【請求項２】
前記モバイルデバイスが前記１つ以上のリモートデバイスのうちの１つのリモートデバイスの指定区域内にあるときに、前記モバイルデバイスは、前記１つ以上のリモートデバイスのうちの前記１つのリモートデバイスから非一時的な機械読取可能な実行可能な命令を受信する、請求項１に記載のシステム。
【請求項３】
前記ホストアプリケーションは、前記モバイルデバイスが前記１つ以上のリモートデバイスのうちの前記１つのリモートデバイスに関連付けられる固有のユーザインターフェイスをディスプレイに表示するように、前記非一時的な機械読取可能な実行可能な命令を実行する、請求項２に記載のシステム。
【請求項４】
前記システムは、前記モバイルデバイスが前記１つ以上のリモートデバイスのうちの１つのリモートデバイスの前記指定区域外にあるときに、前記固有のユーザインターフェイスを前記モバイルデバイスの前記ディスプレイにもはや表示しないよう構成される、請求項３に記載のシステム。
【請求項５】
前記システムは、複数のリモートデバイスを備え、前記システムは、前記複数のリモートデバイスのうちの第２のリモートデバイスから受信された情報に従って、前記複数のリモートデバイスのうちの前記第２のリモートデバイスに関連付けられる第２の固有のユーザインターフェイスを、前記モバイルデバイスの前記ディスプレイに表示するよう構成される、請求項４に記載のシステム。
【請求項６】
前記固有のユーザインターフェイスは、前記ユーザが情報を入力することを可能にするよう構成され、前記ホストアプリケーションは、前記情報を前記１つ以上のリモートデバイスのうちの前記１つのリモートデバイスに送信するよう構成される、請求項１に記載のシステム。
【請求項７】
前記ホストアプリケーションは、単一の基準点を参照することによって前記ユーザインターフェイスをレンダリングするよう構成される、請求項１に記載のシステム。
【請求項８】
前記ホストアプリケーションは、前記単一の基準点に対して位置決めされるユーザインターフェイス項目に対応するようにデータオブジェクトまたはコマンドを解釈する、請求項７に記載のシステム。
【請求項９】
複数のリモートデバイスの個々のリモートデバイスに関連付けられる固有のユーザインターフェイスを作成することができるシステムであって、前記システムは、電子デバイス上で実行される単一のホストアプリケーションを備え、前記電子デバイスは、前記複数のリモートデバイスの前記個々のリモートデバイスから情報を受信し、前記複数のリモートデバイスの前記個々のリモートデバイスから受信された前記情報を解釈し、前記受信された情報に従って、関連付けられる固有のユーザインターフェイスを作成するよう構成される、システム。
【請求項１０】
前記システムは、前記ホストアプリケーションにおいて構成命令を受信するよう構成され、前記構成命令は、前記複数のリモートデバイスの前記個々のリモートデバイスから受信された前記情報とともに使用されて、前記関連付けられる固有のユーザインターフェイスを作成する、請求項９に記載のシステム。
【請求項１１】
前記ホストアプリケーションは、表示に利用できる前記複数のリモートデバイスの選択肢をディスプレイに表示するよう構成される、請求項９に記載のシステム。
【請求項１２】
前記固有のユーザインターフェイスは、スピーカを介して聞こえる音声、ディスプレイ上で見られる画像、中間デバイスを介して感じられるテキスト、およびそれらの組み合わせを備える、請求項９に記載のシステム。
【請求項１３】
固有のユーザインターフェイスをリモートデバイスに関連付けられるモバイルデバイスのディスプレイ上でユーザに提供するための方法であって、
ホストアプリケーションを前記モバイルデバイスにダウンロードするステップを備え、前記モバイルデバイスは、複数のリモートデバイスから情報を受信するための無線通信インターフェイスを有し、前記方法はさらに、
前記モバイルデバイスをリモートデバイスの近傍に移動させるステップを備え、前記リモートデバイスは、前記ホストアプリケーションを介して前記モバイルデバイス上で実行される実行可能なコードを格納するためのメモリと、前記格納された実行可能なコードを前記モバイルデバイスに送信するための無線通信インターフェイスとを備え、前記方法はさらに、
前記リモートデバイスから前記モバイルデバイスに前記実行可能なコードを送信するステップと、
固有のユーザインターフェイスを前記モバイルデバイス上で前記ユーザに表示するように前記実行可能なコードを実行するステップとを備える、方法。
【請求項１４】
１つ以上のリモートデバイスの存在を前記モバイルデバイスにより検出し、利用可能なデバイスのリストから前記実行可能なコードにアクセスするためのオプションを表示するステップをさらに備える、請求項１３に記載の方法。
【請求項１５】
前記利用可能なデバイスのリストを更新し、前記モバイルデバイスとそれぞれのリモートデバイスとの近接度に基づいて、前記利用可能なデバイスのリストを順序付けするステップをさらに備える、請求項１４に記載の方法。
【請求項１６】
特定のリモートデバイスを選択し、前記固有のユーザインターフェイスを前記特定のリモートデバイスに関連付けられる前記モバイルデバイス上で前記ユーザに表示するように前記特定のリモートデバイスの前記実行可能なコードを実行するステップをさらに備える、請求項１４に記載の方法。
【請求項１７】
前記モバイルデバイスが前記特定のリモートデバイスの区域外になると、前記ディスプレイから前記固有のユーザインターフェイスを除去するステップをさらに備える、請求項１６に記載の方法。
【請求項１８】
前記モバイルデバイスが第２のリモートデバイスの区域内になると、前記第２のリモートデバイスに関連付けられる第２の固有のユーザインターフェイスを表示するステップをさらに備え、前記第２の固有のユーザインターフェイスは、前記第２のリモートデバイスに関連付けられ、前記特定のリモートデバイスの前記固有のユーザインターフェイスから固有である、請求項１７に記載の方法。
【請求項１９】
後の閲覧のために、前記特定のリモートデバイスまたは第２のリモートデバイスのうちのいずれか１つに関連付けられる情報を選択して格納するステップをさらに備える、請求項１８に記載の方法。
【請求項２０】
複数のリモートデバイスのネットワークを作成するステップをさらに備え、前記複数のリモートデバイスは、隣接するリモートデバイス同士のマッピング位置を判断するために互いに通信し、前記方法はさらに、
前記複数のリモートデバイスを前記モバイルデバイスにグラフィカルに表示するステップと、
ユーザが前記複数のリモートデバイスの前記グラフィカル表示から所与のリモートデバイスを選択することを可能にするステップとをさらに備える、請求項１３に記載の方法。
【請求項２１】
前記複数のリモートデバイスの前記グラフィカル表示は、前記ユーザが所望のリモートデバイスを選択することができるように個々のそれぞれのリモートデバイスの要約情報を含む、請求項２０に記載の方法。
【請求項２２】
前記グラフィカル表示は、前記ユーザが所望のリモートデバイスに関連付けられる物理的位置にナビゲートできるようにリモートデバイスのマップに対する前記ユーザの現在位置の、前記グラフィカル表示上での表示を含む、請求項２０に記載の方法。
【請求項２３】
前記複数のリモートデバイスの前記グラフィカル表示は、リスト、グリッド、マップ、およびそれらの組み合わせを備え、前記グラフィカル表示は、対象の特定のリモートデバイスを見つけるために検索、フィルタリング、またはソートされるよう構成される、請求項２０に記載の方法。
【請求項２４】
前記ユーザは、特定のリモートデバイスの閾値近接度の範囲内に前記モバイルデバイスを持って行くことによって、前記モバイルデバイスが前記特定のリモートデバイスのある距離の範囲内にある間に前記モバイルデバイスの動作の組み合わせを実行することによって、または前記特定のリモートデバイスに前記モバイルデバイスを接触させることによって、前記特定のリモートデバイスに関連付けられる表示すべきユーザインターフェイスを選択することができる、請求項２３に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
優先権
本願は、２０１４年８月２５日に出願された米国出願第６２／０４１，６３１号の優先権を主張し、米国出願第６２／０４１，６３１号は、参照によって全文が本願に援用される。
【０００２】
背景
現在、ユーザは、スマートフォンまたはタブレットなどのモバイルデバイスを、別のハードウェアのためのユーザインターフェイス（user interface：ＵＩ）として使用する場合がある。モバイルデバイスのユーザにユーザインターフェイスを提供するための従来の方法は、グーグルプレイ、アップル社のアプリストアまたは他のベンダからのアプリケーション（アプリ）を電話またはタブレットにダウンロードするというものである。アプリは、所与のモバイルデバイス（すなわちアンドロイドまたはアップル）および所与のハードウェア専用に作られる。そして、当該アプリは、無線でハードウェアと接続する。
【０００３】
ダウンロードされたアプリケーションは、特定のタイプのハードウェアのために事前設定され、一般に、情報をモバイルデバイスに提供して予め規定されたフォーマットで情報をユーザインターフェイスに表示する、心拍数モニタ、サーモスタット、家へのキーレスエントリまたは画廊の絵画などの単一のターゲットハードウェアに使用前に登録またはリンクされる。
【０００４】
現在のところ、ユーザは、特定のモバイルデバイスおよびモバイルデバイスと通信している各ハードウェアタイプに対して別個のアプリを必要とする。したがって、ユーザは、何千ものアプリケーションを使用する必要があるかもしれない。従来のシステムは、ユーザが、モバイルデバイスに対してハードウェアを識別し、通信に必要なアプリの名前を理解し、アプリストアに行って、ログインし、アプリをダウンロードし、アプリをインストールし、アプリを設定し、アプリの使い方を学習し、次いで接続したいハードウェアにアプリを関連付けることを必要とする。また、そこまで到達するまでにダウンロードする必要があるアプリの名前に導く何らかの標識がハードウェア位置に存在しなければならない。これは、一つの単一のデバイスに対してのものであるに過ぎず、ユーザはデバイスごとにこれを繰返す必要があるだろう。
【０００５】
別個のハードウェアデバイスからユーザインターフェイスをユーザに表示するために、ＷｉＦｉデバイスを使用するウェブサーバも使用されてもよい。これは、データが通信されるハードウェアまたは他の位置にＷｉＦｉホストデバイスが取り付けられることを意味する。そして、（スマートフォンなどの）モバイルデバイスがハードウェアデバイスの近くにある場合には、ユーザは、モバイルデバイス上でＷｉＦｉ設定をナビゲートし、ネットワークを検索し、当該ネットワークに接続し、セキュリティ証明書を交換し、接続を確立し、次いでブラウザ（当該ブラウザは、ターゲットハードウェアによって使用されるＨＴＭＬおよび制御と適合することが望まれる）を起動し、次いでＨＴＭＬをダウンロードしてモバイルデバイス上でユーザのためのＵＩをレンダリングしなければならない。これは、１つの位置および１つのハードウェアに対してのものである。次のハードウェアデバイスに移動すると、ユーザは、次のハードウェア関連付けを行うために再びこのプロセスを繰返す必要があるだろう。ユーザがある関連付けを行うと、モバイルデバイスは過去の関連付けを削除するであろう。なぜなら、デバイスは、一度に１つのＷｉＦｉターゲット（またはこの場合ホスト）としか接続できないからである。実行するために大きなメモリフットプリントを必要とするウェブサーバは別として、ＷｉＦｉは、大量の電力を消費し、実際的なアプリケーションで必要とされるバッテリ駆動のアプリケーションには適していない。
【０００６】
したがって、接続されていないハードウェアのモバイルデバイス上でユーザインターフェイスをレンダリングするための利用可能なアプローチは、多くのユーザ知識および手動操作を必要とする。したがって、この選択肢は、主要な利害関係者にとっては全く現実的ではない。
【０００７】
デバイス製造者は、製品（埋め込み、アンドロイド、ｉＯＳ、ウインドウズ）ごとに複数のソフトウェア開発チームを利用しなければならず、通常は無料で与えられるアプリケーションは、開発のために企業に大金をつぎ込ませることになり、製品のライフサイクル全体に対するリスクを追加することになる。さらに、最終消費者は、どのアプリケーションをダウンロードすべきかを知る複雑さ、または一時的なＷｉＦｉネットワークに接続する方法を知る複雑さを管理しなければならない。
【０００８】
ハードウェアベースのアプリケーションを取扱うことは、グーグル社、アップル社およびマイクロソフト社のためのアプリストアなどのアプリケーションの配給元にとっても非常にコストがかかる。現在のところ、ハードウェアに基づくアプリケーションの開発者は、審査および承認のためにソフトウェアアプリとともにハードウェアをアプリストアに出荷する必要がある。このプロセスは、従来から必要とされている。なぜなら、関連するハードウェアを用いてアプリ機能を適切に確認することが唯一の効果的な方法であるからである。このプロセスは、これらのアプリストアの管理者にとって高価である。なぜなら、投稿の前にアプリケーションを受信、登録、試験および検証することは労働集約的であるからである。さらに、ハードウェアベースのアプリケーションは、ハードウェアの費用で顧客のところにやって来るので、一般に無料で提供される。したがって、アプリストアは、一般に、これらのアプリケーションに関して収益を挙げるのではなく、実質的なコストを費やすことになる。アップル社、グーグル社、マイクロソフト社およびアプリストアの他の管理者は、収益を挙げないアプリケーションのこれらのオーバーヘッドコストを削減または排除することによって本発明から恩恵を受ける。
【発明の概要】
【課題を解決するための手段】
【０００９】
概要
リモートデバイスに関連付けられる特定のアプリケーションまたはリモートデバイスの性質を知る必要なしに、ユーザがそれぞれのリモートデバイスに関連付けられる個々のユーザインターフェイス（ＵＩ）を介してリモートデバイスと対話することを可能にするシステムおよび方法が記載されている。また、実施例は、１つのモバイルデバイスを使用して、複数のリモートデバイスに関連付けられる固有のユーザインターフェイスを同時にまたは逐次的に表示することができるように使用されてもよい。
【００１０】
例示的な実施例は、ユーザインターフェイス（ＵＩ）を含んでもよく、当該ユーザインターフェイスでは、ＵＩを定義するために必要な情報の少なくとも一部が、リモートノードまたは電子デバイスから、ユーザインターフェイス機構を有する電子デバイスまたはモバイルデバイスに供給される。したがって、例えば、ＵＩのための命令またはその一部は、リモートデバイスからモバイルデバイスにアップロードされてもよい。例示的な実施例では、ユーザは、白紙のキャンバスのような役割を果たすホストアプリまたはサービスである１つの単一のアプリをモバイルデバイスにダウンロードしてもよい。次いで、当該キャンバスに描かれる内容は、格納されてモバイルデバイスの近くのリモートノードからモバイルアプリに送信される。モバイルデバイスのアプリ上で実行されるアップロードされたＵＩは、ウェブにアクセスして、アプリケーションによって要求される比較的大きな画像、ファイルなどを得るために、モバイルデバイス上でセルラー、ＷｉＦｉまたは他の無線接続を用いて比較的大きなドキュメントを引き出す（pull）ことを担うことができる。
【００１１】
送信されたＵＩデータは、それを非常に効率的かつバッテリ式デバイスに適したものにするように符号化されてもよい。
【００１２】
本明細書に記載されている実施例は、スマートフォン、タブレット、腕時計、専用の電子デバイス、コントローラ、ディスプレイ、テレビまたは他のデバイスなどのユーザインターフェイスを有するモバイルデバイスを含む。モバイルデバイスは、本明細書に記載されている機能を実行するためのハードウェアおよびソフトウェアを含む。例えば、モバイルデバイスは、プロセッサと、ディスプレイと、メモリと、無線通信インターフェイスとを含んでもよい。非一時的な機械読取可能な命令としてのソフトウェアは、メモリに格納され、リモートデバイス上のプロセッサによって実行される。アプリケーションは、モバイルデバイスにダウンロードされ、モバイルデバイスのメモリに格納されてもよい。次いで、モバイルデバイスプロセッサは、当該アプリケーションを実行する。
【００１３】
当該システムの実施例は、モバイルデバイスの無線通信インターフェイスと通信する無線通信インターフェイスを有する複数のリモートデバイスを含む。リモートデバイスは、通信インターフェイスを介してモバイルデバイスに通信され得る情報を格納するメモリを含む。モバイルデバイスに格納されたアプリケーションは、モバイルデバイスのプロセッサによって実行されたときに、リモートデバイスによって送信された情報を検索して、リモートデバイスに関連付けられるユーザインターフェイスをレンダリングするよう構成される。リモートデバイスは、モバイルデバイスディスプレイ上で固有のユーザインターフェイスを作成するための命令を含んでもよく、当該命令は、アプリケーションを介してモバイルデバイスに通信され、次いでアプリケーションを介してモバイルデバイスによって復号または読取られる。ユーザインターフェイスは、ユーザがユーザインターフェイスを操作することによってリモートデバイスにフィードバックを提供することができるように、入力および出力機能を含んでもよい。
【００１４】
例示的な実施例では、モバイルデバイス上のアプリケーションは、区域内にないモバイルデバイスではなく区域内にあるモバイルデバイスに、一斉送信モードでリモート無線デバイスから送信される変数を受信する。当該区域は、モバイルデバイスおよび／またはリモートデバイスのハードウェアまたはソフトウェアのユーザによって設定可能である。
【００１５】
本明細書に記載されている実施例は、ユーザが対話するモバイルデバイスディスプレイ上で、当該システムを使用する開発者がカスタムボタン、スライダ、オブジェクト、色、テキスト、絵および他のＵＩオブジェクトを作成することを可能にする、非常に小さな固有に設計された制御セットを使用してもよい。したがって、リモートデバイスは、少量のデータを無線でモバイルデバイスに送信して、グラフィカルにユーザに情報をレンダリングすることをモバイルデバイスにさせて、現実的かつ効果的な容易な対話を可能にしてもよい。
【図面の簡単な説明】
【００１６】
【図１Ａ】本明細書に記載されている実施例に係る例示的な通信モジュールを示す。
【図１Ｂ】図１Ａの例示的な通信モジュールの例示的な内部コンポーネントのブロック図を示す。
【図２】本明細書に記載されている例示的なシステムを使用する例示的な方法を示す。
【図３Ａ】本明細書に記載されている実施例に係るモバイルデバイスとリモート通信デバイスとの間の例示的な通信を示す。
【図３Ｂ】本明細書に記載されている実施例に係るモバイルデバイスと複数の固有のリモート通信デバイスとの間の例示的な通信ネットワークを示す。
【図４】本発明の実施例に係るＵＩアプリケーションのモバイルデバイス側のためのソフトウェアおよびハードウェアコンポーネントの例示的なブロック図を示す。
【図５】本発明の実施例に係るＵＩアプリケーションのリモートハードウェア側のためのソフトウェアおよびハードウェアコンポーネントの例示的なブロック図を示す。
【図６】例示的なモバイルデバイスと例示的なリモートハードウェアデバイスとの間で生じる通信の例示的な概要を示す。
【図７Ａ】ＵＩがキャッシュされない場合に例示的なモバイルデバイスと例示的なリモートハードウェアデバイスとの間で生じる例示的な通信を示す。
【図７Ｂ】ＵＩがキャッシュされる場合に例示的なモバイルデバイスと例示的なリモートハードウェアデバイスとの間で生じる例示的な通信を示す。
【図８】図４Ａまたは図４Ｂの最初の通信後の例示的なモバイルデバイスと例示的なリモートハードウェアデバイスとの間で生じる例示的な通信を示す。
【発明を実施するための形態】
【００１７】
説明
以下の詳細な説明には、限定としてではなく一例として、本発明の原理が記載されている。この説明により、当業者は本発明を行なって使用することが明らかに可能になり、この説明には、本発明を実施する最良の形態であると現在考えられているものを含む本発明のいくつかの実施例、適合例、変形例、代替例および使用例が記載されている。図面は、本発明の例示的な実施例の模式的および概略的な図であり、本発明を限定するものではなく必ずしも一定の比率に応じて描かれているわけでもない、ということが理解されるべきである。
【００１８】
リモートデバイスに関連付けられる特定のアプリケーションまたはリモートデバイスの性質を知る必要なしに、ユーザがそれぞれのリモートデバイスに関連付けられる個々のユーザインターフェイス（ＵＩ）を介してモバイルデバイスからリモートデバイスと対話することを可能にするシステムおよび方法が本明細書に記載されている。また、実施例は、１つのモバイルデバイスを使用して、複数のリモートデバイスに関連付けられる固有のユーザインターフェイスを単一のアプリケーションを介して表示することができるように使用されてもよい。
【００１９】
本明細書に記載されている例示的な実施例により、リモートデバイスは、構成情報をユーザのモバイルデバイスに送信して、モバイルデバイス上でオンザフライでさまざまなＵＩにレンダリングさせることができる。例示的な実施例は、パーソナルコンピュータ、腕時計などを含むスマートフォンおよびタブレットおよび他の同様のデバイスなどの電子デバイスのためのプッシュユーザインターフェイス（Push-User Interface：ＰＵＩ）として使用されてもよい。
【００２０】
例示的なシステムは、１つ以上のリモートデバイスに関連付けられるモバイルデバイス上の固有のユーザインターフェイスとの通信および表示を可能にする。したがって、当該システムは、ユーザインターフェイスおよびプロセッサを有するモバイルデバイスと、メモリを有するリモートデバイスとを備え、モバイルデバイスおよびリモートデバイスは、通信インターフェイスも含む。当該システムは、モバイルデバイス上で保存および実行される一般的なアプリケーションを使用して、リモートデバイスに格納された情報から受信される命令を受信して解釈して、関連付けられる命令に従って、リモートデバイスに固有および特有のユーザインターフェイスを作成する。当該システムは、モバイルデバイス上で実行される単一のダウンロードされたベースアプリケーションを介して、複数のリモートデバイスのさまざまなリモートデバイスに関連付けられる複数の固有のユーザインターフェイスを表示することに使用されてもよい。したがって、当該システムは、各リモートデバイスに関連付けられるモバイルデバイスからさまざまなアプリケーションを個々に識別してダウンロードする必要なしに使用することができる。
【００２１】
本発明の実施例は、モバイルデバイスの観点から本明細書に記載され示されてもよいが、本発明の実施例は、そのように限定されるものではなく、無線通信機能、メモリ、プロセッサおよびユーザインターフェイスを有する任意のデバイスにさらに適用可能であるということが理解されるべきである。本明細書に記載されているモバイルデバイスの例示的な実施例は、ホストアプリケーションを介してＵＩをユーザに表示するためのユーザインターフェイスを含む。例えば図４を参照されたい。
【００２２】
本明細書に記載されている例示的な実施例は、リモートデバイスの観点からのものである。リモートデバイスは、任意の物理的物体であってもよく、本明細書に記載されている通信モジュールをそこに連結させてもよく、または本明細書に記載されている通信モジュールをそれと統合させてもよい。通信モジュールは、モバイルデバイスと通信するための任意の電子コンポーネントであってもよく、モバイルデバイスがＵＩをレンダリングするためのプログラムコードを格納してもよい。
【００２３】
当該システムは、モバイルデバイスとリモートデバイスとの間の通信インターフェイスを使用して、固有のユーザインターフェイスを作成するための情報をリモートデバイスからモバイルデバイスにおよびモバイルデバイス上に転送して実行する。通信インターフェイスの例示的な実施例は、プロセッサを有する無線ＲＦモジュールまたはＩＣを使用して、命令を実行し、ＷｉＦｉ、ブルートゥース（登録商標）または他の手段を用いて別のデバイスと通信する。例示的なＲＦモジュールは、フラッシュ（不揮発性）メモリを有する無線送受信機およびマイクロプロセッサを含む。リモートデバイスに関連付けられる通信インターフェイスの場合、ＲＦモバイルは、当該無線送受信機およびマイクロプロセッサを取囲むハウジングを含んでもよく、ハウジングに連結されてＲＦモジュールにおよびＲＦモジュールから出力およびデータを提供する複数のピンを含んでもよい。例示的なプロセッサは、ＲＦモジュールのピンを制御し、ＬＥＤ、ドアロックなどのようなＲＦモジュールにローカルなまたはＲＦモジュールに連結されるハードウェアと対話するための命令を実行することができる。ＲＦモジュールは、ＲＦモジュール内にユーザコードを格納するためのメモリを含んでもよい。ユーザは、マイクロコントローラ自体での実行を目的としたそれ自体のコード（プログラム）をロードすることができる。
【００２４】
通信インターフェイスの例示的な実施例は、超低電力ブルートゥーススマートフォン接続およびポイントツーマルチポイント接続も有するマイクロサイズの無線ＲＦモジュールを含む。マイクロサイズとは、ＲＦモジュールが関連付けられる物理的物体に基づいて当業者によって決定されてもよい。例えば、ＲＦモジュールは、２５ｍｍ×２５ｍｍ未満またはおよそ１５ｍｍ×１５ｍｍである場合にマイクロサイズとされてもよい。例示的なＲＦモジュールは、フラッシュ（不揮発性）メモリを有する無線送受信機およびマイクロプロセッサを含む、ＲＦデジタル社によって販売されるＲＦＤ２２３０１であってもよい。このモジュール内で利用可能なユーザコードスペースは１２８ｋであり、ユーザは、マイクロコントローラ自体での実行を目的としたそれ自体のコード（プログラム）をロードすることができる。
【００２５】
通信デバイスは、世界中で入手可能な何十個もの無線ブルートゥースローエナジーデバイスのうちの１つであり得る無線通信機を含む。ブルートゥースは、スマートフォンへの通信手段として使用されるなど単なる例示であり、他のタイプの通信が使用されてもよい。本明細書に記載されている例示的な実施例では、ブルートゥースローエナジーを使用してモバイルデバイスとリモート通信デバイスとの間で通信を行うが、通信デバイスおよびモバイルデバイスはブルートゥースローエナジーを使用する必要はないので、実施例はそのように限定されるものではない。ブルートゥースローエナジーは、使用され得るベースプロトコルのうちの１つに過ぎないが、いずれか１つのプロトコルに限定されるものではない。例えば、ブルートゥース、近接場通信（Near Field Communication：ＮＦＣ）、ＷｉＦｉ、セルラーなどの任意の無線プロトコルが使用されてもよい。
【００２６】
図１Ａは、本明細書に記載されている実施例に係る例示的なＲＦモジュール１０の上面図を示す。ＲＦモジュール１０は、図１Ｂに示されるものなどの例示的なコンポーネントを封入するハウジング１２を含み得る。ハウジング１２は、ＲＦモジュール１０との間で出力またはデータを送受信するための１つ以上のピンまたはコネクタ１４を含み得る。図１Ｂは、ＲＦモジュール１０の例示的な内部コンポーネントのブロック図を示す。ＲＦモジュール１０は、プロセッサ１６と、メモリ２０と、アンテナ１８とを含み得る。メモリは、例えば、ＲＡＭ２０Ａとフラッシュ２０Ｂとを含み得る。メモリは、ユーザアプリケーションおよびプログラムコードに利用可能であり得る。プロセッサ１６は、メモリに格納された命令を受信して実行し、本明細書に記載されている機能を実行するよう構成される。アンテナ１８は、ＲＦモジュールが本明細書に記載されているモバイルデバイスなどの他のデバイスと通信することができるように無線周波数信号を送受信することを可能にする。
【００２７】
例示的なＲＦモジュールは、その実装されたブルートゥース無線機を介してモバイルデバイスと通信することができる。ＲＦモジュールは、ユーザに表示するために、ＲＦモジュール自体またはＲＦモジュールに接続される他のデバイスからモバイルデバイスに制御信号および可変データを送受信することができる。
【００２８】
本明細書に記載されている例示的な実施例は、モジュール上のフレームワークのための命令を格納する目的およびモバイルデバイス上のＵＩを構成することになる情報を格納する目的の２つの目的でＲＦモジュールにおける例示的なメモリ（すなわち図２の１２８ｋｂのコードスペース）を使用する。例えば図５を参照されたい。そして、モバイルデバイスがモジュールと通信すると、ＵＩ記述は、自動的または選択的にモバイルデバイスにアップロードされ得る。これにより、接続したいさまざまなタイプのリモートデバイスごとに新たなアプリケーションをユーザがダウンロードしに行かなければならない必要性が無くなる。
【００２９】
図２は、本明細書に記載されている実施例を使用する方法の例示的なブロック図を示す。ステップ２２において、通信モジュールは、モバイルデバイス上で表示されるようにそれ自体のプログラムコードおよびＵＩプログラムコードでプログラムされる。例示的な実施例では、モバイルデバイスＵＩおよびローカルプログラムは、両方とも、リモートデバイスで実行される同一のプログラムで書込まれる。ステップ２４において、通信モジュールは、任意に、物理的物体に連結または統合されてもよい。また、通信モジュールは、物理的物体と統合されなくてもよいようにそれ自体によって使用されてもよい。例示的な物理的物体は、受動的物体であってもよく、その場合、ユーザインターフェイスは、それについての情報を提供するよう構成される。例えば、物理的物体は、芸術作品であってもよく、その場合、ユーザインターフェイスは、日付、芸術家、価値などの情報をユーザに表示するよう構成される。また、例示的な物理的物体は、情報またはデータがユーザとの間で送受信されてユーザインターフェイス上でユーザに表示されるよう構成されるものであってもよい。例えば、物理的物体は、（温度、湿度、心拍数、流量などの生物学的および非生物学的用途のための）診断モニタを含み得る。したがって、例示的な物理的デバイスは、任意の物体であってもよい。
【００３０】
ステップ２６において、ユーザは、一般的なアプリケーションをモバイルデバイスにダウンロードする。一般的なアプリケーションは、ユーザインターフェイスをサポートするためのフレームワークを提供するが、当該アプリケーションまたはステップ２２の物理的物体に関連付けられるいかなる特定の構成または命令も含まない。モバイルデバイスで実行されるホストプログラムは、特定のタイプおよびクラスのモバイルデバイスに対してネイティブなプログラミング言語で書込まれてもよい。
【００３１】
ステップ２８において、ユーザは、通信モジュールの構成された距離の範囲内にモバイルデバイスを持って行く。次いで、通信モジュールは、ＵＩプログラムコードをモバイルデバイスに送信する。ステップ３０において、一般的なアプリケーションは、アプリケーションまたは物理的物体に特有のユーザインターフェイスをユーザに表示するようにＵＩプログラムコードを実行する。ステップ３２において、モバイルデバイスが通信デバイスの近傍から移動されると、通信デバイスおよびモバイルデバイスは切断される。
【００３２】
繰返されるステップ２２，２４によって示されるように、複数のデバイスのうちの任意の数のデバイスがステップ２２および２４においてプログラムされてモバイルデバイスと通信することができるように、方法の一部が繰返されてもよい。ユーザは、２６において単一の一般的なアプリケーションをダウンロードした後に、複数のリモートデバイスのうちの任意の１つ以上から接続したり切断したりするようにステップ２８，３０および３２を繰返してもよい。また、ステップ２６，２８および３０は、さまざまなリモートデバイスに関連付けられる複数のＵＩを別々のＵＩウィンドウにおいて同時に実行もしくは表示することができるように、またはさまざまなリモートデバイスに関連付けられる複数のＵＩを統合して単一のＵＩエクスペリエンスを形成することができるように、複数のリモートデバイスで繰返されてもよい。
【００３３】
一般的なアプリ、通信モジュールのプログラムコードおよびそれらの組み合わせは、特定の構成パラメータを含み得る。例えば、モバイルデバイスのユーザまたはリモート通信デバイスの作成者は、モバイルデバイスが通信モジュールと対話する閾値距離を選択してもよい。これは、ハードウェア、ソフトウェアまたはそれらの組み合わせを介して制御されてもよい。
【００３４】
また、一般的なアプリは、同一のプログラムコードが通信モジュールから受信されると仮定した場合に表示されるＵＩを特定のユーザが構成することができるよう構成されてもよい。例えば、モバイルデバイスのユーザは、通信モジュールから受信されたプログラムコードにより解釈されてモバイルデバイスおよびリモートデバイスの特定の組み合わせのための固有のユーザインターフェイスをレンダリングするフォントサイズ、表示位置、言語などを選択してもよい。したがって、当該システムは、複数のリモートデバイスの各リモートデバイスごとに固有のユーザインターフェイスが作成されるよう構成されてもよい。さらに、当該システムは、リモートデバイスと通信する特定のモバイルデバイスに基づいて、固有のユーザインターフェイスを個々のユーザインターフェイスまたはユーザインターフェイスオプションの予め設定された選択に合わせて変更できるよう構成されてもよい。したがって、固有のユーザインターフェイスは、同一のリモートデバイスと通信するモバイルデバイスにわたって固有である場合もあればそうでない場合もあり、半固有である場合もあればそうでない場合もある。
【００３５】
例示的な実施例では、通信デバイスは、２つ以上のプログラムコードオプションをモバイルデバイスに提供してもよい。次いで、モバイルデバイスは、利用可能なプログラムコードから特定の１つのプログラムコードを選択するようユーザによって構成されてもよい。例えば、さまざまなプログラムコードは、言語に基づいて利用可能であってもよい。モバイルデバイスのユーザは、利用可能なプログラムコードからどのプログラムコードを検索して実行するかを自動的に選択するように一般的なアプリをプログラムしてもよい。
【００３６】
また、通信モジュールおよび／または一般的なアプリは、通信を自動的に受け付けるか否か、通信を許可する前に検証が必要であるか否かおよびどのような種類の検証が必要であるか、１つ以上の利用可能な通信が表示、選択または起動される態様および方法などの、他の構成パラメータを有してもよい。
【００３７】
本明細書に記載される例示的なシステムおよび方法は、全てのさまざまなタイプおよびクラスのリモートデバイスとともに使用されてもよい。単一のアプリケーションがモバイルデバイス上で実行されるとき、当該単一のアプリケーションは、モバイルデバイス要件に従ってモバイルデバイスと接続してもよい。しかし、単一のアプリケーションは、任意の異なるタイプまたはクラスのリモートデバイスから命令を受信するための統一されたプラットフォームを提供してもよい。したがって、例示的な実施例では、モバイルデバイスが無線で通信するモバイルデバイスの外部のリモートデバイスは、ユーザが見る実際のプログラムを格納し、モバイルデバイスにＵＩ記述をプッシュ（アップロード）することを担う。また、リモートデバイスは、ユーザインターフェイスを生成するためのプログラムの一部または命令を格納してアップロードしてもよく、またはユーザインターフェイスの１つ以上の属性を定義するための他の記述、コードまたは他の機構を格納してプッシュしてもよい。リモートモジュールデバイスによってモバイルデバイスにアップロードされるこのＵＩ記述は、アプリケーションストアからダウンロードされたモバイルデバイスにネイティブな下位レベルのプログラムの上で実行される第２レベルのプログラムと考えられることができる。
【００３８】
例示的な実施例では、複数のリモートデバイスは、単一のユーザインターフェイスを作成するように対話してもよい。例えば、第１のリモートデバイスは、第１の固有のユーザインターフェイスを作成してもよい。第１の固有のユーザインターフェイスを追加または変更して１つ以上の他の固有のユーザインターフェイスを提供するために、１つ以上の他のリモートデバイスが使用されてもよい。例えば、さらなるＵＩ機能をロック解除するまたは利用可能にするために、さらなるリモートデバイスが使用されてもよい。
【００３９】
例示的な実施例では、アップロードされたＵＩ記述は、ユーザのためのユーザインターフェイス（ＵＩ）のカスタマイズも検討されることができる。それは、タイマを含み、特定の挙動のためのトリガも含むことができる。また、ＵＩは、ユーザに対してグラフィカルおよびユーザ入力および表示を提案するＵＩのみに限定されるものではなく、ユーザに対する任意のデータ送信（すなわちディスプレイインターフェイス、サウンドインターフェイスまたは他の知覚インターフェイス）を含む。したがって、本発明の実施例は本明細書ではモバイルデバイスのディスプレイに表示するための視覚的ユーザインターフェイスの観点から記載され示されてもよいが、本発明の実施例は、音声出力を提供するためのスピーカなどの他のユーザインターフェイスデバイスにも適用可能であるということが理解されるべきである。ユーザインターフェイスは、リモートデバイスから受信されてホストプログラムを介して実行可能な任意の実行可能な命令またはその一部であってもよく、ホストプログラムによって起動される任意の実行可能な命令またはその一部であってもよく、またはモバイルデバイスに格納される任意の実行可能な命令またはその一部であってもよく、またはモバイルデバイスに格納されて直接起動される任意の実行可能な命令またはその一部であってもよい。したがって、ＵＩは、モバイルデバイスと通信モジュールとの間での情報の送受信の任意の組み合わせを含む。
【００４０】
例示的な実施例では、全ての電話のユーザアプリは、単一のアプリであり、所与のユーザインターフェイスを定義するための変数は、指定区域内の任意のモバイルデバイスに一斉送信モードでリモートデバイスから送信される。当該区域は、モバイルデバイスおよび／またはリモート通信デバイスのユーザによって設定されることができる。
【００４１】
例示的な実施例では、プッシュＵＩは、ＨＴＭＬまたは他のマークアップ言語を使用しない。バッテリで動くことができる超低電力デバイスに対する需要は大きい。デバイスがバッテリで動く場合、非常に少ない量のデータを非常に素早く送信して、動作を所与の機能の実行に必要なものに限定する必要がある。ＨＴＭＬは、これにはあまり適しておらず、非常に重く、複雑である。例示的な実施例では、プッシュＵＩは、非常に小さな固有に設計された制御セットを使用し、当該制御セットは、バイナリ形式で送信され、ユーザが対話するモバイルデバイスディスプレイ上で開発者がカスタムボタン、スライダ、オブジェクト、色、テキスト、絵および他のＵＩオブジェクトを作成することを可能にする。リモートデバイスは、少量のデータを無線でモバイルデバイスに送信して、グラフィカルにユーザに情報をレンダリングすることをモバイルデバイスにさせて、現実的かつ効果的な容易な対話を可能にする。例えば図６および図８を参照されたい。例示的な実施例では、少量のデータは、１２８ｋｂ以下のメモリ内に格納されるデータの量である。例示的な実施例では、プッシュＵＩは、ＨＴＭＬを用いて記述される。
【００４２】
コードの形態でリモートデバイスに格納することができるよりも大きな表示オブジェクトが必要である場合には、オブジェクトを表わすものとしてリファレンスまたはプレースホルダが使用されてもよい。例えば、コードは、モバイルデバイスに送信されるリファレンスＩＤを含んでもよく、モバイルデバイスは、当該リファレンスＩＤに関連付けられるより大きなファイルサイズを保存しているインターネットなどのネットワークに無線接続を介して接続するであろう。次いで、モバイルデバイスは、モバイルデバイスが接続することができるインターネットから大きなサイズの画像ファイルまたは他のタイプのファイル、恐らく音楽ファイルをダウンロードし、検索されたファイルを一般的なアプリケーションを介して実行するであろう。また、当該システムは、複数のリモートデバイスで使用される前に、使用可能な比較的大きなサイズのファイルをモバイルデバイスにダウンロードまたは予めロードすることができるよう構成されてもよい。例えば、ユーザが展示会に参加する場合、ユーザは、展示会のリモートデバイスに格納されたＵＩコードにより使用される展示会ファイルを展示会の前にダウンロードして、固有のＵＩがモバイルデバイス上でレンダリングされるときにモバイルデバイスで使用される比較的大きなファイルへのアクセスを提供してもよい。したがって、当該システムの実施例は、比較的大きなデータファイルをホストするネットワークまたはインターネットへのモバイルデバイスの連続的または同時的な接続なしに大規模なＵＩレンダリングに使用されてもよい。
【００４３】
例示的な実施例では、プッシュＵＩは、それ自体の環境である。したがって、プッシュＵＩは、業界規格に準拠または適合していなくてもよい。プッシュＵＩは、単一の基準点を、当該基準からのピクセル単位のＸおよびＹ距離とともに使用することができ、ユーザは、表示したい場所ならどこにでも、重ねてでも、テキストまたは画像または制御を表示するように非常に容易にコード化することができ、そのため規則は自由であり流動的である。
【００４４】
リモートデバイスによって提供される二次コードの受信をユーザが受け付けるまたは拒否することを可能にするために、本明細書に記載されている例示的な実施例が使用されてもよい。また、ユーザは、どのパケットを受け付けるか、どれを拒絶するかを予め選択することによって、または、ＵＩに関連付けられる表示スタイルもしくは他のカスタマイズ可能な機能を選択することによって、受信された情報をカスタマイズしてもよい。したがって、モバイルデバイスの各ユーザは、同一のＵＩ二次プログラムをプッシュする同一のリモートデバイスに接近する際にさまざまなＵＩ結果を受信してもよい。
【００４５】
例示的な実施例では、モバイルデバイスのユーザは、ユーザの選択によって、または恐らくモバイルデバイス上の特定の設定による指定によって、複数のリモートデバイスとこの種の関係を有することを選択して、アップロードされたＵＩ記述を受信するリモートデバイスの容易な選択を許可したり却下したりすることができる。ＵＩ記述を選択することにより、ＵＩをモバイルデバイスに表示することができるようになり、モバイルデバイスは、当該ＵＩをそれらにプッシュしたＲＦモジュールと対話することができるであろう。例えば図６を参照されたい。例えば、図３Ａに示されるように、ユーザは、モバイルデバイスを介して、単一のリモートハードウェアデバイスと対話してもよい。また、モバイルデバイスは、いずれか１つのリモートデバイス間の通信が図３Ａのものと同一であるように逐次的または個々に複数のリモートハードウェアデバイスと通信してもよい。代替的に、図３Ｂに見られるように、ユーザは、モバイルデバイスを介して、複数のネットワーク化されたリモートハードウェアデバイスと対話してもよい。また、図３Ｂに示されるように、リモートハードウェアデバイスは、１つ以上のリモートハードウェアデバイスが必要な情報を一連のリンクされたリモートハードウェアデバイスを介してリモートモバイルデバイスに伝搬するように互いに対話してもよい。代替的に、モバイルデバイスは、情報が単にリモートハードウェアデバイスの通信デバイス間で受け渡しおよび／または格納されるように任意であってもよい。リモートデバイスのうちの１つ以上は、別個のモバイルデバイスが不要であるように複数のリモートデバイスのうちのそれ以外のもののためのユーザインターフェイスも含んでもよい。
【００４６】
例示的な実施例では、モバイルデバイスにロードされる一般的なアプリは、（ブルートゥースローエナジーを使用してもよいＲＦモジュールなどの）複数のおよび場合によっては無限の数のリモートノードとの通信を可能にする単一のプログラムである。一般的なアプリケーションは、モバイルデバイス上で実行されているときには、通信区域内であることに基づいて通信可能な全ての異なるリモートＲＦモジュールノードのユーザまたはリモートデバイスに対してリストを表示するためのリスト機能を有してもよい。例えば、ユーザがモバイルデバイスとリモートノードとの間で１０００フィート以下の範囲内にいるときに、リモートノードに関連付けられるＵＩを閲覧するためのオプションがユーザに表示されてもよい。１０００フィート以内では、ユーザが選択を行うための、ユーザのモバイルデバイス上のリストに数百個以上のこれらのリモートデバイスが示されるであろう。
【００４７】
選択可能な項目の当該量は、ユーザにとって圧倒的なものであり、実際には複数の利用可能なデバイスにわたって１つの特定のリモートデバイスに接続する動作がユーザにとって極めて困難なものになる可能性がある。例示的な実施例では、リモートノードは、何らかの優先順位または階層に基づいてユーザのモバイルデバイス上に表示されることができる。例えば、利用可能なノードは、モバイルデバイスとリモートノードとの間の物理的距離を決定する信号強度または他の方法に基づいて順序付けされてもよい。この機能により、この動作は非常に効果的になり、したがって使用可能になる。代替的に、優先順位の他の方法が使用されてもよい。例えば、優先順位は、最も最近に使用された選択肢または最も使用された選択肢が最初または最後になるようにユーザの使用履歴に基づいてもよい。優先順位の組み合わせも使用されてもよい。
【００４８】
例示的な実施例では、特定の区域または相対的信号強度が達成されると、最も近くのリモートノードがリストの最上部にきていて選択が容易である場所では、リストの自動再編成が行われてもよい。したがって、ユーザは、単にモバイルデバイスをリモートデバイスに近付けることによって所望の選択肢を確認し、それが最上位の選択肢のままであることを確認することができる。
【００４９】
代替的に、ＵＩは、１つのリモートノードと別のリモートノードとの予め定められた近接度または相対的信号強度に基づいて、リモートデバイスに関連付けられるＵＩを自動的に選択するよう構成されてもよい。したがって、ユーザが任意の所与のリモートデバイスに十分に近い場合には、ＵＩは自動的に起動してもよい。この場合、当該近接度は、数インチ以内であってもよく、または実際の接触さえ必要としてもよい。近接度または実際の接触は、信号強度または物理的位置の検出によって決定されるようなリモートデバイスとモバイルデバイスとの間の近接度によって検出されてもよく、またはモバイルデバイスを十分に近くに持って行く動作がＵＩを起動したいという要望を示すようにモバイルデバイスの他のセンサ（圧力、加速度計など）によって決定されるようなリモートデバイスとモバイルデバイスとの間の近接度によって検出されてもよい。ＵＩを起動したいという要望を示すために、モバイルデバイスのまたはモバイルデバイス上での他のモーションまたは動作が使用されてもよい。したがって、例えば、ユーザは、単にモバイルデバイスを区域内に持って行ったり、デバイスに触れたり、またはそうでなければデバイスを適切に方向付けたり、またはリモートデバイスに対して電話を用いてまたは電話上で必要な動作を実行したりして、関連付けられるＵＩを自動的に作動させてもよい。ユーザは、例えば、一般的なアプリケーションを介してポップアップするオプションを受け付けることを選択してもよい。また、ユーザは、リモートデバイスに対するモバイルデバイスの方向を変えることなどによってリモートデバイスに対して電話を方向付けまたは移動させて、ＵＩを起動したいという要望を示してもよい。特定のアプリケーションのためにＵＩを起動させることに対するセーフガードとして、特定のモーション、入力、接触または他の動作が使用されてもよい。例えば、キーレスエントリで使用される場合、電話は、ＵＩが起動される前でさえ、１つ以上の特定のモーションおよび／または１つ以上の特定のデータ入力を必要としてもよい。
【００５０】
例示的な実施例では、各リモートノードの地理的位置をモバイルデバイスに報告することができ、それによって、モバイルデバイスアプリケーションは、リスト、グリッド、マップまたは他のフォーマットでローカルノードの集合的位置をユーザにグラフィカルに表示することができ、ユーザは、それらから識別情報を容易に認識することができ、ユーザは、より密接な通信を行うためにどれがＵＩに接続してＵＩを受信するかを選択することができる。グラフィカル表示は、ユーザが、グラフィカル表示を使用して、特定の物理的リモートノードに対応する所望の位置の方にモバイルデバイスを物理的に移動させるように複数のリモートノードをナビゲートすることができるように、モバイルデバイスの位置も含んでもよい。
【００５１】
例示的な実施例では、全てのリモートノードが互いに通信してそれらの相対的位置の常に更新されるマップを形成することができる自動マッピング機能を利用することができ、それによって、スマートフォンを有する他者を正確なローカルマップによってモバイルデバイスおよび／または１つ以上のリモートデバイスに対して常に更新することができる。モバイルデバイスの区域外の物体さえ識別し、それによってモバイルデバイスまたは他のリモートデバイスのいずれかの近傍の範囲内の全ての物体を追跡するために、図３Ｂに示されるような通信リレーが使用されてもよい。
【００５２】
また、例示的な実施例は、モバイルデバイスアプリケーション自体として使用されてもよく、当該モバイルデバイスアプリケーションは、互いに短距離マッピングを実行し、データを行ったり来たりさせて、モバイルデバイス（スマートフォン）自体のマップを互いに近くに形成することができる。例えば、ユーザは、何千人もの群衆の中にいて、各人の携帯電話は、セルラーサービスを必要とすることなく全員の位置のマップを互いに相対的に形成することができ、スマートフォンを有する各人は、他人がいる場所をマップ上で認識して、他人の位置を突き止めることができる。
【００５３】
本明細書に記載されている例示的な実施例は、スマートフォン、タブレットおよび同様のデバイスにおいてブルートゥースローエナジー（ＢＬＥ）インターフェイスを使用するが、使用することに限定されるものではない。ブルートゥース回路を内部に有するようなスマートフォンの全体設計および目的は、スレーブデバイスと通信してそれらをハードウェアのリモート部分として制御することである。本明細書に記載されている実施例は、個々のスレーブデバイスのためのユーザインターフェイスの位置を突き止めて、ダウンロードして、接続する非常に時間がかかる手動のプロセスを軽減する。例示的な実施例によれば、全てのモバイルデバイスまたはスマートデバイスに単一のアプリがダウンロードされ、当該アプリが任意のリモートハードウェアの区域に入ってくると、リモートハードウェアは、自動的に無線で適切なＵＩ情報を近接するユーザのモバイルデバイスが利用できるようにする。そのため、ユーザは、周囲の世界の何百万もの異なるデバイスのうちの１つと非常に単純に、多くの場合１回限りで接続するためにアプリを検索しに行ってインストールする必要がなくなる。
【００５４】
今日スマートフォンの画面上でＵＩをレンダリングする現在および従来の方法は、心拍数モニタ、ジムの機器、アクセスしたいドアおよびコードを用いて入りたいドアなどの無線デバイスの使用を試みる前にユーザが前もってそれを手動でダウンロードするというものである。これは、実用性の欠如により、アプリケーションのこの世界全体を事実上不可能にする。プッシュＵＩにより、近接するユーザのモバイルデバイス上に自動的にＵＩを簡単に表示することができる。ユーザは、単にアプリケーションを使用するだけであり、当該アプリケーションは、接続していたデバイスからユーザが離れると自動的に消える。ユーザのモバイルデバイスに新たなＵＩを完全にアップロードするには数秒しかかからない。例えば図７Ａを参照されたい。この時間は、ユーザが同一のタイプのリモートデバイスに戻る場合にはミリ秒に減少させることができる。なぜなら、さらに高速の再レンダリングのためにユーザのモバイルデバイスにおいてＵＩをキャッシュできるからである。例えば図７Ｂを参照されたい。プッシュＵＩアプリがリモートノードにおいて更新された場合、システムは、ユーザの操作なしに自動的に更新情報をダウンロードすることができる。例えば図７Ａを参照されたい。
【００５５】
また、例示的な実施例は、電話にかかわらずユーザがフィールドアップデートを行うことを可能にしてもよい。ユーザは、以前に発売されていたか否かにかかわらず、新たなデバイスごとにコードを更新し続ける必要がなくなる。電話およびタブレットは、６ヶ月ごとに変わり、新たなものが発売され、プッシュＵＩにより、リモート製品製造者は、今日一度だけコーディングを行うと明日のためのサポートを有することができる。これは、プッシュＵＩが解決する今日の工業製品に関する大きな問題である。この技術は、新たな電話およびデバイスの発売に伴って常にアップグレードされる必要はない。また、モバイルデバイスが交換されるたびに複数のリモートデバイスとの通信を継続するために、ユーザが複数のアプリケーションをダウンロードし直す必要はない。
【００５６】
例示的なアプリケーションは、無限である。例示的なアプリケーションは、システム構成および使用に基づいて選択可能な機能の組み合わせを表わすものとして本明細書および以下に記載されている。
【００５７】
本明細書に記載されている実施例は、モノのインターネット（internet of things）において適用される。具体的な例として、ユーザが異なる製造者からコーヒーメーカおよび冷蔵庫を購入するとする。第１の製造者は、コーヒーメーカに特有の第１の通信デバイスをプログラムして、第１の通信デバイスをコーヒーメーカと統合することができる。第２の製造者は、冷蔵庫に特有の第２の通信デバイスをプログラムして、第２の通信デバイスを冷蔵庫と統合することができる。冷蔵庫およびコーヒーメーカのユーザは、２つの異なるアプリケーションを電話にダウンロードする必要はないであろう。その代わりに、ユーザは、単一の一般的なアプリケーションをダウンロードする。コーヒーメーカの第１の所与の近接度の範囲内に電話を持って行くと、コーヒーメーカに特有のユーザインターフェイスが一般的なアプリケーションを介してユーザに表示される。冷蔵庫の第２の所与の近接度の範囲内に電話を持って行くと、冷蔵庫に特有のユーザインターフェイスがユーザに表示される。したがって、ユーザは、１つのプッシュＵＩアプリケーションを必要とするだけであり、モバイルデバイスがリモートデバイスの近傍にあってユーザがそれを使用することを選択すると、各ハードウェアデバイスのためのカスタムＵＩ記述がモバイルデバイスにアップロードされるであろう。
【００５８】
例示的な実施例は、美術館または画廊などにおいて複数の物体についての情報を提供するためのプログラムとして使用されてもよい。そのため、ユーザが画廊の絵画などのハードウェアに物理的に近付くと、ハードウェア自体によって、当該絵画に連結または関連付けられる通信モジュールからスマートフォンにユーザインターフェイス（ＵＩ）が送信される。したがって、接続予定のリモートハードウェアデバイスごとに（すなわち画廊の絵画ごとに）個々のアプリをダウンロードする必要性がなくなる。モバイルデバイスが絵画に近付くと、当該絵画に関連するテキストならびに恐らくいくつかのボタン（couple button）およびユーザコントロールだけがユーザのためにレンダリングされる。ユーザが別の絵画に移動すると、ディスプレイは完全に異なったものになる可能性がある。なぜなら、当該次の絵画は、より複雑である可能性があり、より多くの特徴を有し、ユーザのために自動的にレンダリングされるより多くのユーザコントロールを必要とするからである。したがって、各物体に関連付けられる各ＵＩは、各絵画に対して具体的に設計されることができる。
【００５９】
例示的な実施例は、表示に使用されてもよく、またはモニタリングのためのユーザインターフェイスとして使用されてもよく、または心拍数モニタなどのアクティブなデバイスとして使用されてもよい。例えば、ＲＦモジュールは、心拍数モニタに接続されてもよく、ＲＦモジュールは、シリアル番号、心拍数値および他の情報などの識別表示を心拍数モニタからモバイルデバイスに送信して表示するよう構成されてもよい。リモートデバイスは、ランニングシューズに連結されたステップカウンタと統合されてもよく、通信デバイスは、本明細書に記載されているプッシュＵＩを備える。他のアプリケーションは、所有物のための無線サーモスタットまたはドアのためのキーレスエントリシステムを含む。プッシュＵＩにより、ユーザは、単一のアプリを電話またはモバイルデバイスにダウンロードするだけでよく、これら３つの非常に異なるタイプの製品に必要なカスタムプログラムは、アプリストアを介することなく、（製品またはハードウェア自体からロードされる）製品からモバイルデバイスにプッシュされる。
【００６０】
本明細書に記載されている実施例は、在庫などの物体の追跡またはマッピングに使用されてもよい。例えば、中古車販売店においてローカルマップが使用されてもよく、車売り場にいるモバイルデバイスを有するユーザの周囲の全ての車のローカルマップを当該モバイルデバイスに表示することができる。したがって、たとえ四六時中車をあちこちに移動させたとしても、表示されたマップおよびユーザによって選択される近傍の自動車ごとに表示される関連の相対的情報は、現在のものであり自動的に更新されるであろう。
【００６１】
例示的な実施例は、スループット効率を改善すること、または待ち行列（キュー）もしくは列に取って代わること、またはどの列もしくは待ち行列に並ぶべきかなどの情報をユーザに提供することに使用されてもよい。例示的なアプリケーションでは、ユーザは、薬局に入って、物理的に並んで待つ代わりに、スマートデバイスを用いて処方箋について用紙に記入することができる。そして、ユーザは自由に歩き回ることができる。なぜなら、ユーザが薬局カウンタの区域内にいるときには、特別なＵＩが電話上でレンダリングされ、ユーザはどの列に並ぼうとしていたかおよびその作用を理解することができる。また、ユーザは、受信した情報を自身の予め選択された言語で読むことさえできるように、一般的なアプリケーションを介して特定の言語選択肢を予め選択したかもしれない。したがって、例示的な実施例は、言葉の壁を克服するために使用されてもよい。モバイルデバイスは、受信した情報の翻訳に使用されてもよく、またはモバイルデバイスは、リモートデバイスから送信されるどのＵＩを使用すべきかを言語選択肢に基づいて判断してもよい。したがって、どのＵＩを選択すべきかをモバイルデバイスが判断できるように、特定のＵＩオプションがＵＩデータとともに一斉送信されてもよい。
【００６２】
別の待ち行列の例として、例示的な実施例は、ドライブスルー式の食べ物の注文にも使用されてもよい。運転手がドライブスルーで車を止めると、メニューがスマートフォンまたは自動車のディスプレイ上でレンダリングされ、運転手は、対話形式でリアルタイムに注文を行うことができる。これにより、運転手は、別のドライブスルーで車を止めて当該ドライブスルーに関連する完全に異なるＵＩを表示させることもできる。
【００６３】
プッシュＵＩは、よく知られたアセットトラッカとともに使用されてもよく、プッシュＵＩは、ビーコンの役割を果たし、スマートフォンによって受信され、身の回り品の発見を助けるためにプッシュＵＩが取付けられる物体までの距離を示す伝送を時々送信するブルートゥースローエナジーデバイスである。本願でプッシュＵＩが使用される場合、デバイス自体は、アセット自体についての重要な情報を保持することができ、専用のアプリケーションを用いたユーザによる多数の確認およびセットアップを必要としない。
【００６４】
また、例示的な実施例は、スマートデバイスへの広告に使用されてもよい。例示的な実施例では、ユーザが展示会などの特定の領域に入ると、システムは、推定される使用を見越してユーザのスマートフォンにファイルを予めロードすることができる。これにより、ユーザがデータを利用できるときの速度が大幅に上がる。
【００６５】
また、ユーザが展示会で何百ものブースを歩いて通り過ぎている場合、各ブースは、そこに無線デバイスを設置することができ、ユーザが当該特定のブースの区域に入ってくると、本明細書に記載されている実施例は、特定のブースの提供物に関連する情報をスマートフォンまたはタブレットに表示することができ、ユーザは、物理的な対話を必要とすることさえなくブースマネージャとやりとりすることができる。ユーザは、物理的な列に並ばなくてもよいように自身を待ち行列に加えることができる。ユーザは、ブースマネージャと情報をやりとりすることを選択してもよく、またはやりとりしないことを選択してもよい。これにより、展示会においてバッジを携行してバッジをスキャンする必要性がなくなる。また、ユーザが興味のあるブースを歩いて通り過ぎる場合、当該システムは、ユーザがその後閲覧するデータをキャッシュすることに使用されてもよく、そのためユーザに対して監査トレイルも提供することができる。展示会の例は、ユーザが展示会の島を歩いて移動するときに何百ものリモートデバイスがモバイルデバイスの区域内に入る機会を提供することを可能にする。例示的な実施例では、ＵＩは、利用可能なデバイスのグラフィカルインターフェイスを表示するよう構成されてもよい。グラフィカルインターフェイスは、その瞬間にユーザがどのブースに最も近いかということが、全ての選択オプションを規定するリストの最上部に表示されるように、利用可能なデバイスに指示してもよい。したがって、例示的な実施例では、利用可能なＵＩオプションは、優先順位のついた態様での選択または起動のためにユーザに表示されてもよい。優先順位は、最も近いものがリストの最上部にくるようにリモートデバイスとモバイルデバイスとの間の近接度に基づいていてもよい。
【００６６】
本明細書に記載されている例示的な実施例は、ゲームアプリケーションで使用されてもよい。例えば、第１のリモートデバイスを使用して第１の固有のユーザインターフェイスを作成してもよく、１つ以上の他のリモートデバイスを使用して、当該ユーザインターフェイスを補完または変更して、ユーザが使用するさらなる機能または選択肢を提供してもよい。したがって、ユーザは、さらなるリモートデバイスを受取ることによってゲームエクスペリエンスを変更することができる。例示的な実施例では、ゲームアプリケーションは、モバイルデバイス上でユーザインターフェイスを作成するトレーディングカードまたは他の記憶物（memorability）または玩具オブジェクトを含み得る。ユーザがより多くのオブジェクトを収集するにつれて、ユーザインターフェイス上で利用可能な機能が増加する。
【００６７】
グーグル社、アップル社、マイクロソフト社、および他のアプリストアは、本明細書に記載されている実施例から恩恵を受けることができる。これらの例示的な実施例は、これらのストアと競合することを意図したものではなく、最も多く接続されるデバイスに関連付けられる収益を挙げないアプリケーションに関わるオーバーヘッドおよび試験コストを削減または排除するために使用されてもよい。本明細書に記載されている例示的な実施例は、ハードウェア関連のアプリケーションの試験および確認をハードウェア開発者に残しながらコストを発生させるソフトウェアアプリをユーザに配信することに使用されてもよい。したがって、アプリストアは、収益を挙げる購入を推進することによって、および／または、ハードウェアベースのアプリケーションを受け渡して承認するコストを削減することによって、全体的な利益を増加させる。
【００６８】
また、本明細書に記載されている例示的な実施例は、デバイス製造者のためのスマート市場への参入を容易にする。例示的な実施例は、障壁を低くして、ハードウェア製造者がアプリおよびデジタル市場に参入することを容易にすることができる。この結果、市場全体が大きくなる。ハードウェア製造者に対して重要な製品差別化を提供するがデジタル市場での発売および使用を簡略化して顧客による受容を促進するカスタムアプリが許可される。
【００６９】
上記の詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビット上のアルゴリズムまたは命令およびオペレーションの象徴的表現の観点から記載されている。これらのアルゴリズム的記述および表現は、作業の実態を他の当業者に最も効果的に伝えるためにデータ処理分野の当業者によって使用される意味である。ここでは、アルゴリズムは、一般に、所望の結果につながる首尾一貫した一連のオペレーションであると考えられる。オペレーションは、物理量の物理的操作を必要とするものである。通常、これらの量は、格納、転送、結合、比較、およびそうでなければ操作可能な電気信号または磁気信号の形態をとるが、必ずしもそうではない。主に一般的慣例の理由から、これらの信号をビット、値、要素、記号、文字、用語、数字などとして参照することが時には好都合であることが証明された。
【００７０】
本発明のいくつかの具体的な実施例を示してきたが、本発明は、これらの実施例に限定されるべきではない。例えば、１つ以上のコンポーネントおよびアルゴリズムは、本明細書に記載されている特定の機能を実行するように示されている。これらの機能およびコンポーネントは、所与のアプリケーションの所望の結果を達成するように何らかの形で再結合されてもよい。例えば、コンポーネントは、統合もしくは細分されてもよく、除去されてもよく、複製されてもよく、または等価のコンポーネントの代わりにされてもよい。同様に、機能は、所望のアプリケーションにしたがって、統合されてもよく、除去されてもよく、変更されてもよく、または追加されてもよい。本発明は、本明細書に記載されている具体的な実施例によって限定されるのではなく添付の特許請求の範囲によってのみ限定されるものとして理解されるべきである。したがって、いかなる特徴のリストも、他の特徴の各々として特定され、および、または、および／または、他の特徴の各々を含むよう意図され、そのため、いかなる項目Ａ，Ｂおよび（または）Ｃのリストも、Ａ，Ｂまたは（および）ＣならびにＡ，Ｂおよび／またはＣの任意の組み合わせを含むよう意図される。
【図１Ａ】
2017535001.tif 000003
【図１Ｂ】
2017535001.tif 000004
【図２】
2017535001.tif 000005
【図３Ａ】
2017535001.tif 000006
【図３Ｂ】
2017535001.tif 000007
【図４】
2017535001.tif 000008
【図５】
2017535001.tif 000009
【図６】
2017535001.tif 000010
【図７Ａ】
2017535001.tif 000011
【図７Ｂ】
2017535001.tif 000012
【図８】
2017535001.tif 000013
【国際調査報告】
2017535001.tif 000014