(57)【要約】【課題】コントローラーボードの障害回避などを加味し、必要なファームウェアのみを更新する。【解決手段】ＥＥＰＲＯＭ１１６により、動作を保証する最新バージョンのファームウェアの組み合わせを示すパッケージ情報が付与されたバージョン情報を有する、コントローラーボードを制御するファームウェアを含む複数のファームウェアを記憶し、ファームウェア管理部１１８がファームウェアのバージョン情報と、管理テーブルに登録されたバージョン情報とが一致するかどうかを確認し、ファームウェア管理部１１８の確認結果をパネル部１０５に表示させる。システム制御部１２１は、ファームウェアのアップデートの指示があった場合、コントローラーボードを識別するコントローラーボード識別情報を含め、選択されたファームウェアのアップデートを要求する。【選択図】図１
2018124749.tif 000002
【特許請求の範囲】
【請求項１】
パネル部と、
機能毎に分割され、動作を保証する最新バージョンのファームウェアの組み合わせを示すパッケージ情報が付与されたバージョン情報を有する、コントローラーボードを制御するファームウェアを含む複数のファームウェアを記憶する記憶デバイスと、
前記最新バージョンの複数のファームウェアのバージョン情報と、前記ファームウェアの組み合わせを示すパッケージ情報とが登録されている、情報配信サーバーからダウンロードされた最新バージョンの管理テーブルを有し、前記ファームウェアのバージョンチェックの指示に基づき、前記記憶デバイスから読み出したそれぞれの前記ファームウェアのバージョン情報と、前記管理テーブルに登録されたバージョン情報とが一致するかどうかを確認するファームウェア管理部と、
前記ファームウェア管理部に前記バージョンチェックを指示し、前記ファームウェア管理部の確認結果を前記パネル部に表示させるシステム制御部とを備え、
前記システム制御部は、前記パネル部を介して最新バージョンの前記管理テーブルのダウンロードの指示があると、前記情報配信サーバーに対し、最新バージョンの前記管理テーブルのダウンロードを要求し、前記パネル部を介して前記ファームウェア管理部の確認結果に基づくアップデートの指示があると、前記情報配信サーバーに対して前記コントローラーボードを識別するコントローラーボード識別情報を含めたアップデートの要求を出す
ことを特徴とする電子機器。
【請求項２】
前記システム制御部は、前記ファームウェア管理部が前記記憶デバイスから読み出したそれぞれの前記ファームウェアのバージョン情報と、前記管理テーブルに登録されたバージョン情報との不一致を確認すると、動作を保証する最新バージョンのファームウェアの組み合わせになっていないと判断し、前記管理テーブルに登録されたバージョン情報と一致しないバージョン情報を前記パネル部に表示させ、前記パネル部に表示させたバージョン情報が示す前記ファームウェアのアップデートの指示があると、アップデートの指示があった前記ファームウェアのアップデートを要求する
ことを特徴とする請求項１に記載の電子機器。
【請求項３】
電子機器と、
前記電子機器と通信可能な管理装置とを備え、
前記管理装置は、パネル部を有し、
前記電子機器は、
機能毎に分割され、動作を保証する最新バージョンのファームウェアの組み合わせを示すパッケージ情報が付与されたバージョン情報を有する、コントローラーボードを制御するファームウェアを含む複数のファームウェアを記憶する記憶デバイスと、
前記最新バージョンの複数のファームウェアのバージョン情報と、前記ファームウェアの組み合わせを示すパッケージ情報とが登録されている、情報配信サーバーからダウンロードされた最新バージョンの管理テーブルを有し、前記ファームウェアのバージョンチェックの指示に基づき、前記記憶デバイスから読み出したそれぞれの前記ファームウェアのバージョン情報と、前記管理テーブルに登録されたバージョン情報とが一致するかどうかを確認するファームウェア管理部と、
前記ファームウェア管理部に前記バージョンチェックを指示し、前記ファームウェア管理部の確認結果を前記パネル部に表示させるシステム制御部とを備え、
前記システム制御部は、前記パネル部を介して最新バージョンの前記管理テーブルのダウンロードの指示があると、前記情報配信サーバーに対し、最新バージョンの前記管理テーブルのダウンロードを要求し、前記パネル部を介して前記ファームウェア管理部の確認結果に基づくダウンロードの指示があると、前記情報配信サーバーに対して前記コントローラーボードを識別するコントローラーボード識別情報を含めたアップデートの要求を出す
ことを特徴とするバージョンチェックシステム。
【請求項４】
記憶デバイスにより、機能毎に分割され、動作を保証する最新バージョンのファームウェアの組み合わせを示すパッケージ情報が付与されたバージョン情報を有する、コントローラーボードを制御するファームウェアを含む複数のファームウェアを記憶する工程と、
前記最新バージョンの複数のファームウェアのバージョン情報と、前記ファームウェアの組み合わせを示すパッケージ情報とが登録されている、情報配信サーバーからダウンロードされた最新バージョンの管理テーブルを有するファームウェア管理部により、前記ファームウェアのバージョンチェックの指示に基づき、前記記憶デバイスから読み出したそれぞれの前記ファームウェアのバージョン情報と、前記管理テーブルに登録されたバージョン情報とが一致するかどうかを確認する工程と、
システム制御部により、前記ファームウェア管理部に前記バージョンチェックを指示し、前記ファームウェア管理部の確認結果をパネル部に表示させ、前記パネル部を介して最新バージョンの前記管理テーブルのダウンロードの指示があると、前記情報配信サーバーに対し、最新バージョンの前記管理テーブルのダウンロードを要求し、前記パネル部を介して前記ファームウェア管理部の確認結果に基づくダウンロードの指示があると、前記情報配信サーバーに対して前記コントローラーボードを識別するコントローラーボード識別情報を含めたアップデートの要求を出す工程とを、電子機器を制御するコンピューターに実行させる
ことを特徴とするバージョンチェックプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファームウェアのバージョン管理に適した電子機器、バージョンチェックシステム及びバージョンチェックプログラムに関する。
【背景技術】
【０００２】
たとえば、多機能プリンター、複合機などのＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）である画像形成装置においては、印刷機能、コピー機能、ＦＡＸ機能、ネットワーク経由でのデータ送受信機能などを搭載している機種がある。これらの機能は、それぞれ専用のソフトウェアを元に実行されるが、今後ますます機能の増加が予測される。
【０００３】
また、それぞれの機能に応じたハードウェアを動作させるためのファームウェアは、動作を保証するために、最新バージョンとなっていることが好ましい。このため、ファームウェアは、必要に応じて更新されるが、たとえば更新の処理速度などを上げるために、機能毎に分割されている場合がある。言い換えれば、機能毎に分割されたそれぞれのファームウェアは、個別に更新できる。また、それぞれのファームウェアは、固有の機能名及びバージョン番号を含むバージョン情報を有しているため、最新のファームウェアかどうかはそれぞれのバージョン情報を確認することで判断できる。
【０００４】
ファームウェアの更新に関するものとして、特許文献１では、管理サーバー側のソフトウェア更新支援プログラムが、ＰＣ（ｐｅｒｓｏｎａｌ  ｃｏｍｐｕｔｅｒ）にインストールされている各ソフトウェアのバージョン情報の組み合わせについて、保証バージョン組み合わせテーブルにて保証されたバージョン情報の組み合わせであるか否かなどを判断し、保証されたバージョン情報の組み合わせでない場合、動作が保証されるバージョン情報の組み合わせになるように必要なソフトウェアをダウンロードさせて更新させるソフトウェア更新支援装置を提案している。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−２３０３９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
上述した特許文献１でのソフトウェア更新支援装置では、ＰＣにインストールされている各ソフトウェアのバージョン情報の組み合わせが保証されたバージョン情報の組み合わせでない場合、管理サーバー側のソフトウェア更新支援プログラムが必要なソフトウェアをダウンロードさせて更新させることができる。
【０００７】
つまり、このソフトウェア更新支援装置では、管理サーバー側に、ＰＣにインストールされている各ソフトウェアのバージョン情報の組み合わせが保証されたバージョン情報の組み合わせであるか否かなどを判断するための保証バージョン組み合わせテーブルを持たせている。そして、ＰＣからの更新要求により、管理サーバー側で動作が保証されるバージョン情報の組み合わせに必要なソフトウェアを特定してダウンロードさせる。
【０００８】
ところで、上述した画像形成装置では、インストールされているファームウェアの組み合わせが動作を保証する最新バージョンのファームウェアの組み合わせとなっていることが好ましい。ところが、たとえば任意の機能のファームウェアにバグなどが発生した場合での緊急時においては、任意の機能のファームウェアをアップグレード及び／又はダウングレードすることがある。特に、任意の機能のファームウェアをアップグレードする場合、リリースが間に合わないことがあり、このときはＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリーなどの記憶デバイスからアップグレード用のファームウェアを取り込んで行うことがある。
【０００９】
また、上述した画像形成装置では、たとえばインストールされているファームウェアが動作を保証する最新バージョンのファームウェアの組み合わせとなっていた場合であっても、たとえば搭載されているコントローラーボードの一部のハードウエアの障害が発覚したり、一部のチップ部品のディスコンによりコントローラーボードの仕様が変更になったりする場合がある。このような状況においても、インストールされているファームウェアが動作を保証する最新バージョンのファームウェアの組み合わせとなっていることが好ましい。
【００１０】
この場合、コントローラーボードの動作を制御するファームウェアのアップデートが必要となるが、リリースが間に合わない場合はＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリーなどの記憶デバイスからアップデート用のファームウェアを取り込んで行うことがある。
【００１１】
このように、ＵＳＢメモリーなどの記憶デバイスからアップグレード用又はアップデート用のファームウェアを取り込んだ場合、特許文献１でのソフトウェアの更新方法のように、管理サーバー側に更新要求を出すと、管理サーバー側が保証バージョン組み合わせテーブルにて保証されたバージョン情報の組み合わせになるように必要なファームウェアを画像形成装置にダウンロードさせることになる。この場合、ＵＳＢメモリーなどの記憶デバイスから取り込んだアップグレード用又はアップデート用のファームウェアが保証バージョン組み合わせテーブルにて保証されたバージョンのファームウェアに更新されてしまうという問題があった。
【００１２】
本発明は、このような状況に鑑みてなされたものであり、上記問題点を解消することができる電子機器、バージョンチェックシステム及びバージョンチェックプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明の電子機器は、パネル部と、機能毎に分割され、動作を保証する最新バージョンのファームウェアの組み合わせを示すパッケージ情報が付与されたバージョン情報を有する、コントローラーボードを制御するファームウェアを含む複数のファームウェアを記憶する記憶デバイスと、前記最新バージョンの複数のファームウェアのバージョン情報と、前記ファームウェアの組み合わせを示すパッケージ情報とが登録されている、情報配信サーバーからダウンロードされた最新バージョンの管理テーブルを有し、前記ファームウェアのバージョンチェックの指示に基づき、前記記憶デバイスから読み出したそれぞれの前記ファームウェアのバージョン情報と、前記管理テーブルに登録されたバージョン情報とが一致するかどうかを確認するファームウェア管理部と、前記ファームウェア管理部に前記バージョンチェックを指示し、前記ファームウェア管理部の確認結果を前記パネル部に表示させるシステム制御部とを備え、前記システム制御部は、前記パネル部を介して最新バージョンの前記管理テーブルのダウンロードの指示があると、前記情報配信サーバーに対し、最新バージョンの前記管理テーブルのダウンロードを要求し、前記パネル部を介して前記ファームウェア管理部の確認結果に基づくアップデートの指示があると、前記情報配信サーバーに対して前記コントローラーボードを識別するコントローラーボード識別情報を含めたアップデートの要求を出すことを特徴とする。
また、前記システム制御部は、前記ファームウェア管理部が前記記憶デバイスから読み出したそれぞれの前記ファームウェアのバージョン情報と、前記管理テーブルに登録されたバージョン情報との不一致を確認すると、動作を保証する最新バージョンのファームウェアの組み合わせになっていないと判断し、前記管理テーブルに登録されたバージョン情報と一致しないバージョン情報を前記パネル部に表示させ、前記パネル部に表示させたバージョン情報が示す前記ファームウェアのアップデートの指示があると、アップデートの指示があった前記ファームウェアのアップデートを要求することを特徴とする。
本発明のバージョンチェックシステムは、電子機器と、前記電子機器と通信可能な管理装置とを備え、前記管理装置は、パネル部を有し、前記電子機器は、機能毎に分割され、動作を保証する最新バージョンのファームウェアの組み合わせを示すパッケージ情報が付与されたバージョン情報を有する、コントローラーボードを制御するファームウェアを含む複数のファームウェアを記憶する記憶デバイスと、前記最新バージョンの複数のファームウェアのバージョン情報と、前記ファームウェアの組み合わせを示すパッケージ情報とが登録されている、情報配信サーバーからダウンロードされた最新バージョンの管理テーブルを有し、前記ファームウェアのバージョンチェックの指示に基づき、前記記憶デバイスから読み出したそれぞれの前記ファームウェアのバージョン情報と、前記管理テーブルに登録されたバージョン情報とが一致するかどうかを確認するファームウェア管理部と、前記ファームウェア管理部に前記バージョンチェックを指示し、前記ファームウェア管理部の確認結果を前記パネル部に表示させるシステム制御部とを備え、前記システム制御部は、前記パネル部を介して最新バージョンの前記管理テーブルのダウンロードの指示があると、前記情報配信サーバーに対し、最新バージョンの前記管理テーブルのダウンロードを要求し、前記パネル部を介して前記ファームウェア管理部の確認結果に基づくダウンロードの指示があると、前記情報配信サーバーに対して前記コントローラーボードを識別するコントローラーボード識別情報を含めたアップデートの要求を出すことを特徴とする。
本発明のバージョンチェックプログラムは、記憶デバイスにより、機能毎に分割され、動作を保証する最新バージョンのファームウェアの組み合わせを示すパッケージ情報が付与されたバージョン情報を有する、コントローラーボードを制御するファームウェアを含む複数のファームウェアを記憶する工程と、前記最新バージョンの複数のファームウェアのバージョン情報と、前記ファームウェアの組み合わせを示すパッケージ情報とが登録されている、情報配信サーバーからダウンロードされた最新バージョンの管理テーブルを有するファームウェア管理部により、前記ファームウェアのバージョンチェックの指示に基づき、前記記憶デバイスから読み出したそれぞれの前記ファームウェアのバージョン情報と、前記管理テーブルに登録されたバージョン情報とが一致するかどうかを確認する工程と、システム制御部により、前記ファームウェア管理部に前記バージョンチェックを指示し、前記ファームウェア管理部の確認結果をパネル部に表示させ、前記パネル部を介して最新バージョンの前記管理テーブルのダウンロードの指示があると、前記情報配信サーバーに対し、最新バージョンの前記管理テーブルのダウンロードを要求し、前記パネル部を介して前記ファームウェア管理部の確認結果に基づくダウンロードの指示があると、前記情報配信サーバーに対して前記コントローラーボードを識別するコントローラーボード識別情報を含めたアップデートの要求を出す工程とを、電子機器を制御するコンピューターに実行させることを特徴とする。
本発明の電子機器、バージョンチェックシステム及びバージョンチェックプログラムでは、記憶デバイスにより、機能毎に分割され、動作を保証する最新バージョンのファームウェアの組み合わせを示すパッケージ情報が付与されたバージョン情報を有する、コントローラーボードを制御するファームウェアを含む複数のファームウェアを記憶し、最新バージョンの複数のファームウェアのバージョン情報と、ファームウェアの組み合わせを示すパッケージ情報とが登録されている、情報配信サーバーからダウンロードされた最新バージョンの管理テーブルを有するファームウェア管理部により、ファームウェアのバージョンチェックの指示に基づき、記憶デバイスから読み出したそれぞれのファームウェアのバージョン情報と、管理テーブルに登録されたバージョン情報とが一致するかどうかを確認し、システム制御部により、ファームウェア管理部にバージョンチェックを指示し、ファームウェア管理部の確認結果をパネル部に表示させる。
また、システム制御部は、パネル部を介して最新バージョンの管理テーブルのダウンロードの指示があると、情報配信サーバーに対し、最新バージョンの管理テーブルのダウンロードを要求し、パネル部を介してファームウェア管理部の確認結果に基づくアップデートの指示があった場合、情報配信サーバーに対してコントローラーボードを識別するコントローラーボード識別情報を含めたアップデートの要求を出す。
よって、パネル部を介してアップデートを要求するファームウェアを選択できるので、たとえば緊急時においてアップグレード及び／又はダウングレードしたファームウェアの更新が不要であれば、アップグレード及び／又はダウングレードしたファームウェアの以外のファームウェアのみを更新できる。また、アップデートの要求にコントローラーボードを識別するコントローラーボード識別情報を含ませることで、たとえば搭載されているコントローラーボードの一部のハードウエアの障害が発覚したり、一部のチップ部品のディスコンによりコントローラーボードの仕様が変更になったりする場合でも、コントローラーボード識別情報に対応したアップデート用のファームウェアを受け取ることができる。
【発明の効果】
【００１４】
本発明の電子機器、バージョンチェックシステム及びバージョンチェックプログラムによれば、パネル部を介してアップデートを要求するファームウェアを選択できるので、必要なファームウェアのみを更新できるとともに、アップデートの要求にコントローラーボードを識別するコントローラーボード識別情報を含ませることで、コントローラーボード識別情報に対応したアップデート用のファームウェアを受け取ることができ、コントローラーボードの動作を制御するファームウェアのアップデートが可能となる。
【図面の簡単な説明】
【００１５】
【図１】本発明の電子機器をＭＦＰに適用した場合の一実施形態を示す図である。
【図２】図１のＭＦＰにインストールされているファームウェアなどを説明するものであって、図２（ａ）は図１のＥＥＰＲＯＭに記憶されている更新前のファームウェアのバージョン情報などを示す図であり、図２（ｂ）は図１のＥＥＰＲＯＭに記憶されている更新後のファームウェアのバージョン情報などを示す図である。
【図３】図１のＭＦＰが情報配信サーバーからダウンロードした管理テーブルを説明するものであって、図３（ａ）はファームウェアの動作を保証する最新バージョンのファームウェアの組み合わせを示す管理テーブルを示す図であり、図３（ｂ）はファームウェアのアップデートに伴う更新後の管理テーブルを示す図である。
【図４】図１の情報配信サーバー側の障害対象管理テーブルを説明するための図である。
【図５】図１のＭＦＰでのファームウェアのバージョンチェックの処理について説明するためのフローチャートである。
【図６】図１の情報配信サーバー側での処理について説明するためのフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の電子機器の一実施形態を、図１〜図６を参照しながら説明する。なお、以下の説明においての電子機器の一例としては、たとえば印刷機能、コピー機能、ＦＡＸ機能、ネットワーク経由でのデータ送受信機能などを搭載した複合的な周辺機器であるＭＦＰ（Ｍｕｌｔｉｆｕｎｃｔｉｏｎ  Ｐｅｒｉｐｈｅｒａｌ）であるものとする。
【００１７】
まず、図１に示すように、ＭＦＰ１００は、インターネットなどのネットワーク３００を介し、ファームウェアなどの情報を配信する情報配信サーバー２００に接続されているとする。また、ＭＦＰ１００は、情報配信サーバー２００から後述の図３（ａ）に示す最新バージョンの管理テーブル４０１や各種機能に対応した最新バージョンのファームウェアなどをダウンロードする。なお、管理テーブル４０１は、動作を保証する最新バージョンのファームウェアの組み合わせを、後述の図３（ａ）に示すパッケージ情報４００Ａで管理する。また、管理テーブル４０１や各種機能に対応した最新バージョンのファームウェアなどは、図示しないＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリーなどの記憶デバイスから取り込んでもよい。
【００１８】
ここで、ＭＦＰ１００は、スキャナー部１０１、プリンター部１０２、ＦＡＸ部１０３、Ｉ／Ｆ（インターフェース）１０４、パネル部１０５及びＨＤＤ１０６の動作を制御する制御部１１０を備えている。
【００１９】
スキャナー部１０１は、イメージセンサ（図示省略）によって読み取られる図示しない原稿の画像をデジタルの画像データに変換し、制御部１１０に入力するデバイスである。プリンター部１０２は、制御部１１０から出力される印刷データに基づき、図示しない用紙上に画像を印刷するデバイスである。ＦＡＸ部１０３は、制御部１１０から出力されるデータを、電話回線を通じ相手方となるファクシミリへと送信し、また、相手方ファクシミリからのデータを受信して制御部１１０に入力するデバイスである。
【００２０】
Ｉ／Ｆ１０４は、ネットワーク３００を介し、情報配信サーバー２００に接続されている。なお、Ｉ／Ｆ１０４は、他の図示しないＭＦＰやユーザー端末などとの通信を受け持ってもよいし、図示しないコンテンツサーバーやウェブサーバーなどとの通信を受け持ってもよい。パネル部１０５は、ＭＦＰ１００の印刷機能、コピー機能、ＦＡＸ機能、ネットワーク３００経由でのデータ送受信機能や、各種設定のための表示を行うタッチパネルなどのデバイスである。ＨＤＤ１０６は、ＭＦＰ１００の種々の機能を提供するためのアプリケーションプログラムなどを記憶している記憶デバイスである。また、ＨＤＤ１０６は、たとえばユーザー端末側から登録された印刷ジョブ及びページ記述言語による印刷対応データなどを記憶するユーザーボックスを有している。
【００２１】
制御部１１０は、認証プログラムなどのアプリケーションプログラム、画像形成プログラム、及び制御プログラムなどを実行してＭＦＰ１００全体の動作を制御するプロセッサーである。制御部１１０は、スキャナー制御部１１１、プリンター制御部１１２、ＦＡＸ（Ｆａｃｓｉｍｉｌｅ）制御部１１３、通信制御部１１４、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）１１５、ＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）１１６、画像処理部１１７、ファームウェア管理部１１８、パネル操作制御部１１９、ＨＤＤ制御部１２０、システム制御部１２１を備えている。また、これらは、データバス１２２に接続されている。
【００２２】
スキャナー制御部１１１は、スキャナー部１０１の読み取り動作を制御する。プリンター制御部１１２は、プリンター部１０２の印刷動作を制御する。ＦＡＸ制御部１１３は、ＦＡＸ部１０３によるデータの送受信動作を制御する。通信制御部１１４は、Ｉ／Ｆ１０４を介し、ネットワーク３００経由でのデータなどの送受信の制御を行う。
【００２３】
ＲＡＭ１１５は、プログラムを実行するためのワークメモリーである。また、ＲＡＭ１１５は、画像処理部１１７によって画像処理された印刷データを記憶する。ＥＥＰＲＯＭ１１６には、各部の動作チェックなどを行う制御プログラムが記憶されている。また、ＥＥＰＲＯＭには、スキャナー部１０１、プリンター部１０２、ＦＡＸ部１０３、Ｉ／Ｆ（インターフェース）１０４、パネル部１０５及びＨＤＤ１０６などを動作させるためのファームウェアが記憶されている。なお、ファームウェアは、たとえば更新の処理速度を上げるために、機能毎に分割されている。また、機能毎に分割されたそれぞれのファームウェアは、固有の機能名及びバージョン番号を含む後述の図２（ａ）に示すファームウェア情報１１６ａ〜１１６ｄなどを有しているが、その詳細については後述する。
【００２４】
画像処理部１１７は、スキャナー部１０１によって読み取られた画像データに対する画像処理（ラスタライズ）を行う。また、画像処理部１１７は、ＨＤＤ１０６のユーザーボックスに登録された印刷対象データに対する画像処理（ラスタライズ）を行う。なお、システム制御部１２１は、画像処理部１１７が画像処理した印刷データを、一旦、ＲＡＭ１１５に記憶させる。
【００２５】
ファームウェア管理部１１８は、ファームウェアの動作を保証する最新バージョンのファームウェアの組み合わせを示す後述の図３（ａ）に示す管理テーブル４０１を管理する。また、ファームウェア管理部１１８は、システム制御部１２１の指示に基づき、ＥＥＰＲＯＭ１１６に記憶されている機能毎のファームウェアの機能名及びバージョン番号を含む後述の図２（ａ）に示すファームウェア情報１１６ａ〜１１６ｄを読み出し、管理テーブル４０１のファームウェア情報４００ａ〜４００ｄと比較し、ファームウェア情報１１６ａ〜１１６ｄとファームウェア情報４００ａ〜４００ｄとが一致するかどうかを確認する。また、ファームウェア管理部１１８は、ＭＦＰ１００に搭載されているコントローラーボードを識別するためのコントローラーボード識別情報を管理している。コントローラーボード識別情報は、ＭＦＰ１００に搭載されているコントローラーボード毎に割り当てられたバージョン番号（後述の図４のコントローラーボード情報５００ａの０００１などに相当する）などのバージョン情報を含む。そして、ＭＦＰ１００が情報配信サーバー２００にコントローラーボード識別情報を送信することで、コントローラーボードの一部のハードウエアの障害が発覚したり、一部のチップ部品のディスコンによりコントローラーボードの仕様が変更になったりしたとき、コントローラーボード識別情報に対応したアップデート用のファームウェアを受け取ることができ、コントローラーボードの動作を制御するファームウェアのアップデートが可能となる。
【００２６】
パネル操作制御部１１９は、パネル部１０５の表示動作を制御する。また、パネル操作制御部１１９は、パネル部１０５を介し、印刷、コピー、ＦＡＸ、ネットワーク３００経由でのデータ送受信などの開始を受け付ける。また、パネル操作制御部１１９は、システム制御部１２１の指示に基づき、パネル部１０５に対し、ファームウェア管理部１１８の確認結果を表示させる。また、パネル操作制御部１１９は、パネル部１０５を介し、最新バージョンの後述の図３（ａ）に示す管理テーブル４０１や、任意の機能のファームウェアのダウンロードなどの指示を受け付ける。
【００２７】
システム制御部１２１は、各部の連携動作などを制御する。また、システム制御部１２１は、パネル部１０５を介してコピーや印刷などが選択されると、スキャナー制御部１１１やプリンター制御部１１２を介し、スキャナー部１０１による原稿の読み取りやプリンター部１０２による用紙への印刷を制御する。また、システム制御部１２１は、パネル部１０５を介して後述の図３（ａ）に示す管理テーブル４０１や、任意の機能のファームウェアのダウンロードなどが指示されると、通信制御部１１４を介し、情報配信サーバー２００に管理テーブル４０１のダウンロードや、任意の機能のファームウェアのアップデートを要求する。この場合、システム制御部１２１は、任意の機能のファームウェアのアップデートの要求に併せ、ファームウェア管理部１１８が管理している上述したコントローラーボード識別情報を情報配信サーバー２００に送信する。また、システム制御部１２１は、パネル部１０５を介してファームウェアのバージョンチェックが指示されると、ファームウェア管理部１１８に対し、ＥＥＰＲＯＭ１１６に記憶されている機能毎のファームウェアの機能名及びバージョン番号を含むバージョン情報の読み出しと、管理テーブル４０１のファームウェア情報４００ａ〜４００ｄとの比較とを指示する。また、システム制御部１２１は、パネル操作制御部１１９に対し、ファームウェア管理部１１８の確認結果の表示を指示する。
【００２８】
また、システム制御部１２１は、ファームウェア管理部１１８がＥＥＰＲＯＭ１１６から読み出した後述の図２（ａ）に示すファームウェア情報１１６ａ〜１１６ｄと、後述の図３（ａ）に示す管理テーブル４０１のファームウェア情報４００ａ〜４００ｄとの一致を確認すると、動作を保証する最新バージョンのファームウェアの組み合わせとなっていると判断し、パネル操作制御部１１９に対し、後述の図２（ａ）に示すパッケージ情報１１６Ａの表示を指示する。また、システム制御部１２１は、ファームウェア管理部１１８がＥＥＰＲＯＭ１１６から読み出した後述の図２（ａ）に示すファームウェア情報１１６ａ〜１１６ｄと、後述の図３（ａ）に示す管理テーブル４０１のファームウェア情報４００ａ〜４００ｄとの不一致を確認すると、動作を保証する最新バージョンのファームウェアの組み合わせとなっていないと判断し、パネル操作制御部１１９に対し、動作の保証外であることを示す内容の表示を指示する。なお、システム制御部１２１は、動作を保証する最新バージョンのファームウェアの組み合わせとなっていないと判断した場合、パネル操作制御部１１９に対し、管理テーブル４０１のファームウェア情報４００ａ〜４００ｄと一致しないファームウェア情報１１６ａ〜１１６ｄの表示を指示してもよい。
【００２９】
一方、情報配信サーバー２００は、Ｉ／Ｆ２０１、ＨＤＤ２０２を制御する制御部２１０を備えている。Ｉ／Ｆ２０１は、ネットワーク３００を介し、ＭＦＰ１００に接続されている。なお、Ｉ／Ｆ２０１は、他の図示しないＭＦＰやユーザー端末などとの通信を受け持ってもよい。ＨＤＤ２０２は、ＭＦＰ１００からのダウンロードやアップデートの要求に基づいて送信する、後述の図３（ａ）に相当する図示しない管理テーブルや、後述の図４に示す障害対象管理テーブル５００や、アップデートに必要な各種ファームウェアなどを記憶している。
【００３０】
制御部２１０は、制御プログラムなどを実行して情報配信サーバー２００全体の動作を制御するプロセッサーである。制御部２１０は、ＲＡＭ２１１、ＥＥＰＲＯＭ２１２、通信制御部２１３、ファームウェア管理部２１４、ＨＤＤ制御部２１５、システム制御部２１６を備えている。また、これらは、データバス２１７に接続されている。
【００３１】
ＲＡＭ２１１は、プログラムを実行するためのワークメモリーである。ＥＥＰＲＯＭ２１２には、各部の動作チェックなどを行う制御プログラムが記憶されている。通信制御部２１３は、Ｉ／Ｆ２０１を介し、ネットワーク３００経由でのデータなどの送受信の制御を行う。また、通信制御部２１３は、ＭＦＰ１００からのファームウェアのアップデートの要求などを受け取る。また、通信制御部２１３は、アップデートのためのファームウェアなどをＭＦＰ１００に送信する。
【００３２】
ファームウェア管理部２１４は、ＨＤＤ２０２に記憶されている、上述した図示しない管理テーブルや、後述の図４に示す障害対象管理テーブル５００を管理する。また、ファームウェア管理部２１４は、詳細については後述するが、ＭＦＰ１００からのアップデートの要求に含まれるコントローラーボード識別情報が障害対象管理テーブル５００に登録されているかどうかを確認する。
【００３３】
システム制御部２１６は、通信制御部２１３を介し、ＭＦＰ１００からの上述したアップデートの要求を受け取ると、ファームウェア管理部２１４に対し、ＭＦＰ１００からのアップデートの要求に含まれるコントローラーボード識別情報が障害対象管理テーブル５００に登録されているかどうかの確認を指示する。また、システム制御部２１６は、ファームウェア管理部２１４からのアップデートの要求に該当するファームウェアの通知や、障害回避のファームウェアの通知を受け取ると、該当するファームウェアをＨＤＤ２０２から読み出し、通信制御部２１３を介してＭＦＰ１００に送信する。
【００３４】
次に、図２を参照し、ＭＦＰ１００にインストールされているファームウェアなどについて説明する。まず、図２（ａ）はＥＥＰＲＯＭ１１６に記憶されている更新前のファームウェアバージョン情報を示している。ファームウェアバージョン情報は、パッケージ情報１１６Ａ及びファームウェア情報１１６ａ〜１１６ｄを含む。ファームウェア情報１１６ａ〜１１６ｄは、ＭＦＰ１００の機能名及びバージョン番号を含む。
【００３５】
すなわち、ファームウェア情報１１６ａは、たとえば（Ｆｉｒｍｗａｒｅ  Ａ  ｖｅｒ．１．０）を示すものとする。また、ファームウェア情報１１６ｂは、たとえば（Ｆｉｒｍｗａｒｅ  Ｂ  ｖｅｒ．２．３）を示すものとする。また、ファームウェア情報１１６ｃは、たとえば（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．１）を示すものとする。また、ファームウェア情報１１６ｄは、たとえば（Ｆｉｒｍｗａｒｅ  Ｄ  ｖｅｒ．４．０）を示すものとする。ここで、（Ｆｉｒｍｗａｒｅ  Ａ）、（Ｆｉｒｍｗａｒｅ  Ｂ）、（Ｆｉｒｍｗａｒｅ  Ｃ）、（Ｆｉｒｍｗａｒｅ  Ｄ）は機能名を示し、（ｖｅｒ．１．０）、（ｖｅｒ．２．３）、（ｖｅｒ．３．１）、（ｖｅｒ．４．０）はバージョン番号を示す。また、これらのファームウェア情報１１６ａ〜１１６ｄには、（Ｐａｃｋａｇｅ  ｖｅｒ．１．０）としたパッケージ情報１１６Ａが付与されている。ここで、（Ｐａｃｋａｇｅ）は、ファームウェアの組み合わせを示し、（ｖｅｒ．１．０）はバージョン番号を示している。つまり、パッケージ情報１１６Ａは、ファームウェアの動作を保証する最新バージョンの組み合わせを示している。
【００３６】
また、図２（ｂ）は、ＥＥＰＲＯＭ１１６に記憶されている更新後のファームウェアバージョン情報を示している。なお、図２（ｂ）において、網掛け部分は更新後の訂正箇所を示している。図２（ｂ）では、たとえばファームウェア情報１１６ａが（ｖｅｒ．１．１）にアップグレードされ、ファームウェア情報１１６ｂが（ｖｅｒ．２．２）にダウングレードされた場合を示している。この場合、ＥＥＰＲＯＭ１１６に記憶されている図２（ａ）のファームウェア更新前のファームウェア情報１１６ａ、１１６ｂが図２（ｂ）のファームウェア更新後のファームウェア情報１１６ａ、１１６ｂに書き換えられる。なお、ファームウェア情報１１６ａ、１１６ｂは、たとえばファームウェアのバグなどの発生による緊急時において、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリーなどの記憶デバイスからアップグレード用のファームウェアとダウングレード用のファームウェアを取り込んで更新されたものとする。
【００３７】
次に、図３を参照し、ファームウェアの動作を保証する最新バージョンのファームウェアの組み合わせを示す管理テーブルについて説明する。図３（ａ）は、情報配信サーバー２００からダウンロードした最新バージョンの管理テーブル４０１を示している。管理テーブル４０１には、パッケージ情報４００Ａとファームウェア情報４００ａ〜４００ｄとが登録されている。ここで、ファームウェア情報４００ａ〜４００ｄが動作を保証する最新バージョンのファームウェアの組み合わせとなっていることを、パッケージ情報４００Ａで管理している。
【００３８】
すなわち、パッケージ情報４００Ａは、Ｐａｃｋａｇｅ  ｖｅｒ．１．０であり、動作を保証する最新バージョンのファームウェアの組み合わせを示すものである。ファームウェア情報４００ａは、（Ｆｉｒｍｗａｒｅ  Ａ  ｖｅｒ．１．０）を示すものとする。ファームウェア情報４００ｂは、（Ｆｉｒｍｗａｒｅ  Ｂ  ｖｅｒ．２．３）を示すものとする。ファームウェア情報４００ｃは、（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．１）を示すものとする。ファームウェア情報４００ｄは、（Ｆｉｒｍｗａｒｅ  Ｄ  ｖｅｒ．４．０）を示すものとする。また、（Ｐａｃｋａｇｅ）は、上記同様に、ファームウェアの組み合わせを示し、（ｖｅｒ．１．０）はバージョン番号を示している。また、（Ｆｉｒｍｗａｒｅ  Ａ）、（Ｆｉｒｍｗａｒｅ  Ｂ）、（Ｆｉｒｍｗａｒｅ  Ｃ）、（Ｆｉｒｍｗａｒｅ  Ｄ）は上記同様に、機能名を示し、（ｖｅｒ．１．０）、（ｖｅｒ．２．３）、（ｖｅｒ．３．１）、（ｖｅｒ．４．０）は上記同様に、バージョン番号を示している。なお、管理テーブル４０１は、ファームウェア管理部１１８によって管理されるものである。また、管理テーブル４０１は、図示しないＵＳＢメモリーなどの記憶デバイスから取り込んでもよい。
【００３９】
ここで、ファームウェア管理部１１８は、システム制御部１２１のバージョンチェックの指示に基づき、ＥＥＰＲＯＭ１１６に記憶されている機能毎のファームウェアの機能名及びバージョン番号を含むファームウェア情報１１６ａ〜１１６ｄを読み出し、管理テーブル４０１のファームウェア情報４００ａ〜４００ｄと比較する。この場合、ファームウェア管理部１１８は、図２（ａ）のように、ファームウェアが更新前であるとき、ＥＥＰＲＯＭ１１６から読み出したファームウェア情報１１６ａ〜１１６ｄと、管理テーブル４０１のファームウェア情報４００ａ〜４００ｄとの一致を確認する。このとき、システム制御部１２１は、ＥＥＰＲＯＭ１１６から読み出したファームウェア情報１１６ａ〜１１６ｄが動作を保証する最新バージョンのファームウェアの組み合わせとなっていると判断し、パネル操作制御部１１９に対し、パッケージ情報１１６Ａの表示を指示する。
【００４０】
これに対し、ファームウェア管理部１１８は、図２（ｂ）のように、たとえばファームウェア情報１１６ａのファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）がアップグレードされ、ファームウェア情報１１６ｂのファームウェア（Ｆｉｒｍｗａｒｅ  Ｂ）がダウングレードされていると、ＥＥＰＲＯＭ１１６から読み出したファームウェア情報１１６ａ〜１１６ｄのうちのファームウェア情報１１６ａ、１１６ｂと、管理テーブル４０１のファームウェア情報４００ａ、４００ｂとの不一致を確認する。このとき、システム制御部１２１は、ＥＥＰＲＯＭ１１６から読み出したファームウェア情報１１６ａ〜１１６ｄが動作を保証する最新バージョンのファームウェアの組み合わせとなっていないと判断し、パネル操作制御部１１９に対し、動作の保証外であることを示す内容の表示を指示する。なお、この場合、システム制御部１２１は、パネル操作制御部１１９に対し、管理テーブル４０１のファームウェア情報４００ａ、４００ｂと一致しないファームウェア情報１１６ａ、１１６ｂの表示を指示してもよい。
【００４１】
図３（ｂ）は、更新後の管理テーブル４０２を示している。なお、図３（ｂ）において、網掛け部分は更新後の訂正箇所を示している。管理テーブル４０２は、コントローラーボードの一部のハードウエアの障害が発覚したり、一部のチップ部品のディスコンによりコントローラーボードの仕様が変更になったりした状況において、コントローラーボードの動作を制御するファームウェアのアップデートに伴う更新後の登録内容を示している。すなわち、詳細については後述するが、たとえば図２（ａ）に示すファームウェア（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．１）が障害対象となっているとき、情報配信サーバー２００からの障害回避のファームウェア（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．２）にアップデートされる。
【００４２】
このとき、ファームウェア管理部１１８は、ファームウェア情報４００ｄの（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．１）を  （Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．２）に書き換える。また、ファームウェア管理部１１８は、情報配信サーバー２００からの後述の図４に示す障害回避のパッケージ情報５０３の（Ｐａｃｋａｇｅ  ｖｅｒ．１．０．１）を元に、パッケージ情報４００Ａの（Ｐａｃｋａｇｅ  ｖｅｒ．１．０）を、（Ｐａｃｋａｇｅ  ｖｅｒ．１．０．１）に書き換える。このように、パッケージ情報４００Ａの（Ｐａｃｋａｇｅ  ｖｅｒ．１．０）を、（Ｐａｃｋａｇｅ  ｖｅｒ．１．０．１）に書き換えることで、管理テーブル４０２が障害回避のファームウェアのアップデートに伴った最新バージョンであることを識別できる。なお、ファームウェア管理部１１８は、（Ｆｉｒｍｗａｒｅ  Ｃ）以外の（Ｆｉｒｍｗａｒｅ  Ａ）、（Ｆｉｒｍｗａｒｅ  Ｂ）、（Ｆｉｒｍｗａｒｅ  Ｄ）についても、アップデートによって変更されると、（Ｆｉｒｍｗａｒｅ  Ａ）、（Ｆｉｒｍｗａｒｅ  Ｂ）、（Ｆｉｒｍｗａｒｅ  Ｄ）のバージョン番号を書き換える。
【００４３】
次に、図４を参照し、情報配信サーバー２００のＨＤＤ２０２に記憶されている管理テーブルについて説明する。すなわち、ＨＤＤ２０２には、障害対象管理テーブル５００が記憶されている。なお、ＨＤＤ２０２には、ＭＦＰ１００からのダウンロードの要求に応じてＭＦＰ１００に送信するための図２（ａ）に相当する図示しない最新バージョンの管理テーブルが記憶されている。
【００４４】
障害対象管理テーブル５００には、コントローラーボード情報５００ａと、ファームウェア差し替え情報５００ｂとが登録されている。コントローラーボード情報５００ａは、コントローラーボードの一部のハードウエアの障害が発覚したり、一部のチップ部品のディスコンによりコントローラーボードの仕様が変更になったりした場合でのコントローラーボードを管理するための情報であり、たとえば（０００１）で示すバージョン番号（コントローラーボード識別情報）を有している。すなわち、障害対象管理テーブル５００にコントローラーボードのバージョン番号が登録されていれば、障害対象であることを確認できる。
【００４５】
ファームウェア差し替え情報５００ｂには、障害対象のファームウェア情報５０１、障害回避のファームウェア情報５０２、障害回避のパッケージ情報５０３が含まれている。障害対象のファームウェア情報５０１は、障害対象のファームウェアを示している。すなわち、コントローラーボード情報５００ａのバージョン番号がたとえば（０００１）であるとき、障害対象のファームウェア情報５０１は（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．１）で示すファームウェアが障害対象であることを示している。
【００４６】
障害回避のファームウェア情報５０２は、障害回避のファームウェアを示している。すなわち、障害対象のファームウェアが（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．１）であるとき、障害回避のファームウェアが（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．２）であることを示している。障害回避のパッケージ情報５０３は、障害回避のファームウェアである（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．２）をアップデートした場合、（Ｐａｃｋａｇｅ  ｖｅｒ．１．０．１）となることを示している。
【００４７】
次に、図５を参照し、ＭＦＰ１００側でのファームウェアのバージョンチェックの処理について説明する。なお、以下においては、図２（ａ）のようにファームウェアが更新前である場合と、図２（ｂ）のようにファームウェアが更新後である場合とを含めて説明する。また、図２（ｂ）のようにファームウェアが更新後である場合、ファームウェア情報１１６ａのファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）がアップグレードされ、ファームウェア情報１１６ｂのファームウェア（Ｆｉｒｍｗａｒｅ  Ｂ）がダウングレードされているものとして説明する。また、情報配信サーバー２００に対してアップデートが要求されるとき、アップデートの要求にコントローラーボード識別情報が含まれる場合で説明する。
【００４８】
（ステップＳ１０１）
システム制御部１２１は、管理テーブル４０１のダウンロードの指示有りかどうかを判断する。
この場合、システム制御部１２１は、通信制御部１１４からのパネル部１０５を介しての最新バージョンの管理テーブル４０１のダウンロードの指示が有ったことを示す通知が無ければ、管理テーブル４０１のダウンロードの指示が無いと判断する（ステップＳ１０１：Ｎｏ）。
これに対し、システム制御部１２１は、通信制御部１１４からのパネル部１０５を介しての最新バージョンの管理テーブル４０１のダウンロードの指示が有ったことを示す通知が有れば、管理テーブル４０１のダウンロードの指示が有ると判断し（ステップＳ１０１：Ｙｅｓ）、ステップＳ１０２に移行する。
【００４９】
（ステップＳ１０２）
システム制御部１２１は、管理テーブル４０１のダウンロードを要求する。
この場合、システム制御部１２１は、通信制御部１１４を介し、ネットワーク３００上の情報配信サーバー２００に管理テーブル４０１のダウンロードを要求する。
【００５０】
（ステップＳ１０３）
システム制御部１２１は、管理テーブル４０１のダウンロードが完了したかどうかを判断する。
この場合、システム制御部１２１は、通信制御部１１４からの管理テーブル４０１のダウンロードの完了を示す通知が無ければ管理テーブル４０１のダウンロードが完了していないと判断する（ステップＳ１０３：Ｎｏ）。
これに対し、システム制御部１２１は、通信制御部１１４からの管理テーブル４０１のダウンロードの完了を示す通知が有れば管理テーブル４０１のダウンロードが完了したと判断し（ステップＳ１０３：Ｙｅｓ）、ステップＳ１０４に移行する。
【００５１】
（ステップＳ１０４）
システム制御部１２１は、バージョンチェックの指示有りかどうかを判断する。
この場合、システム制御部１２１は、パネル操作制御部１１９からのパネル部１０５を介してのバージョンチェックの指示を受け付けたことを示す通知が無ければバージョンチェックの指示が無いと判断する（ステップＳ１０４：Ｎｏ）。
これに対し、システム制御部１２１は、パネル操作制御部１１９からのパネル部１０５を介してのバージョンチェックの指示を受け付けたことを示す通知が有ればバージョンチェックの指示が有ると判断し（ステップＳ１０４：Ｙｅｓ）、ステップＳ１０５に移行する。
【００５２】
（ステップＳ１０５）
システム制御部１２１は、バージョンチェックを指示する。
この場合、システム制御部１２１は、ファームウェア管理部１１８に対し、バージョンチェックを指示する。
このとき、ファームウェア管理部１１８は、システム制御部１２１のバージョンチェックの指示に基づき、ＥＥＰＲＯＭ１１６に記憶されている機能毎のファームウェアの機能名及びバージョン番号を含むファームウェア情報１１６ａ〜１１６ｄを読み出し、管理テーブル４０１のファームウェア情報４００ａ〜４００ｄと比較する。
この場合、ファームウェア管理部１１８は、図２（ａ）のように、ファームウェアが更新前であるとき、ＥＥＰＲＯＭ１１６から読み出したファームウェア情報１１６ａ〜１１６ｄと、管理テーブル４０１のファームウェア情報４００ａ〜４００ｄとの一致を確認する。
これに対し、ファームウェア管理部１１８は、図２（ｂ）のように、たとえばファームウェア情報１１６ａのファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）がアップグレードされ、ファームウェア情報１１６ｂのファームウェア（Ｆｉｒｍｗａｒｅ  Ｂ）がダウングレードされていると、ＥＥＰＲＯＭ１１６から読み出したファームウェア情報１１６ａ〜１１６ｄのうちのファームウェア情報１１６ａ、１１６ｂと、管理テーブル４０１のファームウェア情報４００ａ、４００ｂとの不一致を確認する。
【００５３】
（ステップＳ１０６）
システム制御部１２１は、最新バージョンの組み合わせかどうかを判断する。
システム制御部１２１は、ファームウェア管理部１１８がＥＥＰＲＯＭ１１６から読み出したファームウェア情報１１６ａ〜１１６ｄのうちのファームウェア情報１１６ａ、１１６ｂと、管理テーブル４０１のファームウェア情報４００ａ、４００ｂとの不一致を確認すると、動作を保証する最新バージョンのファームウェアの組み合わせになっていないと判断し（ステップＳ１０６：Ｎｏ）、ステップＳ１０８に移行する。
すなわち、図２（ｂ）のように、たとえばファームウェア情報１１６ａのファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）がアップグレードされ、ファームウェア情報１１６ｂのファームウェア（Ｆｉｒｍｗａｒｅ  Ｂ）がダウングレードされていると、管理テーブル４０１のファームウェア情報４００ａ、４００ｂと一致しないため、システム制御部１２１は動作を保証する最新バージョンのファームウェアの組み合わせになっていないと判断する。
これに対し、システム制御部１２１は、ファームウェア管理部１１８がＥＥＰＲＯＭ１１６から読み出したファームウェア情報１１６ａ〜１１６ｄと、管理テーブル４０１のファームウェア情報４００ａ〜４００ｄとの一致を確認した場合、動作を保証する最新バージョンのファームウェアの組み合わせになっていると判断し（ステップＳ１０６：Ｙｅｓ）、ステップＳ１０７に移行する。
すなわち、図２（ａ）のように、ファームウェアの更新が無ければ、ファームウェア情報１１６ａ〜１１６ｄと管理テーブル４０１のファームウェア情報４００ａ〜４００ｄとが一致するため、システム制御部１２１は動作を保証する最新バージョンのファームウェアの組み合わせになっていると判断する。
【００５４】
（ステップＳ１０７）
システム制御部１２１は、パッケージ情報１１６Ａを表示させる。
この場合、システム制御部１２１は、パネル操作制御部１１９に対し、パッケージ情報１１６Ａの表示を指示する。これにより、パネル部１０５には、パッケージ情報１１６Ａが表示されるため、パネル部１０５に表示されたパッケージ情報１１６Ａを確認することで、ＭＦＰ１００にインストールされているファームウェアが動作を保証する最新バージョンの組み合わせとなっていることを認識できる。
【００５５】
（ステップＳ１０８）
システム制御部１２１は、動作の保証外であることを示す内容を表示させる。
この場合、システム制御部１２１は、パネル操作制御部１１９に対し、動作の保証外であることを示す内容の表示を指示する。これにより、パネル部１０５には、動作の保証外であることを示す内容が表示されるため、パネル部１０５の表示内容を確認することで、ＭＦＰ１００にインストールされているファームウェアが動作を保証する最新バージョンの組み合わせとなっていないことを認識できる。
なお、この場合、システム制御部１２１はパネル操作制御部１１９に対し、管理テーブル４０１のファームウェア情報４００ａ、４００ｂと一致しないファームウェア情報１１６ａ、１１６ｂの表示を指示してもよい。これにより、パネル部１０５に表示される動作の保証外のファームウェア情報１１６ａ、１１６ｂを確認することで、動作の保証外のファームウェア情報１１６ａ、１１６ｂを容易に認識できる。
【００５６】
（ステップＳ１０９）
システム制御部１２１は、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のアップデートの指示有りかどうかを判断する。
この場合、システム制御部１２１は、通信制御部１１４からのパネル部１０５を介してのファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のアップデートの指示が有ったことを示す通知が無ければ、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のアップデートの指示が無いと判断し（ステップＳ１０９：Ｎｏ）、処理を終了する。
つまり、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び（Ｆｉｒｍｗａｒｅ  Ｂ）のバグなどの発生による緊急時において、アップグレードしたファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又はダウングレードしたファームウェア（Ｆｉｒｍｗａｒｅ  Ｂ）の更新が必要でなければアップデートの指示を出さないことで、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又はファームウェア（Ｆｉｒｍｗａｒｅ  Ｂ）の更新を避けることができる。
これに対し、システム制御部１２１は、通信制御部１１４からのパネル部１０５を介してのファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のアップデートの指示が有ったことを示す通知が有れば、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のアップデートの指示が有ると判断し（ステップＳ１０９：Ｙｅｓ）、ステップＳ１１０に移行する。
つまり、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び（Ｆｉｒｍｗａｒｅ  Ｂ）のバグなどの発生による緊急時において、アップグレードしたファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又はダウングレードしたファームウェア（Ｆｉｒｍｗａｒｅ  Ｂ）の更新が必要となった場合、アップデートの指示を出すことで、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又はファームウェア（Ｆｉｒｍｗａｒｅ  Ｂ）の更新を行うことができる。
【００５７】
（ステップＳ１１０）
システム制御部１２１は、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のアップデートを要求する。
この場合、システム制御部１２１は、通信制御部１１４を介し、ネットワーク３００上の情報配信サーバー２００にファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のアップデートを要求する。このとき、システム制御部１２１は、ファームウェア管理部１１８が管理している、ＭＦＰ１００に搭載されているコントローラーボードを識別するためのコントローラーボード識別情報をアップデートの要求に含める。
【００５８】
（ステップＳ１１１）
システム制御部１２１は、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）などのダウンロードが完了したかどうかを判断する。
この場合、システム制御部１２１は、通信制御部１１４からのファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）などのダウンロードの完了を示す通知が無ければファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のダウンロードが完了していないと判断する（ステップＳ１１１：Ｎｏ）。
これに対し、システム制御部１２１は、通信制御部１１４からのファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のダウンロードの完了を示す通知が有ればファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のダウンロードが完了したと判断し（ステップＳ１１１：Ｙｅｓ）、処理を終了する。
また、システム制御部１２１は、通信制御部１１４を介し、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）以外の図４に示したコントローラーボードの障害回避のファームウェア情報５０２が示すたとえばファームウェア（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．２）及び障害回避のパッケージ情報５０３が示すたとえばパッケージ情報（Ｐａｃｋａｇｅ  ｖｅｒ．１．０．１）のダウンロードの完了を確認できる。
【００５９】
なお、以上の手順では、システム制御部１２１がファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）のアップデートの要求にコントローラーボード識別情報を含ませる場合としたが、これに限らず、パネル部１０５を介してコントローラーボードに関するアップデートの指示があるとき、コントローラーボード識別情報のみをアップデートの要求として送信してもよい。この場合、たとえばインストールされているファームウェアが動作を保証する最新バージョンのファームウェアの組み合わせとなっていた場合であっても、たとえばＭＦＰ１００に搭載されているコントローラーボードの一部のハードウエアの障害が発覚したり、一部のチップ部品のディスコンによりコントローラーボードの仕様が変更になったことに合わせ、コントローラーボードの動作を制御するファームウェアのアップデートが可能となる。
【００６０】
次に、図６を参照し、情報配信サーバー２００側での処理について説明する。なお、以下においては、ＭＦＰ１００側からのアップデートの要求に、上述したファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）と、コントローラーボード識別情報とが含まれている場合で説明する。
【００６１】
（ステップＳ２０１）
システム制御部２１６は、アップデートの要求有りかどうかを判断する。
この場合、システム制御部２１６は、通信制御部２１３からのアップデートの要求を受け取ったことを示す通知が無ければ、アップデートの要求が無いと判断する（ステップＳ２０１：Ｎｏ）。
これに対し、システム制御部２１６は、通信制御部２１３からのアップデートの要求を受け取ったことを示す通知が有れば、アップデートの要求が有ると判断し（ステップＳ２０１：Ｙｅｓ）、ステップＳ２０２に移行する。
【００６２】
（ステップＳ２０２）
システム制御部２１６は、障害対象かどうかを判断する。
この場合、システム制御部２１６は、ファームウェア管理部２１４に対し、アップデートの要求に含まれているコントローラーボード識別情報が障害対象管理テーブル５００に登録されているどうかの確認を指示する。
そして、システム制御部２１６は、ファームウェア管理部２１４からの障害対象管理テーブル５００にたとえば（０００１）で示すバージョン番号（コントローラーボード識別情報）が登録されていないことを示す通知を受け取ると、障害対象ではないと判断し（ステップＳ２０２：Ｎｏ）、ステップＳ２０３に移行する。
これに対し、システム制御部２１６は、ファームウェア管理部２１４からの障害対象管理テーブル５００にたとえば（０００１）で示すバージョン番号（コントローラーボード識別情報）が登録されていることを示す通知を受け取ると、障害対象であると判断し（ステップＳ２０２：Ｙｅｓ）、ステップＳ２０５に移行する。
【００６３】
（ステップＳ２０３）
システム制御部２１６は、アップデートするファームウェアを取得する。
この場合、システム制御部２１６は、ＨＤＤ１０６に記憶されている、上述したファームウェア情報４００ａ（Ｆｉｒｍｗａｒｅ  Ａ  ｖｅｒ．１．０）及び／又はファームウェア情報４００ｂ（Ｆｉｒｍｗａｒｅ  Ｂ  ｖｅｒ．２．３）のファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）を読み出す。
【００６４】
（ステップＳ２０４）
システム制御部２１６は、ファームウェアを送信する。
この場合、システム制御部２１６は、通信制御部２１３を介し、ＨＤＤ２０２から読み出したファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）をＭＦＰ１００に送信する。
【００６５】
（ステップＳ２０５）
システム制御部２１６は、障害回避のファームウェア情報５０２を取得する。
この場合、システム制御部２１６は、ファームウェア管理部２１４からの障害回避のファームウェア情報５０２を受け取る。すなわち、ファームウェア管理部２１４は、図４で説明したように、コントローラーボード情報５００ａのバージョン番号がたとえば（０００１）であるとき、障害対象のファームウェア情報５０１が（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．１）であることを確認する。また、ファームウェア管理部２１４は、障害対象のファームウェア情報５０１が（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．１）であるとき、障害回避のファームウェアが（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．２）であることを確認し、障害回避のファームウェア情報５０２をシステム制御部２１６に通知する。
【００６６】
（ステップＳ２０６）
システム制御部２１６は、障害回避のパッケージ情報５０３を取得する。
この場合、システム制御部２１６は、ファームウェア管理部２１４からの障害回避のパッケージ情報５０３受け取る。すなわち、ファームウェア管理部２１４は、障害回避のファームウェア情報５０２が（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．２）であるとき、障害回避のパッケージ情報５０３が（Ｐａｃｋａｇｅ  ｖｅｒ．１．０．１）であることを確認し、障害回避のパッケージ情報５０３をシステム制御部２１６に通知する。
【００６７】
（ステップＳ２０７）
システム制御部２１６は、アップデートするファームウェアが他に有るかどうかを判断する。
この場合、システム制御部２１６は、ＭＦＰ１００側からのアップデートの要求に、コントローラーボード識別情報のみが含まれている場合、アップデートするファームウェアが他に無いと判断し（ステップＳ２０７：Ｎｏ）、ステップＳ２０８に移行する。
これに対し、システム制御部２１６は、ＭＦＰ１００側からのアップデートの要求に、ファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）が含まれている場合、アップデートするファームウェアが他に有ると判断し（ステップＳ２０７：Ｙｅｓ）、ステップＳ２０９に移行する。
【００６８】
（ステップＳ２０８）
システム制御部２１６は、障害回避のファームウェアを送信する。
この場合、システム制御部２１６は、ファームウェア管理部２１４からの障害回避のファームウェア情報５０２である（Ｆｉｒｍｗａｒｅ  Ｃ  ｖｅｒ．３．２）を示す通知を元に、該当するファームウェア（Ｆｉｒｍｗａｒｅ  Ｃ）をＨＤＤ２０２から読み出し、通信制御部２１３を介しＭＦＰ１００に送信する。この場合、システム制御部２１６は、ファームウェア管理部２１４からの障害回避のパッケージ情報５０３である（Ｐａｃｋａｇｅ  ｖｅｒ．１．０．１）を、併せてＭＦＰ１００に送信する。
【００６９】
（ステップＳ２０９）
システム制御部２１６は、アップデートするファームウェアを取得する。
この場合、システム制御部２１６は、ＨＤＤ１０６に記憶されている、上述したファームウェア情報４００ａ（Ｆｉｒｍｗａｒｅ  Ａ  ｖｅｒ．１．０）及び／又はファームウェア情報４００ｂ（Ｆｉｒｍｗａｒｅ  Ｂ  ｖｅｒ．２．３）のファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）を読み出す。
【００７０】
（ステップＳ２１０）
システム制御部２１６は、障害回避のファームウェアと障害回避以外のファームウェア情報とを送信する。
この場合、システム制御部２１６は、通信制御部２１３を介し、ＨＤＤ２０２から読み出した障害回避のファームウェア（Ｆｉｒｍｗａｒｅ  Ｃ）と、障害回避以外のファームウェアであるファームウェア（Ｆｉｒｍｗａｒｅ  Ａ）及び／又は（Ｆｉｒｍｗａｒｅ  Ｂ）をＭＦＰ１００に送信する。また、システム制御部２１６は、ファームウェア管理部２１４からの障害回避のパッケージ情報５０３である（Ｐａｃｋａｇｅ  ｖｅｒ．１．０．１）を、併せてＭＦＰ１００に送信する。
【００７１】
このように、本実施形態では、ＥＥＰＲＯＭ１１６（記憶デバイス）により、機能毎に分割され、動作を保証する最新バージョンのファームウェアの組み合わせを示すパッケージ情報１１６Ａが付与されたファームウェア情報１１６ａ〜１１６ｄを有する、コントローラーボードを制御するファームウェアを含む複数のファームウェアを記憶し、最新バージョンの複数のファームウェアのファームウェア情報４００ａ〜４００ｄと、ファームウェアの組み合わせを示すパッケージ情報４００Ａとが登録されている、情報配信サーバー２００からダウンロードされた最新バージョンの管理テーブル４０１を有するファームウェア管理部１１８により、ファームウェアのバージョンチェックの指示に基づき、ＥＥＰＲＯＭ１１６（記憶デバイス）から読み出したそれぞれのファームウェアのファームウェア情報１１６ａ〜１１６ｄと、管理テーブル４０１に登録されたファームウェア情報４００ａ〜４００ｄとが一致するかどうかを確認し、システム制御部１２１により、ファームウェア管理部１１８にバージョンチェックを指示し、ファームウェア管理部１１８の確認結果をパネル部１０５に表示させる。
【００７２】
また、システム制御部１２１は、パネル部１０５を介して最新バージョンの管理テーブル４０１のダウンロードの指示があると、情報配信サーバー２００に対し、最新バージョンの管理テーブル４０１のダウンロードを要求し、パネル部１０５を介してファームウェア管理部１１８の確認結果に基づくアップデートの指示があった場合、情報配信サーバー２００に対してコントローラーボードを識別するコントローラーボード識別情報を含めたファームウェアのアップデートの要求を出す。
【００７３】
よって、パネル部１０５を介してアップデートを要求するファームウェアを選択できるので、たとえば緊急時においてアップグレード及び／又はダウングレードしたファームウェアの更新が不要であれば、アップグレード及び／又はダウングレードしたファームウェアの以外のファームウェアのみを選択できることから、必要なファームウェアのみを更新できる。また、アップデートの要求にコントローラーボードを識別するコントローラーボード識別情報を含ませるので、たとえば搭載されているコントローラーボードの一部のハードウエアの障害が発覚したり、一部のチップ部品のディスコンによりコントローラーボードの仕様が変更になったりする場合でも、コントローラーボードの動作を制御するファームウェアのアップデートが可能となる。
【００７４】
また、ファームウェアのアップデートは、管理テーブル４０１のファームウェア情報４００ａ〜４００ｃと相違するファームウェア情報１１６ａ〜１１６ｄや、コントローラーボード識別情報を元に自動的に行われるため、ファームウェアのアップデート作業をミスを生じることなく容易かつ確実に行うことができる。
【００７５】
なお、本実施形態では、ＭＦＰ１００がパネル部１０５を備えるとして説明したが、この例に限らず、パネル部１０５がＭＦＰ１００とネットワーク等を介して通信可能な管理装置に備えられていてもよい。この場合、本実施形態で説明したパネル部１０５を介する処理は、管理装置のパネル部１０５を介して、管理装置がＭＦＰ１００と通信することにより実行される。ここで、管理装置は、パネル部１０５としてのタッチパネルを有する携帯端末であってもよく、ディスプレイと操作部が別体であるパネル部１０５を有するパーソナルコンピューターであってもよい。
【００７６】
また、本実施形態では、電子機器をＭＦＰ１００に適用した場合として説明したが、この例に限らず、複数の機能を搭載したＰＣ（ｐｅｒｓｏｎａｌ  ｃｏｍｐｕｔｅｒ）、携帯端末、タブレット端末などの他の電子機器に適用してもよい。
【００７７】
また、ＥＥＰＲＯＭ１１６に代えて、他の不揮発性半導体記憶装置や他のＨＤＤなどの記憶デバイスを使用してもよい。
【符号の説明】
【００７８】
１００  ＭＦＰ
１０１  スキャナー部
１０２  プリンター部
１０３  ＦＡＸ部
１０４  Ｉ／Ｆ
１０５  パネル部
１０６  ＨＤＤ
１１０、２１０  制御部
１１１  スキャナー制御部
１１２  プリンター制御部
１１３  ＦＡＸ制御部
１１４、２１３  通信制御部  
１１５、２１１  ＲＡＭ
１１６、２１２  ＥＥＰＲＯＭ
１１６Ａ、４００Ａ、５０３  パッケージ情報
１１６ａ〜１１６ｄ、４００ａ〜４００ｄ、５０１、５０２  ファームウェア情報
１１７  画像処理部
１１８  、２１４  ファームウェア管理部
１１９  パネル操作制御部
１２０、２１５  ＨＤＤ制御部  
１２１、２１６  システム制御部
１２２、２１７  データバス
２００  情報配信サーバー
２０１  Ｉ／Ｆ
２０２  ＨＤＤ
３００  ネットワーク
４０１、４０２  管理テーブル
５００  障害対象管理テーブル
５００ａ  コントローラーボード情報
５００ｂ  ファームウェア差し替え情報
【図１】
2018124749.tif 000003
【図２】
2018124749.tif 000004
【図３】
2018124749.tif 000005
【図４】
2018124749.tif 000006
【図５】
2018124749.tif 000007
【図６】
2018124749.tif 000008