JP2023044218A - 情報処理装置、通信装置、その制御方法、並びにプログラム - Google Patents

情報処理装置、通信装置、その制御方法、並びにプログラム Download PDF

Info

Publication number
JP2023044218A
JP2023044218A JP2021152129A JP2021152129A JP2023044218A JP 2023044218 A JP2023044218 A JP 2023044218A JP 2021152129 A JP2021152129 A JP 2021152129A JP 2021152129 A JP2021152129 A JP 2021152129A JP 2023044218 A JP2023044218 A JP 2023044218A
Authority
JP
Japan
Prior art keywords
communication device
communication
information processing
information
protocol
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021152129A
Other languages
English (en)
Inventor
知成 炭田
Tomonari Sumida
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2021152129A priority Critical patent/JP2023044218A/ja
Priority to US17/932,101 priority patent/US20230091461A1/en
Publication of JP2023044218A publication Critical patent/JP2023044218A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/043Key management, e.g. using generic bootstrapping architecture [GBA] using a trusted network node as an anchor
    • H04W12/0431Key distribution or pre-distribution; Key agreement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/15Setup of multiple wireless link connections
    • H04W76/16Involving different core network technologies, e.g. a packet-switched [PS] bearer in combination with a circuit-switched [CS] bearer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

【課題】 通信装置とアクセスポイントとを接続させる機能の利便性を向上させることを目的とする。【解決手段】 情報処理装置と通信する通信装置であって、第1のプロトコルによる前記情報処理装置との通信を介して、前記情報処理装置との通信を実行可能な状態の開始要求を前記情報処理装置から受信したことに基づいて、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を開始させる第1制御を実行する第1制御手段と、前記通信装置がアクセスポイントと接続するための接続情報が、前記第1の状態における前記通信装置と前記情報処理装置との間の前記第2のプロトコルによる通信を介して前記情報処理装置から取得された場合、前記接続情報を用いて前記通信装置と前記アクセスポイントとの接続を確立させる第1接続手段と、を有する。【選択図】 図8

Description

