(第1実施例)
(システムの構成)
図1に示されるように、通信システム2は、アクセスポイント(以下では「AP」と呼ぶ)4と、PC6と、携帯端末8と、プリンタ10(PC6、携帯端末8等の周辺機器)と、を備える。携帯端末8とプリンタ10とは、それぞれ、後述のWi−Fi Directに従った無線通信機能を実行可能である。なお、以下では、Wi−Fi Directのことを「WFD」と呼び、WFDに従った接続のことを「WFD接続」と呼ぶ。プリンタ10は、携帯端末8とのWFD接続を確立可能であり、これにより、WFDネットワークが構築される。この結果、携帯端末8とプリンタ10とは、印刷データ等の通信対象の対象データの無線通信を実行可能になる。
プリンタ10は、WFDに従った無線通信機能に加えて、通常の無線通信機能(例えば、IEEE802.11に従った無線通信)を実行可能である。即ち、プリンタ10は、AP4との接続(以下では「非WFD接続」と呼ぶ)を確立可能であり、これにより、非WFDネットワークが構築される。なお、PC6も、AP4との非WFD接続を確立可能である。この結果、プリンタ10とPC6とは、AP4を介して、印刷データ等の通信対象の対象データの無線通信を実行可能になる。
本実施例では、AP4とPC6とプリンタ10とが、例えば、特定の会社内に据え置きされる状況を想定している。即ち、特定の会社内では、AP4とPC6とプリンタ10とを含む非WFDネットワークが構築される。このために、PC6のユーザ(例えば特定の会社の社員)は、AP4を介して、プリンタ10に印刷を実行させることができる。そして、例えば、携帯端末8のユーザ(例えば特定の会社を訪問した者)は、携帯端末8とプリンタ10との間にWFD接続を一時的に確立することができる。即ち、携帯端末8のユーザは、携帯端末8とプリンタ10とを含むWFDネットワークを一時的に構築させることができる。これにより、携帯端末8のユーザは、AP4を介さずに、プリンタ10に印刷を実行させることができる。このように、本実施例では、非WFDネットワークが定常的に構築されるべきネットワークであり、WFDネットワークが一時的に構築されるべきネットワークである状況を想定している。
(プリンタ10の構成)
プリンタ10は、操作部12と、表示部14と、印刷実行部16と、無線インターフェイス18と、制御部20と、を備える。上記の各部12〜20は、バス線(符号省略)に接続されている。操作部12は、複数のキーによって構成される。ユーザは、操作部12を操作して、様々な指示をプリンタ10に与えることができる。表示部14は、様々な情報を表示するためのディスプレイである。印刷実行部16は、インクジェット方式、レーザ方式等の印刷機構を備え、制御部20からの指示に従って印刷を実行する。
無線インターフェイス18は、制御部20が無線通信を実行する際に利用されるインターフェイスである。無線インターフェイス18は、物理的には1個のインターフェイスである。ただし、無線インターフェイス18には、WFD接続で利用されるべきMACアドレスと、非WFD接続で利用されるべきMACアドレスと、の両方が割り当てられている。従って、制御部20は、無線インターフェイス18を利用して、WFDに従った無線通信機能と通常の無線通信機能との両方を同時的に実行し得る。この結果、後で詳しく説明するが、制御部20は、WFD接続と非WFD接続との両方が確立されている状態を形成し得る。
制御部20は、CPU22とメモリ24とを備える。CPU22は、メモリ24に格納されているプログラムに従って、様々な処理を実行する。メモリ24は、ROM、RAM、ハードディスク等によって構成される。メモリ24は、CPU22によって実行される上記のプログラムを格納したり、CPU22が処理を実行する過程で取得又は生成されるデータを格納したりする。CPU22が上記のプログラムに従って処理を実行することによって、第1の接続部30、第2の接続部32、決定部34、通知部36、及び、チャネル判断部38の各機能が実現される。
詳しくは後述するが、第1の接続部30は、WFDに従った無線通信機能を実行するためのユニットである。例えば、第1の接続部30は、携帯端末8とのWFD接続を確立する。また、第2の接続部32は、WFDに従った無線通信機能ではなく、通常の無線通信機能を実行するためのユニットである。例えば、第2の接続部32は、AP4との非WFD接続を確立する。
(PC6の構成)
PC6は、WFDに従った無線通信機能を実行不可能である。ただし、変形例では、PC6は、WFDに従った無線通信機能を実行可能であってもよい。PC6は、AP4との非WFD接続を確立することができる。PC6は、図示省略のCPU、メモリ、ディスプレイ等を備える。PC6のメモリは、プリンタ10のためのプリンタドライバプログラムを格納している。PC6のCPUは、プリンタドライバプログラムを利用して、印刷対象の印刷データを生成することができる。プリンタ10とAP4との間に非WFD接続が確立されていると共に、PC6とAP4との間に非WFD接続が確立されている状態では、PC6は、AP4を介して、印刷データをプリンタ10に無線で送信可能である。
(携帯端末8の構成)
携帯端末8は、可搬型の端末であり、例えば、スマートフォン、PDA端末、ノートPC、タブレットPC等を含む。携帯端末8は、WFDに従った無線通信機能を実行可能である。携帯端末8は、プリンタ10とのWFD接続を確立可能である。携帯端末8は、図示省略のCPU、メモリ、ディスプレイ等を備える。携帯端末8のメモリは、プリンタ10のためのプリンタドライバプログラムを格納している。携帯端末8のCPUは、プリンタドライバプログラムを利用して、印刷対象の印刷データを生成することができる。プリンタ10と携帯端末8との間にWFD接続が確立されている状態では、携帯端末8は、AP4を介さずに、印刷データをプリンタ10に無線で送信可能である。
(WFD)
WFDは、Wi−Fi Allianceによって策定された規格である。WFDは、Wi−Fi Allianceによって作成された「Wi−Fi Peer−to−Peer(P2P) Technical Specification Version1.1」に記述されている。
上述したように、プリンタ10と携帯端末8とは、それぞれ、WFDに従った無線通信機能を実行可能である。以下では、WFDに従った無線通信機能を実行可能な機器のことを「WFD対応機器」と呼ぶ。WFDの規格では、WFD対応機器の状態として、Group Owner状態(以下では「G/O状態」と呼ぶ)、クライアント状態、及び、デバイス状態の3つの状態が定義されている。WFD対応機器は、上記の3つの状態のうちの1つの状態で選択的に動作可能である。
G/O状態の機器とクライアント状態の機器とによって、1個のWFDネットワークが構成される。1個のWFDネットワークでは、G/O状態の機器が1個しか存在し得ないが、クライアント状態の機器が1個以上存在し得る。G/O状態の機器は、1個以上のクライアント状態の機器を管理する。具体的に言うと、G/O状態の機器は、1個以上のクライアント状態の機器のそれぞれの識別情報(即ちMACアドレス)が記述された管理リストを生成する。G/O状態の機器は、クライアント状態の機器がWFDネットワークに新たに参加すると、当該機器の識別情報を管理リストに追加し、クライアント状態の機器がWFDネットワークから離脱すると、当該機器の識別情報を管理リストから削除する。
G/O状態の機器は、管理リストに登録されている機器、即ち、クライアント状態の機器との間で、通信対象の対象データ(例えば、OSI参照モデルのネットワーク層の情報を含むデータ(印刷データ等))の無線通信を実行可能である。しかしながら、G/O状態の機器は、管理リストに登録されていない機器との間で、WFDネットワークに参加するためのデータ(例えば、ネットワーク層の情報を含まないデータ(Probe Request信号、Probe Response信号等の物理層のデータ)の無線通信を実行可能であるが、上記の対象データの無線通信を実行不可能である。例えば、G/O状態のプリンタ10は、管理リストに登録されている携帯端末8(即ち、クライアント状態の携帯端末8)から印刷データを無線で受信可能であるが、管理リストに登録されていない機器から印刷データを無線で受信不可能である。
また、G/O状態の機器は、複数個のクライアント状態の機器の間の対象データ(印刷データ等)の無線通信を中継可能である。例えば、クライアント状態の携帯端末8がクライアント状態の他のプリンタに印刷データを無線で送信すべき場合には、携帯端末8は、まず、印刷データをG/O状態のプリンタ10に無線で送信する。この場合、プリンタ10は、携帯端末8から印刷データを無線で受信して、上記の他のプリンタに印刷データを無線で送信する。即ち、G/O状態の機器は、無線ネットワークのAP(アクセスポイント)の機能を実行可能である。
なお、WFDネットワークに参加していないWFD対応機器(即ち、管理リストに登録されていない機器)が、デバイス状態の機器である。デバイス状態の機器は、WFDネットワークに参加するためのデータ(Probe Request信号、Probe Response信号等の物理層のデータ等)の無線通信を実行可能であるが、WFDネットワークを介して対象データ(印刷データ等)の無線通信を実行不可能である。
(非WFD接続処理;図2)
続いて、プリンタ10によって実行される処理の内容について説明する。まず、図2を参照して、プリンタ10によって実行される非WFD接続処理の内容を説明する。ユーザが予め決められている非WFD接続指示を操作部12に入力する場合に、制御部20は、図2の非WFD接続処理を開始する。
S10において、第2の接続部32は、プリンタ10の周囲に存在する各APを検索するためのScan処理を実行する。次いで、S12において、第2の接続部32は、Scan処理で見つかった各APに関する情報(例えば、SSID等)を含むAPリストを、表示部14に表示させる。プリンタ10のユーザは、APリストの中から、プリンタ10との接続が確立されるべきAPを指定する。第2の接続部32は、ユーザの指示に従って、APを選択する。以下では、AP4が選択された場合を例として、説明を続ける。
詳しくは後述するが、第1の接続部30は、G/Oネゴシエーション(図3のS42等参照)を実行して、WFD接続を確立する。これに対し、第2の接続部32は、G/Oネゴシエーションを実行しない。AP4は、1〜14chの中から、非WFD接続で利用されるべき無線チャネルの値(以下では「非WFDチャネル値Vap」と呼ぶ)を決定する。AP4は、非WFDチャネル値Vapをプリンタ10に送信する。この結果、S13において、第2の接続部32は、AP4から非WFDチャネル値Vapを受信する。第2の接続部32は、非WFDチャネル値Vapを、メモリ24に記憶させる。
次いで、S14において、第2の接続部32は、プリンタ10と携帯端末8との間にWFD接続が確立されているのか否かを判断する。WFD接続が確立されている場合(S14でYESの場合)には、S16に進み、WFD接続が確立されていない場合(S14でNOの場合)には、S20に進む。
S20では、第2の接続部32は、S13で受信された非WFDチャネル値Vapを利用して、認証のための通信をAP4と実行する。ここで実行される通信では、第2の接続部32は、認証方式、暗号化方式、パスワード等のデータを、AP4に送信する。これにより、AP4は、認証方式、暗号化方式、パスワード等の認証を実行して、認証が成功すれば、認証成功を示すデータを、プリンタ10に送信する。これにより、プリンタ10とAP4との間に非WFD接続が確立される。この結果、プリンタ10(即ち第2の接続部32)は、非WFDチャネル値Vapを利用して、AP4を介して、通信対象の対象データ(印刷データ等)の通信をPC6と実行することができる。S20が終了すると、図2の非WFD接続処理が終了する。
一方において、S16では、第2の接続部32は、携帯端末8とのWFD接続が切断されることを示す情報を、表示部14に表示させる。次いで、S18において、第1の接続部30は、プリンタ10の状態をG/O状態又はクライアントからデバイス状態に変更する。例えば、プリンタ10の現在の状態がG/O状態である場合には、第1の接続部30は、G/O状態のプリンタ10が保存している管理リストと、WFD接続で現在利用されている無線チャネルの値(以下では「WFDチャネル値Vwfd」と呼ぶ)と、をメモリ24から消去する。これにより、プリンタ10は、G/O状態からデバイス状態に移行し、この結果、プリンタ10と携帯端末8との間のWFD接続が切断される。また、例えば、プリンタ10の現在の状態がクライアント状態である場合には、第1の接続部30は、WFDチャネル値Vwfdをメモリ24から消去する。これにより、プリンタ10は、クライアント状態からデバイス状態に移行し、この結果、プリンタ10と携帯端末8との間のWFD接続が切断される。
S18を終えると、S20において、第2の接続部32は、上記と同様に、S13で受信された非WFDチャネル値Vapを利用して、AP4との非WFD接続を確立する。S18で携帯端末8とのWFD接続が切断されるために、AP4との非WFD接続のみが確立されている状態が形成される。
例えば、携帯端末8とのWFD接続が確立中である場合(S14でYESの場合)に、携帯端末8とのWFD接続を切断せずに、携帯端末8とのWFD接続と、AP4との非WFD接続と、の両方が確立されている状態を形成する構成を採用することが考えられる。しかしながら、無線インターフェイス18は、物理的には1個のインターフェイスである。従って、仮に、WFDチャネル値Vwfdと非WFDチャネル値Vapとが異なる場合には、プリンタ10は、WFD接続を利用した無線通信と、非WFD接続を利用した無線通信と、を同時的に適切に実行することができない。このような状況が発生することを避けるために、本実施例では、S14でYESの場合に、携帯端末8とのWFD接続を切断して(S18)、AP4との非WFD接続のみが確立されている状態を形成する構成を採用している。
なお、WFD接続が確立中である場合(S14でYESの場合)に、AP4との非WFD接続を確立せずに、携帯端末8とのWFD接続を維持する構成(即ち、携帯端末8とのWFD接続のみが確立されている状態を形成する構成)を採用することが考えられる。しかしながら、上述したように、非WFDネットワークは、定常的に構築されるべきネットワークであり、このようなネットワークが切断されると、PC6のユーザは、プリンタ10に印刷を実行させることができなくなる。このような事象が発生するのを抑制するために、本実施例では、S14でYESの場合に、一時的に確立されるべき携帯端末8とのWFD接続を切断して、定常的に確立されるべきAP4との非WFD接続のみが確立されている状態を形成する構成を採用している。即ち、本実施例では、定常的に確立されるべきAP4との非WFD接続を優先する構成を採用している。
(WFD接続処理;図3)
続いて、図3を参照して、デバイス状態のプリンタ10によって実行されるWFD接続処理の内容を説明する。ユーザが予め決められているWFD接続指示を操作部12に入力する場合に、制御部20は、図3のWFD接続処理を開始する。
S40では、第1の接続部30は、プリンタ10とAP4との間に非WFD接続が確立されているのか否かを判断する。非WFD接続が確立されている場合(S40でYESの場合)には、S46に進み、非WFD接続が確立されていない場合(S40でNOの場合)には、S42に進む。
なお、図3のフローチャートでは図示省略しているが、第1の接続部30は、S40でYES及びNOのどちらの場合であっても、プリンタ10の周囲に存在するデバイス状態の各機器(例えば携帯端末8)を検索するためのSearch処理を実行する。さらに、第1の接続部30は、Search処理で見つかった各機器に関する情報(例えば、デバイス名、機種名、MACアドレス等)を含む機器リストを、表示部14に表示させる。プリンタ10のユーザは、機器リストの中から、プリンタ10との接続が確立されるべき機器を指定する。第1の接続部30は、ユーザの指示に従って、機器を選択する。以下では、携帯端末8が選択された場合を例として、説明を続ける。
また、デバイス状態の携帯端末8は、WFD接続指示が携帯端末8に入力される場合に、プリンタ10と同様に、Search処理を実行する。これにより、携帯端末8の表示部に、プリンタ10に関する情報を含む機器リストが表示される。携帯端末8のユーザは、機器リストの中から、携帯端末8との接続が確立されるべき機器を選択する。以下では、プリンタ10が選択された場合を例として、説明を続ける。
S42では、第1の接続部30は、G/Oネゴシエーションを実行して、プリンタ10及び携帯端末8のうちの一方の機器をG/Oとして決定し、プリンタ10及び携帯端末8のうちの他方の機器をクライアントとして決定する。具体的に言うと、第1の接続部30は、まず、メモリ24に保存されているプリンタ10のIntent値を、携帯端末8に送信する。また、第1の接続部30は、携帯端末8に保存されている携帯端末8のIntent値を、携帯端末8から受信する。Intent値は、G/Oになるべき程度を示す設定値である。Intent値は、0〜15の数値範囲の中のいずれかの値である。Intent値が大きい程、G/Oになり易い。換言すると、Intent値が小さい程、クライアントになり易い。
例えば、CPU及びメモリの能力が比較的に高い機器(例えばPC)は、G/Oとして動作しながら、他の処理を高速で実行することができる。従って、このような機器には、通常、G/Oになり易いように、比較的に大きなIntent値が設定される。一方において、例えば、CPU及びメモリの能力が比較的に低い機器は、G/Oとして動作しながら、他の処理を高速で実行することができない可能性がある。従って、このような機器には、通常、G/Oになり難いように(即ち、クライアントになり易いように)、比較的に小さなIntent値が設定される。
本実施例では、S42のG/Oネゴシエーションでは、プリンタ10のIntent値(即ちデフォルトのIntent値)として、「2」が利用される。プリンタ10は、通常、PC等と比べて、CPU及びメモリの能力が比較的に低い。このために、プリンタ10には、比較的に小さいデフォルトのIntent値が設定される。従って、S42では、第1の接続部30は、プリンタ10のIntent値「2」を携帯端末8に送信する。
S42では、第1の接続部30は、さらに、プリンタ10のIntent値と、携帯端末8のIntent値と、を比較して、G/O及びクライアントを決定する。例えば、プリンタ10のIntent値が、携帯端末8のIntent値よりも大きい場合には、第1の接続部30は、プリンタ10がG/Oになるべきことを決定すると共に、携帯端末8がクライアントになるべきことを決定する。また、例えば、プリンタ10のIntent値が、携帯端末8のIntent値よりも小さい場合には、第1の接続部30は、プリンタ10がクライアントになるべきことを決定すると共に、携帯端末8がG/Oになるべきことを決定する。なお、第1の接続部30は、プリンタ10のIntent値と、携帯端末8のIntent値と、が一致する場合には、プリンタ10のIntent値を変更し、変更後のIntent値を利用して、G/Oネゴシエーションを再び実行してもよいし、WFD接続を確立することができないことを示す情報を、表示部14に表示させてもよい。
携帯端末8は、プリンタ10と同じ手法を利用して、プリンタ10のIntent値と携帯端末8のIntent値とに基づいて、G/O及びクライアントを決定する。
なお、S42のG/Oネゴシエーションの過程において、通知部36は、プリンタ10がWFD接続で利用可能な無線チャネルの値として、1〜14chの全ての値を含むチャネルリスト(以下では「通常リスト」と呼ぶ)を、携帯端末8に通知(即ち送信)する。同様に、携帯端末8は、携帯端末8がWFD接続で利用可能な無線チャネルの値を含むチャネルリストを、プリンタ10に通知(即ち送信)する。これにより、第1の接続部30は、携帯端末8のチャネルリストを取得することができる。S42のG/Oネゴシエーションが終了すると、S44に進む。
S44では、S42のG/Oネゴシエーションの結果に応じた処理が実行される。例えば、プリンタ10がG/Oになるべきことが決定された場合には、S44では、決定部34は、WFD接続で利用されるべきWFDチャネル値Vwfdを決定する。具体的に言うと、決定部34は、S42で携帯端末8に通知された通常リストに含まれる無線チャネルの値(1〜14ch)のうち、S42で携帯端末8から通知されたチャネルリストに含まれる1個の無線チャネルの値を、WFDチャネル値Vwfdとして決定する。本実施例では、携帯端末8から通知されたチャネルリストに「11ch」が含まれていれば、決定部34は、WFDチャネル値Vwfdとして、「11ch」を決定する。ただし、携帯端末8から通知されたチャネルリストに「11ch」が含まれていなければ、決定部34は、WFDチャネル値Vwfdとして、他の値(例えば「10ch」)を決定する。
次いで、第1の接続部30は、決定済みのWFDチャネル値Vwfdを、携帯端末8に送信(即ち通知)する。これにより、携帯端末8は、WFDチャネル値Vwfdを知ることができ、以降の通信において、WFDチャネル値Vwfdを利用することができる。なお、第1の接続部30は、決定済みのWFDチャネル値Vwfdを、プリンタ10のメモリ24に記憶させる。
一方において、プリンタ10がクライアントになるべきことが決定された場合には、S44では、決定部34は、WFDチャネル値Vwfdを決定しない。この場合、第1の接続部30は、G/O状態の携帯端末8から、携帯端末8によって決定されたWFDチャネル値Vwfdを受信する。この場合、第1の接続部30は、受信済みのWFDチャネル値Vwfdを、プリンタ10のメモリ24に記憶させる。
S44では、さらに、第1の接続部30は、WPS(Wi-Fi Protected Setup)ネゴシエーションを実行して、携帯端末8とのWFD接続を確立する。なお、プリンタ10がG/Oになるべきことが決定された場合には、第1の接続部30は、G/O状態用のWPSネゴシエーションを実行する。一方において、プリンタ10がクライアントになるべきことが決定された場合には、第1の接続部30は、クライアント状態用のWPSネゴシエーションを実行する。
(G/O状態用のWPSネゴシエーション)
G/O状態用のWPSネゴシエーションでは、第1の接続部30は、WFD接続を確立するために必要な無線プロファイル(SSID、認証方式、暗号化方式、パスワード等)を示すデータを生成する。なお、認証方式及び暗号化方式は、予め決められている。また、第1の接続部30は、S44の処理の際にパスワードを生成する。なお、SSIDは、S44の処理の際に、第1の接続部30によって生成されてもよいし、予め決められていてもよい。続いて、第1の接続部30は、WFDチャネル値Vwfdを利用して、無線プロファイルを示すデータを、携帯端末8に送信する。
無線プロファイルがプリンタ10から携帯端末8に送信されることにより、プリンタ10及び携帯端末8が同じ無線プロファイルを利用することができる。第1の接続部30は、無線プロファイルを利用して、Authentication Request、Authentication Response、Association Request、Association Response、及び、4way handshakeの無線通信(以下では「特定の無線通信」と呼ぶ)を、携帯端末8と実行する。なお、上記の特定の無線通信でも、WFDチャネル値Vwfdが利用される。上記の特定の無線通信の過程で、SSIDの認証、認証方式及び暗号化方式の認証、パスワードの認証等の様々な認証処理が実行される。全ての認証が成功した場合に、プリンタ10及び携帯端末8の間にWFD接続が確立される。
次いで、第1の接続部30は、携帯端末8の識別情報(即ち、携帯端末8のMACアドレス)を管理リストに追加する。これにより、G/O状態のプリンタ10(即ち第1の接続部30)は、クライアント状態の携帯端末8との間で、WFDチャネル値Vwfdを利用して、通信対象の対象データ(印刷データ等)の通信を実行することが。なお、対象データは、OSI参照モデルの物理層よりも上位層であるネットワーク層のデータを含む。従って、G/O状態のプリンタ10(即ち第1の接続部30)は、クライアント状態の携帯端末8との間で、ネットワーク層の無線通信を実行することができる。さらに、G/O状態のプリンタ10(即ち第1の接続部30)は、クライアント状態の携帯端末8と、管理リストに登録されているクライアント状態の他の機器と、の間の無線通信を中継することができる。
上述したように、第1の接続部30は、G/Oネゴシエーションでプリンタ10がG/Oになるべきことが決定される場合に、プリンタ10がG/O状態で動作するように、WFDチャネル値Vwfdを利用して、携帯端末8とのWFD接続を確立する。
(クライアント状態用のWPSネゴシエーション)
一方において、クライアント状態用のWPSネゴシエーションでは、第1の接続部30は、WFDチャネル値Vwfdを利用して、無線プロファイルを示すデータを、携帯端末8から受信する。次いで、第1の接続部30は、無線プロファイルを利用して、上記の特定の無線通信を、携帯端末8と実行する。これにより、プリンタ10及び携帯端末8の間にWFD接続が確立される。
なお、携帯端末8は、プリンタ10の識別情報(即ち、プリンタ10のMACアドレス)を管理リストに追加する。これにより、クライアント状態のプリンタ10(即ち第1の接続部30)は、G/O状態の携帯端末8との間で、WFDチャネル値Vwfdを利用して、通信対象の対象データ(印刷データ等)の通信を実行することができる。
上述したように、第1の接続部30は、G/Oネゴシエーションでプリンタ10がクライアントになるべきことが決定される場合に、プリンタ10がクライアント状態で動作するように、WFDチャネル値Vwfdを利用して、携帯端末8とのWFD接続を確立する。S44が終了すると、図3のWFD接続処理が終了する。
続いて、S40でYESの場合(非WFD接続が現在確立されている場合)に実行されるS46以降の処理の内容を説明する。S46では、第1の接続部30は、図3のWFD接続処理が開始されてから、1回目のG/Oネゴシエーションが実行されるべき状況であるのか否かを判断する。1回目のG/Oネゴシエーションが実行されるべき状況である場合(S46でYESの場合)には、S48に進み、2回目以降のG/Oネゴシエーションが実行されるべき状況である場合(S46でNOの場合)には、S50に進む。
S48では、第1の接続部30は、S42と同様に、G/Oネゴシエーションを実行する。ただし、S48のG/Oネゴシエーションは、以下の点において、S42とは異なる。S48のG/Oネゴシエーションでは、プリンタ10のIntent値として、「14」が採用される。従って、S48では、第1の接続部30は、プリンタ10のIntent値「14」を携帯端末8に送信する。また、S48では、通知部36は、プリンタ10がWFD接続で利用可能な無線チャネルの値として、現在確立されている非WFD接続で利用されている非WFDチャネル値Vap(即ちメモリ24内の非WFDチャネル値Vap)のみを含むチャネルリスト(以下では「制限リスト」と呼ぶ)を、携帯端末8に通知(即ち送信)する。S48のG/Oネゴシエーションが終了すると、S52に進む。
S52では、第1の接続部30は、G/Oネゴシエーションが成功したのか否かを判断する。例えば、プリンタ10と携帯端末8との間の通信環境が悪い場合には、プリンタ10と携帯端末8との間でG/Oネゴシエーションのための通信を実行することができない。この場合、第1の接続部30は、S52でNOと判断する。また、例えば、S48のG/Oネゴシエーションにおいて、制限リスト(即ち非WFDチャネル値Vap)が携帯端末8に通知される場合には、以下の事象が起こる可能性がある。即ち、携帯端末8から通知されるチャネルリストの中に、非WFDチャネル値Vapが含まれない場合には、プリンタ10及び携帯端末8が共通の無線チャネルを利用することができない。従って、この場合も、第1の接続部30は、S52でNOと判断する。S52でNOの場合には、S54に進む。
S54では、第1の接続部30は、G/Oネゴシエーションが実行された回数が閾値(閾値は2以上の整数)以上であるのか否かを判断する。G/Oネゴシエーションの実行回数が閾値以上である場合(S54でYESの場合)には、S56において、第1の接続部30は、WFD接続を確立することができないことを示す情報を、表示部14に表示させる。この場合、第1の接続部30は、携帯端末8とのWFD接続を確立しない。従って、AP4との非WFD接続のみが確立されている状態が維持される。S56が終了すると、図3のWFD接続処理が終了する。
一方において、G/Oネゴシエーションの実行回数が閾値未満である場合(S54でNOの場合)には、S46に戻る。この場合、第1の接続部30は、S46でNOと判断して、S50に進む。
S50では、第1の接続部30は、S42と同様に、G/Oネゴシエーションを実行する。ただし、S50のG/Oネゴシエーションでは、プリンタ10のIntent値として、「14」が採用される。従って、S50では、第1の接続部30は、プリンタ10のIntent値「14」を携帯端末8に送信する。なお、S50では、通知部36は、通常リスト(1〜14ch)を携帯端末8に通知する。即ち、通知部36は、S48のG/Oネゴシエーションが成功しない場合に、非WFDチャネル値Vapとは異なる値を携帯端末8に通知する。
なお、変形例では、S48及びS50において、第1の接続部30は、プリンタ10のIntent値として、「14」とは異なる値(例えば「13」、「15」等)を利用してもよい。即ち、S48及びS50では、第1の接続部30は、S42で利用されるプリンタ10のIntent値(即ちデフォルトのIntent値)よりも大きいIntent値を利用すればよい。
上述したように、S48のG/Oネゴシエーションでは、制限リストが携帯端末8に通知されるために、S52でNOと判断され得る。この場合、S50のG/Oネゴシエーションが再び実行されると、制限リストに代えて通常リストが携帯端末8に通知されるために、S52でYESと判断され得る。S52でYESの場合には、S58に進む。
S58では、第1の接続部30は、S48又はS50のG/Oネゴシエーションにおいて、プリンタ10がG/Oになるべきことが決定されたのか否かを判断する。S48又はS50のG/Oネゴシエーションでは、プリンタ10のIntent値「14」が利用されるために、通常、プリンタ10がG/Oになるべきことが決定される。この場合、第1の接続部30は、S58でYESと判断して、S64に進む。
S64では、決定部34は、現在確立されている非WFD接続で利用されている非WFDチャネル値Vap(即ちメモリ24内の非WFDチャネル値Vap)を参照して、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを決定する。そして、決定部34は、決定済みのWFDチャネル値Vwfdを、携帯端末8に送信(即ち通知)する。なお、第1の接続部30は、決定済みのWFDチャネル値Vwfdを、プリンタ10のメモリ24に記憶させる。上述したように、S64では、WFDチャネル値Vwfdと非WFDチャネル値Vapとが一致するように、WFDチャネル値Vwfdが決定される。これにより、WFD接続を利用した通信と、非WFD接続を利用した通信と、を同時的に適切に実行することが実現される。
S64を経て実行されるS66では、第1の接続部30は、G/O状態用のWPSネゴシエーションを実行する。これにより、第1の接続部30は、S64で決定されたWFDチャネル値Vwfdを利用して、携帯端末8とのWFD接続を確立する。AP4との非WFD接続が既に確立されているために、AP4との非WFD接続と、携帯端末8とのWFD接続と、の両方が確立されている状態が形成される。これにより、図3のWFD接続処理が終了する。
一方において、携帯端末8のIntent値が「15」である場合には、S48又はS50のG/Oネゴシエーションにおいて、プリンタ10がクライントになるべきことが決定される。この場合、第1の接続部30は、S58でNOと判断して、S60に進む。
S60では、第1の接続部30は、G/O状態の携帯端末8から、携帯端末8によって決定されたWFDチャネル値Vwfdを受信する。そして、チャネル判断部38は、受信済みのWFDチャネル値Vwfdと、現在確立されている非WFD接続で利用されている非WFDチャネル値Vapと、が一致するのか否かを判断する。
例えば、S48のG/Oネゴシエーションでは制限リストが携帯端末8に通知されるために、S48のG/Oネゴシエーションが成功した場合には、携帯端末8は、WFDチャネル値Vwfdを、制限リストに含まれる非WFDチャネル値Vapに一致する値に決定する。この場合、S60では、第1の接続部30は、携帯端末8から、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを受信し、この結果、チャネル判断部38は、S60でYESと判断する。
S60でYESの場合には、S66において、第1の接続部30は、クライアント状態用のWPSネゴシエーションを実行する。これにより、第1の接続部30は、携帯端末8から受信されたWFDチャネル値Vwfd(即ち、非WFDチャネル値Vapに一致する値)を利用して、携帯端末8とのWFD接続を確立する。AP4との非WFD接続が既に確立されているために、AP4との非WFD接続と、携帯端末8とのWFD接続と、の両方が確立されている状態が形成される。これにより、図3のWFD接続処理が終了する。
一方において、S50のG/Oネゴシエーションでは通常リストが携帯端末8に通知されるために、S50のG/Oネゴシエーションが成功した場合には、携帯端末8は、WFDチャネル値Vwfdを、非WFDチャネル値Vapに一致しない値に決定し得る。この場合、S60では、第1の接続部30は、携帯端末8から、非WFDチャネル値Vapに一致しないWFDチャネル値Vwfdを受信し得るために、この結果、チャネル判断部38は、S60でNOと判断し得る。
S60でNOの場合には、S62において、第1の接続部30は、WFD接続を確立することができないことを示す情報を、表示部14に表示させる。この場合、第1の接続部30は、携帯端末8とのWFD接続を確立しない。従って、AP4との非WFD接続のみが確立されている状態が維持される。ここでも、定常的に構築されるべき非WFDネットワークを優先する構成を採用している。S62が終了すると、図3のWFD接続処理が終了する。
(具体例;図4及び図5)
続いて、図4及び図5を参照して、各機器4,8,10が実行する処理の様々なケースについて説明する。なお、図4及び図5のシーケンスは、プリンタ10が図2及び図3のフローチャートに従って処理を実行することによって実現される。
図4のケースは、プリンタ10とAP4との間に非WFD接続を確立させ、その後、プリンタ10と携帯端末8との間にWFD接続を確立させるケースを示す。
プリンタ10に非WFD接続指示が入力されると、プリンタ10は、AP4から非WFDチャネル値Vapを受信し(図2のS13)、受信済みの非WFDチャネル値Vapを利用して、認証のための通信を実行する(S20)。これにより、プリンタ10とAP4との間に非WFD接続が確立される。
続いて、プリンタ10にWFD接続指示が入力されると、プリンタ10は、図3のS40でYESと判断して、S48のG/Oネゴシエーションを実行する。ここでは、プリンタ10のIntent値として「14」が利用されると共に、非WFDチャネル値Vapのみを含む制限リストが携帯端末8に通知される。
S48のG/Oネゴシエーションが成功すると(S52でYES)、プリンタ10は、通常、プリンタ10がG/Oになるべきことを決定する。S48のG/Oネゴシエーションでは、プリンタ10のIntent値として「14」が利用されるからである。この場合、プリンタ10は、S58でYESと判断し、非WFDチャネル値Vapを参照して、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを決定する(S64)。
次いで、プリンタ10は、決定済みのWFDチャネル値Vwfdを利用して、G/O状態用のWPSネゴシエーションを実行する(S66)。これにより、プリンタ10と携帯端末8との間にWFD接続が確立される。この結果、AP4との非WFD接続と、携帯端末8とのWFD接続と、の両方が確立されている状態(以下では「両方接続状態」と呼ぶ)が形成される。
一方において、S48のG/Oネゴシエーションが成功しても(S52でYES)、携帯端末8のIntent値が「15」である場合には、プリンタ10は、プリンタ10がクライアントになるべきことを決定する。この場合、プリンタ10は、S58でNOと判断するが、S60において、通常、携帯端末8から、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを受信する。S48のG/Oネゴシエーションでは、非WFDチャネル値Vapのみを含む制限リストが携帯端末8に通知されるために、携帯端末8が、通常、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを決定するからである。従って、プリンタ10は、S60でYESと判断する。
次いで、プリンタ10は、受信済みのWFDチャネル値Vwfd(即ち非WFDチャネル値Vapに一致する値)を利用して、クライアント状態用のWPSネゴシエーションを実行する(S66)。これにより、プリンタ10と携帯端末8との間にWFD接続が確立される。この結果、両方接続状態が形成される。
例えば、S48のG/Oネゴシエーションにおいて、携帯端末8のチャネルリストに、非WFDチャネル値Vapが含まれない場合には、S48のG/Oネゴシエーションが失敗する(S52でNO)。この場合、図5に示されるように、プリンタ10は、S50のG/Oネゴシエーションを実行する。ここでは、プリンタ10のIntent値として「14」が利用されると共に、1〜14chの全ての値を含む通常リストが携帯端末8に通知される。これにより、通常、S50のG/Oネゴシエーションが成功する。
S50のG/Oネゴシエーションが成功すると(S52でYES)、プリンタ10は、通常、プリンタ10がG/Oになるべきことを決定する。S50のG/Oネゴシエーションでは、プリンタ10のIntent値として「14」が利用されるからである。この場合、プリンタ10は、S58でYESと判断し、非WFDチャネル値Vapを参照して、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを決定する(S64)。
次いで、プリンタ10は、決定済みのWFDチャネル値Vwfdを利用して、G/O状態用のWPSネゴシエーションを実行する(S66)。これにより、プリンタ10と携帯端末8との間にWFD接続が確立される。この結果、両方接続状態が形成される。
一方において、S50のG/Oネゴシエーションが成功しても(S52でYES)、携帯端末8のIntent値が「15」である場合には、プリンタ10は、プリンタ10がクライアントになるべきことを決定する。この場合、プリンタ10は、S58でNOと判断し、通常、携帯端末8から、非WFDチャネル値Vapに一致しないWFDチャネル値Vwfdを受信する。S50のG/Oネゴシエーションでは、通常リストが携帯端末8に通知されるために、携帯端末8が、通常、非WFDチャネル値Vapに一致しないWFDチャネル値Vwfdを決定するからである。従って、プリンタ10は、S60でNOと判断する。
次いで、プリンタ10は、WFD接続を確立することができないことを示す情報を、表示部14に表示させる(S62)。この場合、プリンタ10は、携帯端末8とのWFD接続を確立しない。ただし、プリンタ10は、AP4との非WFD接続を維持する。従って、AP4との非WFD接続のみが確立されている状態(以下では「単一接続状態」と呼ぶ)が形成される。
(第1実施例の効果)
図4及び図5のケースに示されるように、プリンタ10は、非WFD接続が確立されている状態で、WFD接続が確立されるべき場合に、非WFDチャネル値Vapを参照して、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを決定する。これにより、プリンタ10は、両方接続状態を適切に形成することができる。従って、プリンタ10は、WFD接続を利用して、携帯端末8から印刷データを受信することができると共に、非WFD接続を利用して、PC6からAP4を介して印刷データを受信することができる。
なお、プリンタ10は、無線インターフェイス18の構成上、異なる2個のチャネル値を利用して、適切な無線通信を実行することができない。従って、図5のケースに示されるように、プリンタ10は、非WFD接続が確立されている状態で、WFD接続が確立されるべき場合に、WFDチャネル値Vwfdと非WFDチャネル値Vapとが一致しないと、非WFD接続のみが確立されている単一接続状態を形成する。また、図2のフローチャートに示されるように、プリンタ10は、WFD接続が確立されている状態で、非WFD接続が確立されるべき場合(S14でYESの場合)に、WFD接続を切断して、非WFD接続のみが確立されている単一接続状態を形成する。これにより、プリンタ10は、非WFD接続を利用して、PC6からAP4を介して印刷データを適切に受信することができる。特に、プリンタ10は、定常的に確立されるべき非WFD接続を優先して、単一接続状態を形成する。このために、プリンタ10及びPC6が設置されている環境(例えば上記の特定の会社内)において、PC6のユーザが、プリンタ10で印刷を実行させることができないという事象が発生するのを抑制することができる。本実施例によると、プリンタ10は、適切な接続状態を形成することができる。
なお、プリンタ10は、非WFD接続が確立されていない状態で、WFD接続が確立されるべき場合に、比較的に小さいプリンタ10のIntent値「2」を利用する(図3のS42)。このために、プリンタ10がクライアントになるべきことが決定され易い。従って、プリンタ10の処理負荷の増加を抑制しつつ、プリンタ10と携帯端末8との間にWFD接続を適切に確立させることができる。
一方において、図4及び図5のケースに示されるように、プリンタ10は、非WFD接続が確立されている状態で、WFD接続が確立されるべき場合に、比較的に大きいプリンタ10のIntent値「14」を利用する(図3のS48又はS50)。このために、プリンタ10がG/Oになるべきことが決定され易い。従って、プリンタ10は、非WFDチャネル値Vapを参照して、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを適切に決定することができる。この結果、プリンタ10は、両方接続状態を適切に形成することができる。
なお、仮に、プリンタ10がクライアントになるべきことが決定されても、プリンタ10は、制限リストを携帯端末8に通知し得る(図3のS48)。このために、プリンタ10は、携帯端末8から、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを受信することができる(S60でYES)。この結果、プリンタ10は、両方接続状態を適切に形成することができる。また、プリンタ10が制限リストを携帯端末8に通知しても、G/Oネゴシエーションが失敗する場合(S52でNO)には、プリンタ10は、非WFDチャネル値Vapとは異なるチャネル値を含む通常リストを、携帯端末8に通知する(S50)。この結果、G/Oネゴシエーションが成功し得るために(S52でYES)に、プリンタ10は、携帯端末8とのWFD接続を適切に確立し得る。
(対応関係)
プリンタ10、携帯端末8、AP4が、それぞれ、「無線通信装置」、「第1のデバイス」、「第2のデバイス」の一例である。G/O状態、クライアント状態が、それぞれ、「親局状態」、「子局状態」の一例である。G/Oネゴシエーションが、「状態決定処理」の一例である。Intent値「2」、Intent値「14」が、それぞれ、「第1の設定値」、「第2の設定値」の一例である。図3のS48及びS50でプリンタ10のIntent値として「14」を利用することが、「特定の処理」の一例である。WFD接続、非WFD接続が、それぞれ、「第1種の接続」、「第2種の接続」の一例である。WFDチャネル値Vwfd、非WFDチャネル値Vapが、それぞれ、「第1の無線チャネルの値」、「第2の無線チャネルの値」の一例である。
(第2実施例)
第1実施例と異なる点を説明する。本実施例では、図3のWFD接続処理の代わりに、図6のWFD接続処理が実行される。図6のS40〜S44は、図3のS40〜S44と同様である。S40でYESの場合、S61において、第1の接続部30は、プリンタ10を自律G/Oモードに設定する。自律G/Oモードは、G/O状態で動作することをプリンタ10に維持させるモードである。従って、S60の段階ではWFD接続が確立されていないが、プリンタ10は、G/O状態に設定されている。この段階では、プリンタ10が管理している管理リストには、クライアント状態の機器の識別情報が記述されていない。
S60でプリンタ10が自律G/Oモードに設定されると、プリンタ10は、G/Oネゴシエーションを実行しない。上述したように、携帯端末8は、WFD接続指示が携帯端末8に入力される場合に、携帯端末8の周囲に存在するクライアント状態の機器を検索するSearch処理を実行するが、それに加えて、携帯端末8の周囲に存在するG/O状態の機器(即ちプリンタ10)を検索するScan処理を実行する。これにより、携帯端末8の表示部に、プリンタ10に関する情報を含む機器リストが表示される。携帯端末8のユーザが機器リストの中からG/O状態のプリンタ10を選択すると、携帯端末8は、G/Oネゴシエーションを実行せずに、携帯端末8がクライアントになるべきことを決定する。
なお、図6のS64及びS66は、図3のS64及びS66と同様である。即ち、S64では、決定部34は、非WFDチャネル値Vapを参照して、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを決定する。次いで、S66では、第1の接続部30は、WFDチャネル値Vwfdを利用して、G/O状態用のWPSネゴシエーションを実行する。これにより、プリンタ10と携帯端末8との間にWFD接続が確立される。
(具体例;図7)
本実施例では、図4及び図5のケースの代わりに、図7のケースが実現される。非WFD接続が確立されるまでの各処理は、図4のケースと同様である。ただし、上述したように、図6のS61において、プリンタ10は、プリンタ10を自律G/Oモードに設定する。従って、プリンタ10は、非WFDチャネル値Vapを参照して、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを決定することができる(S64)。次いで、プリンタ10は、WFDチャネル値Vwfdを利用して、G/O状態用のWPSネゴシエーションを実行し、携帯端末8とのWFD接続が確立する(S66)。この結果、両方接続状態が形成される。
(第2実施例の効果)
図7のケースに示されるように、プリンタ10は、非WFD接続が確立されている状態で、WFD接続が確立されるべき場合に、プリンタ10を自律G/Oモードに設定する。この結果、プリンタ10は、非WFDチャネル値Vapを参照して、非WFDチャネル値Vapに一致するWFDチャネル値Vwfdを適切に決定することができる。これにより、プリンタ10は、両方接続状態を適切に形成することができる。本実施例では、自律G/Oモードが「特定のモード」の一例である。そして、図6のS61でプリンタ10を自律G/Oモードに設定することが「特定の処理」の一例である。
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
(変形例1)「無線通信装置」は、プリンタ10に限られず、無線通信可能な他の機器(例えば、携帯端末、PC、サーバ、FAX装置、コピー機、スキャナ、多機能機等)であってもよい。また、「第1のデバイス」及び「第2のデバイス」は、携帯端末8及びAP4に限られず、無線通信可能な他の機器(例えば、PC、サーバ、プリンタ、FAX装置、コピー機、スキャナ、多機能機等)であってもよい。
(変形例2)「親局状態」は、WFDのG/O状態に限られず、無線ネットワークを構成する他のデバイスを管理(例えば、他のデバイスに関する情報のリストを管理すること、他のデバイス間の無線通信を中継すること等)する状態であればよい。また、「子局状態」は、WFDのクライアント状態に限られず、親局状態の機器によって管理される状態であればよい。従って、「第1種の接続」は、WFD接続に限られず、無線通信装置が親局状態と子局状態とのうちの一方の状態で選択的に動作するための他の種類の接続であってもよい。
(変形例3)「第2種の接続」は、AP4との非WFD接続に限られず、例えば、PC等とのWFD接続であってもよい。即ち、「第1種の接続」と「第2種の接続」とは、同じ種類の接続であってもよい。また、「第2種の接続」は、例えば、PC等とのアドホックの接続であってもよい。
(変形例4)例えば、「第2種の接続」がPC6とのアドホックの接続である場合には、以下の変形例4−1〜4−3のいずれかの構成を採用してもよい。
(変形例4−1)PC6とのアドホックの接続が確立されている状態(アドホックの無線チャネルの値として「Vad」が利用されている)で、携帯端末8とのWFD接続が確立されるべき状況を想定する。例えば、G/Oネゴシエーションでプリンタ10がG/Oになるべきことが決定される場合に、決定部34は、まず、WFDチャネル値Vwfdを決定し、その後、さらに、WFDチャネル値Vwfdに一致するアドホックの無線チャネルの値Vad’(Vad’はVadとは異なる)を決定する。この場合、第1の接続部30は、WFDチャネル値Vwfdを利用して、携帯端末8とのWFD接続を確立する。さらに、第2の接続部32は、アドホックの無線チャネルの値Vad’を利用して、PC6とのアドホックの接続を再確立する。即ち、一般的に言うと、決定部は、第2のデバイスとの第2種の接続が確立されている状態で、第1のデバイスとの第1種の接続が確立されるべき場合に、第1の無線チャネルの値(本変形例ではVwfd)と、第2の無線チャネルの値(本変形例ではVad’)と、の両方を決定してもよい。
(変形例4−2)PC6とのアドホックの接続が確立されている状態(アドホックの無線チャネルの値として「Vad」が利用されている)で、携帯端末8とのWFD接続が確立されるべき状況を想定する。例えば、G/Oネゴシエーションでプリンタ10がクライアントになるべきことが決定される場合に、第1の接続部30は、携帯端末8から、携帯端末8によって決定されたWFDチャネル値Vwfdを受信する。その後、決定部34は、WFDチャネル値Vwfdに一致するアドホックの無線チャネルの値Vad’(Vad’はVadとは異なる)を決定してもよい。この場合、第1の接続部30は、WFDチャネル値Vwfdを利用して、携帯端末8とのWFD接続を確立する。さらに、第2の接続部32は、アドホックの無線チャネルの値Vad’を利用して、PC6とのアドホックの接続を再確立する。即ち、一般的に言うと、決定部は、第2のデバイスとの第2種の接続が確立されている状態で、第1のデバイスとの第1種の接続が確立されるべき場合に、第2の無線チャネルの値(本変形例ではVad’)を決定してもよい。
(変形例4−3)携帯端末8とのWFD接続が確立されている状態で、PC6とのアドホックの接続が確立されるべき状況を想定する。この場合、決定部34は、WFDチャネル値Vwfdに一致するアドホックの無線チャネルの値Vadを決定してもよい。この場合、第2の接続部32は、アドホックの無線チャネルの値Vadを利用して、PC6とのアドホックの接続を確立する。即ち、一般的に言うと、決定部は、第1のデバイスとの第1種の接続が確立されている状態で、第2のデバイスとの第2種の接続が確立されるべき場合に、第2の無線チャネルの値(本変形例ではVad)を決定してもよい。
上記の第1及び第2実施例と、上記の各変形例4−1〜4−3と、から明らかなように、一般的に言うと、決定部は、特定の場合に、第1の無線チャネルの値と第2の無線チャネルの値とが一致するように、第1の無線チャネルの値と第2の無線チャネルの値とのうちの少なくとも一方を決定すればよい。
(変形例5)上記の各実施例では、G/Oネゴシエーション(図3のS44等参照)において、第1の接続部30は、プリンタ10のIntent値が、携帯端末8のIntent値よりも大きい場合に、プリンタ10がG/Oになるべきことを決定する。これに代えて、第1の接続部30は、プリンタ10のIntent値が、携帯端末8のIntent値よりも小さい場合に、プリンタ10がG/Oになるべきことを決定してもよい。上記の第1実施例では、「第2の設定値」が「第1の設定値」よりも大きい値であるが、本変形例では、「第2の設定値」が「第1の設定値」よりも小さい値であってもよい。
(変形例6)上記の第1実施例では、図3のS48,S50において、第1の接続部30は、プリンタ10がG/Oになるべきことが決定され易いように、プリンタ10のIntent値として「14」を利用する。これに代えて、第1の接続部30は、プリンタ10のIntent値を携帯端末8に送信する前に、携帯端末8から、携帯端末8のIntent値を受信してもよい。そして、第1の接続部30は、携帯端末8のIntent値よりも大きいプリンタ10のIntent値を決定し、決定済みのプリンタ10のIntent値を携帯端末8に送信してもよい。この場合も、プリンタ10がG/Oになるべきことが決定され易くなる。本変形例では、携帯端末8のIntent値よりも大きいプリンタ10のIntent値を利用することが、「特定の処理」の一例である。
(変形例7)上記の各実施例では、無線チャネルの値の範囲として1ch〜14chが利用される。これは、日本で利用される仕様である。これに代えて、無線チャネルの値の範囲として、1ch〜11chが利用されてもよいし(米国の仕様)、1ch〜13chが利用されてもよいし(欧州の仕様)、他の範囲が利用されてもよい。
(変形例8)上記の各実施例では、WFD接続が確立されている状態で、非WFD接続が確立されるべき状況(図2のS14でYESの場合)において、第1の接続部30がWFD接続を必ず切断する構成を採用している。これに代えて、第1の接続部30は、上記の状況において、プリンタ10がクライアント状態で動作している場合には、WFD接続を切断してもよい。また、第1の接続部30は、上記の状況において、プリンタ10がG/O状態で動作しており、かつ、WFD接続で現在利用されているWFDチャネル値と、図2のS13で受信された非WFDチャネル値と、が一致する場合には、WFD接続を切断せずに維持してもよい。また、第1の接続部30は、上記の状況において、プリンタ10がG/O状態で動作しており、かつ、WFDチャネル値と非WFDチャネル値とが一致しない場合には、WFD接続を切断してもよい。
(変形例9)上記の各実施例では、プリンタ10のCPU22がソフトウェアに従って処理を実行することによって、各部30〜38が実現される。これに代えて、各部30〜38のうちの少なくとも一部は、論理回路等のハードウェアによって実現されてもよい。
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。