以下、図面を参照して本開示を詳細に説明する。尚、以下の実施の形態は特許請求の範囲に係る本開示を限定するものではなく、また本実施の形態で説明されている特徴の組み合わせの全てが本開示の解決手段に必須のものとは限らない。また、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
(第1実施形態)
本実施形態の通信システムに含まれる外部装置及び通信装置について説明する。外部装置として、本実施形態ではスマートフォンを例示しているが、これに限定されない。例えば外部装置として、携帯端末、PC(パーソナルコンピュータ)、タブレット端末、サーバ、PDA(Personal Digital Assistant)、デジタルカメラ等、種々の情報処理装置を適用可能である。また、通信装置として、本実施形態ではプリンタを例示しているが、これに限定されず、外部装置と無線通信を行うことが可能な装置であれば、種々のものを適用可能である。例えば、プリンタであれば、インクジェットプリンタ、フルカラーレーザービームプリンタ、モノクロプリンタ等に適用することができる。また、プリンタのみならず複写機やファクシミリ装置、携帯端末、スマートフォン、ノートPC、タブレット端末、PDA、デジタルカメラ、音楽再生デバイス、テレビ、スマートスピーカ等の情報処理装置にも適用可能である。その他、複写機能、FAX機能、印刷機能等の複数の機能を備える複合機や画像処理装置、印刷装置にも適用可能である。
まず、本実施形態の外部装置と、本実施形態の外部装置と通信可能な通信装置の構成について図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の管理下で、スケジューリングやタスクスイッチ、割り込み処理等のソフトウエア実行制御を行う。なお本実施形態における更新対象のプログラムであるファームウェアはROM104に保存されている。
RAM105は、バックアップ電源を必要とするSRAM(Static Random Access Memory)等で構成される。なお、RAM105は、図示しないデータバックアップ用の1次電池によってデータが保持されているため、プログラム制御変数等の重要なデータを揮発させずに格納することができる。また、外部装置101の設定情報や外部装置101の管理データ等を格納するメモリエリアもRAM105に設けられている。また、RAM105は、CPU103の主メモリとワークメモリとしても用いられる。
外部記憶装置106は、通信装置151のネットワークセットアップを実行するためのアプリケーションプログラム(以後、設定アプリ)、通信装置151が解釈可能な印刷情報を生成する印刷情報生成プログラム等を保存している。設定アプリとは、通信装置151の接続先のアクセスポイントの設定をWEC(Wi-Fi Easy Connect)等で行うためのアプリケーションプログラムである。なお、設定アプリは、ネットワークセットアップ機能以外の他の機能を備えていても良い。例えば設定アプリは、通信装置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等が挙げられる。
本実施形態では、外部装置101は、設定アプリによるネットワークセットアップ処理の実行指示に基づいて外部装置101のOSによりWECを実行する。
通信装置151は、本実施形態の通信装置である。通信装置151は、ROM152、RAM153、CPU154、プリントエンジン155、スキャンエンジン162、通信部156、近距離無線通信部157等を有する。ROM152、RAM153、CPU154等によって、通信装置151のコンピュータが形成される。
通信部156は、通信装置151内部のアクセスポイントとして、外部装置101等の装置と接続するためのアクセスポイントを有している。なお、該アクセスポイントは、外部装置101の通信部110に接続可能である。通信部156が、該アクセスポイントを有効化することで、通信装置151がアクセスポイントとして動作することになる。なお、通信部156は外部装置101とダイレクトに無線接続しても良いし、アクセスポイント131を介して無線接続しても良い。本実施形態では、通信部156が用いる無線通信方式は、IEEE802.11シリーズに準拠する通信規格であるものとする。また以下の説明において、Wi-Fi(WirelessFidelity)(登録商標)(Wi-Fi通信)とは、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のネットワークセットアップを実行するためのモードであるネットワークセットアップモードとして動作可能である。通信装置151は、ネットワークセットアップモードとして動作する場合、通信部156を用いることにより、ネットワークセットアップモードとして動作中に有効なセットアップ用アクセスポイントとして動作する。当該セットアップ用アクセスポイントは、上述のAPモード時に有効化されるアクセスポイントとは異なるアクセスポイントである。また当該セットアップ用アクセスポイントのSSIDは、外部装置101の設定アプリが認識可能な所定の文字列を含むものとする。また、当該セットアップ用アクセスポイントは、接続にパスワードを必要としないアクセスポイントであるものとする。また、ネットワークセットアップモードとして動作している通信装置151は、セットアップ用アクセスポイントと接続している外部装置101との通信において、所定の通信プロトコル(セットアップ用通信プロトコル)を用いるものとする。セットアップ用通信プロトコルは具体的には例えば、SNMP(Simple Network Management Protocol)やHTTP(Hypertext Transfer Protocol)である。通信装置151は、ネットワークセットアップモードでの動作を開始した後、所定の時間が経過したら、ネットワークセットアップモードでの動作を停止し、セットアップ用アクセスポイントを無効化する。これは、セットアップ用アクセスポイントは上述したようにパスワードを必要としないアクセスポイントであるため、長時間有効化していると、適切でない装置から接続を要求されてしまう可能性が高まるためである。なおセットアップ用アクセスポイントは、パスワードを必要とするアクセスポイントであっても良い。その場合、セットアップ用アクセスポイントとの接続に用いられるパスワードは、設定アプリが予め把握している固定の(ユーザが変更できない)パスワードであるものとする。
近距離無線通信部157は、外部装置101等の装置と近距離で無線接続するための構成であり、例えば、外部装置101内の近距離無線通信部111と接続可能である。通信方式としては、例えば、NFC、Bluetooth Classic、BLE、Wi-Fi Aware等が挙げられる。
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を介して、印刷ジョブを受信する。
スキャンエンジン162は、操作部159からの入力や外部装置101等から受信したスキャンジョブに基づき、原稿台やADF(Auto Document Feeder)を用いてセットされた書面(原稿)等から画像データや文書データを読み取る。読み取ったデータはスキャン結果として、RAM153に保存したり、外部装置101等に送信したりする。なお一般に、通信装置151から外部装置101等に送信されるスキャン結果のデータ量は大きいため、それらの通信には、高速通信が可能な通信方式を用いることが求められる。よって、通信装置151は、近距離無線通信部157よりも高速な通信が可能な通信部156を介して、スキャン結果を送信する。
なお、通信装置151には、外付けHDDやSDカード等のメモリがオプション機器として装着されてもよく、通信装置151に保存される情報は、当該メモリに保存されても良い。
入力インタフェース158は、物理ボタン等の操作部159が操作されることにより、ユーザからのデータ入力や動作指示を受け付けるためのインタフェースである。なお、操作部は、表示部161に表示されるソフトキーボードやソフトボタン等であっても良い。すなわち、入力インタフェース158は、表示部161を介してユーザからの入力を受け付けても良い。操作部159の一実施形態を図9にて示している。
出力インタフェース160は、表示部161がデータの表示や通信装置151の状態の通知を行うための制御を行うインタフェースである。
表示部161は、LED(発光ダイオード)やLCD(液晶ディスプレイ)などから構成され、データの表示や通信装置151の状態の通知を行う。
図2を用いて、通信装置151と外部装置101との間でログ情報を送信する際の通信例を示す。本実施形態において、外部装置101はログ情報を収集するためのサーバとして動作し、通信装置151はユーザの利用状況や通信装置151の稼働状況をログ情報として外部装置101に送信する。ログ情報は通信装置151のRAM153に保存され、ログ情報を収集するサーバとして動作する外部装置101へ送信することで、通信装置151の仕様改善のための分析等に使用される。
通信装置151はS200でログ情報を送信するタイミングかどうかを判定する。ログ情報を送信するタイミングとは、例えば通信装置151の電源がソフトオンされたタイミングである。また例えば、前回のログ情報の送信時間から一定経過時間した場合や、印刷等の各サービスの動作完了後といったタイミングである。通信装置151はログ情報を送信するタイミングであると判定した場合、ユーザの操作有無に関係なく、S201で外部装置101に対して認証IDの取得要求を自動で送信する。本実施形態において、認証IDの取得要求の送信は、HTTP(Hyper Text Transfer Protocol)通信を用いて実施し、認証IDはCookie情報のことを指す。認証IDは、例えば複数の通信装置151と外部装置101が接続されている環境において、一意の通信装置151を識別するといった用途で利用される。そのため、外部装置101はS202で通信装置151毎にユニークな値となるように認証IDを生成する。外部装置101は認証IDを生成すると、S203で通信装置151に認証IDを送信する。
通信装置151はS203で外部装置101から認証IDを受信すると、RAM153に認証IDを保存する。そして、通信装置151はS204で外部装置101に対してログ情報を送信する。この時、ログ情報に、取得した認証IDを付加したデータを外部装置101に送信する。そして、外部装置101はログ情報を正常に受信した場合、S205で通信装置151に対して正常に受信したことを示す情報を送信する。
図3を用いて、通信装置151と外部装置101との間で印刷処理を実行する際の通信処理について説明する。本実施形態において、外部装置101は印刷ジョブの登録が可能なサーバとして動作し、通信装置151は外部装置101から印刷ジョブを受信することで印刷の実行が可能である。なお、外部装置101への印刷ジョブの登録は、外部装置101とは異なる別の装置(不図示、例えばPC)が実施している。本フローチャートの処理は、通信装置151の電源がソフトオン(電源オン、電源供給)されたことに基づいて開始される。なお、本実施形態において、外部装置との疎通確認のタイミング(本フローチャートが開始するタイミング)は通信装置151の電源が入ったタイミングであると説明したが、その限りではない。例えば、前回の疎通確認から一定経過時間した場合や、印刷等の各サービスの動作完了後といったタイミングでも良い。
通信装置151はS301で、印刷ジョブが登録されている外部装置101に対して、印刷ジョブの登録有無を確認するための前準備として外部装置101との疎通確認処理を行う。この疎通確認処理は、通信装置151が外部装置101にアクセスするためのURL(Uniform Resource Locator)に対してリクエストを送信し、正常に応答が返ってくるかどうかを確認する処理である。前述のURLは外部装置101が規定した値である。S301で外部装置101への疎通確認を実行し、正常に通信できている場合、S302で外部装置101から通信装置151に対して、正常に通信できていることを示す応答を送信する。
通信装置151は外部装置101との疎通確認が正常に完了した場合、S303で外部装置101に対して印刷ジョブの登録有無を確認する。ここで、印刷ジョブの登録有無の確認は外部装置101との疎通確認後に自動で実行しても良いし、何らかのユーザ操作をトリガに実行しても良い。そして、外部装置101に印刷ジョブが登録されている場合、S304で外部装置101から通信装置151に対して、登録されている印刷ジョブが存在することを示す情報を送信する。
通信装置151は、S304で登録されている印刷ジョブが存在することを示す情報を受信した場合、S305で通信装置151から外部装置101に対して、印刷データの送信要求を送信する。そして、外部装置101は通信装置151からの印刷データの送信要求を受信し、問題なく送信可能な状態であれば、S306で問題なく送信可能であることを示す情報を送信する。その後、外部装置101は通信装置151に対して、S307で印刷ジョブを送信する。印刷ジョブには、印刷用のデータだけでなく、用紙情報、品質、片面両面、給紙口等といった印刷設定情報も含まれている。通信装置151は印刷ジョブを正常に受信した場合、S308で外部装置101に対して、正常に受信できたことを示す情報を送信し、印刷処理を実行する。
なお図2のフローチャートの処理と図3のフローチャートの処理はいずれも通信装置151の電源オン操作に基づいて実行されるものとしたが、図2のフローチャートの処理が実行された後に図3のフローチャートの処理が実行されるものとする。しかしながら、フローチャートの処理が実行される順番は問わない。
ここで、通信装置151に問題が発生するケースについて説明する。
図2において、例えばS203で外部装置101が通信装置151に対して認証IDを送信する際に規定されたサイズを超えた認証IDを送信するケースが考えられる。通信装置151は認証IDをRAM153に保存するために、認証IDとして規定された上限サイズ分の領域を予め確保している。しかしながら、規定サイズを超えた認証IDが外部装置101から送信された場合、誤って確保した領域を超えて認証IDを保存するとメモリ破壊が発生してしまう。メモリ破壊が発生してしまうと、通信装置151の動作が不安定(不定)になってしまい、通信装置151が自動でシャットダウンするといった重大な問題が発生してしまう可能性がある。本実施形態では、ユーザが通信装置151の電源をソフトオンした場合に通信装置151が自動で認証IDの取得を開始する。よって、規定サイズを超えた認証IDが外部装置101から送信された場合、通信装置151で自動的にシャットダウンが発生してしまう可能性がある。
また図3において、S301、S302で通信装置151と外部装置101で疎通確認を実施する場合に問題が発生するケースを例として挙げる。通信装置151はS301で外部装置101が規定したURLに対してリクエストを送信する。ここで、例えば、外部装置101の動作仕様が変更されたことにより、リクエスト先のURLが変更されていた場合、外部装置101はS302で新しいリクエスト送信先のURLを通信装置151に送信する。通信装置151は受信した新しいリクエスト送信先のURLをRAM153に保存するために、予め領域を確保している。しかしながら、送信された新しいURLが規定サイズを超えた値であった場合に、通信装置151がRAM153に予め確保していた領域サイズを超えて保存してしまうと、メモリ破壊が発生してしまう。メモリ破壊が発生してしまうと、通信装置151の動作が不安定になってしまい、通信装置151が自動でシャットダウンするといった重大な問題が発生してしまう可能性がある。本実施形態では、ユーザが通信装置151の電源をソフトオンした場合に通信装置151が外部装置101に対して自動で疎通確認を実施する。よって、外部装置101から新しいリクエスト送信先のURLを受信した場合、通信装置151で自動的にシャットダウンが発生してしまう可能性がある。
本実施形態では、通信装置151において、上述したような問題が発生するケースにおいても、通信装置151の一部の機能を制限したモードである制限モードで動作させることで、ユーザが通信装置151を使用できなくなるといった事態を軽減する。つまり、上述したような問題が発生するケースにおいても、通信装置151の一部の機能を利用可能とする制限モードで通信装置151を動作させることで、ユーザが通信装置151を使用できなくなるといった事態を軽減する。
さらに、通信装置151において、ネットワーク通信を使用する機能の制限をより多くすると、ネットワーク接続上の情報通信量が減少するため、ファームウェア更新処理が成功する可能性が高くなる。一方、使用可能な機能が少なくなる。また、ネットワーク通信を使用する機能の制限をより少なくすると、使用可能な機能が多くなる。一方、ネットワーク接続上の情報通信量が増加するため、ファームウェア更新処理が失敗する可能性が高くなる。
そこで本実施形態では、複数の制限モードを有する通信装置151について説明する。第1の制限モードでは、後述の第2の制限モードよりも、制限する機能が多いモードであり、第2の制限モードは、第2の制限モードよりも、制限する機能が少ないモードである。具体的には、第1の制限モードでは、最新のファームウェアが置かれている(最新のファームウェアを保有している)外部サーバ以外とのネットワーク接続を介したネットワーク通信を全て制限する。第2の制限モードでは、最新のファームウェアが置かれている外部サーバ上に加え、ファームウェアの更新情報を管理している管理サーバとの通信も許可する。より具体的には、第1の制限モードでは、現在のファームウェアのバージョン情報を確認する処理を実行せずに(ファームウェアの更新情報を管理している管理サーバとの通信をせずに)ファームウェア更新処理を実行可能とする。第2の制限モードでは、現在のファームウェアのバージョン情報を確認する処理を実行し、現在のバージョン情報が最新のバージョン情報を満たさない(一致しない)場合に、ファームウェア更新処理を実行可能とする。つまり、第2の制限モードでは、ファームウェアの更新情報を管理している管理サーバとの通信を実行し、現在のバージョン情報が最新のバージョン情報を満たさない(一致しない)場合に、ファームウェア更新処理を実行可能とする。これにより、第1の制限モードは、最新のバージョン情報と現在のバージョン情報を確認する確認処理を実行する際に生じるネットワーク接続上の情報通信量が少なくなるため、ファームウェア更新処理が成功する可能性が高くなる。また、第2の制限モードは、現在のバージョン情報を確認する処理を実行するため、適切なファームウェア更新処理を実行することが可能となる。
さらに、ユーザによって、第1の制限モードと第2の制限モードを切り替え可能とする。具体的には、通信装置151を起動させる操作方法に基づいて、第1の制限モードで通信装置151を起動させるか、第2の制限モードで通信装置151を起動させるか、を決定する。具体的には、第1の制限モードを起動させるための第1の操作がされた場合、通信装置を第1の制限モードで起動させ、第1の操作と異なり、かつ第2の制限モードを起動させるための第2の操作がされた場合、通信装置151を第2の制限モードで起動させる。つまりは、第1の制限モードに基づくファームウェア更新処理(第1の更新処理)と第2の制限モードに基づくファームウェア更新処理(第2の更新処理)の選択が容易となる。これにより、制限モードの選択およびいずれかの制限モードで動作中の通信装置151のいずれかのファームウェア更新の選択が容易となり、ユーザの利便性が向上する。
図4を用いて、通信装置151が通常モードでの起動する場合の動作フローを説明する。まず、S400でユーザによる通信装置151の電源を入れる操作(電源オン操作(ソフトオン操作))を受け付ける。そして、S401で通信装置151は、S400においてユーザによって行われた、通信装置151の電源を入れる操作が通常モードでの起動を実行するための操作かどうかを判定する。ここで、通常モードとは、通信装置151の全ての機能が使用可能なモードである。そして、通常モード以外のモードとは、例えば、通信装置151の一部機能を制限して動作させる制限モードや、通信装置151の生産拠点のみで使用される検査用のモード等が存在する。本実施形態において、制限モードとは、具体的には、第1の制限モードでは、最新のファームウェアが置かれている外部サーバ以外とのネットワーク通信を全て制限するモードを指しているが、ネットワーク通信機能以外の機能を制限して動作させても良い。また、第2の制限モードでは、最新のファームウェアが置かれている外部サーバに加え、ファームウェアの更新情報を管理している管理サーバとの通信も許可する。制限モードは、通信装置151のネットワーク通信を制限して動作させるモードを指しているが、ネットワーク通信機能以外の機能を制限して動作させても良い。そして、通常モードでの起動を実施するための操作とは、例えば、ユーザが通信装置151の操作部159に配置されている電源ボタンを押下する操作である。例えば電源ボタンとは後述する図9において説明する電源制御のための電源ボタン902である。また、制限モードでの起動を実施するための操作とは、通常モードでの起動とは異なるユーザ操作である。例えば、前述の電源ボタンを押下した状態で、電源ボタンとは異なるボタンを押下する操作である。例えば電源ボタンとは異なるボタンとは後述する図9において説明するHOMEボタン903やSTOPボタン907である。S401で通信装置151は、通信装置151の電源を入れる操作が通常モードでの起動を実行するための操作ではないと判定した場合、S402で、各モード専用の起動処理を実施する。そして、通信装置151は、S401で通信装置151の電源を入れる操作が通常モードでの起動を実行するための操作であると判定した場合、S403で、通常モードでの起動処理を開始する。通常モードでの起動処理とは、例えば、通信装置151のソフトウエア制御における変数や領域の初期化処理や、通信装置151のプリントエンジン155といったハードウエアに関する初期化処理等、通信装置151が正常に動作するために必要な処理である。
そして、S404で通信装置151は、ユーザによって設定されたネットワーク設定に基づいて通信装置151のネットワーク通信処理を開始する。ネットワーク設定とは、例えば、アクセスポイント131と無線のインフラ接続をするかどうかの有効設定や、外部装置101とP2P接続をするかどうかの有効設定等のことである。なお、通信装置151をアクセスポイント131と無線のインフラ接続をさせる場合、接続するアクセスポイント131のSSIDやパスワードをユーザが設定する必要がある。
通信装置151の起動に必要な処理が完了すると、S405で通信装置151が表示部161にメニュー画面(ホ―ム画面)を表示することで、ユーザが操作部159を介して通信装置151に対して動作指示を実施することが可能になる。具体的には、図10(b)の画面1006を表示する。メニュー画面の詳細については、後述の図10で説明する。
S405で表示部161にメニュー画面を表示後、ユーザの操作有無に関わらずS406で外部サーバと通信可能なネットワーク設定かどうかを判定する。なお外部サーバと通信可能なネットワーク設定とは、アクセスポイント131とインフラ接続が可能な設定を指す。そして、S406で外部サーバと通信可能なネットワーク設定と判定された場合、S407で、通信装置151は、外部サーバとの通信を実行し本フローチャートの処理を終了する。本実施形態において、外部サーバとの通信とは、図2や図3で説明した外部装置101との通信を指しているため、ここでの説明は省略する。なお、S406やS407では、外部サーバとの通信に関して説明しているが、この外部サーバはPCとして動作している外部装置101との通信でも良い。一方、S406で外部サーバと通信可能なネットワーク設定ではないと判定された場合、本フローチャートの処理を終了する。
次に図5を用いて、通信装置151が制限モードとして起動する場合の動作フローを説明する。本フローチャートの処理は、図4のS402の処理に対応する処理である。S500で、通信装置151は、S400における通信装置151の電源を入れるユーザ操作が制限モードでの起動を実施するための操作かどうかを判定する判定処理を行う。判定処理は、図8において後述する。
S501で、通信装置151は、制限モードでの起動が指示されたかどうかを判定する。図8のS807、S808において第1の制限モード、第2の制限モードのいずれかの制限モードで起動すると決定された場合は、S501においてYESと判定される。一方、図8のS803においてNOと判定された場合、S806においてNOと判定された場合は、S501においてNOと判定される。図8の具体的な処理については後述する。
S502で、通信装置151は、通常モードと制限モード以外のモードでの起動処理を開始し、S503で表示部161にメニュー画面を表示する。例えば、通常モードと制限モード以外のモードとは検査用モードであり、S502で検査用モードの起動処理を行い、S503で表示部161に検査用のメニュー画面を表示する(不図示)。そして、S501で、通信装置151は、S400における通信装置151の電源を入れるユーザ操作が制限モードでの起動を実施するための操作と判定した場合、S504で通信装置151を制限モードで動作させるための起動処理を実施する。本実施形態において、制限モードはネットワーク通信を制限して動作させるが、S504の制限モードでの起動処理は、図4のS403での通常モードの起動処理と同じ処理を実施している。しかし、例えば、制限モードで通信装置151のスキャナ機能を制限していた場合は、S504の制限モードの起動処理でスキャンエンジン162に関する初期化処理を実施しなくても良いため、通常モードの起動処理と異なった起動処理を実施する場合もある。
S504で、通信装置151は、制限モードでの起動処理を開始した場合、S505でユーザが設定していた通信装置151のネットワーク設定を不揮発性メモリに保存しておく。ここで、ネットワーク設定とは、インフラ接続の有効設定、P2P接続の有効設定を指す。
そして、S506で、通信装置151は、通信装置151のネットワーク通信を制限するために、前述のネットワーク設定を通信装置151が自動で無効設定に変更する。本実施形態において、制限モードではネットワーク設定のみを無効にしているため、USB等のネットワーク通信以外で外部装置101と通信することは可能である。
通信装置151がネットワーク設定を自動で無効設定に変更しているため、S507でユーザに通信装置151が制限モードで動作して良いかどうかを確認するための確認画面(図7)を表示部161に表示する。この確認画面は、通信装置151が通常モードで動作することをユーザが望んでいたにも関わらず、誤って制限モードとして動作することを軽減するために表示する。図7は、通信装置151が制限モードとして動作を開始する場合に、ネットワークを制限した状態で通信装置151を起動するかどうかをユーザに確認するための確認画面である。表示画面700は、領域701、702を含む。
S508において、通信装置151は、通信装置151がネットワーク通信を制限した状態で起動しないことをユーザによって選択されたかどうかを判定する。具体的には、領域701が選択された場合、通信装置151がネットワーク通信を制限した状態で起動しないことをユーザが選択したと判定し、S510の処理に進む。一方で、領域718が押下された場合、S509の処理に進み、通信装置151の電源を切るための処理(電源のソフトオフ処理、シャットダウン処理)を実施する。
S510において通信装置151は、S500の判定処理において第1制限モードで起動することが設定されている場合、図10(a)の画面1001を表示し、第2制限モードで起動することが設定されている場合、図10(b)の画面1006を表示する。図10のメニュー画面の詳細については、後述する。
図6を用いて、通信装置151が制限モードで動作中に、ユーザによって設定変更の操作やファームウェアの更新操作が行われた場合の動作フローについて説明する。本フローチャートの処理は、図5で説明したS504で通信装置151が制限モードとしての動作を開始し、S510で表示部161にメニュー画面を表示した後のタイミングで実行されるフローチャートである。具体的には、S510において通信装置151は、表示部161にメニュー画面を表示しているため、ユーザからの操作を受信可能な状態である。そして、S601において、通信装置151は、ユーザによって通信装置151の操作部159を介して所定の操作が実施され、所定の操作指示を受信したことに基づいて、本フローチャートの処理を開始する。
S602で、通信装置151は、S601で受信した所定の操作が通信装置151の電源を切るための操作(電源オフ操作)かどうかを判定する。通信装置151は、S601で受信した所定の操作が通信装置151の電源を切るための操作であると判定した場合は、S603で通信装置151の電源を切るための処理を実行する。そして通信装置151は、その後、制限モードでの動作を終了させ、本フローチャートの処理を終了する。
S604では、通信装置151は、S601で受信した所定の操作が通信装置151のファームウェアを更新するための操作かどうかを判定する。通信装置151のファームウェアを更新するための画面表示の詳細については、後述の図10で説明する。S601で受信した所定の操作が通信装置151のファームウェアを更新するための操作であると判定された場合、S605で通信装置151をファームウェア更新モードに移行させる。このファームウェア更新モードとは、通信装置151のファームウェアを更新するために、最新のファームウェアが置かれている外部サーバとネットワーク通信を実施するモードであり、プリントエンジン155を用いた印刷動作等は使用不可能な状態である。なお、通信装置151が通常モード、または、制限モードのうち第2の制限モードで動作中に、ファームウェア更新の指示を受け付けた場合、現在のファームウェアのバージョン情報と外部サーバに置かれているファームウェアのバージョン情報を比較し、バージョン情報に差異がある場合のみファームウェア更新モードに移行させる。一方で、通信装置151が、制限モードのうち第1の制限モードとして動作中に、ファームウェア更新の指示を受け付けた場合は、ファームウェアのバージョン比較は実施せずに、ファームウェア更新モードへの移行を実施する。
しかしながら、S605でファームウェア更新モードに移行した場合、直前まで制限モードとして動作していた通信装置151のネットワーク設定は無効設定のままであるため、ネットワーク通信が不可能な状態となっている。そのため、通信装置151は、S606で、図5のS505で不揮発性メモリに保存していた過去のネットワーク設定で動作するように通信装置151のネットワーク設定を変更する。そして、最新のファームウェアが置かれている外部サーバとネットワーク通信を実施し、通信装置151のファームウェアを更新する。なお制限モードの種類によってファームウェア更新の方法が異なるため、図10、図11において詳細に説明する。
S607では、通信装置151は、S601で受信した所定の操作が通信装置151のネットワーク設定を変更するための操作かどうかを判定する。S601で受信した所定の操作がネットワーク設定を変更するための操作ではないと判定した場合は、S608で、所定の操作に基づく処理を通信装置151に実行させる。一方で、S601で受信した所定の操作がネットワーク設定を変更するための操作であると判定した場合、S609で、ネットワークの利用が制限されているため設定変更が実施できないことを示す画面を表示部161に表示する。この画面の詳細については、後述の図10で説明する。
次に図8を用いて、通信装置151が制限モードでの起動を実施するための操作かどうかを判定する場合の動作フローを説明する。本フローチャートの処理は、図5のS501の処理に対応する処理である。
まずS801において通信装置151は、電源ボタンが押下されたかどうかの判定を行う。S801においてYESと判定された場合、S802に進み、NOと判定された場合、S801の処理を繰り返す。なお電源ボタンとは後述する図9において説明する電源制御のための電源ボタン902である。
S802において、通信装置151は、電源ボタン902が開放された(ユーザによる電源ボタンの押下が解消された)かどうかを判定する。S802においてYESと判定された場合、S803に進み、NOと判定された場合、S802の処理を繰り返す。
S803において、通信装置151は、電源ボタン以外のボタン(本実施形態ではHOMEボタン903、STOPボタン907とする)の少なくとも1つが操作されたかを判定する。S803においてYESと判定された場合、S805に進み、NOと判定された場合、本フローチャートの処理を終了する。
S805においてパターン1の操作が行われたかどうかを判定する。ここでパターン1の操作とは、例えば、HOMEボタン903に対する操作が行われることである。よって、HOMEボタン903のみの操作が行われた場合にパターン1の操作が行われたと判定する。S805においてYESと判定された場合、S807に進み、NOと判定された場合、S806に進む。
S807において、通信装置151は、第1の制限モードで起動することを設定(決定)し、本フローチャートの処理を終了する。
S806において通信装置151は、パターン2の操作がされたかどうかを判定する。ここでパターン2の操作とは、例えば、HOMEボタン903、および、STOPボタン907の両方を押下する操作である。よって、HOMEボタン903、および、STOPボタン907の両方を同時に押下する操作が行われたと判定した場合、パターン2の操作が行われたと判定する。S806においてパターン2の操作が行われたと判定した場合、S808に進み、パターン2の操作が行われていないと判定した場合、S804に進む。
S808において、通信装置151は、第2の制限モードで起動することを設定し、本フローチャートの処理を終了する。
なお、本実施形態においては、制限モードの起動操作で使用するボタンとして、電源ボタン、HOMEボタン、STOPボタンを例として説明したが、これに限定するものではない。例えば、後述する図9に示すボタン902-907や他のボタンに対する操作であってもよい。さらに、第1制限モードを起動するための操作と第2制限モードを起動するための操作が、同じボタンに対する操作であって、異なる操作であってもよい。例えば、第1制限モードを起動するための操作が、HOMEボタン903を1回選択する操作であって、第2制限モードを起動するための操作が、HOMEボタン903を2回選択する操作であってもよい。また、物理的なボタンだけではなく、表示部161のタッチパネル上の特定エリアにタッチしている、といったタッチ情報を用いることによって、制限モードの起動操作を受け付けてもよい。つまり、第1制限モードを起動するための操作と第2制限モードを起動するための操作が、それぞれ所定のソフトボタンに対する操作であってもよい。また、第1制限モードを起動するための操作と第2制限モードを起動するための操作が、一方はハードウェアボタンに対する操作であり、もう一方はソフトボタンに対する操作であってもよい。
図9は通信装置151と接続されている操作部159の一実施形態である。液晶部901は通信装置151の状態や操作の内容を伝えるLCDパネル部である。図7や図10の画面は液晶部901に表示される。ボタン902―907は通信装置151に搭載されたハードウェアボタン(ハードウェアキー)である。なおボタン902-907は、液晶部901に表示されるソフトボタン(ソフトキー)であってもよい。ボタン902は電源のON/OFFが可能な電源ボタン、ボタン903は操作を全てクリアして初期状態の画面(メニュー画面、HOME状態の画面)を表示することが可能なHOMEボタンである。ボタン904は表示中の画面よりひとつ前に表示されていた画面に戻ることが可能な戻るボタン、ボタン905はモノクロジョブのスタートボタン、ボタン906はカラージョブのスタートボタンである。コピーやスキャンなどのジョブが実行される場合、ボタン905が押下された場合にはモノクロでジョブが実行され、ボタン906が押下された場合にはカラーでジョブが実行される。ボタン907はSTOPボタンであり、通信装置151が動作している処理を中止するボタンである。
図11は、後述する図10(a)の画面1004において「アップデート開始」の選択操作(ファームウェア更新操作)がされたことに基づいて、第1の制限モードに対応するファームウェアの更新処理を実行するフローチャートである。または、図10(b)の画面1013において「アップデート開始」の選択操作(ファームウェア更新操作)がされたことに基づいて、第2の制限モードに対応するファームウェアの更新処理を実行するフローチャートである。本フローチャートの処理は、図6のS606の処理に対応する処理である。
S1101において、通信装置151は、図6のS605で終了した制限モードが第1の制限モードであるかを判定する。制限モードは、前述した図8のS807ないしはS808にて設定した第1ないしは第2の制限モードである。制限モードが第1の制限モードと判定された場合、S1102において、通信装置151は、制限レベル1のファームウェアの更新処理を実行する。制限レベル1のファームウェアの更新処理とは、具体的には、図10(a)において、画面1000~画面1004のフローにおいて実行される処理である。詳細は、後述する図10(a)において説明する。制限モードが第2の制限モードと判定された場合、S1103において、通信装置151は、制限レベル2のファームウェアの更新処理を実行する。制限レベル2のファームウェアの更新処理とは、具体的には、図10(b)において、画面1006~画面1014において実行される処理である。詳細は、後述する図10(b)において説明する。
図10を用いて、通信装置151の表示部161に表示される画面について説明する。なお、本実施形態において、表示部161はタッチパネルを想定している。
図10(a)は、通信装置151が第1の制限モードで起動した場合(ファームウェア更新前に第1の制限モードで動作していた場合)に表示される画面フローであり、制限レベルが高い場合のファームウェア更新フローである。本実施形態においてはネットワーク設定を無効設定にして起動しているフローである。具体的には通信装置151の通信部156が通信を行う際に、最新のファームウェアが置かれている外部サーバ以外とのネットワーク通信を全て制限する際のフローを示している。このフローにおいてはファームウェア更新操作に最低限必要なフロー以外を全て絞る事で、ネットワーク通信について必要最低限のネットワーク通信以外は行わないように制御している。このようにすることで、ネットワーク通信での不具合を回避して、ファームウェアの更新を行う事が可能となる。なお図10(a)は、通信装置151が第1の制限モードで起動した後、ユーザ情報に基づくログイン認証処理によってログインが成功した場合に表示される画面フローであってもよい。本実施形態においては、図4で通信装置151が通常モードで起動した場合に、S405で表示画面1006を表示する。
表示画面1000には、スキャンアプリケーションを示す領域、メンテナンスアプリケーションを示す領域、設定アプリケーションを示す領域が表示される。なお表示画面1000に表示される領域はこれに限らず、他の機能やアプリケーションを示す領域であってもよい。設定アプリケーションを示す領域が選択されると、通信装置151は表示画面1001を表示する。表示画面1001には、通信装置151のネットワーク設定変更が可能なLAN設定領域、ファームウェア更新を実行するための領域(「ファームウェアアップデート」領域)を少なくとも含む。ここで、ファームウェア更新を実行するための領域が選択された場合、通信装置151は、表示画面1002を表示する。表示画面1002には、領域10021、10022、10023が含まれる。領域10021は通信装置151のファームウェア更新を実行することを示す文言が表示されている。領域10021が選択された場合、通信装置151は、通信装置151と外部サーバのファームウェアのバージョンを比較せずに、強制的にファームウェア更新モードに移行する。領域10022は通信装置151がファームウェアを更新する際のプロキシサーバに関する設定が可能な領域である。領域10022が選択された場合、通信装置151が通常モードで動作している場合は、プロキシサーバの設定画面に遷移する。しかしながら、通信装置151が制限モードで動作している場合は、図10(d)の表示画面1017が表示され、設定変更が不可能であることが示される。領域10023は通信装置151がファームウェアを更新する際のDNSサーバに関する設定が可能な領域である。領域10023が押下された場合、通信装置151が通常モードで動作している場合は、DNSサーバの設定画面に遷移するが、通信装置151が制限モードで動作している場合は、図10(d)の表示画面1017が表示され、設定変更が不可能であることを示す。領域10021が選択された場合、通信装置151は、表示画面1003を表示する。そして、通信装置151は、表示画面1003においてファームウェア更新をするための指示(「はい」領域を選択する指示)を受け付けた場合に、ファームウェアの更新の実行を開始するための領域を含む表示画面1004を表示する。なお表示画面1003において「いいえ」領域が選択された場合は、表示画面1002に戻る。表示画面1004において、ファームウェア更新の実行を開始するための領域が選択された場合、ファームウェア更新を実行させるために通信装置151の再起動を実行する。なお表示画面1004は、ファームウェア更新に関する情報(例えば、ファームウェア更新に関する注意事項などの情報)を含む。本実施形態では、1005は実際に表示される画面ではなく説明のために記載しているが、ユーザに通信装置151の再起動を促すための1005のような情報を含む画面を表示してもよい。
図10(b)は、通信装置151が第2の制限モードで起動した場合(ファームウェア更新前に第2の制限モードで動作していた場合)に表示される画面フローであり、制限レベルが第1の制限モードより低い場合の操作フローである。本実施形態においては、図10(a)における最新のファームウェアが置かれている(最新のファームウェア情報を保有している)外部サーバにとの通信に加え、ファームウェアの更新情報を管理している管理サーバとの通信も許可した制限モードである。なお図10(b)は、通信装置151が第2の制限モードで起動した後、ユーザ情報に基づくログイン認証処理によってログインが成功した場合に表示される画面であってもよい。表示画面1006~1008、1012~1013は、それぞれ、表示画面1000~1002、1003~1004と同様の画面であるため説明を省略する。
表示画面1008において領域10021が選択された場合、通信装置151は、ファームウェアが置かれている外部サーバとの通信を開始する。また、通信装置151は、外部サーバとの通信中であることを示す情報を含む画面1009を表示する。そして、通信装置151は、通信装置151のファームウェアのバージョンと外部サーバの最新のファームウェアのバージョンを比較し、異なる場合(差異がある場合)は、通信装置151をファームウェア更新モードに移行する。具体的には、最新のファームウェア情報があることを示す情報を含む表示画面1011を表示し、「次へ」領域の選択を受け付けると表示画面1012を表示する。
一方、通信装置151と外部サーバのファームウェアのバージョンを比較した結果、同じバージョンである場合は、表示画面1010を表示する。具体的には、通信装置151の現在のファームウェアのバージョン情報が、外部サーバの最新のファームウェア情報を満たす(一致するため)、ファームウェア更新が必要ではないことを示す情報を含む表示画面1010を表示する。表示画面1010において「OK」領域が選択された場合、表示画面1008に戻る。
ここで、表示画面1001においてLAN設定領域が選択された場合、無線のインフラ接続の有効無効設定やネットワーク通信に使用する通信プロトコルの有効無効設定等の無線接続に関する設定を変更可能な画面に遷移する。ただし、前述の設定変更は、通信装置151が通常モードで動作している場合に限り可能である。通信装置151が制限モードとして動作している場合にLAN設定領域が選択された場合は、図10(d)の表示画面1017が表示される。表示画面1017には、ネットワーク通信に関する動作が制限されているため、ネットワーク通信に関する設定の変更が不可能であることを示す情報が表示される。表示画面1017が表示された状態で所定の時間が経過した場合、図10(c)の表示画面1016が再度表示される。
上述したように本実施形態では、通信装置151に図2や図3で説明したような問題が発生した場合でも、図5や図6で説明した一部機能を制限した制限モードで動作させる。これにより、ユーザが通信装置151を一切使用できなくなるといった事態を軽減することが可能である。また、前述の問題が通信装置151のファームウェアの問題であった場合でも、図6で説明したように、過去のネットワーク設定を不揮発性メモリに保存しておくことで、ファームウェア更新モードに移行後であっても、外部サーバとネットワーク通信を使用してファームウェアの更新が可能となる。さらに、通信装置151が複数の制限モード(第1の制限モードと第2の制限モード)を有し、第1の制限モードでのファームウェア更新処理の制御と、第2の制限モードでのファームウェア更新処理の制御を異ならせる。これにより、ファームウェアの更新処理の成功率を段階的に向上させることが可能となる。具体的には、第1の制限モードでは、第2の制限モードでのファームウェア更新処理に含まれる、現在のファームウェアのバージョン情報と最新のファームウェアのバージョン情報を比較するための通信処理が省略されている。本通信処理が省略されることによって、ファームウェア情報が取得・表示できない等、通信処理中に起き得る不具合を回避することが可能となり、ファームウェア更新処理の成功率を上げることが可能となる。第2の制限モードでは、現在のファームウェアのバージョン情報と最新のファームウェアのバージョン情報を比較するための通信処理が実行されるため、誤ったバージョン情報のファームウェアの更新処理を実行してしまうことを軽減できる。なお第1の制限モードと第2の制限モードでのファームウェア更新処理の違いは、図10(a),図10(b)に示す通りである。どちらのファームウェア更新処理を実行するかは、起動時に受信した、ユーザによる通信装置151の起動指示に対応する所定の操作によって切り替わる。これにより、第1の制限モードでのファームウェア更新処理と第2の制限モードでのファームウェア更新処理のいずれかの選択がユーザにとって容易となる。
なお上述した実施形態では、制限モードを第1の制限モードと第2の制限モードの2種類とした。しかしながら、制限モードが2種類では足りない場合、制限モードの数を増やす事は可能である。図11にて制限モードの数を増やし、図8にてS805やS806で判定するのと同様に判定する制限レベルを増やし、制限モードを設定することで制限モードの種類を増やす事が可能となる。そのため、本実施形態では制限モードを2種類としているが、制限モードの数はこの限りではない。
なお本実施形態では、通信装置151が制限モードとして動作中に、無線のインフラ接続や無線のP2P接続の設定を無効にし、USBを使用した外部装置101との通信は可能としているが、USB通信も無効にしても良い。また、インフラ接続のみを無効にし、無線のP2P接続やUSB接続は有効にした状態で動作させても良い。また、本実施形態において、ネットワーク通信が無効設定、且つ、USB通信が有効である場合、外部装置101からUSB通信を用いて通信装置151の設定を変更することが可能である。この時、ネットワーク設定以外の設定は変更可能であるが、ネットワーク設定の変更は変更不可能である。ネットワーク設定以外の設定とは、例えば、通信装置151が印刷を実施する際の解像度設定、給紙口設定、省電力設定等が存在する。
更に、本実施形態では、通常モードや制限モードの起動の判定をユーザ操作に基づいて実施しているが、通常モードを起動させるための所定のユーザ操作と制限モードを起動させるための所定のユーザ操作は同じ操作であっても良い。その場合、通常モードと制限モードのどちらを起動させるかの判定は、直前に通信装置151に問題が発生してシャットダウンしたかどうか等のエラー情報に基づいて判定しても良い。つまり、エラー情報が存在する場合は制限モードで起動し、エラー情報が存在しない場合は通常モードで起動させてもよい。また、通常モードや制限モードを起動させるための所定のユーザ操作は、ユーザが任意に設定可能であってもよい。具体的には、例えば通常モード時に、第1の制限モードを起動させるための所定の操作と第2の制限モードを起動させるための所定の操作を表示部161上で設定可能であってもよい。
また、上述した実施形態におけるファームウェア更新処理は、ファームウェアを更新する処理として説明したが、これに限らず通信装置151における少なくとも1つのプログラムの更新処理であってもよい。例えば、OSやプロセッサー、アプリケーションプログラムなどのソフトウェアの更新処理においても上述した実施形態が適用されてよい。
(その他の実施形態)
上述した実施形態は、以下の処理を実行することによっても実現される。すなわち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ(CPUやMPU等)がプログラムを読み出して実行する処理である。また、プログラムは、1つのコンピュータで実行させても、複数のコンピュータで連動させて実行させるようにしてもよい。また、上記した処理の全てをソフトウェアで実現する必要はなく、処理の一部または全部をASIC等のハードウェアで実現するようにしてもよい。また、CPUも1つのCPUで全ての処理を行うものに限らず、複数のCPUが適宜連携をしながら処理を行うものとしてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでない。そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOSなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
本実施形態の開示は、以下の構成、方法およびプログラムを含む。
(構成1)
操作部を有する通信装置であって、
前記通信装置の機能の実行を制限する制限モードで前記通信装置を動作させる制御手段
を備え、
前記制御手段は、第1の制限モードと、前記第1の制限モードよりも制限される機能が少ない第2の制限モードを含むいずれかのモードで前記通信装置を動作させ、
前記操作部において前記第1の制限モードを起動させるための第1の操作がされた場合、前記通信装置が前記第1の制限モードで起動し、前記第1の操作と異なり、かつ前記第2の制限モードを起動させるための第2の操作がされた場合、前記通信装置が前記第2の制限モードで起動することを特徴とする通信装置。
(構成2)
前記第1の操作と前記第2の操作は、前記操作部に設けられたハードウェアキーに対する操作であることを特徴とする請求項1に記載の通信装置。
(構成3)
外部装置とネットワーク接続を介して通信可能な通信手段と、
前記通信手段によってプログラムの更新処理を実行する更新手段と、をさらに有し、
前記通信装置が前記第1の制限モードで動作していたことに基づいて、前記第1の制限モードに対応する前記プログラムの更新処理である第1の更新処理を実行し、前記通信装置が前記第2の制限モードで動作していたことに基づいて、前記第2の制限モードに対応する前記プログラムの更新処理であり前記第1の更新処理とは異なる第2の更新処理を実行することを特徴とする請求項1または2に記載の通信装置。
(構成4)
前記第2の更新処理の実行指示を受け付けた場合、前記通信装置においてプログラムの更新処理が必要であるかどうかを示す情報を通知し、前記第1の更新処理の実行指示を受け付けた場合、前記通信装置においてプログラムの更新処理を実行するかどうかを選択する画面を表示することを特徴とする請求項3に記載の通信装置。
(構成5)
前記第2の更新処理の実行指示を受け付けた場合、前記外部装置であるサーバ上のプログラムに関する情報と前記通信装置のプログラムに関する情報を確認する確認処理を実行し、前記第1の更新処理においては前記確認処理を実行しないことを特徴とする請求項3または4に記載の通信装置。
(構成6)
前記確認処理において確認した前記サーバ上のプログラムのバージョン情報と前記通信装置のプログラムのバージョン情報に基づいて、前記更新処理を実行するかどうかを決定することを特徴とする請求項5に記載の通信装置。
(構成7)
前記確認処理において、前記サーバ上のプログラムのバージョン情報と前記通信装置のプログラムのバージョン情報が一致した場合、前記更新処理を実行せず、前記サーバ上のプログラムのバージョン情報と前記通信装置のプログラムのバージョン情報が一致しなかった場合、前記更新処理を実行することを特徴とする請求項6に記載の通信装置。
(構成8)
前記第1の更新処理において前記通信装置の表示部に表示される画面の数よりも、前記第2の更新処理において前記表示部に表示される画面の数のほうが多いことを特徴とする請求項3乃至7のいずれか一項に記載の通信装置。
(構成9)
前記第1の更新処理は、前記第2の更新処理よりも、前記外部装置とのネットワーク接続上の情報通信量が少ないことを特徴とする請求項3乃至8のいずれか一項に記載の通信装置。
(構成10)
前記第1の更新処理において接続可能なサーバの数よりも、前記第2の更新処理において接続可能なサーバの数のほうが多いことを特徴とする請求項3乃至9のいずれか一項に記載の通信装置。
(構成11)
前記第1の更新処理においては、最新のプログラムを保有するサーバと接続可能であり、前記第2の更新処理においては、前記最新のプログラムを保有するサーバと、前記通信装置のプログラムに関する情報を管理するサーバと接続可能であることを特徴とする請求項10に記載の通信装置。
(方法1)
操作部を有する通信装置の制御方法であって、
前記通信装置の機能の実行を制限する制限モードで前記通信装置を動作させる制御ステップ
を有し、
前記制御ステップは、第1の制限モードと、前記第1の制限モードよりも制限される機能が少ない第2の制限モードを含むいずれかのモードで前記通信装置を動作させ、
前記操作部において前記第1の制限モードを起動させるための第1の操作がされた場合、前記通信装置が前記第1の制限モードで起動し、前記第1の操作と異なり、かつ前記第2の制限モードを起動させるための第2の操作がされた場合、前記通信装置が前記第2の制限モードで起動することを特徴とする制御方法。
(プログラム1)
操作部を有する通信装置のプログラムであって、
前記通信装置の機能の実行を制限する制限モードで前記通信装置を動作させる制御ステップ
を前記通信装置のコンピュータに実行させ、
前記制御ステップは、第1の制限モードと、前記第1の制限モードよりも制限される機能が少ない第2の制限モードを含むいずれかのモードで前記通信装置を動作させ、
前記操作部において前記第1の制限モードを起動させるための第1の操作がされた場合、前記通信装置が前記第1の制限モードで起動し、前記第1の操作と異なり、かつ前記第2の制限モードを起動させるための第2の操作がされた場合、前記通信装置が前記第2の制限モードで起動することを特徴とするプログラム。