本発明は、情報処理装置、通信装置、その制御方法、並びにプログラムに関する。
PC(パーソナルコンピュータ)等の情報処理装置が、プリンタ等の通信装置に、アクセスポイントに関する情報を送信し、当該通信装置と当該外部装置とを接続させる技術が知られている。
特開2016-127545号公報
ところで、通信装置にアクセスポイントと接続するための接続情報を送信し、当該通信装置と当該アクセスポイントとを接続させる機能が普及するにあたり、当該機能の利便性を向上させることが求められている。
本発明は、上述の課題を鑑みてなされたものであり、通信装置とアクセスポイントとを接続させる機能の利便性を向上させることを目的とする。
上述のような課題を解決するため、本開示に係るプログラムは、通信装置と通信する情報処理装置のコンピュータに、第1のプロトコルによる前記情報処理装置との通信を介して、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を前記通信装置に開始させる開始要求を送信させる第1制御を実行する第1制御ステップと、前記通信装置がアクセスポイントと接続するための接続情報を、前記第2のプロトコルによる前記通信装置との通信を介して前記第1の状態における前記通信装置に送信させる第1送信ステップと、を実行させることを特徴とするプログラム。
上述のような課題を解決するため、本開示に係る通信装置は、情報処理装置と通信する通信装置であって、第1のプロトコルによる前記情報処理装置との通信を介して、前記情報処理装置との通信を実行可能な状態の開始要求を前記情報処理装置から受信したことに基づいて、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を開始させる第1制御を実行する第1制御手段と、前記通信装置がアクセスポイントと接続するための接続情報が、前記第1の状態における前記通信装置と前記情報処理装置との間の前記第2のプロトコルによる通信を介して前記情報処理装置から取得された場合、前記接続情報を用いて前記通信装置と前記アクセスポイントとの接続を確立させる第1接続手段と、を有することを特徴とする通信装置。
本発明によれば、セキュリティを確保した利便性の高いネットワーク設定動作を実行することが可能となる。
情報処理装置と通信装置とアクセスポイントの構成を示す図である。 通信装置のGATTデータベースの一例を示す図である。 ネットワークセットアップ処理において情報処理装置が実行する処理の流れを示すフローチャートである。 設定アプリが表示するQRコード(登録商標)撮影用の画面の一例である。 情報処理装置と通信装置によって実行される処理を示すシーケンス図である。 WEC開始画面の一例である。 情報処理装置と通信装置によって実行される処理を示すシーケンス図である。 ネットワークセットアップ処理において通信装置が実行するセットアップ処理の流れを示すフローチャートである。 ネットワークセットアップ処理において通信装置が実行するセットアップ処理の流れを示すフローチャートである。 DPP待ち受けモード開始処理を示すフローチャート図である。 通信装置が実行するWECの処理を示すフローチャート図である。
以下に図面を参照して、本発明の好適な実施形態を例示的に説明する。ただし、本発明については、その趣旨を逸脱しない範囲で、当業者の通常の知識に基づいて、以下に記載する実施形態に対して適宜変更、改良が加えられたものについても本発明の範囲に入ることが理解されるべきである。
(第1実施形態)
本実施形態の通信システムに含まれる情報処理装置及び通信装置について説明する。情報処理装置として、本実施形態ではスマートフォンを例示しているが、これに限定されない。例えば情報処理装置として、携帯端末、PC(パーソナルコンピュータ)、タブレット端末、PDA(Personal Digital Assistant)、デジタルカメラ等、種々のものを適用可能である。また、通信装置として、本実施形態ではプリンタを例示しているが、これに限定されず、情報処理装置と無線通信を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等に適用することができる。また、プリンタのみならず複写機やファクシミリ装置、携帯端末、スマートフォン、ノートPC、タブレット端末、PDA、デジタルカメラ、音楽再生デバイス、テレビ、スマートスピーカ等にも適用可能である。その他、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機にも適用可能である。
また、本実施形態では、情報処理装置は、Wi-Fi Easy Connect(以下、WEC)(登録商標)と呼ばれる機能に対応している場合は、当該機能を実行可能である。WECとは、Wi-Fi Allianceで策定されたDevice Provisioning Protocol(以下、DPP)を用いて、他の装置のネットワークセットアップを実行する機能である。なお他の装置のネットワークセットアップとは具体的には、他の装置をネットワークを形成するアクセスポイントと接続させる処理である。WECにおいては、「Configurator」という役割で動作する装置(以下、Configurator装置)と、「Enrollee」という役割で動作する装置(以下、Enrollee装置)との間で通信が行われる。Configurator装置はEnrollee装置からBootstrapping情報を取得する。Bootstrapping情報には、例えばEnrollee装置の識別情報(MACアドレス等)や、Enrollee装置とセキュアな通信を行うために用いられる公開鍵情報などが含まれる。本実施形態では、Bootstrapping情報を「WEC関連情報」として説明する。なお、他の情報もWEC関連情報として扱われて良い。そしてConfigurator装置は、取得したBootstrapping情報を用いてEnrollee装置との無線通信を実行する。具体的には例えば、Configurator装置は、Bootstrapping情報に含まれる公開鍵を用いてプロトコルキーを暗号化し、暗号化したプロトコルキーをEnrollee装置に送信する。そしてその暗号化したプロトコルキーに基づいて共通鍵を暗号化し、その共通鍵を用いて暗号化した情報を、Enrollee装置に送信する。なおここで送信される情報は具体的には例えば、アクセスポイントに接続するための接続情報である。そしてEnrollee装置は、Configurator装置から受信した接続情報を使ってアクセスポイントとの無線接続を確立する。なお、本実施形態におけるWECによるネットワークセットアップ処理においては、WECに対応している情報処理装置は、Configurator装置として動作し、WECに対応している通信装置は、Enrollee装置として動作するものとして説明する。
まず、本実施形態の情報処理装置と、本実施形態の情報処理装置と通信可能な通信装置の構成について図1のブロック図を参照して説明する。また、本実施形態では以下の構成を例に記載するが、本実施形態は通信装置と通信を行うことが可能な装置に関して適用可能なものであり、特にこの図のとおりに機能を限定するものではない。
情報処理装置101は、本実施形態の情報処理装置である。情報処理装置101は、入力インタフェース102、CPU103、ROM104、RAM105、外部記憶装置106、出力インタフェース107、表示部108、通信部110、近距離無線通信部111等を有する。CPU103、ROM104、RAM105等によって、情報処理装置101のコンピュータが形成される。
入力インタフェース102は、キーボード109等の操作部が操作されることにより、ユーザからのデータ入力や動作指示を受け付けるためのインタフェースである。なお、操作部は、物理キーボードや物理ボタン等であっても良いし、表示部108に表示されるソフトキーボードやソフトボタン等であっても良い。すなわち、入力インタフェース102は、表示部108を介してユーザからの入力を受け付けても良い。
CPU103は、システム制御部であり、情報処理装置101の全体を制御する。
ROM104は、CPU103が実行する制御プログラムやデータテーブル、組み込みオペレーティングシステム(以下、OSという。)プログラム等の固定データを格納する。本実施形態では、ROM104に格納されている各制御プログラムは、ROM104に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行う。
RAM105は、バックアップ電源を必要とするSRAM(Static Random Access Memory)等で構成される。なお、RAM105は、図示しないデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、情報処理装置101の設定情報や情報処理装置101の管理データ等を格納するメモリエリアもRAM105に設けられている。また、RAM105は、CPU103の主メモリとワークメモリとしても用いられる。
外部記憶装置106は、通信装置151のネットワークセットアップを実行するためのアプリケーションプログラム(以後、設定アプリ)、通信装置151が解釈可能な印刷情報を生成する印刷情報生成プログラム等を保存している。設定アプリとは、通信装置151の接続先のアクセスポイントの設定をWEC等で行うためのアプリケーションプログラムである。なお、設定アプリは、ネットワークセットアップ機能以外の他の機能を備えていても良い。例えば設定アプリは、通信装置151に印刷を実行させる機能や、通信装置151にセットされた原稿をスキャンさせる機能、通信装置151の状態を確認する機能等を備えていても良い。設定アプリは、例えば、通信部110を介したインターネット通信によって、外部のサーバからインストールされることにより、外部記憶装置106に格納される。また、外部記憶装置106は、通信部110を介して接続している通信装置151との間で送受信する情報送受信制御プログラム等の各種プログラムや、これらのプログラムが使用する各種情報を保存している。
出力インタフェース107は、表示部108がデータの表示や情報処理装置101の状態の通知を行うための制御を行うインタフェースである。
表示部108は、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、データの表示や情報処理装置101の状態の通知を行う。
通信部110は、通信装置151やアクセスポイント131等の装置と接続して、データ通信を実行するための構成である。例えば、通信部110は、通信装置151内のアクセスポイント(不図示)に接続可能である。通信部110と通信装置151内のアクセスポイントが接続することで、情報処理装置101と通信装置151は相互に通信可能となる。なお、通信部110は無線通信で通信装置151とダイレクトに通信しても良いし、情報処理装置101や通信装置151の外部に存在する外部装置を介して通信しても良い。なお、外部装置とは、情報処理装置101の外部及び通信装置151の外部に存在する外部アクセスポイント(アクセスポイント131等)や、アクセスポイント以外で通信を中継可能な装置を含む。本実施形態では、通信部110が用いる無線通信方式は、IEEE802.11シリーズに準拠する通信規格であるWi-Fi(WirelessFidelity)(登録商標)であるものとする。そして、前述したWECを、通信部110による通信により実行するものとする。また、アクセスポイント131としては、例えば、無線LANルーター等の機器などが挙げられる。なお、本実施形態において、情報処理装置101と通信装置151とが外部アクセスポイントを介さずにダイレクトに接続する方式をダイレクト接続方式という。また、情報処理装置101と通信装置151とが外部アクセスポイントを介して接続する方式をインフラ接続方式という。
近距離無線通信部111は、通信装置151等の装置と近距離で無線接続して、データ通信を実行するための構成であり、通信部110とは異なる通信方式によって通信を行う。近距離無線通信部111は、例えば、通信装置151内の近距離無線通信部157と接続可能である。通信方式としては、例えば、Near Field Communication(NFC)、Bluetooth(登録商標) Classic、Bluetooth Low Energy(BLE)、Wi-Fi Aware等が挙げられる。本実施形態では近距離無線通信部111が用いる無線通信方式は、Bluetooth Low Energy(以下、BLE)が用いられるものとして説明する。本実施形態では情報処理装置101は、BLE規格における、スキャナとして動作し、情報処理装置101とBLE接続した後は、BLE規格におけるマスタとして動作する。
本実施形態では、情報処理装置101は、設定アプリによるネットワークセットアップ処理の実行指示に基づいて情報処理装置101のOSによりWECを実行する。
通信装置151は、本実施形態の通信装置である。通信装置151は、ROM152、RAM153、CPU154、プリントエンジン155、通信部156、近距離無線通信部157等を有する。ROM152、RAM153、CPU154等によって、通信装置151のコンピュータが形成される。
通信部156は、通信装置151内部のアクセスポイントとして、情報処理装置101等の装置と接続するためのアクセスポイントを有している。なお、該アクセスポイントは、情報処理装置101の通信部110に接続可能である。通信部156が、該アクセスポイントを有効化することで、通信装置151がアクセスポイントとして動作することになる。なお、通信部156は情報処理装置101とダイレクトに無線接続しても良いし、アクセスポイント131を介して無線接続しても良い。本実施形態では、通信部156が用いる無線通信方式は、IEEE802.11シリーズに準拠する通信規格であるものとする。また以下の説明において、Wi-Fi(WirelessFidelity)(登録商標)とは、IEEE802.11シリーズに準拠する通信規格である。また、通信装置151がWECに対応しているのであれば、前述したWECを、通信部156による通信により実行するものとする。また、通信部156は、アクセスポイントとして機能するハードウェアを備えていてもよいし、アクセスポイントとして機能させるためのソフトウエアにより、アクセスポイントとして動作してもよい。
本実施形態の通信装置151は、通信部156を用いて通信を行うためのモードとして、インフラストラクチャモード及びP2P(Peer to Peer)モードで動作可能である。
インフラストラクチャモードとは、通信装置151が、ネットワークを形成する外部装置(例えば、アクセスポイント131)を介して、情報処理装置101等の他の装置と通信する形態である。インフラストラクチャモードで動作する通信装置151によって確立される外部アクセスポイントとの接続を、インフラストラクチャ接続(以後、インフラ接続)という。本実施形態では、インフラ接続において、通信装置151が子局として動作し、外部アクセスポイントが親局として動作する。なお本実施形態において親局とは、親局が属するネットワークにおいて使用される通信チャネルを決定する装置であり、子局とは、子局が属するネットワークにおいて使用される通信チャネルを決定せず、親局が決定した通信チャネルを用いる装置である。
P2Pモードとは、通信装置151が、ネットワークを形成する外部装置を介さず、情報処理装置101等の他の装置と直接的に通信する形態である。本実施形態では、P2Pモードには、通信装置151がアクセスポイントとして動作するAPモードが含まれるものとする。APモード時に通信装置151内で有効化されるアクセスポイントの接続情報(SSIDやパスワード)は、ユーザが任意に設定可能であるものとする。なおP2Pモードには、例えば、通信装置151がWi-Fi Direct(WFD)によって通信するためのWFDモードが含まれていても良い。なお、複数のWFD対応機器のうちいずれが親局として動作するかは、例えば、Group Owner Negotiationというシーケンスに従って決定される。なお、Group Owner Negotiationが実行されずに、親局が決定されても良い。WFD対応機器であり且つ親局の役割を果たす装置を特に、Group Ownerという。P2Pモードで動作する通信装置151によって確立される他の装置との直接的な接続を、ダイレクト接続という。本実施形態では、ダイレクト接続において、通信装置151が親局として動作し、他の装置が子局として動作する。
また、本実施形態では通信装置151は、ユーザから所定の操作を受け付けることで、通信装置151のネットワークセットアップを実行するためのモードであるネットワークセットアップモードとして動作可能である。ネットワークセットアップモードは、BLE通信を用いたネットワークセットアップと、Wi-Fi通信を用いたネットワークセットアップの何れかを実行するためのモードである。通信装置151は、ネットワークセットアップモードとして動作する場合、通信部156を用いることにより、ネットワークセットアップモードとして動作中に有効なセットアップ用アクセスポイントとして動作する。当該セットアップ用アクセスポイントは、上述のAPモード時に有効化されるアクセスポイントとは異なるアクセスポイントである。また当該セットアップ用アクセスポイントのSSIDは、情報処理装置101の設定アプリが認識可能な所定の文字列を含むものとする。また、当該セットアップ用アクセスポイントは、接続にパスワードを必要としないアクセスポイントであるものとする。また、ネットワークセットアップモードとして動作している通信装置151は、セットアップ用アクセスポイントと接続している情報処理装置101との通信において、所定の通信プロトコル(セットアップ用通信プロトコル)を用いるものとする。セットアップ用通信プロトコルは具体的には例えば、SNMP(Simple Network Management Protocol)である。通信装置151は、ネットワークセットアップモードでの動作を開始した後、所定の時間が経過したら、ネットワークセットアップモードでの動作を停止し、セットアップ用アクセスポイントを無効化する。これは、セットアップ用アクセスポイントは上述したようにパスワードを必要としないアクセスポイントであるため、長時間有効化していると、適切でない装置から接続を要求されてしまう可能性が高まるためである。なおセットアップ用アクセスポイントは、パスワードを必要とするアクセスポイントであっても良い。その場合、セットアップ用アクセスポイントとの接続に用いられるパスワードは、設定アプリが予め把握している固定の(ユーザが変更できない)パスワードであるものとする。
さらに、本実施形態では通信装置151は、DPPを用いた通信装置151のネットワークセットアップを実行するためのモードであるDPP待ち受けモードとして動作可能である。DPP待ち受けモードについては図9において後述する。
近距離無線通信部157は、情報処理装置101等の装置と近距離で無線接続するための構成であり、例えば、情報処理装置101内の近距離無線通信部111と接続可能である。通信方式としては、例えば、NFC、Bluetooth Classic、BLE、Wi-Fi Aware等が挙げられる。
本実施形態では通信装置151は、上述したように、ユーザから所定の操作を受け付けることで、通信装置151のネットワークセットアップを実行するためのモードであるネットワークセットアップモードとして動作可能である。通信装置151は、ネットワークセットアップモードとして動作する場合、さらに、BLE通信を用いたセットアップを実行可能であり、かつBLE通信を実行可能なBLEセットアップモードとして動作可能である。具体的には、通信装置151は、BLE通信を実行可能なモードとして動作する場合、特定の間隔を空けてBLEのアドバタイズ情報をビーコン出力する。なお、通信装置151は、BLE通信を用いたセットアップは実行しないがBLE通信を用いたその他の機能を実行可能であり、且つBLE通信を実行可能な、非BLEセットアップモードとして動作することもできる。通信装置151は、非BLEセットアップモードのときには、非BLEセットアップモードであることを示すアドバタイズ情報を送信し、BLEセットアップモードのときには、BLEセットアップモードであることを示すアドバタイズ情報を送信する。これにより、情報処理装置101に、通信装置151がBLEセットアップモードであることを通知する。なお通信装置151は、非BLEセットアップモードであるときと、BLEセットアップモードであるときとで、同じ内容のアドバタイズ情報を送信してもよい。そして通信装置151は、当該同じ内容のアドバタイズ情報を受信した情報処理装置101から送信されたprobe requestを受信した場合、BLEセットアップモードであるか非BLEセットアップモードであるかに応じて異なる内容のアドバタイズ情報を送信してもよい。すなわち本実施形態では通信装置151は、BLE規格におけるアドバイザとして動作し、情報処理装置101とBLE接続した後は、BLE規格におけるスレーブとして動作する。BLEのアドバタイズ情報は、例えば、アドバタイズ情報を送受信する装置間のクロック同期用のデータであるPreamble、アドバタイズ情報に関するフレーム同期用のデータであるAccess-Address、アドバタイズ情報における実データ部分であるProtcol Data Unit(PDU)、PDU1303のデータ誤り検出符号値であるCRC、アドバタイズ情報を送受する装置間で互いの方向を検知させるために使用されるデータであるConstant Tone Extension(CTE)で構成される。さらにPDUはヘッダー、ペイロードにて構成されており、ヘッダーには、アドバタイズ情報のタイプやペイロードのサイズ情報などが格納される。ペイロードは、デバイス名、接続情報、TxPower、識別情報にて構成される。デバイス名には、情報処理装置101のユーザフレンドリーな名称が格納される。接続情報には、通信装置151とBLE接続するための接続情報が格納される。TxPowerには、アドバタイズ情報の送信電力が格納される。アドバタイズ情報を受信した端末側では、TxPowerと受信電波強度RSSI(Received Signal Strength Indication)を測定することにより、情報処理装置101との距離を計測することが可能となる。識別情報には、通信装置151の機器固有のID情報やWECに関する接続対応情報を格納し、通信装置151がWECによるセットアップが可能であることを示す。
なお通信装置151は、ユーザにより初めて電源を投入された場合や、ユーザ操作によりBLE通信を実行可能なモードとなった場合にのみBLEのアドバタイズ情報を出力することにより、ユーザが意図しないセットアップの実行を軽減する。更に特定の時間経過後にBLEセットアップモードモードを終了することにより、ユーザが意図しないセットアップの実行を軽減する。
なおBLEのアドバタイズ情報には、後述するBLE接続を許可するConnectableモードとBLE接続を許可しないNon Connectableモードが存在する。このようなモードを変更することによっても、ユーザが意図しないセットアップの実行を軽減できる。
なお通信部156と近距離無線通信部157は、少なくとも1つのアンテナを用いて行う1つの通信モジュールである1つの無線ユニットであってもよい。
RAM153は、バックアップ電源を必要とするSRAM等で構成される。なお、RAM153は、図示しないデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、通信装置151の設定情報や通信装置151の管理データ等を格納するメモリエリアもRAM153に設けられている。また、RAM153は、CPU154の主メモリとワークメモリとしても用いられ、情報処理装置101等から受信した印刷情報を一旦保存するための受信バッファや各種の情報を保存する。
ROM152は、CPU154が実行する制御プログラムやデータテーブル、OSプログラム等の固定データを格納する。本実施形態では、ROM152に格納されている各制御プログラムは、ROM152に格納されている組み込みOSの管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウェア実行制御を行う。
CPU154は、システム制御部であり、通信装置151の全体を制御する。
プリントエンジン155は、RAM153に保存された情報や情報処理装置101等から受信した印刷ジョブに基づき、インク等の記録剤を紙等の記録媒体上に付加することで記録媒体上に画像を形成し、印刷結果を出力する。なお一般に、情報処理装置101等から送信される印刷ジョブのデータ量は大きいため、印刷ジョブの通信には、高速通信が可能な通信方式を用いることが求められる。そのため、通信装置151は、近距離無線通信部157よりも高速な通信が可能な通信部156を介して、印刷ジョブを受信する。
なお、通信装置151には、外付けHDDやSDカード等のメモリがオプション機器として装着されてもよく、通信装置151に保存される情報は、当該メモリに保存されても良い。
なお本実施形態において、BLE通信は、アドバタイズ情報による通信とGeneric Attribute Profile(GATT)通信を含む。ここでは、BLE規格におけるGATT通信の概要について説明する。なおGATT通信は、GATTプロトコルによって実現される通信である。また、本実施形態において、BLE接続を介した通信は、GATT通信であるものとする。GATT通信においては、データの転送元と転送先に基づいてGATTクライアント、GATTサーバーの2つのロールが定義されている。GATTクライアントは、GATTサーバーが提供するGATTデータベース1500に対して書き込み(Write)又は読み込み(Read)の要求を送信し、GATTサーバーからの応答を受信する。本実施形態では、通信装置151がGATTサーバーとなり、情報処理装置101がGATTクライアントとする。
次に、GATTのデータ形式について説明する。GATTのデータは、サービス、キャラクタリスティック、ディスクリプタと呼ばれる3つの要素から構成される。なお、ディスクリプタは含まれなくてもよい。
サービス、キャラクタリスティック、ディスクリプタは32桁のUniversally Unique Identifier(UUID)で識別することができる。ただし、Bluetooth SIGで定義されている情報については4桁で表現される。なお、UUIDとは、ソフトウェア上でオブジェクトを一意に識別するための識別子として使用される。UUIDは128ビットの数値だが、通常は16進数で「550e8400-e29b-41d4-a716-446655440000」のように表現される。
キャラクタリスティックは、キャラクタリスティック毎に単一の値を持つ。ディスクリプタは、キャラクタリスティックに付加情報が必要な際に用いられる属性値を持つ。サービス、キャラクタリスティック、ディスクリプタは、それぞれ、GATTクライアントに対する、リード・ライトの属性やセキュリティの属性を設定することが出来る。
GATTクライアントは、サービス、キャラクタリスティックそれぞれのUUIDを指定することで、キャラクタリスティック毎に持っている値に対して、読み込み又は書き込みを実行することが出来る。ただし、読み込み又は書き込みが実行できるか否かは、各サービス、キャラクタリスティックに設定されている、読み込み属性又は書き込み属性に従う。
図2は、本実施形態における、通信装置151の近距離無線通信部157がGATTサーバーとして備えるデータベース構成の一例を示した表である。ベンダーの独自サービス名Original(Service UUID:00000000-0000-1000-1000-00405f9b34fb)には5つのキャラクタリスティックが設けられている。各々に対し読み込み属性又は書き込み属性及び保存するデータに対する暗号化有無の属性が定められている。
Bootstrapping情報1501は読み込み属性でかつ暗号化された状態で保持されている前述したWEC関連情報である。STA状態1502は通信装置151がDPP待ち受けモードを開始しているかどうかの状態が読み込み属性で保持されており、通信装置151のSTAに関する情報を得ることが可能である。Start Listen Mode1503は書き込み属性で用意されているデータベースであり、情報処理装置101が特定の値を書き込むことにより、通信装置151にDPP待ち受けモードを開始させることができる。Connect状態1504情報は、WECによって通信装置151がアクセスポイントとの状態接続の確立を成功したかに関する情報、WECによって通信装置151がアクセスポイントとの接続の確立を失敗したかに関する情報が保持される。また、失敗した原因に関する情報も含まれる。なおConnect状態1504情報には、接続前のアイドル状態に関する情報、DPP接続によりWECを実行中のDPP接続状態に関する情報、インフラ接続中を示すインフラ接続中状態に関する情報も含まれる。また、エラー状態に関する情報も含まれる。エラー状態としては、DPP認証、DPP configurationや接続先アクセスポイントとの接続、認証など各フェーズで失敗した状態がある。Device状態1505は、通信装置151における動作状態、通信状況、エラー状態などが、読み込み属性で保持される。
図3は、本実施形態のネットワークセットアップ処理において情報処理装置101が実行する処理の流れを示すフローチャートである。図2に示すフローチャートは、例えば、CPU103がROM104や外部記憶装置106等に格納された設定アプリをRAM105に読み出して実行することにより実現される。また、図2に示すフローチャートは、設定アプリが表示する画面において、ネットワークセットアップのための所定の操作(以下、設定操作)が行われたことに応じて開始される。
まずS200において、CPU103は、少なくとも設定操作が行われたときに情報処理装置101がWi-Fiによって無線接続していたアクセスポイント(以下、接続済みAP)に関する情報を取得する。なお本実施形態では、設定操作が行われた後に、情報処理装置101は接続先のアクセスポイントの切り替えを実行していないため、当該アクセスポイントは、S200において現在情報処理装置101が接続しているアクセスポイントでもある。当該情報には、情報処理装置101がWi-Fiによって無線接続しているアクセスポイントと接続するための情報(SSID、暗号化方式を示す情報等)が含まれる。なお取得された情報は、情報処理装置101のメモリの所定の記憶領域に保存される。なお設定操作が行われたときに情報処理装置101がWi-Fiによっていずれのアクセスポイントとも接続していない場合は、本処理は省略される。
次にS201において、CPU103は、情報処理装置101の周囲のBLEに対応可能な機器の検索を情報処理装置101のOSに指示し、その検索結果を設定アプリにより取得する。
次にS202において、CPU103は、S201で取得された検索結果のなかに、BLEに対応する通信装置151があるか否かを判定する。上述したように本実施形態では、BLE通信を実行可能なモードとして動作する通信装置151は、アドバタイズ情報を出力する。CPU103は、アドバタイズ情報に含まれる上述したデバイス名、接続情報、識別情報等を読み出すことにより、通信装置151がBLEに対応するか否かを判定する。CPU103は、YES判定の場合、S203に進み、NO判定の場合にS219に進む。なおCPU103は、検索されたBLEに対応する通信装置151を表示部108に表示させ、ネットワークセットアップを実行する通信装置151をユーザに選択させてもよい。そしてS203において、選択されたBLEに対応可能な通信装置151と情報処理装置101との間のBLE接続の確立を試みてもよい。
S203において、CPU103は、検索結果に含まれていた、BLEに対応可能な通信装置151と情報処理装置101との間のBLE接続の確立を試みる。
次にS204において、CPU103は、S203によりBLE接続の確立が成功したか否かを判定する。CPU103は、YES判定の場合、S205に進み、NO判定の場合にS219に進む。
S205において、CPU103は、OSから情報処理装置101のケーパビリティ情報を取得する。本実施形態では、ケーパビリティ情報には、情報処理装置101がWECに対応しているか否かを示す情報が含まれる。なおケーパビリティ情報の内容は、情報処理装置101の機種や型番等によって異なる。
次にS206において、CPU103は、設定操作が行われたときに情報処理装置101がWi-Fiによってアクセスポイントと接続しており、且つ、情報処理装置101がWECに対応しているか否かを判定する。なお本実施形態では、通信装置151は、BLE接続とWi-Fi接続を並行して維持可能である。つまり、設定操作が行われたときに情報処理装置101がWi-Fiによってアクセスポイントと接続している場合は、S206の判定時点でもアクセスポイントと接続している。そのため本実施形態では、設定操作が行われたときに情報処理装置101がWi-Fiによって接続しているアクセスポイントとは、現在情報処理装置101がWi-Fiによって接続しているアクセスポイントでもある。ここでは例えば、設定操作が行われたときに情報処理装置101がWi-Fiによってアクセスポイントと接続していない場合、NO判定となる。また例えば、設定操作が行われたときに情報処理装置101がWi-Fiによってアクセスポイントと接続していたが、情報処理装置101がWECに対応していない場合、NO判定となる。なお設定操作が行われたときに情報処理装置101がWi-Fiによってアクセスポイントと接続していたか否かは、上述の所定の記憶領域に接続済みAPに関する情報が保存されているか否かに基づいて判定される。また、情報処理装置101がWECに対応しているか否かは、S205で取得されたケーパビリティ情報の内容に基づいて判定される。CPU103は、YES判定の場合、S207に進み、NO判定の場合にS223に進む。
S207において、CPU103は、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続を介して、通信装置151から各種情報の取得を試みる。具体的には、CPU103は、上述した通信装置151のGATTデータベース1500から各種情報を読み出す。また、これにより取得される情報には、例えば、上述のWEC関連情報や、通信装置151がWECに対応しているか否かを示す情報が含まれる。なお通信装置151がWECに対応していない場合は、通信装置151がWECに対応していないことを示す情報が取得され、WEC関連情報は取得されない。また、通信装置151がWECに対応していない場合は、WEC関連情報と通信装置151がWECに対応しているか否かを示す情報の両方が取得されないこともある。一般にWEC関連情報は、通信装置151がWEC関連情報に対応するQRコードを表示部に表示し、そのQRコードを情報処理装置101がカメラユニット等で読み取ることで取得されることも可能である。しかし本実施形態では、WEC関連情報が、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続経由で取得される。この形態により、通信装置151がQRコードを表示するための表示部を有していなかったり、情報処理装置101がQRコードを読み取るためのカメラユニットを有していなかったりしても、情報処理装置101にWEC関連情報を取得させることができる。
次にS208において、CPU103は、通信装置151がWECに対応しているか否かを、S207で取得された情報に基づき判定する。通信装置151がWECに対応していることを示す情報が取得された場合、YES判定となり、通信装置151がWECに対応していることを示す情報が取得されなかった場合、NO判定となる。CPU103は、YES判定の場合、S209に進み、NO判定の場合にS223に進む。なおS207で情報を取得できなかった場合は、本判定の結果はNOとなる。
次にS209において、CPU103は、S207でWEC関連情報を通信装置151から取得できたか否かを判定する。CPU103は、YES判定の場合、S210に進み、NO判定の場合にS221に進む。なおNO判定となるケースとは例えば、通信装置151がWECに対応していることを示す情報は取得されたが、通信エラー等でWEC関連情報は取得されなかったケースである。
S210において、CPU103は、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続を介して、GATT通信によって、通信装置151のケーパビリティ情報を取得する。本実施形態では、通信装置151のケーパビリティ情報には、通信装置151が対応している暗号化方式を示す情報や通信装置151が対応している周波数帯を示す情報が含まれているものとする。通信装置151が対応している暗号化方式は例えば、WPA(Wi-Fi Protected Access)、WPA2,WPA3である。また、通信装置151が対応している周波数帯を示す情報は、通信装置151が対応している周波数帯に対応する通信チャネルを示す情報であっても良い。なお、後述する、通信装置151が対応している暗号化方式に関する判定や、通信装置151が対応している周波数帯に関する判定が実行されない形態では、本処理は省略されても良い。なおケーパビリティ情報は、設定アプリに予め含まれていても良い。すなわち、CPU103は、設定アプリに予め含まれている各通信装置の種類や型番毎に用意されている複数のケーパビリティ情報の中から、通信装置151に対応するケーパビリティ情報を特定し、特定されたケーパビリティ情報を設定アプリから取得しても良い。
次にS211において、CPU103は、S210で取得されたケーパビリティ情報に基づいて、接続済みAPとの接続に利用されていた暗号化方式が、通信装置151が対応している暗号化方式か否かを判定する。なお本実施形態では、通信装置151が対応する暗号化方式がWPA、WPA2、WPA3であり、通信装置151が対応していない暗号化方式がWEP(Wired Equivalent Privacy)である。CPU103は、YES判定の場合、S212に進み、NO判定の場合にS223に進む。なお本判定は、他のタイミングで実行されても良い。具体的には例えば、本判定は、S204-YESの後に実行され、YES判定の場合、S205に進み、NO判定の場合にS223に進むのでも良い。
次にS212において、CPU103は、接続済みAPとの接続に利用されていた暗号化方式が、WECに対応する(DPPに対応する)暗号化方式か否かを判定する。なおWECに対応する暗号化方式とは、例えば、WPA2やWPA3であり、WECに対応していない暗号化方式とは、例えば、WPAやWEPである。なおCPU103は、WECに対応する暗号化方式がいずれであるかを、設定アプリが予め保持している情報により把握しても良いし、通信装置151から取得される情報によって把握しても良い。CPU103は、YES判定の場合、S213に進み、NO判定の場合にS223に進む。
次にS213において、CPU103は、S210で取得されたケーパビリティ情報に基づいて、接続済みAPとの接続に利用されていた周波数帯が、通信装置151が対応している周波数帯か否かを判定する。なお本実施形態では、通信装置151には、2.4GHzの周波数帯と5GHzの周波数帯の両方に対応する種類のものと、2.4GHzの周波数帯には対応するが5GHzの周波数帯には対応しない種類のものがあるものとする。そして、通信装置151は、対応していない周波数帯によっては、アクセスポイントと接続することはできない。そのため例えば、接続済みAPとの接続に利用されていた周波数帯が5GHzの周波数帯であり、且つ通信装置151が5GHzの周波数帯は対応しない場合は、本判定の結果がNO判定となる。CPU103は、YES判定の場合、S214に進み、NO判定の場合にS223に進む。
S214において、CPU103は、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続を介して、通信装置151にDPP待ち受けモードの開始要求を行う。具体的には、CPU103は、GATTデータベース1500のStart Listen Mode1503に特定の値を書き込み、通信装置151にDPP待ち受けモードの開始要求を行う。
S215において、CPU103は、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続を介して、通信装置151にDPP待ち受けモードの実行がされたかの応答情報要求を行う。
S216において、CPU103は、通信装置151がDPP待ち受けモードを開始したかの判定を行う。具体的には、CPU103は、通信装置151のSTA状態1502を読み込み、DPP待ち受けモードを示す値に変更したか否かを判定する。CPU103は、YES判定の場合、S217に進み、NO判定の場合、本判定を繰り返す。つまり、S216においてNO判定の場合、読み込んだSTA状態1502の値がDPP待ち受けモードを示す値に変更するまで繰り返し読み続ける。
S217において、CPU103は、取得したWEC関連情報を用いてWECを実行する。なお本処理は、CPU103は、設定アプリにより、OSにWECの実行を要求することで実現される。すなわち、設定アプリは、WECを直接的に実行するのではなく、WECを実行するための制御として、OSへのWEC実行要求を行う。本処理の詳細は後述する。
S218において、CPU103は、実行されたWECによって、アクセスポイントと通信装置151との間の接続の確立が成功したか否かを判定する。本判定は、WECの実行がキャンセルされたか否かの情報や、通信装置151から取得される、アクセスポイントとの接続の成否を示す情報に基づいて実行される。具体的には、通信装置151のConnect状態1504情報に基づいて実行される。CPU103は、GATT通信によって取得される通信装置151のConnect状態1504情報を特定の間隔で繰り返し読み込み、通信装置151とアクセスポイントとの接続の確立が成功したか否かを判定する(不図示)。CPU103は、YES判定の場合、処理を終了し、NO判定の場合にS219に進む。また設定アプリは、通信装置151の状態をユーザに通知(表示)してもよい。
S219において、CPU103は、実行されたWECによって、アクセスポイントと通信装置151との間の接続の確立が成功しなかった原因が特定の原因であるかを判定する。なお本実施形態では、実行されたWECによって、アクセスポイントと通信装置151との間の接続の確立が成功しなかった原因に関する情報が、通信装置151から取得されるものとし、当該情報に基づいて本判定が実行されるものとする。また本実施形態では、特定の原因は、例えば、WECにおける通信がエラーになったこと(原因1)や、情報処理装置101とアクセスポイントとの接続に用いられる暗号化方式が通信装置151が対応していない暗号化方式であったこと(原因2)である。また例えば、情報処理装置101とアクセスポイントとの接続に用いられる暗号化方式がWECが対応していない暗号化方式であったこと(原因3)である。なお、原因2や原因3による接続の失敗は、S222-YESの後にWECが実行された場合に生じうる。これは、S222-YESの後にWECが実行される場合は、S215の後にWECが実行される場合と異なり、通信装置151のケーパビリティ情報が取得されておらず、S211やS212のような判定が実行されていないためである。CPU103は、YES判定の場合、S223に進み、NO判定の場合には処理を終了する。
なおS218やS219の処理は省略されても良い。具体的には例えば、S217の後に、S218やS219が実行されることなく処理が終了されても良い。また、S218-NOの場合に、S219が実行されることなく処理が終了されても良い。
次に、S202-NOの場合や、S204-NOの場合に実行されるS220について説明する。S220では、CPU103は、設定操作が行われたときに情報処理装置101がWi-Fiによってアクセスポイントと接続していたか否かを判定する。本判定は、上述の所定の記憶領域にアクセスポイントに関する情報が保存されているか否かに基づいて実行される。CPU103は、YES判定の場合、S221に進み、NO判定の場合に処理を終了する。
S221では、S207におけるWEC関連情報の取得方法とは異なる方法で、WEC関連情報の取得を試みる。具体的には例えば、上述した、QRコードの読み取りによるWEC関連情報の取得を試みる。図4は設定アプリが表示するQRコード撮影用の画面の一例である。QRコード撮影用の画面300には枠301が表示されており、さらに画面300には、情報処理装置101が備えるカメラユニットにより撮影されている画像が表示される。ユーザは、カメラユニットにより撮影されており、通信装置151が表示するQRコードが枠301に収まるように、情報処理装置101を操作する。枠301にQRコードが収まったことが検知された場合、CPU103は、QRコードの解析を行い、WEC関連情報を取得する。なおWEC関連情報の取得はこの形態に限定されず、例えば、NFCによって通信装置151からWEC関連情報を取得しても良い。さらに、ネットワークセットアップモードとして動作する通信装置151が有効化しているアクセスポイントと情報処理装置101との間のWi-Fi接続によって、通信装置151からWEC関連情報を取得しても良い。なお、通信装置151がWECに対応していない場合、QRコードの表示や、NFCによるWEC関連情報の送信を通信装置151は実行できない。その場合はCPU103は、ユーザから設定アプリ上でキャンセル操作を受け付けることで、処理を終了する。
次にS222では、S221においてWEC関連情報を取得できたか否かを判定する。CPU103は、YES判定の場合、S217に進み、NO判定の場合、処理を終了する。なお例えば、S221で読み取られたQRコードが、WEC関連情報を取得させるためのQRコードではなかった場合や、QRコードの読み取りが失敗した場合に、NO判定となる。またNO判定の場合、CPU103は、処理を終了せず、S223に進んでも良い。また、S222-YESの場合に、CPU103は、接続済みAPとの接続に利用されていた暗号化方式が、WECに対応する(DPPに対応する)暗号化方式か否かを判定しても良い。そしてCPU103は、YES判定の場合、S217に進み、NO判定の場合、処理を終了したり、S223に進んでも良い。なおこの場合CPU103は、WECに対応する暗号化方式がいずれであるかを、設定アプリが予め保持している情報により把握しているものとする。
このように本実施形態では、BLEを実行可能モードとして動作する通信装置151と情報処理装置101との間のBLE接続によってWEC関連情報が取得できない場合には、他の方法でWEC関連情報の取得を試みる。具体的には例えば、QRコードの読み取りでのWEC関連情報の取得を試みる。これにより、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続によってWEC関連情報が取得できない場合であっても、WECを実行することができる。
次に、S206-NOの場合や、S208-NOの場合、S211~213-NOの場合、S219-YESの場合に実行されるS223について説明する。S223では、CPU103は、WECと異なる方法によって、通信装置151のネットワークセットアップを実行する。本実施形態では、WECと異なる方法とは、WEC用のプロトコル(DPP)と異なるプロトコルであるセットアップ用通信プロトコルを用いて通信装置151のネットワークセットアップを実行する方法である。本処理の詳細は後述する。その後処理を終了する。
なお上述のフローチャートにおける処理の内容は、上述した内容に限定されない。例えばCPU103は、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続によってWEC関連情報が取得できない場合、他の方法でWEC関連情報の取得を試みることなく処理を終了しても良い。BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続によってWEC関連情報が取得できない場合とは具体的には例えば、S202-NOの場合や、S204-NOの場合、S209-NOの場合である。すなわち、S202-NOの場合や、S204-NOの場合、S209-NOの場合、その後の処理(S220~S222)が実行されることなく処理が終了されても良い。
また例えば、上述では、S207の後に、S208とS209の2つの判定が行われていたがこの形態に限定されない。例えば、S207の後に、S208とS209の2つの判定の代わりに、WEC関連情報が取得されたか否かの判定が実行されても良い。そして、判定結果がYESの場合にS210に進み、判定結果がNOの場合にS223に進み、S221~S222の処理は実行されない形態であっても良い。
なお本実施形態では、通信装置151が対応する暗号化方式のなかに、WECに対応する暗号化方式が包含されている。そのため、S211の判定が実行されない形態であっても良い。具体的には例えば、S210の後に、S211の判定が実行されず、S212の判定が実行されても良い。
また例えば、通信装置151が対応する暗号化方式がWPA3のみであり、WECに対応する暗号化方式がWPA2、WPA3である形態等、WECが対応する暗号化方式のなかに通信装置151に対応する暗号化方式が包含されている形態であっても良い。その場合は、S212の判定が実行されない形態であっても良い。具体的には例えば、S211―YESの後に、S212の判定が実行されず、S213の判定が実行されても良い。
次に図5を用いて、S216において情報処理装置101と通信装置151によって実行される処理を説明する。図5に示すシーケンスは、例えば、各装置のCPUが各装置のROMや外部記憶装置等に格納されたプログラムを各装置のRAMに読み出して実行することにより実現される。
まずS400において情報処理装置101は、OSの機能により、DPPを利用したWECを開始する。具体的にはまず情報処理装置101は、WEC開始画面の表示指示を設定アプリからOSに指示することで、WEC開始画面を表示する。図5は、WEC開始画面の一例である。WEC開始画面300には領域501、502、503が表示されている。領域501は、WECによる設定対象として設定されているアクセスポイントを変更するための領域である。なお領域501が操作される前は、WECによる設定対象として設定されているアクセスポイントは、情報処理装置101が現在接続しているアクセスポイントである。情報処理装置101は、領域501が選択された場合、アクセスポイントのリストを表示し、リストからユーザによって選択されたアクセスポイントを、WECによる設定対象として新たに設定する。なおアクセスポイントのリストには例えば、情報処理装置101がAPサーチにより発見したアクセスポイントや、情報処理装置101が接続したことがあるアクセスポイント等が含まれるものとする。領域502は、WECの実行をキャンセルするための領域であり、領域503は、WECの実行を指示するための領域である。情報処理装置101は、領域502が操作された場合、本シーケンス図における処理を終了し、S217に進む。なおこの場合、WECが失敗したものとしてみなされる。また、情報処理装置101は、領域503が押下された場合、S401に進む。
S401では、WEC用アプリが、WEC関連情報やWECによる設定対象として設定されているアクセスポイントに関する情報を用いてWEC用のAPIを実行することにより、OSにWECの実行が指示される。そして、OSの機能により、情報処理装置101と通信装置151との間で、DPP Authenticationと呼ばれる処理が実行される。DPP Authenticationにおいては、情報処理装置101と通信装置151との間で、認証情報や、情報の暗号化に利用される情報などが通信されることで、装置間の通信の認証が行われる。なおDPP Authenticationにおける通信において情報処理装置101から送信される各種情報は、後述する処理により情報処理装置101によって予め取得されているWEC関連情報に基づき暗号化される。DPP Authenticationにおいては具体的にはまず情報処理装置101が、DPPによるネットワークセットアップ要求としてAuthentication Requestを送信する。次に、DPPモードとして動作する通信装置151は、Authentication Requestを待ち受けるモードであるDPP待ち受けモードとして動作しているため、情報処理装置101から送信された当該Requestを受信する。Authentication Requestを受信した通信装置151は、受信したRequestを、自身が現在有している復号鍵による復号化を試みる。そして通信装置151は、当該復号化に成功した場合、Authentication responseを情報処理装置101に送信し、情報処理装置101との通信を認証する。なお、情報処理装置101が、正確なWEC関連情報を取得できておらず、正確に情報を暗号化できていなかった場合は、通信装置151における復号化が失敗するため、認証は失敗し、Authentication responseが送信されない。Authentication responseが情報処理装置101によって受信されることで、DPP Authenticationが完了する。またDPP Authenticationにおいては、DPPが用いられて通信が実行される。
次にS402において、OSの機能により、情報処理装置101と通信装置151との間で、DPP Configurationと呼ばれる処理が実行される。DPP Configurationにおいては、情報処理装置101は、WECによる設定対象として設定されているアクセスポイントと接続するための接続情報をWECにより通信装置151に送信する。なお接続情報には、WECによる設定対象として設定されているアクセスポイントのSSIDやパスワード、暗号化方式を示す情報等が含まれる。このとき送信されるパスワードは、情報処理装置101とアクセスポイントとの間の接続が確立される際にOS対応のアプリが表示する画面上においてユーザによって入力された情報である。そして、情報処理装置101とアクセスポイントとの間の接続が確立された際にOSにより保持された情報である。またパスワードは、設定アプリは保持していない情報である。また、このとき送信されるパスワードは、OSが既に保持している情報であり、且つDPP ConfigurationはOSによって実行される処理であるため、設定アプリが表示する画面上において新たにユーザによって入力される必要はない。本実施形態のようにWECによって接続情報を送信することで、設定アプリが表示する画面上においてユーザからパスワードの入力を新たに受け付けることなく且つ、セキュアな通信で、パスワードを通信装置151に送信することができる。なおDPP Configurationにおいても、DPPが用いられて通信が実行される。
S403では、通信装置151は、BLEセットアップモードを終了し、インフラストラクチャモードに移行する。また通信装置151は、GATTデータベースのConnect状態1504情報をDPP接続状態に変更し、DPP Configurationにより、指定されたアクセスポイントに対して接続中である状態を示す。なおBLEセットアップモードやBLE接続は終了せず、維持されていてもよい。そして通信装置151は、WECによって取得した接続情報を用いて、当該接続情報に対応するアクセスポイントとの接続を試みる。接続が成功した場合、以後、通信装置151は、接続したアクセスポイントが形成するネットワークを介して通信を実行可能となる。通信装置151はアクセスポイントとの接続が成功した場合には、Connect状態1504情報の情報を接続が成功したことを示す情報に変更する。また、アクセスポイントとの接続が失敗した場合には、Connect状態1504情報の情報を接続が失敗したことを示す情報に変更する。また、失敗した原因をConnect状態1504情報に保存する。そして、通信装置151は、アクセスポイントとの接続が確立したか否かの情報を情報処理装置101に送信する。なお具体的には、情報処理装置101は、例えばBLE通信を介してConnect状態1504情報を読み込むことで、通信装置151の状態を確認することが出来る。なお接続したアクセスポイントが形成するネットワークを介した通信は、DPPとは異なるプロトコル(具体的には例えば、Port9100やSNMP、通信装置151のベンダー独自のプロトコル)によって実行される。なお通信装置151は、WECによって取得した接続情報に対応するアクセスポイントとの接続の成否を示す情報を、情報処理装置101に送信しても良い。また、さらに、WECによって取得した接続情報に対応するアクセスポイントとの接続が失敗した場合は、失敗した原因を示す情報を、情報処理装置101に送信しても良い。またこれらの情報送信は、DPPが用いられて実行されてよいし、維持されているBLE接続によって実行されてもよい。なおWECによって取得した接続情報に対応するアクセスポイントとの接続が失敗する原因は、WECにおける通信のエラーや、当該アクセスポイントが発見されなかったことや、通信装置151から取得されたWEC関連情報が適切な情報でなかったこと等である。また例えば、WECによる設定対象として設定されているアクセスポイントとの接続に用いられる暗号化方式が通信装置151が対応していない暗号化方式であったこと等である。また例えば、WECによる設定対象として設定されているアクセスポイントとの接続に用いられる暗号化方式がWECが対応していない暗号化方式であったこと等である。なお情報処理装置101は、WECによって取得した接続情報に対応するアクセスポイントとの接続の成否を示す情報を表示部108に表示してもよい。さらに、WECによって取得した接続情報に対応するアクセスポイントとの接続が失敗した場合は、失敗した原因を示す情報を表示部108に表示してもよい。
S404では、情報処理装置101は、自身が属するネットワーク上で、通信装置151を検索する。本処理は、WECの実行が終わったことの通知をOSから受け取った設定アプリにより実現される。なおWECの実行が終わった状態とは、DPP configurationが成功した状態である。そして情報処理装置101は、通信装置151が発見された場合に、通信装置151にケーパビリティ情報を要求し、通信装置151はケーパビリティ情報を情報処理装置101に送信する。これにより、設定アプリ上に、通信装置151の情報を登録し、以後、設定アプリによって通信装置151との通信を実行可能とする。具体的には例えば、設定アプリによって通信装置151に印刷ジョブを送信可能とする。なおこのとき、WECによって通信装置151が接続したアクセスポイントによって形成されるネットワークに情報処理装置101が属している場合には、当該アクセスポイントを介して通信装置151との通信が実行可能となる。また、通信装置151が接続したアクセスポイントが、情報処理装置101が接続しているアクセスポイントでなかった場合等、情報処理装置101と通信装置151との間の通信が実行できない場合は、ケーパビリティ情報の要求や取得は省略される。なおS404における通信は、例えば、DPPともセットアップ用通信プロトコルとも異なる通信プロトコル(具体的には例えば、CHMP)が利用されて実行される。その後情報処理装置101は、本シーケンス図における処理を終了し、S218に進む。
次に図7を用いて、S223において情報処理装置101と通信装置151によって実行される処理を説明する。図6に示すシーケンスは、例えば、各装置のCPUが各装置のROMや外部記憶装置等に格納されたプログラムを各装置のRAMに読み出して実行することにより実現される。
S600では、情報処理装置101は、設定アプリにより、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続を介して、アクセスポイントのリストを通信装置151に要求する。
次にS601では、通信装置151は、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続を介して、アクセスポイントのリストを情報処理装置101に送信する。なおここで送信されるリストは、通信装置151がAPサーチを実行することにより発見された、通信装置151が接続可能な1または複数のアクセスポイントを示すリストである。
次にS602では、情報処理装置101は、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続を介して、受信したリストに含まれるいずれかのアクセスポイントの接続情報を通信装置151に送信する。なお本処理は、設定アプリが、受信したリストに含まれるいずれかのアクセスポイントの接続情報を送信するよう情報処理装置101を制御することで実現される。本処理において具体的には情報処理装置101は、受信したリストに、接続済みAPが含まれる場合、接続済みAPの接続情報を送信する。本実施形態では、リストには通信装置151が接続可能なアクセスポイントのみが含まれるため、受信したリストに接続済みAPが含まれる場合とはすなわち、接続済みAPに通信装置151が接続可能な場合である。また、受信したリストに、接続済みAPが含まれなかった場合、情報処理装置101は、受信したリストを表示し、リストからいずれかのアクセスポイントの選択をユーザから受け付ける。そして情報処理装置101は、選択されたアクセスポイントの接続情報を送信する。本実施形態では、リストには通信装置151が接続可能なアクセスポイントのみが含まれるため、受信したリストに接続済みAPが含まれない場合とはすなわち、接続済みAPに通信装置151が接続できない場合である。また、通信装置151に対応していない暗号化方式によって接続可能なアクセスポイントは、通信装置151が接続可能でないため、リストには含まれない。また、通信装置151に対応していない周波数帯によって接続可能なアクセスポイントは、通信装置151が接続可能でないため、リストには含まれない。そのため、S211-NOの場合や、S213-NOの場合に実行されるS223では、接続済みAPとは異なるアクセスポイントの接続情報が送信されることとなる。なお、S212-NOの場合は、接続済みAPと通信装置151が接続可能である場合もあるため、接続済みAPの接続情報が送信されることも、接続済みAPとは異なるアクセスポイントの接続情報が送信されることも起こりうる。なおこの形態に限定されず、必ずリストを表示してアクセスポイントの選択をユーザから毎回受け付けても良い。なお接続情報が送信される前に、情報処理装置101は、アクセスポイントと接続するためのパスワードの入力を設定アプリが表示する画面上でユーザから受け付ける。そして、受け付けたパスワードを接続情報に含めて、接続情報を送信する。
S603では、通信装置151は、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続を介して、接続情報を受信したことを情報処理装置101に通知する。
S604では、通信装置151は、BLEセットアップモードを終了し、インフラストラクチャモードに移行する。なおBLEセットアップモードやBLE接続は終了せず、維持されていてもよい。そして通信装置151は、S602で取得した接続情報を用いて、当該接続情報に対応するアクセスポイントとの接続を試みる。接続が成功した場合、以後、通信装置151は、接続したアクセスポイントが形成するネットワークを介して通信を実行可能となる。
S605では、情報処理装置101は、設定操作が行われたときに情報処理装置101がWi-Fiによって接続していたアクセスポイントとは異なる他のアクセスポイントの接続情報を通信装置151に送信していた場合、当該他のアクセスポイントと接続する。なお情報処理装置101が、設定操作が行われたときに情報処理装置101がWi-Fiによって接続していたアクセスポイントの接続情報を通信装置151に送信していた場合は、本処理は省略される。
S606では、情報処理装置101は、設定アプリにより、自身が属するネットワーク上で、通信装置151を検索する。そして情報処理装置101は、通信装置151が発見された場合に、通信装置151にケーパビリティ情報を要求し、通信装置151はケーパビリティ情報を情報処理装置101に送信する。これにより、設定アプリ上に、通信装置151の情報を登録し、以後、設定アプリによって通信装置151との通信を実行可能とする。具体的には例えば、設定アプリによって通信装置151に印刷ジョブを送信可能とする。なおこのとき、ネットワークセットアップによって通信装置151が接続したアクセスポイントによって形成されるネットワークに情報処理装置101が属している場合には、当該アクセスポイントを介して通信装置151との通信が実行可能となる。なお、通信装置151が接続したアクセスポイントが、情報処理装置101が接続しているアクセスポイントでなかった場合等、情報処理装置101と通信装置151との間の通信が実行できない場合は、ケーパビリティ情報の要求や取得は省略される。なおS606における通信は、例えば、DPPとは異なる通信プロトコル(具体的には例えば、CHMP)が利用されて実行される。その後情報処理装置101は、本シーケンス図における処理を終了する。
なお、上述のシーケンス図における処理の内容は、上述した内容に限定されない。例えば、受信したリストに、設定操作が行われたときに情報処理装置101がWi-Fiによって接続していたアクセスポイントが含まれなかった場合、情報処理装置101はアクセスポイントの接続情報を送信しなくてもよい。そして、通信装置151とアクセスポイントとの間の接続確立が試みられなくても良い。そして、APモード時に通信装置151内で有効化されるアクセスポイントの接続情報を通信装置151から受信し、APモードで動作する通信装置151と情報処理装置101との間の接続確立を試みても良い。その形態の場合、通信装置151は、APモード時に通信装置151内で有効化されるアクセスポイントの接続情報を送信した後、APモードに移行する。
図8、図9は、本実施形態のネットワークセットアップ処理において通信装置151が実行する処理の流れを示すフローチャートである。本実施形態では通信装置151がセットアップモードでの動作を開始する条件は、第1条件と第2条件を含むものとする。第1条件は、「初期設定が完了していない状態の通信装置151に対して電源ON操作が実行されて、通信装置151に電源が投入されたこと」である。第2条件は、「電源がONされている状態の通信装置151にネットワークセットアップのための所定の操作が行われたこと」である。第1条件に基づいて開始されるセットアップモードでの処理及び、第2条件に基づいて開始されるセットアップモードでの処理についてそれぞれ図8、図9を用いて説明する。
まず、第1条件に基づいて開始されるセットアップモードでの処理について説明する。通信装置151は、工場出荷状態(着荷状態)においてユーザにより初めて電源ON操作が実行されたこと(すなわち第1条件)に基づいて、初期設定を行う。なお工場出荷状態とは例えば、通信装置151が初期設定を完了していない状態に相当する。例えば、通信装置151は、インクタンクやプリントヘッド等が装着されていない状態で工場から出荷される。よって、通信装置151は、初期設定として例えば、同梱されたインクタンクやプリントヘッド等を通信装置151に装着するようにユーザに促す処理、レジ調整、プリントヘッドのクリーニング処理などの、通信装置151を使用可能にするための処理を行う。通信装置151が工場出荷状態であるか否かは、ROM152やメモリ等に保存されるフラグ(初期起動フラグ)を用いて制御される。通信装置151は、初期設定が完了したことに応じて初期起動フラグの状態を変化させ、初期設定の完了以降は通信装置151の電源がONされたとしても初期設定が起動されないように構成されている。通信装置151を利用するためには、通信装置151のネットワークセットアップが実行されることが好ましいため、本実施形態では初期設定時にネットワークセットアップ処理が実行される。
図8は、通信装置151に対して電源ON操作が実行された場合に通信装置151が実行する処理を示すフローチャートである。図8に示すフローチャートは、例えば、CPU154がROM152やメモリ等に格納された設定アプリをRAM153に読み出して実行することにより実現される。また、図8に示すフローチャートは上述した電源ON操作が行われたことに基づいて開始される。
S700において、CPU154は、ROM152やメモリ等に保存されている初期起動フラグを参照し、通信装置151が初期起動状態であるか否かを判定する。例えば初期起動フラグは、通信装置151の工場出荷時に初期起動状態であることを示す特定の値にセットされている。CPU154は、S700でNO判定の場合、S701に進み、S700でYES判定の場合、S703に進む。なおS700でNO判定の場合とは、通信装置151の初期設定が既に完了している状態で、通信装置151の電源がONされた場合である。
S701において、CPU154は、ROM152やメモリ等に保存された設定済みの接続モードに応じた処理を実行する。例えば、通信装置151がユーザにより電源を落とされたときにWi-Fiによってアクセスポイントと無線接続しており、インフラ接続モードが設定されていた場合は、アクセスポイントと接続する。
S702において、CPU154は、待機画面(ホーム画面)を表示し、本フローチャートの処理を終了する。
S703において、CPU154は、BLEセットアップモードでの動作を通信装置151に開始させる。具体的には、CPU154は、上述したBLEのアドバタイズ情報を発信する。さらに、CPU154は、所定の時間が経過したらBLEセットアップモードを終了するためBLE通信を実行可能なモードのタイムアウト用タイマを起動し、BLEセットアップモードでの動作が開始されてからの経過時間をカウントする。
S704において、CPU154は、情報処理装置101から、通信装置151との接続要求を受信する。
S705において、CPU154は、通信装置151と情報処理装置101との間のBLE接続を確立する。
S706において、CPU154は、S706で確立されたBLE接続を介して、情報処理装置101からWECに関する各種情報の要求を受信する。
S707において、CPU154は、通信装置151のWECに関する各種情報を情報処理装置101に送信する。具体的には、情報処理装置101によってGATTデータベース1500のSTA状態1502が読み出される。例えば、通信装置151のWECに関する各種情報には上述のWEC関連情報や、通信装置151がWECに対応しているか否かを示す情報が含まれる。なお、WECに対応しているか否かを示す情報とは、通信装置151が、DPPに対応しているか否かを示す情報である。なお通信装置151がWECに対応していない場合は、通信装置151がWECに対応していないことを示す情報が送信され、WEC関連情報は送信されない。また、通信装置151がWECに対応していない場合は、WEC関連情報と通信装置151がWECに対応しているか否かを示す情報の両方が送信されなくても良い。
S708において、CPU154は、DPP待ち受けモードの開始要求を受信する。具体的には、GATTデータベース1500のStart Listen Mode1503に特定の値が書き込まれることにより、DPP待ち受けモードの開始要求を受信する。
S709において、CPU154はDPP待ち受けモードでの動作を通信装置151に開始させる。具体的には、CPU154は、GATTデータベース1500のSTA状態1502の値をDPP待ち受けモードを示す値に変更する。なおDPP待ち受けモードについては図10において後述する。また、DPP待ち受けモードのタイムアウト用タイマを起動し、DPP待ち受けモードでの動作が開始されてからの経過時間をカウントする。
S710において、CPU154は、DPP待ち受けモードを開始したか否かに関する情報の応答情報要求を受信する。
S711において、CPU154は、DPP待ち受けモードを開始したか否かに関する情報を情報処理装置101に送信する。具体的には、情報処理装置101によってGATTデータベース1500のDPP待ち受けモードを示す値に変更されたSTA状態1502が読み出される。
S712において、CPU154は、BLE通信を用いたネットワークセットアップの実行要求を受信したかを判定する。具体的には、通信装置151は、情報処理装置からアクセスポイントのリストの要求を受信したかを判定する。通信装置151は、S712でYES判定の場合、S713に進み、S712でNO判定の場合、S715に進む。
S713において、CPU154は、BLE通信を用いたネットワークセットアップを実行する。具体的には、図7において説明した処理のうち、通信装置151が実行する処理として説明した処理を実行する。
S714において、CPU154は、DPP待ち受けモードを終了し、本フローチャートを終了する。なおBLEセットアップモードでの動作の終了と、DPP待ち受けモードの終了は、BLE通信を用いたネットワークセットアップの実行後であればどちらが先に行われてもよい。すなわち、CPU154は、DPP待ち受けモードを終了した後、BLEセットアップモードでの動作を終了してもよい。また、BLEセットアップモードでの動作の終了と、DPP待ち受けモードの終了が、同時に行われてもよい。
S712-NOの場合に実行されるS715において、CPU154は、DPPを用いたネットワークセットアップ(WEC)の実行要求を受信したかを判定する。具体的には、CPU154は、情報処理装置101から、上述したDPP AuthenticationにおいてDPPによるネットワークセットアップ要求を受信したかを判定する。CPU154は、S715でYES判定の場合、S716に進み、S715でNO判定の場合、S718に進む。なおCPU154は、DPPによるネットワークセットアップ要求の待ち受けタイムアウト用のタイマを起動してもよい。この場合、WEC実行要求の待ち受けタイムアウト用のタイマによるカウント値が閾値を超えた場合にDPP通信で使用されるチャネルを変更してもよい。さらに、CPU154は、DPP通信で使用されるチャネルを所定の回数以上変更してもDPPによるネットワークセットアップ要求を受信できなかった場合、S719に進んでもよい。そして、CPU154は、DPP待ち受けモードを終了してBLE通信を用いたネットワークセットアップの実行要求を待ち受けてもよい。
S716において、CPU154は、DPPを用いたネットワークセットアップを実行する。具体的には、図5において説明した処理のうち、通信装置151が実行する処理として説明した処理を実行し、本フローチャートを終了する。DPPを用いたネットワークセットアップ(WEC)については、図11を用いて後述する。なおCPU154は、Connect状態1504情報をインフラ接続中状態を示す情報に変更する。
S717において、CPU154は、実行されたWECによって、情報処理装置101が接続しているアクセスポイントと通信装置151との間の接続の確立が成功したか否かを判定する。本判定は、通信装置151と情報処理装置101との接続が成功した場合、すなわち通信装置151がDPP Configurationで受信したアクセスポイントに接続した場合に成功と判定される。そして、CPU154は、Connect状態1504情報をインフラ接続が成功したことを示す状態に変更する。また、S716における図11の各判定において、NOであると判定され、アクセスポイントに接続せずにDPP待ち受けモードを終了する処理が実行された場合に失敗と判定される。さらに、図11のS1311において通信装置151がアクセスポイントに接続した場合であっても、接続したアクセスポイントが、DPP Configurationで受信したアクセスポイントではない他のアクセスポイントであった場合にも失敗と判定される。なお本実施形態では、DPP Configurationで受信したアクセスポイントは情報処理装置101が接続しているアクセスポイントであるが、アクセスポイントに通信装置151が接続しているのであれば、当該アクセスポイントが情報処理装置101が接続しているアクセスポイントでなかった場合であっても、成功と判定されても良い。CPU154は、S717においてYESと判定された場合、本フローチャートの処理を終了し、S717においてNOと判定された場合、S720に進む。なおCPU154は、S716における図11の各判定においてYESであると判定された場合にWECが成功したと判定し、アクセスポイントに接続してからDPP待ち受けモードを終了してもよく、処理の順序は問わない。そしてCPU154は、S720においてBLE通信を用いたネットワークセットアップの実行要求を受信したと判定された場合にS721に進み、BLE通信を用いたネットワークセットアップを実行する。つまり、実行されたWECによって、アクセスポイントと通信装置151との間の接続の確立が失敗した場合、BLE通信を用いたネットワークセットアップが実行される。これにより、アクセスポイントと通信装置151との間の接続の確立をより確実に遂行できる。
S718において、CPU154は、DPP待ち受けモードのタイムアウト用タイマがカウントした値が閾値を超えて、DPP待ち受けモードがタイムアウトしたかを判定する。CPU154は、S718でYES判定の場合、S719に進み、S718でNO判定の場合、S712に戻る。
S719において、CPU154は、DPP待ち受けモードを終了し、S720に進む。
S720、S721は、それぞれS712、S713と同様の処理のため説明を省略する。なおS720でYES判定の場合、S721に進み、S722でNO判定の場合、S722に進む。
S722において、CPU154は、BLEセットアップモードのタイムアウト用タイマがカウントした値が閾値を超えて、BLE通信を実行可能なモードがタイムアウトしたかを判定する。CPU154は、S722でYES判定の場合、S723に進み、S722でNO判定の場合、S720に戻る。
S723において、CPU154は、BLEセットアップモードでの動作を終了し、BLEのアドバタイズ情報の発信を終了する。これにより、ユーザが意図しないセットアップを軽減する。そしてCPU154は、本フローチャートを終了する。
なお、CPU154は、初期設定が完了した後、ROM152やメモリ等に保存されている初期起動フラグの値を、初期起動状態を示す値から非初期起動状態を示す値へと変更する。なお、非初期起動状態は、初期設定が完了した状態に相当する。これにより、初期設定が完了し、次回以降ユーザにより通信装置151の電源が投入された場合は図8のフローチャートは実行されない。
次に、第2条件に基づいて開始されるセットアップモードでの動作におけるセットアップ処理について説明する。
図9は、通信装置151が実行するセットアップ処理を示すフローチャートである。図9に示すフローチャートは、例えば、CPU154がROM152やメモリ等に格納された設定アプリをRAM153に読み出して実行することにより実現される。図9のフローチャートは、上述した第2条件が満たされたことに基づいて実行される。
S800において、通信装置151は、設定操作が行われたときに通信装置151に接続モードが設定されているか否かを判定する。通信装置151は、S800でYESと判定された場合、S801に進み、S800でNOと判定された場合、S802に進む。
S801において、通信装置151は、少なくとも設定操作が行われたときに通信装置151が設定されている接続モードを無効にする。例えば、少なくとも設定操作が行われたときに通信装置151にインフラ接続モードが設定されており、通信装置151がWi-Fiによってアクセスポイントと無線接続している場合は、インフラ接続モードを無効化してアクセスポイントとの接続を切断する。また、通信装置151は、少なくとも設定操作が行われたときに通信装置151が設定されている接続モードに関する情報を取得し、ROM152やメモリ等に保存する。これは、後述するS822において、少なくとも設定操作が行われたときに通信装置151が設定されていた接続モードに再接続する際に必要な情報であるためである。例えば、少なくとも設定操作が行われたときに通信装置151がWi-Fiによって無線接続していたアクセスポイントに関する情報を取得し、ROM152やメモリ等に保存する。当該情報には、通信装置151がWi-Fiによって無線接続しているアクセスポイントと接続するための情報(SSID、暗号化方式を示す情報等)が含まれる。なお少なくとも設定操作が行われたときに接続モードが設定されていない場合は、接続モードに関する情報の取得は省略される。
S802~S822は、S703~S723と同様の処理であるため説明を省略する。
S823において、通信装置151は、S801において取得した、少なくとも設定操作が行われたときに通信装置151が設定されている接続モードに関する情報によって、少なくとも設定操作が行われたときに設定されていた接続モードに再接続する。例えば、少なくとも設定操作が行われたときに通信装置151がWi-Fiによって無線接続していたアクセスポイントに再接続する。
ここで、図8のS709と図9のS808における処理を図10を用いて説明する。
図10は、DPP待ち受けモード開始処理の内容を示すフローチャートである。図10に示すフローチャートは、例えば、CPU154がROM152やメモリ等に格納された設定アプリをRAM153に読み出して実行することにより実現される。また、図10に示すフローチャートは、通信装置151が情報処理装置101からDPP待ち受けモ-ドの開始要求を受信したことに基づいて開始する。
S1001において、CPU154は、DPP通信の待ち受けチャネルを決定する。DPP通信の待ち受けチャネルとは、情報処理装置101から送信されるDPPによるネットワークセットアップ要求を待ち受けるチャネルのことである。また、DPP Authentication及びDPP configuration処理も同じチャネルが使用される。なお、DPP通信の待ち受けチャネルにどのチャネルを使用するかは、例えば、ユーザが通信装置151の操作画面から設定してもよい。
S1002において、CPU154は、上述した、情報処理装置101とセキュアな通信を行うために用いられる公開鍵情報を生成する。
S1003において、CPU154は、上述したBootstrapping情報を生成する。Bootstrapping情報には、例えば、通信装置151の識別情報(MACアドレス等)や、DPP通信の待ち受けチャネルに関する情報、S1002で生成された公開鍵情報などが含まれる。
S1004において、CPU154は、DPP待ち受けモードを開始する。DPP待ち受けモードが開始されると、通信装置151と情報処理装置101との間でDPP接続が確立され、DPP Authenticationにおける通信が可能となる。
S1005において、CPU154は、DPP待ち受けモードタイムアウト用タイマを起動する。なおCPU154は、DPP待ち受けモードでの動作を開始した後、所定の時間が経過したら、DPP待ち受けモードでの動作を終了する。これは、DPP待ち受けモードの動作を終了することで、BLE通信を用いたネットワークセットアップ処理に移行するためである。具体的には、S717又はS816においてDPP待ち受けモードタイムアウト用タイマがカウントした値が閾値を超えて、ネットワークセットアップモードのタイムアウトが発生すると、CPU154は、DPP待ち受けモードを終了する。
そして、CPU154は、図8のS710又は図9のS809の処理に進む。
ここで、図8のS716と図9のS815における処理を図11を用いて説明する。
図11は、DPPを用いたネットワークセットアップ(WEC)の実行処理を示すフローチャートであり、図5のシーケンスにおける通信装置151の動作に相当する。図11に示すフローチャートは、例えば、CPU154がROM152やメモリ等に格納された設定アプリをRAM153に読み出して実行することにより実現される。また、図11のフローチャートは、通信装置151が情報処理装置101からのDPP Authentication処理におけるWECの実行要求を受信したことに基づいて開始される。
S1301において、CPU154は、DPP Authentication処理を実行する。上述したように、DPP Authentication処理においては、情報処理装置101と通信装置151との間で、認証情報や、情報の暗号化に利用される情報などが通信されることで、装置間の通信の認証が行われる。なおDPP Authenticationにおいては、DPPが用いられて通信が実行される。
S1302において、CPU154は、情報処理装置101とのDPP Authentication処理が成功したか否かを判定する。上述したように、DPP Authenticationにおける通信において情報処理装置101から送信される各種情報は、情報処理装置101によって図2に示す処理において取得されているWEC関連情報に基づき暗号化される。CPU154は、情報処理装置101から受信した情報を、あらかじめ保持している復号鍵によって復号化することに成功した場合、情報処理装置101との通信を認証する。なお、情報処理装置101が、正確なWEC関連情報を取得できておらず、正確に情報を暗号化できていなかった場合は、通信装置151における復号化が失敗するため、認証は失敗する。よって、CPU154は、情報処理装置101との通信の認証が成功した場合、DPP Authentication処理が成功したと判定し、失敗した場合、DPP Authentication処理が失敗したと判定する。CPU154は、S1302でNOと判定された場合、DPP待ち受けモードを終了し(S1303)、本フローチャートを終了する。一方、通信装置151は、S1302でYESと判定された場合、S1304に進む。
S1304において、CPU154は、DPP Configuration処理を実行する。DPP Configuration処理において、CPU154は、情報処理装置101からWECによる設定対象として設定されているアクセスポイントと接続するための接続情報をWECにより受信する。なお接続情報には、WECによる設定対象として設定されているアクセスポイントのSSIDやパスワード、暗号化方式を示す情報等が含まれる。
S1305において、CPU154は、情報処理装置101とのDPP Configuration処理が成功したか否かを判定する。具体的には、CPU154は、情報処理装置101からWECによる設定対象として設定されているアクセスポイントと接続するための接続情報をWECにより受信した場合、成功したと判定し、接続情報をWECにより受信できなかった場合、失敗したと判定する。CPU154は、S1305でNOと判定された場合、DPP待ち受けモードを終了し(S1303)、本フローチャートを終了する。一方、CPU154は、S1305でYESと判定された場合、S1306に進む。なお通信装置151は、DPP Configuration処理が成功すると、アクセスポイントのSSIDや暗号化方式、パスワードを取得する。
S1306において、CPU154は、情報処理装置101から受け取ったWECによる設定対象として設定されているアクセスポイントの情報にSSIDが含まれているか否かを判定する。CPU154は、S1306でNOと判定された場合、DPP待ち受けモードを終了し(S1303)、本フローチャートを終了する。一方、CPU154は、S1306でYESと判定された場合、S1307に進む。
S1307において、CPU154は、情報処理装置101から受け取ったWECによる設定対象として設定されているアクセスポイントの情報に暗号化方式が含まれているか否かを判定する。CPU154は、S1307でNOと判定された場合、DPP待ち受けモードを終了し(S1303)、本フローチャートを終了する。一方、CPU154は、S1307でYESと判定された場合、S1308に進む。
S1308において、CPU154は、情報処理装置101から受け取ったWECによる設定対象として設定されているアクセスポイントの情報にパスワードが含まれているか否かを判定する。なおCPU154は、DPP通信を用いてアクセスポイントと接続する場合は、パスワードではなく公開鍵情報が含まれているか否かを判定してもよい。また、設定対象として設定されているアクセスポイントのセキュリティ設定が無効に設定されている場合はパスワードが含まれていなくてもよい。CPU154は、S1308でNOと判定された場合、DPP待ち受けモードを終了し(S1303)、本フローチャートを終了する。一方、CPU154は、S1308でYESと判定された場合、S1309に進みDPP待ち受けモードを終了する。通信装置151は、DPP待ち受けモードを終了すると、情報処理装置101からのDPP Authentication処理の要求に応じることが出来ない。
S1310において、CPU154は、BLEセットアップモードでの動作を終了する。なお、BLEを実行可能なモードでの動作を継続してもよいし、BLEを実行可能なモードでの動作を終了し、BLEのアドバタイズ情報の発信を終了してもよい。なおS1310におけるBLEセットアップモードでの動作の終了と、S1309におけるDPP待ち受けモードでの動作の終了は、どちらが先に行われてもよい。すなわち、CPU154は、DPP待ち受けモードでの動作を終了した後、BLEセットアップモードでの動作を終了してもよい。また、BLEセットアップモードでの動作の終了と、DPP待ち受けモードでの動作の終了は、同時に行われてもよい。さらに、BLEセットアップモードでの動作の終了処理又はDPP待ち受けモードでの動作の終了処理と、アクセスポイントとの接続処理の順序は問わない。
S1311において、CPU154は、情報処理装置101から受け取ったWECによる設定対象として設定されているアクセスポイントの各種情報によって、WECによる設定対象として設定されているアクセスポイントに接続する。なお各種情報とは、SSID、パスワード、暗号化方式である。そして通信装置151は、本フローチャートを終了する。
上述のように、本実施形態では、情報処理装置101が通信装置151とのBLE接続を介して、通信装置151にDPP待ち受けモードの開始要求を行う。そして、通信装置151はDPP待ち受けモードを開始する。これにより、情報処理装置101がWECを実行したいタイミングにおいて、WECを実行可能となる。さらに、情報処理装置101がWECを実行したいタイミングにおいてのみDPP待ち受けモードを開始させることによって、ユーザの意図しないネットワークセットアップの実行を軽減することができる。これにより、ネットワークセットアップ機能の利便性を向上させることができる。
なお上述の実施形態では、ネットワークセットアップは、BLE通信によって実行される形態を説明したが、BLE通信以外の通信方式によって行われてもよい。例えばネットワークセットアップは、BLE通信以外の通信方式としてWi-Fi通信によっても可能である。通信装置151は、第1条件や第2条件が満たされた場合、セットアップ用アクセスポイントを有効化している。よって、情報処理装置101は、接続済みAPとのWi-Fi接続を切断し、ネットワークセットアップモードとして動作する通信装置151が有効化しているアクセスポイントとWi-Fi接続を確立することができる。なおBLEセットアップモードと、セットアップ用アクセスポイントの有効化は、どちらが先に行われてもよいし、同時でもよいし、どちらか一方が行われたことに基づいて開始してもよい。これにより、情報処理装置101は、Wi-Fi通信による情報処理装置101と通信装置151との間の接続を介してDPP待ち受けモード開始要求を示す情報を送信したり、通信装置151の各種情報を取得してもよい。その後、情報処理装置101は、再度接続済みAPとのWi-Fi接続を確立し、接続済みAPの接続情報をDPPを用いて通信装置151に送信してもよい。また、情報処理装置101は、DPP接続が失敗した場合は、接続済みAPとのWi-Fi接続を切断し、ネットワークセットアップモードとして動作する通信装置151が有効化しているアクセスポイントとWi-Fi接続を再度確立する。そして、情報処理装置101は、Wi-Fi通信による情報処理装置101と通信装置151との間の接続を介して接続情報を送信してもよい。なおこの形態においても、DPPとは異なる通信プロトコルが用いられるものとする。また、なおネットワークセットアップのうち、BLE通信とWi-Fi通信のどちらが使用されるかは、設定アプリに対するユーザ操作によって決定される。すなわち、設定アプリの画面上でユーザによって選択された通信方式によってネットワークセットアップが実行される。
また本実施形態では、通信装置151は、WECの実行が失敗した場合にDPP待ち受けモードを終了するが、終了しない形態であってもよい。これにより、情報処理装置からのネットワークセットアップの実行要求又はWECの実行要求に応じて、再度ネットワークセットアップを実行することが可能である。
さらに、本実施形態では、通信装置151は、BLE通信を用いたネットワークセットアップの実行要求とWECの実行要求のどちらか一方の要求を受信した場合、もう一方の実行要求に関するモードも有効化しておく。つまり、BLE通信を用いたネットワークセットアップの実行要求を受信した場合であっても、DPP待ち受けモードを有効化しておく。しかしながら、通信装置151は、BLE通信を用いたネットワークセットアップの実行要求とWECの実行要求のどちらか一方の要求を受信した場合、もう一方の実行要求に関するモードは無効化してもよい。例えば、WECの実行要求を受信した場合、BLE通信を用いたネットワークセットアップモードでの動作を終了してもよい。しかしながらWECの実行が失敗した場合においては、WECの実行が失敗したことに基づいてBLE通信を用いたネットワークセットアップモードを再度開始する。これにより、情報処理装置からのネットワークセットアップの実行要求に応じて、再度BLE通信を用いたネットワークセットアップを実行することが可能である。さらに、BLE通信を用いたネットワークセットアップの実行要求とWECの実行要求のどちらか一方の要求を受信した場合、もう一方の実行要求に関するモードは無効化することによって、ユーザが意図しないネットワークセットアップを実行することを軽減できる。
加えて本実施形態では、設定対象の所定のアクセスポイントに通信装置151が接続できる場合には、WECによって所定のアクセスポイントの接続情報を通信装置151に送信するよう情報処理装置101を制御する。また、設定対象の所定のアクセスポイントに通信装置151が接続できない場合には、ネットワークセットアップによって所定のアクセスポイントと異なるアクセスポイントの接続情報を通信装置151に送信するよう情報処理装置101を制御する。なお所定のアクセスポイントに通信装置151が接続できる場合とは、例えば、所定のアクセスポイントとの接続に用いられる暗号化方式に通信装置151が対応している場合や、所定のアクセスポイントとの接続に用いられる周波数帯域に通信装置151が対応している場合である。そして、所定のアクセスポイントに通信装置151が接続できない場合とは、例えば、所定のアクセスポイントとの接続に用いられる暗号化方式に通信装置151が対応していない場合や、所定のアクセスポイントとの接続に用いられる周波数帯域に通信装置151が対応していない場合である。なお本実施形態では、所定のアクセスポイントに通信装置151が接続できる場合であっても、所定のアクセスポイントとの接続に用いられる暗号化方式にWECが対応していない場合、ネットワークセットアップによって所定のアクセスポイントと異なるアクセスポイントの接続情報を通信装置151に送信するよう情報処理装置101を制御する。
このような形態とすることで、所定のアクセスポイントと通信装置151との接続を、WECによって確立させることができる場合には、WECによってセットアップを行うことで、ユーザによるパスワードの入力等を省略した簡便なセットアップを実現できる。また、所定のアクセスポイントと通信装置151との接続を、WECによって確立させることができない場合には、WECと異なる機能によってセットアップを行うことで、アクセスポイントと通信装置151との間の接続の確立をより確実に遂行できる。
(その他の実施形態)
上述の実施形態では、WECによって、接続済みAPの接続情報を送信するものとし、S211~S213のような各種判定では、接続済みAPに関して判定を行っていたが、この形態に限定されない。接続済みAPとは異なるAPの接続情報を送信したり、接続済みAPとは異なるAPに関して判定を行っても良い。具体的には接続済みAPとは異なるAPとは例えば、設定操作が行われたときには情報処理装置101が接続していなかったが、設定操作が行われる前のいずれかのタイミングにおいて情報処理装置101が接続したことがあるアクセスポイントであっても良い。また、情報処理装置101が接続したことがあるアクセスポイントのリストからユーザによって選択されたアクセスポイントであっても良い。情報処理装置101がいずれかのタイミングで接続したことがあるアクセスポイントの接続情報であり、OSが記憶している接続情報であれば、WECによって送信可能であるためである。
なお、上述の実施形態では、WECによってセットアップを行うことで、ユーザによるパスワードの入力等を省略した簡便なセットアップを実現できる。しかしながら、WECではないその他の機能によってセットアップを行ってもよい。例えば、Hyper Text Transfer Protocolを用いた機能によるセットアップでもよい。この場合、WECと同様にユーザによるパスワードの入力等を省略した簡便なセットアップを実現できる。さらに、上述の実施形態では、セットアップ用通信プロトコル(例えば、SNMP(Simple Network Management Protocol))を用いたセットアップを行った。しかしながら、セットアップ用通信プロトコルを用いたセットアップではないその他の機能によってセットアップを行ってもよい。例えば、Hyper Text Transfer Protocolを用いた機能によるセットアップでもよい。
さらに、上述の実施形態では、S207では、BLEセットアップモードとして動作する通信装置151と情報処理装置101との間のBLE接続経由で各種情報が取得される形態を説明した。しかし、この形態に限定されない。S221のようなQRコードの読み取りで取得されても良いし、NFCやWi-Fi等、他の通信方式による通信を介して取得されても良い。
加えて、上述の実施形態は、以下の処理を実行することによっても実現される。すなわち上述の実施形態の機能を実現するソフトウェア(プログラム)を、ネットワークまたは各種記憶媒体を介してシステムあるいは装置に共有し、そのシステムあるいは装置のコンピュータ(CPUやMPU等)がプログラムを読み出して実行する処理である。また、プログラムは1つのコンピュータで実行させても、複数のコンピュータを連動させて実行させるようにしても良い。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をASIC等のハードウェアで実現するようにしても良い。また、CPUも1つのCPUで全ての処理を行うものに限らず、複数のCPUが適宜連携をしながら処理を行うものとしても良い。
101 情報処理装置
103 CPU
151 通信装置

Claims (36)

  1. 情報処理装置と通信する通信装置であって、
    第1のプロトコルによる前記情報処理装置との通信を介して、前記情報処理装置との通信を実行可能な状態の開始要求を前記情報処理装置から受信したことに基づいて、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を開始させる第1制御を実行する第1制御手段と、
    前記通信装置がアクセスポイントと接続するための接続情報が、前記第1の状態における前記通信装置と、前記情報処理装置との間の前記第2のプロトコルによる通信を介して前記情報処理装置から取得された場合、前記接続情報を用いて前記通信装置と前記アクセスポイントとの接続を確立させる第1接続手段と、
    を有することを特徴とする通信装置。
  2. 前記通信装置が前記第1の状態を開始したか否かを示す応答情報の要求を取得した場合、前記第1の状態を開始したか否かを示す応答情報を前記情報処理装置に送信する第1送信手段を有することを特徴とする請求項1に記載の通信装置。
  3. 前記接続情報が、前記第1のプロトコルによる前記情報処理装置との通信を介して前記情報処理装置から取得された場合、前記接続情報を用いて前記通信装置と前記アクセスポイントとの接続を確立させる第2接続手段を有することを特徴とする請求項1又は2に記載の通信装置。
  4. 前記通信装置が前記アクセスポイントとの接続の確立に成功したか否かを示す情報を前記第1のプロトコルによる通信を介して前記情報処理装置に送信する第2送信手段を有することを特徴とする請求項1乃至3のいずれか一項に記載の通信装置。
  5. 前記接続情報とは、前記アクセスポイントのSSIDと、暗号化方式と、パスワード又は公開鍵情報のうち少なくとも一つの情報を含む情報であることを特徴とする請求項1乃至4のいずれか一項に記載の通信装置。
  6. 前記第2のプロトコルによる前記通信装置との通信に利用される情報を生成する生成手段を有することを特徴とする請求項1乃至5のいずれか一項に記載の通信装置。
  7. 前記第2のプロトコルによる前記通信装置との通信に利用される情報とは、前記通信装置の識別情報と、公開鍵情報と、前記第2のプロトコルによる前記情報処理装置との通信で用いられるチャネルを示す情報のうち少なくとも一つの情報を含むことを特徴とする請求項6に記載の通信装置。
  8. 前記第2のプロトコルによる前記情報処理装置との通信に利用される情報を前記情報処理装置に送信する送信手段を有することを特徴とする請求項1乃至7のいずれか一項に記載の通信装置。
  9. 前記通信装置が接続した前記アクセスポイントを介して、前記通信装置に印刷を実行させる印刷手段を有することを特徴とする請求項1乃至8のいずれか一項に記載の通信装置。
  10. 前記第2のプロトコルは、Device Provisioning Protocolであることを特徴とする請求項1乃至9のいずれか1項に記載の通信装置。
  11. 前記第2のプロトコルは、Hyper Text Transfer Protocolであることを特徴とする請求項1乃至9のいずれか1項に記載の通信装置。
  12. 前記第1のプロトコルは、Simple Network Management Protocolであることを特徴とする請求項1乃至11のいずれか1項に記載の通信装置。
  13. 前記第1のプロトコルによる前記情報処理装置との通信と、前記第2のプロトコルによる前記情報処理装置との通信は、IEEE802.11に基づく通信であることを特徴とする請求項1乃至12のいずれか1項に記載の通信装置。
  14. 前記第1のプロトコルは、Generic Attribute Profileであることを特徴とする請求項1乃至11のいずれか1項に記載の通信装置。
  15. 前記第1のプロトコルによる前記情報処理装置との通信は、Bluetoothに基づく通信であることを特徴とする請求項14に記載の通信装置。
  16. 前記第1のプロトコルによる前記情報処理装置との通信は、Bluetooth Low Energyに基づく通信であることを特徴とする請求項14乃至15のいずれか1項に記載の通信装置。
  17. 前記第1の状態を終了するまでの所定の時間が経過したことに基づいて、前記第1の状態を終了することを特徴とする請求項1乃至16のいずれか1項に記載の通信装置。
  18. 情報処理装置と通信する通信装置の制御方法であって、
    第1のプロトコルによる前記情報処理装置との通信を介して、前記情報処理装置との通信を実行可能な状態の開始要求を前記情報処理装置から受信したことに基づいて、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を開始させる第1制御を実行する第1制御ステップと、
    前記通信装置がアクセスポイントと接続するための接続情報が、前記第1の状態における前記通信装置と前記情報処理装置との間の前記第2のプロトコルによる通信を介して前記情報処理装置から取得された場合、前記接続情報を用いて前記通信装置と前記アクセスポイントとの接続を確立させる第1接続ステップと、
    を有することを特徴とする制御方法。
  19. 情報処理装置と通信する通信装置のコンピュータに、
    第1のプロトコルによる前記情報処理装置との通信を介して、前記情報処理装置との通信を実行可能な状態の開始要求を前記情報処理装置から受信したことに基づいて、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を開始させる第1制御を実行する第1制御ステップと、
    前記通信装置がアクセスポイントと接続するための接続情報が、前記第1の状態における前記通信装置と前記情報処理装置との間の前記第2のプロトコルによる通信を介して前記情報処理装置から取得された場合、前記接続情報を用いて前記通信装置と前記アクセスポイントとの接続を確立させる第1接続ステップと、
    を実行させることを特徴とするプログラム。
  20. 通信装置と通信する情報処理装置のコンピュータに、
    第1のプロトコルによる前記情報処理装置との通信を介して、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を前記通信装置に開始させる開始要求を送信させる第1制御を実行する第1制御ステップと、
    前記通信装置がアクセスポイントと接続するための接続情報を、前記第2のプロトコルによる前記通信装置との通信を介して前記第1の状態における前記通信装置に送信させる第1送信ステップと、
    を実行させることを特徴とするプログラム。
  21. 前記通信装置が前記第1の状態を開始したか否かを示す応答情報を前記通信装置に要求させる要求ステップを、前記情報処理装置のコンピュータにさらに実行させることを特徴とする請求項20に記載のプログラム。
  22. 前記応答情報を受信したことに基づいて、前記第1送信ステップが実行されることを特徴とする請求項21に記載のプログラム。
  23. 前記アクセスポイントに前記通信装置が接続可能であることに基づいて、前記第1送信ステップが実行されることを特徴とする請求項20乃至22のいずれか一項に記載のプログラム。
  24. 前記アクセスポイントに前記通信装置が接続可能でないことに基づいて、前記アクセスポイントと接続するための接続情報を、前記第1のプロトコルによる前記通信装置との通信を介して前記通信装置に送信する第2送信ステップを前記情報処理装置のコンピュータにさらに実行させることを特徴とする請求項20乃至23のいずれか一項に記載のプログラム。
  25. 前記アクセスポイントに前記通信装置が接続可能でない場合とは、前記アクセスポイントとの接続に用いられる暗号化方式が、前記通信装置が対応していない暗号化方式である場合を含むことを特徴とする請求項20乃至24のいずれか一項に記載のプログラム。
  26. 前記アクセスポイントに前記通信装置が接続可能でない場合とは、前記アクセスポイントとの接続に用いられる周波数帯が、前記通信装置が対応していない周波数帯である場合を含むことを特徴とする請求項20乃至24のいずれか一項に記載のプログラム。
  27. 前記第2のプロトコルは、Device Provisioning Protocolであることを特徴とする請求項20乃至26のいずれか1項に記載のプログラム。
  28. 前記第2のプロトコルは、Hyper Text Transfer Protocolであることを特徴とする請求項20乃至26のいずれか1項に記載のプログラム。
  29. 前記第1のプロトコルは、Simple Network Management Protocolであることを特徴とする請求項20乃至28のいずれか1項に記載のプログラム。
  30. 前記第1のプロトコルによる前記情報処理装置との通信と、前記第2のプロトコルによる前記情報処理装置との通信は、IEEE802.11に基づく通信であることを特徴とする請求項19乃至29のいずれか1項に記載のプログラム。
  31. 前記第1のプロトコルは、Generic Attribute Profileであることを特徴とする請求項20乃至28のいずれか1項に記載のプログラム。
  32. 前記第1のプロトコルによる前記情報処理装置との通信は、Bluetoothに基づく通信であることを特徴とする請求項31に記載の通信装置。
  33. 前記第1のプロトコルによる前記情報処理装置との通信は、Bluetooth Low Energyに基づく通信であることを特徴とする請求項31乃至32のいずれか1項に記載のプログラム。
  34. 通信装置と通信する情報処理装置の制御方法であって、
    第1のプロトコルによる前記情報処理装置との通信を介して、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を前記通信装置に開始させる開始要求を送信させる第1制御を実行する第1制御ステップと、
    前記通信装置がアクセスポイントと接続するための接続情報を、前記第2のプロトコルによる前記通信装置との通信を介して前記第1の状態における前記通信装置に送信させる第1送信ステップと、
    を有することを特徴とする制御方法。
  35. 通信装置と通信する情報処理装置であって、
    第1のプロトコルによる前記情報処理装置との通信を介して、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を前記通信装置に開始させる開始要求を送信させる第1制御を実行する第1制御手段と、
    前記通信装置がアクセスポイントと接続するための接続情報を、前記第2のプロトコルによる前記通信装置との通信を介して前記第1の状態における前記通信装置に送信させる第1送信手段と、
    を有することを特徴とする情報処理装置。
  36. 情報処理装置と、情報処理装置と通信する通信装置と、アクセスポイントと、を備えるシステムであって、
    前記情報処理装置は、
    第1のプロトコルによる前記情報処理装置との通信を介して、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を前記通信装置に開始させる開始要求を送信させる第1制御を実行する第1制御手段と、
    前記通信装置がアクセスポイントと接続するための接続情報を、前記第2のプロトコルによる前記通信装置との通信を介して前記第1の状態における前記通信装置に送信させる第1送信手段と、
    を有し、
    前記通信装置は、
    第1のプロトコルによる前記情報処理装置との通信を介して、前記情報処理装置との通信を実行可能な状態の開始要求を前記情報処理装置から受信したことに基づいて、前記第1のプロトコルと異なる第2のプロトコルによる前記情報処理装置との通信を実行可能な第1の状態を開始させる第1制御を実行する第1制御手段と、
    前記通信装置がアクセスポイントと接続するための接続情報が、前記第1の状態における前記通信装置と前記情報処理装置との間の前記第2のプロトコルによる通信を介して前記情報処理装置から取得された場合、前記接続情報を用いて前記通信装置と前記アクセスポイントとの接続を確立させる第1接続手段と、
    を有するシステム。
JP2021152129A 2021-09-17 2021-09-17 情報処理装置、通信装置、その制御方法、並びにプログラム Pending JP2023044218A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021152129A JP2023044218A (ja) 2021-09-17 2021-09-17 情報処理装置、通信装置、その制御方法、並びにプログラム
US17/932,101 US20230091461A1 (en) 2021-09-17 2022-09-14 Information processing apparatus, communication apparatus, control method therefor, and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021152129A JP2023044218A (ja) 2021-09-17 2021-09-17 情報処理装置、通信装置、その制御方法、並びにプログラム

Publications (1)

Publication Number Publication Date
JP2023044218A true JP2023044218A (ja) 2023-03-30

Family

ID=85572614

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021152129A Pending JP2023044218A (ja) 2021-09-17 2021-09-17 情報処理装置、通信装置、その制御方法、並びにプログラム

Country Status (2)

Country Link
US (1) US20230091461A1 (ja)
JP (1) JP2023044218A (ja)

Also Published As

Publication number Publication date
US20230091461A1 (en) 2023-03-23

Similar Documents

Publication Publication Date Title
EP4050920A1 (en) Information processing apparatus, control method thereof, and program
CN116647839A (zh) 通信设备及其控制方法
EP4050921A1 (en) Information processing apparatus, control method thereof, and program
JP2023044218A (ja) 情報処理装置、通信装置、その制御方法、並びにプログラム
JP2023051358A (ja) 通信装置、制御方法およびプログラム
JP2023035837A (ja) 通信装置、その制御方法、並びにプログラム
JP2023035838A (ja) 通信装置、その制御方法、並びにプログラム
JP2023059463A (ja) 通信装置、その制御方法、並びにプログラム
US11853631B2 (en) Communication apparatus, control method for controlling the same, and storage medium
US20230069058A1 (en) Communication apparatus, method for controlling the same, and storage medium
US20230102657A1 (en) Information processing apparatus, method for controlling the same, and storage medium
WO2023053839A1 (ja) 通信装置、方法、プログラム、並びにシステム
JP2023034115A (ja) 情報処理装置、その制御方法、並びにプログラム
JP2023162062A (ja) 通信装置、その制御方法、並びにプログラム
JP2023079947A (ja) 通信装置、その制御方法、並びにプログラム
JP7493361B2 (ja) 情報処理装置、制御方法およびプログラム
US20230413352A1 (en) Non-transitory computer-readable storage medium, control method, communication apparatus, and communication system
JP7314354B2 (ja) 情報処理装置、制御方法及びプログラム
JP2023068539A (ja) プログラムおよび方法
US20230336674A1 (en) Communication apparatus, control method, and storage medium for storing program
JP2023176543A (ja) プログラムおよび方法
JP2023066227A (ja) 情報処理装置、通信装置、通信システム、通信装置の設定方法並びにプログラム
JP2023158553A (ja) 通信装置及びその制御方法及びプログラム
JP2023166256A (ja) 通信システム、通信装置とその制御方法、並びにプログラム
JP2023075858A (ja) 情報処理装置、その制御方法、並びにプログラム

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20231213