JP4189570B2 - 画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム - Google Patents

画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム Download PDF

Info

Publication number
JP4189570B2
JP4189570B2 JP2001400200A JP2001400200A JP4189570B2 JP 4189570 B2 JP4189570 B2 JP 4189570B2 JP 2001400200 A JP2001400200 A JP 2001400200A JP 2001400200 A JP2001400200 A JP 2001400200A JP 4189570 B2 JP4189570 B2 JP 4189570B2
Authority
JP
Japan
Prior art keywords
firmware
image processing
update
processing apparatus
mail
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.)
Expired - Fee Related
Application number
JP2001400200A
Other languages
English (en)
Other versions
JP2003196186A (ja
Inventor
和雄 乾
篤 冨田
義和 池ノ上
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.)
Konica Minolta Business Technologies Inc
Original Assignee
Konica Minolta Business Technologies 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 Konica Minolta Business Technologies Inc filed Critical Konica Minolta Business Technologies Inc
Priority to JP2001400200A priority Critical patent/JP4189570B2/ja
Priority to US10/327,961 priority patent/US7979855B2/en
Publication of JP2003196186A publication Critical patent/JP2003196186A/ja
Application granted granted Critical
Publication of JP4189570B2 publication Critical patent/JP4189570B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Description

【0001】
【発明の属する技術分野】
本発明は、ファームウェアにより動作が制御される画像処理装置、当該画像処理装置に新たなファームウェアを送信するファームウェアの送信方法、及び画像処理装置の管理システムに関する。
【0002】
【従来の技術】
近年の画像処理装置の動作は、プログラムや制御定数などを含むファームウェアにより制御される。従来、ファームウェアはマスクROMに格納されており、バージョンアップ等の理由によりファームウェアを更新する必要が生じた場合には、マスクROMを交換することにより更新を行なっていた。
【0003】
しかし、マスクROMの交換のためにはサービスマンが画像処理装置の設置場所まで赴く必要があり、ファームウェア更新のためのコストが高いものとなっていた。そこで最近では、ファームウェアをフラッシュROMなどの書き換え可能な記憶装置に格納し、電子メール等の手段を利用してインターネットを介してファームウェアを送信することにより、ファームウェアの更新を行う技術が考案されている。例えば、特開2000−162926号公報には、ファクシミリ装置のファームウェアを電子メールに添付してファクシミリ装置に配信するシステムが開示されている。
【0004】
【発明が解決しようとする課題】
しかしながら、画像処理装置の動作は設置場所、顧客が求める利用形態等によってカスタマイズされる場合がある。例えば、リセットボタンを押した後のパラメータの初期設定(複写枚数等)について、通常は複写枚数の初期値が1枚であるのに対し、リセットボタンを押した後の複写枚数の設定が10枚になるようにする場合などである。
【0005】
上記のような初期設定値等はファームウェアを格納するフラッシュROMとは別のRAM等に記憶されるのが通常である。このような場合、バージョンアップ等のために新たに作成されたファームウェアを送信してファームウェアの更新を行うと、新たなファームウェアでは前記RAM上の異なる領域を参照してしまう場合があり、カスタマイズされた内容がファームウェア更新後にクリアされてしまうなどの問題点があった。この場合、画像処理装置の側では、改めて初期設定を変更する必要が生じてしまう。
【0006】
本発明は、係る問題点に鑑みてなされたものであって、画像処理装置の動作がカスタマイズされているような場合等においても、ファームウェア更新後に初期設定の変更等をやり直す必要のない画像処理装置、ファームウェアの送信方法、画像処理装置の管理システムを提供することを目的としている。
【0007】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る画像処理装置は、ファームウェアにより動作が制御される画像処理装置において、外部から送信された更新用ファームウェア及び当該更新用ファームウェアに更新前制御プログラム・更新後制御プログラムの少なくとも一方が付加されているときには更新用ファームウェアとともに当該付加されている制御プログラムを受信する受信手段と、前記受信手段が受信した更新用ファームウェアに、当該更新用ファームウェアへの更新処理に際し、その更新処理の前後の少なくとも一方において画像処理装置側で実行すべき処理を記述した更新前制御プログラム・更新後制御プログラムの少なくとも一方が付加されているか否かを判定し、付加されていると判定された場合に、前記更新処理に加えてさらにその前後の少なくとも一方において当該付加されている制御プログラムに基づく処理を実行する前後処理手段とを含むことを特徴としている。
【0008】
この構成では、ファームウェアの更新の前後の少なくとも一方で実行されるべき処理を記述した制御プログラムが新たなファームウェアとともに送信された場合に、当該制御プログラムに記述された内容の処理をファームウェアの更新に際して実行させることができる。
当該処理としては、例えばファームウェアの更新の前に、カスタマイズされた内容を別の記憶手段に退避させる処理、新たなファームウェアに適合するように内容を変更する処理や、ファームウェア更新の後に、退避された内容を適切な領域に復帰させる処理等を含めることが可能であり、これによって上記したような問題に対処することが可能となる。もっとも、ファームウェアの更新の前後の少なくとも一方で実行すべき処理としては、上記の例に限られるわけではなく、ファームウェア更新の前に画像処理装置の側でエラーが発生している場合などに、対応するエラー処理を実行させることもできるし、他にも各種の処理を実行させることができる。なお、「制御プログラム」とは、機器制御を行うプログラムであり、画像処理装置側に備えられたインタプリタ言語により動作するようなテキスト列(下記実施の形態で「スクリプト」と称しているものを含む。)の場合もあるし、バイナリデータの場合もある。
【0011】
また、本発明に係る画像処理装置の管理システムは、ファームウェアにより動作が制御される画像処理装置と、当該画像処理装置に新たなファームウェアを送信する管理装置とを含む画像処理装置の管理システムにおいて、前記管理装置は、更新用ファームウェアと、当該更新用ファームウェアへの更新処理に際し、その更新処の前後の少なくとも一方において画像処理装置側で実行すべき処理を記述した更新前制御プログラム・更新後制御プログラムを添付した電子メールメッセージを生成する生成手段と、前記生成手段が生成した電子メールメッセージを画像処理装置に送信する送信手段とを含み、前記画像処理装置は、更新用ファームウェア及び当該更新用ファームウェアに更新前制御プログラム・更新後制御プログラムの少なくとも一方が付加されているときには更新用ファームウェアとともに当該付加されている電子メールメッセージを受信する受信手段と、前記受信手段が受信した更新用ファームウェアに、当該更新用ファームウェアへの更新処理に際し、その更新処理の前後の少なくとも一方において画像処理装置側で実行すべき処理を記述した更新前制御プログラムまたは更新後制御プログラムの何れかが付加されているか否かを判定し、付加されていると判定された場合に、前記更新処理に加えてさらにその前後の少なくとも一方において当該付加されている制御プログラムに基づく処理を実行する前後処理手段とを含むことを特徴としている。
【0012】
【発明の実施の形態】
以下、本発明に係る画像処理装置等の実施の形態について、図面を参照しながら説明する。
(1)画像処理装置の管理システムの全体構成
図1は、本実施の形態に係る画像処理装置の管理システム(以下、単に「管理システム」という。)の構成を示す図である。同図の管理システム10は、サービスセンタ20とユーザサイト40とをインターネット30にて接続した構成となっている。
【0013】
サービスセンタ20は、ユーザサイト40に対して新たなファームウェアを送信し、ユーザサイト40では、画像処理装置の動作を制御するファームウェアを、送信されてきた新たなファームウェアで書き換える更新処理を行う。本実施の形態では、新たなファームウェアの送信を、インターネット30を介した電子メールメッセージにより行う。
【0014】
なお、サービスセンタ20は複数のユーザサイトに対して画像処理装置の管理サービスを提供することができるが、いずれのユーザサイトに対して提供するサービスも新たなファームウェアの送信に関しては同様であるので、本実施の形態においてはユーザサイト40を例として説明する。
サービスセンタ20は、ルータ25を介してインターネット30に接続されているが、さらにセキュリティの保護のためファイアウォール24が設けられている。サービスセンタ20のホストコンピュータ21は、LAN22を介してファイアウォール24に接続されており、メールサーバ23を介して各ユーザサイトと電子メールの送受信を行う。
【0015】
ユーザサイト40はルータ45を介してインターネット30に接続されており、サービスセンタ20と同様にセキュリティ保護のためのファイアウォール44が設けられている。ファイアウォール44とルータ45とを介してインターネット30に接続されているLAN47には、画像処理装置42、クライアントPC43等が接続されている。LAN47には複数の画像処理装置を接続することが可能である。LAN47に接続されている各画像処理装置は管理ユニットを介して接続されており、例えば画像処理装置42は管理ユニット41を介してLAN47に接続されている。もっともこれらはユーザサイト40の構成の一例であり、クライアントPCを備えていないユーザサイトもあり得る。
【0016】
ユーザサイト40に備えられているメールサーバ46は、ファイアウォール44に接続されており、クライアントPC43や管理ユニット41等に対して電子メールの送受信サービスを提供する。なお、メールサーバを備えていないユーザサイトのクライアントPCや管理ユニットは外部のメールサーバ、例えばインターネットサービスプロバイダ(以下、「ISP」と表記する。)が保有するメールサーバを利用することもできる。
【0017】
後に詳細に説明するが、本実施の形態においてファームウェアを送信するに際しては、新たなファームウェアに加えて、ファームウェアの更新処理を実行する前後、若しくは前後のいずれかにユーザサイト40側で実行すべき処理を記述した制御プログラム(以下、「スクリプト」という。)を送信する。従って、本実施の形態のユーザサイトは電子メールを利用してファームウェア及びスクリプトの受信を行なう機能を有することが要求される。ファームウェアとスクリプトとを併せて送信するには、例えばいわゆるファイル圧縮ソフトウェア(以下、「圧縮ソフト」という。)を用いてファームウェアとスクリプトとのそれぞれが格納された複数のファイルをまとめて圧縮し、電子メールに添付する方法が考えられるが、これに限定されるわけではない。
【0018】
本実施の形態での電子メールを利用したファイルの送受信には、例えばSMTP(シンプル・メール・トランスファー・プロトコル:RFC821等)、MIME(マルチプル・インターネット・メール・エクステンション:RFC1521等)やPOP3(ポスト・オフィス・プロトコル・バージョン3:RFC1725、RFC1939等)などのプロトコルを利用することができる。
【0019】
(2)画像処理装置の構成
次に画像処理装置42内のハードウェア構成について説明する。なお画像処理装置42は、複写機やプリンタとしての機能を兼ね備えた、いわゆるMFP(マルチファンクショナル・プリンタ)であるが、本実施の形態の管理システム10は、MFPの他にファクシミリ、複写機、スキャナ、プリンタ等、管理ユニットの有無を問わず管理することが可能である。
【0020】
図2は、画像処理装置42のうち、特にファームウェアを実行して画像処理装置42の動作を制御する4つの制御モジュールのハードウェア構成と各制御モジュールの接続状態を示す図である。
4つの制御モジュールはそれぞれ固有の役割を果たしているが、ハードウェア構成はほぼ同様であって、CPUやメモリ等が内部バスにて接続され、さらに内部バスに接続されたシリアルI/F(インターフェース)等により他の制御モジュールとシリアル通信する他、個別の機能に対応するGA(ゲートアレイ)等が内部バスに接続されて構成されている。
【0021】
さらに、制御モジュールごとのファームウェアを格納したフラッシュROM、作業用メモリとしてのSRAM(スタティックRAM)、動作設定等のパラメータを格納したNVRAM(不揮発性RAM)が内部バスにそれぞれ接続されている。CPUはフラッシュROMからファームウェアを読み出し、これに従って処理を実行する。
【0022】
制御モジュール421はCPU4211、フラッシュROM4212、SRAM4213、NVRAM4214を備えている。また、他の制御モジュール422等とシリアル通信するためのシリアルI/F4215、4216や管理ユニット41と通信するためのシリアルI/F4217も内部バスに接続されており、さらに操作パネル4218も制御モジュール421の制御下にある。
【0023】
制御モジュール421は、管理ユニット41や操作パネル4218を介して、プリントジョブやコピージョブ、或いはファームウェア更新ジョブを受け付け、ジョブの実行に必要な処理を他の制御モジュール422、423、424に振り分けたり、各処理の順序やタイミングを指示する等の全体制御の機能を有する。制御モジュール422もCPU4221、フラッシュROM4222、SRAM4223、及びNVRAM4224を内部バスに接続したハードウェア構成を有しており、さらに制御モジュール421、424とシリアル通信するためのシリアルI/F4225、4226を備えている。また、プリント負荷を制御するためのプリント負荷制御部I/OGA4227を備えている。
【0024】
制御モジュール422は、感光体ドラム上に潜像を形成し、これを現像して記録シートに転写し、転写したトナー像を定着して記録シートを排出するまでの一連のプリント動作にかかわるレーザダイオードの点灯制御、ポリゴンミラーや搬送ローラの駆動等の制御を制御モジュール421からの指示に基づいて実行する。
【0025】
制御モジュール423も、CPU4231等を内部バスに接続した構成を有しており、さらに原稿画像を読み取るためのイメージリーダ(IR)の動作を制御するためのIR負荷制御部I/OGA4235を備えている。また、制御モジュール421と通信するためのシリアルI/F4236が内部バスに接続されている。
【0026】
制御モジュール423は、IR負荷制御部I/OGA4235を介して、原稿の紙送りをする搬送モータを制御したり、イメージリーダを駆動する駆動モータや原稿面を照射するランプの点灯を制御したりする。そして、この制御は、操作パネル4218にて入力された指示に基づいて制御モジュール421が発行する制御命令に従って実行される。
【0027】
制御モジュール424も、CPU4241等を内部バスに接続した構成を有しており、制御モジュール422と通信するためのシリアルI/F4245を備えている。更に画像補正制御部GA4246が内部バスに接続されており、CPU4241の制御下、制御モジュール424の固有の機能を実行する。
具体的には、制御モジュール424は、制御モジュール422を介して、制御モジュール421からプリントジョブに係る画像データを受け取ったり、或いは制御モジュール423からのコピージョブに係る画像データを受け取ったりして、これらの画像データにシェーディング補正やγ補正等の画像処理を施し、制御モジュール422にプリント出力させる。
【0028】
(3)管理ユニット41の構成
次に、管理ユニット41の構成について説明する。なお、管理システム10を構成する画像処理装置には、画像処理装置42のように管理ユニット41が外付けされているものもあれば、管理ユニット41に相当する機能を内蔵した画像処理装置もある。ここでは、画像処理装置42に外付けされた管理ユニット41を例として、その構成について説明する。
【0029】
図3は、管理ユニット41の構成を示す図である。同図に示されるように、管理ユニット41は、制御プログラムを格納したEPROM418、作業用メモリであるSRAM417、各種設定値等を格納したNVRAM415が内部バスに接続されて構成されており、CPU419は前記制御プログラムを読み出して処理を実行する。
【0030】
なお、NVRAM415に格納されている各種設定値としては、管理ユニット41及びメールサーバ46のIPアドレス、メールサーバ46から電子メールをダウンロードする際に必要となるアカウント名、パスワード等がある。
また、内部バスにはNIC(ネットワーク・インターフェース・カード)412が接続されており、LAN47等を介してインターネット30に接続し、電子メールの送受信を行うことができる。さらに、制御モジュール421とシリアル通信するためのシリアルI/F411も内部バスに接続されており、シリアルI/F411と、制御モジュール421のシリアルI/F4217とがシリアルケーブル(クロスタイプ)にて接続されている。
【0031】
同じく内部バスに接続された電源IO413は、画像処理装置42への電力供給を入り切りする電磁スイッチを制御して、画像処理装置42を再起動等させるためのIOである。なお、電力供給を制御するのに替えて、各制御モジュールのCPU4211、4221、4231、4241のリセット端子に接続し、これにより画像処理装置42を再起動させるようにしてもよい。
【0032】
また、管理ユニット41は、プリントジョブに供されるべき画像データや、ファームウェア更新ジョブに係るファームウェアを一時的に保持するための固定記憶装置416を備えている。なお、固定記憶装置416は不図示の固定記憶装置接続I/Fを介して内部バスに接続されており、CPU419は当該固定記憶装置接続I/Fに指示することにより、固定記憶装置416にアクセスする。
【0033】
さらに管理ユニット41はタイマ414を備えており、例えば、電子メールの受信の有無を確認してダウンロードするためにメールサーバ46にアクセスするタイミングを取得したり、電子メールの送受信に用いるSMTP、POP3等の下位層プロトコルであるTCP(トランスミッション・コントロール・プロトコル)によるパケット再送制御に必要なタイムアウトを検出するために用いられる。
【0034】
また、管理ユニット41は操作パネル420を備えている。本実施の形態の操作パネル420は、いわゆるカラー液晶タッチパネルであり、管理ユニット41は操作パネル420を用いて、設定入力を受け付けたりエラー表示を行なったりすることができる。
(4)ホストコンピュータ21の構成
次に、サービスセンタ20に配備され、ユーザサイト40等に設置された画像処理装置を管理するホストコンピュータ21の構成について説明する。なお、本実施の形態では、シングルプロセッサ構成の場合について説明するが、管理する画像処理装置が多数である等の場合にはマルチプロセッサ構成としてもよい。
【0035】
図4は、ホストコンピュータ21の構成を示す図である。同図に示されるようにホストコンピュータ21は、本体部214と、これに接続された周辺機器であるディスプレイ211、キーボード212、マウス213からなっている。本体部214は、CPU2144、ROM2145、RAM2146等を内部バスにて接続した構成を有している。
【0036】
本体部214は、周辺機器との接続インターフェースとして、ディスプレイ211に画像出力するための表示制御部2141、キーボード212やマウス213からの入力を受け付けるための入力制御部2142、LAN22に接続するためのNIC2143を備え、これらも内部バスに接続されている。
不図示のインターフェース部を介して内部バスに接続された固定記憶装置2147には、本実施の形態においてファームウェア及びスクリプトを添付した電子メールの送信対象となる、ホストコンピュータ21の管理下にある各画像処理装置の電子メールアドレスを含む情報を、画像処理装置ごとに記憶する送信先データベースを格納している他、実際に送信されるファームウェア及びスクリプトが格納される。
【0037】
ホストコンピュータ21には、例えばDBMS(データベース管理システム)がインストールされており、オペレータは当該DBMSを介して前記送信先データベースにアクセスすることができるが、DBMSを介さず他の手段でアクセスするようにしても構わない。また、DBMSの種類として、本実施の形態ではRDBMS(リレーショナルDBMS)を用いるものとするが、他の種類のDBMSを用いてもよい。
【0038】
(5)ホストコンピュータ21の処理内容
以上のような構成を有する管理システム10に関し、以下、具体的な処理内容について説明するが、まず、サービスセンタ20に設置されているホストコンピュータ21の処理内容について、特にファームウェア更新のための電子メール送信処理に関する部分について説明する。図5は、ホストコンピュータ21の処理内容を示すフローチャートである。
【0039】
ホストコンピュータ21は電源の投入により処理を開始し、まず初期化処理を行なう(S1)。初期化処理の内容としては、ROM2145から読み出したブートプログラムによるRAM2146の初期化などのハードウェアの初期化、OS(オペレーティング・システム)や必要なアプリケーションプログラムの起動、ディスプレイ211への初期画面の表示などが含まれる。
【0040】
初期化処理を終了すると、ホストコンピュータ21は入力待ち状態となる。この状態において、ホストコンピュータ21は、ファームウェアの更新に関する入力、即ち「通信設定処理」、「画像処理装置登録処理」、「ファームウェア送信処理」の各指示を、キーボード212上に配列されたファンクションキーF1〜F3により受け付ける。
【0041】
ホストコンピュータ21は、F1キーが押下されたのを検出すると(S2:Yes)、通信設定処理を行う(S3)。具体的には、キーボード212などを介して、電子メールの送信に必要なパラメータの設定、例えば、サービスセンタ20側のLAN22に接続されたメールサーバ23のIPアドレス、ホストコンピュータ21の電子メールアドレス等の入力を受け付け、固定記憶装置2147に格納する。
【0042】
F1キーが押下されていない場合(S2:No)に、F2キーが押下されたことを検出すると(S4:Yes)、画像処理装置登録処理を行う(S5)。具体的には、ファームウェアを送信すべき画像処理装置の電子メールアドレスや、画像処理装置内の各制御モジュールの識別子、送信すべきファームウェア、スクリプト等のファイル名、その画像処理装置のユーザの名称、住所、電話番号等の情報の入力を受け付け、それらの情報を固定記憶装置2147の送信先データベースに格納する。
【0043】
前記の通り、本実施の形態でホストコンピュータ21が固定記憶装置2147に保持しているデータベースはいわゆるリレーショナルデータベースであって、情報がテーブルの形式で記憶されている。図6は、上記送信先データベースの内容の一例を示す図である。同図に示されるように、送信先データベースでは、管理システム10による管理の対象である画像処理装置のそれぞれに固有の識別子(以下、「装置ID」という。)を付与し、さらに画像処理装置が複数の制御モジュールを有している場合には、それぞれに制御モジュールの識別子を付与して、これらをキーとし、各画像処理装置、制御モジュールごとにデータを管理している。データの項目としては、送信先の「電子メール・アドレス」、「圧縮ファイル名」、「ファームウェアファイル名」、「前スクリプトファイル名」、「後スクリプトファイル名」及びその他の情報を含んでいる。
【0044】
「制御モジュール識別子」は、画像処理装置42の如く、一の画像処理装置が複数の制御モジュールを有する場合に、ファームウェアファイル名により指定されるファイルに含まれるファームウェアが、どの制御モジュールを制御するものであるかを識別するための識別子である。「圧縮ファイル名」としては、ファームウェアを送信する際に、ファームウェアとスクリプトとをあわせて圧縮する場合の圧縮後のファイル名が保持される。本実施の形態では、電子メールにファームウェアを添付すべくテキストに変換する前に、いわゆる圧縮ソフトウェアを用いてファームウェアとスクリプトとをあわせて圧縮し、一つのファイルを作成した後でテキストに変換するという方法をとるからである。
【0045】
ここで、ファームウェアは通常バイナリデータの形式で作成され、図6の例では、例えば「Firmwr1.dat」というように、圧縮ファイル名と同じ名称であって拡張子が異なるファイル名のファイルに元のファームウェアを格納することができる。スクリプトは通常テキストデータの形式で保存され、「前スクリプトファイル名」、「後スクリプトファイル名」で指示されるファイル名のファイルに格納される。「前スクリプトファイル名」で指定されるファイルには、ファームウェアの更新前に実行させるべき処理を記述したスクリプトを保持し、「後スクリプトファイル名」で指定されるファイルファームウェアの更新後に実行させるべき処理を記述したスクリプトを保持する。
【0046】
なお、ファイルの圧縮には、各種の圧縮ソフトウェアを用いることができ、圧縮後のファイルの拡張子はlzhに限定されず、電子メールを受信した画像処理装置の側での解凍が可能である限り、lha、zip、gz、sit、cpt等、圧縮方式に対応して任意のものを用いることができる。以下、図6の例について、装置ID「1」、制御モジュール識別子「1」の場合を例としてより具体的に説明する。この場合の例では、バイナリデータのファームウェアを格納するファイル(ファイル名「Firmwr1.dat」)、ファームウェア更新前に画像処理装置において実行されるべき処理が記述されたスクリプトを格納するファイル(ファイル名「Bscript1.txt」)、及びファームウェア更新後に画像処理装置において実行されるべき処理が記述されたスクリプトを格納するファイル(ファイル名「Ascript1.txt」)の三つのファイルが圧縮ソフトウェアによりあわせて圧縮され、圧縮ファイル(ファイル名「Firmwr1.lzh」)が生成される。生成された圧縮ファイルはバイナリデータの形式であるから、これを、例えばbase64などの方法でテキストに変換した後、電子メールに添付されることになる。
【0047】
なお、スクリプトによる処理は、上記の例のようにファームウェアの更新前後の両方に実行される場合もあるし、前後のいずれかのみに実行される場合もある。
また、「その他の情報」としては、画像処理装置のユーザの名称、住所、電話番号等の情報がテキストデータとして格納されている。もっとも、これら「ユーザの名称」、「住所」等をそれぞれ別項目としてもよいことは勿論である。
【0048】
図5のフローチャートに戻って、F2キーも押下されていない場合(S4:No)、F3キーが押下されたのを検出すると(S6:Yes)、ファームウェア送信処理を行う(S7)。具体的には、ファームウェア及びスクリプトを、上記したような方法により、電子メールを利用して画像処理装置に対して送信し、ファームウェアの更新を促す。
【0049】
ここで、ファームウェア送信処理(S7)の内容について説明する。図7は、ファームウェア送信処理の詳細な内容を示すフローチャートである。ファームウェア送信処理では、まずホストコンピュータ21が、ファームウェア送信の対象となる画像処理装置の装置ID及び制御モジュール識別子の指定を受け付ける(S10)。より具体的には、ホストコンピュータ21は、キーボード212等を介して、ファームウェアの送信対象を特定する情報として、装置ID、制御モジュール識別子等の入力を受け付ける。ホストコンピュータ21は、入力されたデータをキーとして送信先データベースを読み出し、当該データに対応する登録情報を含むレコードを読み出す(S11)。
【0050】
次にホストコンピュータ21は、登録情報に従い、固定記憶装置2147からファームウェア及びスクリプトのファイルを読み出す(S12)。そして読み出されたファイルを圧縮ソフトウェアによりまとめて圧縮し(S13)、単一の圧縮ファイルを生成する(S14)。ファイル名は、登録情報に従って付けられる。
【0051】
圧縮ファイルはバイナリデータの形式で作成されるため、ホストコンピュータ21は、得られた圧縮ファイルをBase64等の方式によりテキストデータに変換する(S14)。また、ホストコンピュータ21は、得られた登録情報のレコードから電子メールアドレスを読み出し、当該電子メールアドレスを宛先とする電子メールメッセージを作成する(S15)。この電子メールメッセージには、圧縮ファイルの内容、即ち、新たなファームウェア及びスクリプトの内容が添付される。
【0052】
ホストコンピュータ21は、圧縮ファイルの内容を添付した電子メールメッセージをメールサーバ23に送信する(S16)。即ち、図5のステップS3にて設定されるメールサーバ23のIPアドレス等を参照して、メールサーバ23との間にTCPセッションを確立し、SMTPに従ってメールサーバ23に電子メールメッセージを送付する。
【0053】
以後、図5のフローチャートに戻り、ステップS6にてF3キーが押下されていない場合(S6:No)、若しくはファームウェア送信処理の終了後には、ステップS2へと戻り、繰返しファンクションキーF1〜F3の押下をチェックする。
(6)圧縮ファイルの内容が添付された電子メールメッセージについて
ここで、圧縮ファイルの内容、即ちファームウェア及びスクリプトの内容が添付された電子メールメッセージについて説明する。本実施の形態において、電子メールメッセージのフォーマットはRFC822に準拠する。図8は、ファームウェア等が添付された電子メールメッセージの内容について説明するための図である。
【0054】
図8において、電子メールメッセージはRFC822の規定に従い、メッセージ・ヘッダ部とメッセージ・ボディ部とから成っており、メッセージ・ヘッダ部とメッセージ・ボディ部との間はNULL行によって区画されている。なお、NULL行とはCRLF(キャリッジ・リターン・アンド・ライン・フィールド)のみを含む行をいう。
【0055】
メッセージ・ヘッダ部には、所定のヘッダ・フィールドを備えている。具体的には、RFC822に規定された「From」、「To」、「Date」、「Subject」に加えて、RFC1521に規定される「MIME−Version」、「Content−Type」、及び「Content−Description」の3つのヘッダ・フィールドを有している。各ヘッダ・フィールドはコロン(:)で区画されたフィールド名とフィールド・ボディから成っている。
【0056】
図8の例では、「Content−Type」フィールドのフィールド・ボディ部は、「multipart/mixed」として、メッセージ・ボディ部を複数のパートに分割している旨を表示する。また、これに続くセミコロン(;)の後には、パートの境界を表す「boundary」パラメータとして所定の文字列(同図の例では「5kvrZF/hrA」)が表示されている。また、「Content−Description」フィールドのフィールド・ボディには「Firmware」と表示されている。これは電子メールメッセージにファームウェアが含まれていることを示すものである。
【0057】
次にメッセージ・ボディ部について説明する。メッセージ・ボディ部には、メッセージ・ヘッダ部の「Content−Type」フィールドに表示されたBoundaryパラメータ(図8の例では「5kvrZF/hrA」)の先頭部分に「――」を挿入した文字列(図8の例では「――5kvrZF/hrA」)により各パートの開始部分である旨を表示する。
【0058】
Boundaryパラメータの文字列に引き続く行では、そのパートに格納されたデータの属性を表示するために、「Content−Type」と「Content−Transfer−Encoding」という二つのヘッダ・フィールドが配されている。ここでの「Content−Type」フィールドのフィールド・ボディには、そのパートに格納されたデータが典型的には解釈されないバイナリ・データ若しくはアプリケーションによって処理される情報であることを示す「application」が表示されている。
【0059】
これに続くスラッシュ(/)の後には、当該データがメーラによっては解釈されないバイナリデータであることを表すサブタイプ名「octet−stream」が表示されている。さらにセミコロンの後には、添付されているバイナリデータを内容とする圧縮ファイルのファイル名(図8では、「Firmwr1.lzh」)が表示されている。
【0060】
なお、RFC822は、電子メールはテキスト行からなる旨を規定しており、圧縮ファイル等のバイナリデータを添付する場合には、それをテキストデータに変換しなければならないことから、次の行に配されている「Content−Transfer−Encoding」フィールドのフィールド・ボディには、データの符号化方式を表す「base64」が表示されている。これにより、圧縮ファイルがBase64方式に従ってUS−ASCII文字に変換されていることがわかる。
【0061】
これらの二つのヘッダ・フィールドに引き続く行には、Base64方式に従ってUS−ASCII文字に変換された圧縮ファイルのデータが格納される。なお、符号化方式はBase64方式に限定されず、Uuencode方式やBinHex方式を用いることも可能である。
メッセージ・ボディ部の終端には、メッセージ・ヘッダ部の「Content−Type」フィールドに表示されたBoundaryパラメータ(図8の例では「5kvrZF/hrA」)の前後にそれぞれ「――」を挿入した文字列(図8の例では「――5kvrZF/hrA――」)により終端である旨を表示する。
【0062】
(7)管理ユニット41の処理内容
次に、ユーザサイト40に設置された管理ユニット41の処理内容について説明する。図9は、特に管理ユニット41が電子メールメッセージを受信する際の処理内容について説明するためのフローチャートである。管理ユニット41は電源を投入されると処理を開始して、メモリの初期化やパラメータの初期化等を含む初期化処理を実行する(S20)。
【0063】
管理ユニット41は操作パネル420に設けられた設定キーが押下されたか否かを検出する。そして、設定キーが押下されていた場合には(S21:Yes)、管理ユニット41は、通信設定処理を行う(S22)。具体的には、管理ユニット41は、操作パネル420を介して管理ユニット41が電子メールメッセージを送受信するために必要なパラメータの設定を受け付ける。即ち、管理ユニット41は、操作パネル420を介して、メールサーバ46のIPアドレス、電子メール・アカウント名とパスワード、メールサーバ46に電子メールメッセージが入着しているか否かを定期的に確認する際の時間間隔等の設定入力を受け付ける。入力された情報は、それぞれNVRAM415の所定アドレスに記憶される。
【0064】
設定キーが押下されていない場合(S21:No)、若しくは通信設定処理を終了した場合には、管理ユニット41はタイマ414を参照し、最後にメールサーバ46にアクセスしてから所定の確認間隔時間が経過したか否かを判定する(S23)。所定の確認間隔時間とは、前記通信設定処理でNVRAM415に格納されている値であって、メールサーバ46に電子メールメッセージが入着しているか否かを定期的に確認する際の時間間隔である。所定の確認間隔時間を経過していた場合には(S23:Yes)、電子メール読み取り処理を行う(S24)。
【0065】
図10は電子メール読み取り処理の詳細な内容を示すフローチャートである。電子メール読み取り処理において、管理ユニット41は、まずメールサーバ46との間でTCPコネクションを確立する(S30)。TCPコネクションを確立したら、POP3に従い、メールサーバ46に新着メッセージ、即ち新たな電子メールメッセージが入着したか否かを問い合わせる。新着メッセージがある場合には(S31:Yes)、当該メッセージを送付するようにメールサーバ46に要求する(S32)。
【0066】
管理ユニット41は新着メッセージを受け取ると、現時刻を計時してNVRAM4214の所定アドレスに格納する。続いて、管理ユニット41は受け取った新着メッセージのメッセージ・ヘッダ部の「Content−Description」フィールドを参照して、そのフィールド・ボディに「Firmware」と記載されているか否かをチェックする。
【0067】
前記フィールド・ボディに「Firmware」と表示されていたら、管理ユニット41は前記メッセージにファームウェアを含む圧縮ファイルの内容が添付されていると判定し(S33:Yes)、圧縮ファイルに相当するテキスト部分を取り出す(S34)。なお、本実施の形態では、「Content−Description」フィールドのフィールド・ボディに「Firmware」と記載されているか否かにより、ファームウェア、スクリプトが含まれているか否かを判定したが、判定手法はこれに限定されず、「Subject」フィールドの内容、添付されているファイル名等を参照して判定するようにしてもよい。また、判定ミスの防止のため、上記の判定手法を組合せて(例えば、「Content−Description」フィールドの内容とファイル名の両方を参照する。)判定するようにしてもよい。
【0068】
取り出されたUS−ASCIIデータはBase64方式に基づいて復号化され(逆Base64変換)、元の圧縮ファイル(図8の例ではファイル名=「Firmwr1.lzh」)に戻される(S35)。この圧縮ファイルを解凍することにより、スクリプトとファームウェアが得られる。スクリプトについては、スクリプトによる処理をファームウェア更新の前後のいずれか、若しくは両方に行なう場合により、1又は2のファイルが生成される。スクリプトは、通常はテキストデータで作成されており、更新前のファームウェアに含まれるインタプリタ等を利用して、そのまま実行させることができる。
【0069】
管理ユニット41は、バイナリデータのチェックサムを計算して、NVRAM415の所定アドレスに格納する(S36)。なお、圧縮ファイルのサイズが大きく単一の電子メールメッセージに添付できない場合、複数の電子メールメッセージに分割して送信される場合があるが、その場合の処理については後述する。次に、逆Base64変換により得られたバイナリデータに、「Subject」フィールドのフィールド・ボディに示された制御モジュールの識別子を付し、シリアルI/F411を介して画像処理装置42に送信する(S37)。
【0070】
以上のようにファームウェア等のダウンロードを行なった後、管理ユニット41は、POP3に従い、メールサーバ46からダウンロード済みの電子メール・メッセージを削除する(S38)。そして、メールサーバ46との間のTCPコネクションを切断して(S39)、処理を終了する。新着メッセージがない場合(S31:No)、若しくは新着メッセージがあってもファームウェアが添付されていない場合には(S33:No)、直接ステップS39へと進み、メールサーバ46との間のTCPコネクションを切断して、電子メール読み取り処理を終了する。電子メール読み取り処理を終了した後は、図9のフローチャートに戻り、再度設定キーの押下を検出する(S21)。
【0071】
なお、メールサーバ46からダウンロード済みの電子メール・メッセージを削除する処理について、添付ファイルによる処理(スクリプトによる処理、ファームウェアの更新等)が画像形成装置側で完了した場合に削除するようにしてもよい。ファームウェアの更新の失敗は、チェックサムにて判断可能な場合(例えばデータ化け)だけでなく、更新途中で画像形成装置の電源がオフされた場合等にも生じ得ることから、そのような場合にメールサーバ46に電子メール・メッセージを残しておき、再度電源がオンされたときに電子メール・メッセージを取得するようにすることなども考えられるからである。
【0072】
また、電子メール・メッセージの削除は、必ずしもダウンロードの際に行う必要はなく、ダウンロードの際には電子メール・メッセージを残しておき、所定時間ごとに削除の処理を行うようにしたり、電源投入時に処理済みの電子メール・メッセージを削除するようにすることもできる。
(8)画像処理装置42の処理内容
次に、画像処理装置42において行われるファームウェア書き換え処理の具体的な内容について説明する。図11は、画像処理装置42において実行される処理の内容を示すフローチャートである。画像処理装置42は電源投入とともに処理を開始し、各メモリの内容の初期化や標準モードの設定等の初期化処理を行う(S40)。なお、この初期化処理は、制御モジュール421〜424のそれぞれにおいて個別に実行される。
【0073】
初期化処理が終了すると、画像処理装置42は管理ユニット41によりファームウェアの受信がされるまで、通常の処理を繰り返し実行する。具体的には、画像処理装置42は、操作パネル4218や画像処理装置42内の各センサからの信号、或いは管理ユニット41から送信されてくるプリントジョブ等の入力を受け付ける。
【0074】
画像処理装置42は入力を受け付けると、これに続いてコピー制御を実行する(S42)。ここで、コピー制御とは画像形成動作時に必要な処理の総称であって、例えば給紙制御、操作制御、感光体ドラム制御、現像器制御等の各部の制御、或いは管理ユニット41からのプリントジョブ等の処理である。制御ユニット421〜424が連携してこれらのコピー制御を実行する。
【0075】
通常の処理(S41、S42)を終了した後、画像処理装置42は管理ユニット41からファームウェア等を受信し、ファームウェアの書き換え指示を受けたか否かを判定する(S43)。ファームウェアの書き換え指示を受けていない場合には(S43:No)、ステップS41に戻って通常の処理を継続する。
ファームウェアの書き換え指示を受けた場合(S43:Yes)には、ファームウェア書き換え処理を実行する(S44)。以下、ファームウェア書き換え処理の詳細な内容について説明する。
【0076】
図12は、ファームウェア書き換え処理の詳細な内容を示すフローチャートである。ファームウェア書き換え処理においては、まず、管理ユニット41から、ファームウェアの更新前に実行する必要がある処理を記述する更新前スクリプトが送信されているか否かが判断される(S50)。
更新前スクリプトが送信されている場合には(S50:Yes)、画像処理装置42は、当該更新前スクリプトにより記述される更新前処理を実行する(S51)。更新前処理の具体的な内容としては、例えば、初期設定値が変更されて使用されている場合、当該内容をSRAM4123等の所定領域に一旦退避させる処理や、画像処理装置42においてエラー状態(例えば原稿サイズの検出エラー等)が発生している場合に当該エラー状態から復帰させるエラー処理などが考えられるが、これらに限定されず、画像処理装置42側で実行することが可能である限り、柔軟な前処理を行うことが可能である。なお、本実施の形態では、テキストで表されたスクリプトを送信し、当該スクリプトに記述された処理を更新前のファームウェアに含まれるインタプリタ言語を用いて実行する方法をとるが、送信される制御プログラムはバイナリコードによるものでもよい。
【0077】
次に画像処理装置42では、管理ユニット41からのファームウェア書き換え指示において指定された書き換え対象となる制御モジュールの識別子を参照し、新たなファームウェアで、当該識別子に対応するフラッシュROMの書き換えを行う(S52)。具体的には、当該識別子が制御モジュール421を示している場合には、管理ユニット41から受け付けたファームウェアを、制御モジュール421のフラッシュROM4212の所定アドレスに格納する。他の制御モジュールについても同様であり、識別子に応じて新たなファームウェアを対応する制御モジュールにシリアル送信し、フラッシュROMの書き換え処理を行う。
【0078】
例えば圧縮ファイル中に複数の制御モジュールに対応するファームウェアが含まれている場合もあることから、画像処理装置42は、新たなファームウェアが送信されているにもかかわらず、まだ書き換えの終了していない、未処理の制御モジュールが残っているか否かを判定する(S53)。未処理の制御モジュールがある場合には(S53:Yes)、当該制御モジュールについてフラッシュROMの書き換えを行い(S52)、ファームウェアを更新する。
【0079】
全ての制御モジュールについて更新が終了すると(S53:No)、画像処理装置42は、ファームウェア更新の後に実行すべき処理を記述する更新後スクリプトを受信したか否かを判定し(S54)、更新後スクリプトが存在する場合には(S54:Yes)、更新後処理を実行して(S55)、ファームウェア書き換え処理を終了する。更新後処理としては、具体的には、前処理にて退避された内容(カスタマイズされた内容など)を、新たなファームウェアに適合するように変換する処理や、一旦退避された内容を適切なアドレス領域に格納する処理等が考えられるが、これらに限定されるわけではない。
【0080】
以上のようなファームウェア書き換え処理を行なった後、図11のフローチャートに戻って、画像処理装置42は書き換え後のファームウェアによる動作を行うために自らの再起動を行う(S45)。この再起動に際して、画像処理装置42はNVRAM4214の所定アドレスの部分(以下、「書き換えフラグ」という。)にTrueをセットする。これは再起動後に画像処理装置42において、当該再起動がファームウェアの書き換えに起因してなされたものであるか否かを判定するためである。
【0081】
(9)圧縮ファイルの分割送信について
次に、ファームウェア及びスクリプトの内容を含む圧縮ファイルを分割送信する場合について説明する。このような分割送信を考慮する必要があるのは、一般にメールサーバの容量オーバーの防止やネットワークの負荷の軽減の観点から、単一の電子メールに添付できるファイルのサイズには制限が課せられていることが多く、ファームウェアのサイズが大きい場合には圧縮しても、なお、上記の制限されたサイズを超える可能性が考えられるからである。
【0082】
圧縮ファイルの分割送信に際しては、複数の制御モジュールに対応するファームウェアを送信するに際して制御モジュールごとに分割する方法(この場合、スクリプトはいずれかのファームウェアとともに送信することとなる。)、若しくは、複数のファームウェアを含む単一の圧縮ファイルを、一定のデータサイズごとに分割する方法が考えられる。ここでは、まず、制御モジュールごとに送信する場合の具体的な処理内容について簡単に説明する。
【0083】
予めファームウェアの書き換え順序が決定されている場合(例えば、制御モジュール421、422、423、424の順に書き換えることが決まっている場合)、管理ユニット41は、書き換える順序をNVRAM415に記憶しておく。
図13は、ファームウェアを分割送信する際に、サービスセンタ20、メールサーバ46、及び管理ユニット41の間で実行される通信手順を示したシーケンス図である。この例では、管理ユニット41は、破線矢印で示したように、メールサーバ46に電子メールメッセージが入着しているか否かを定期的にチェックするものとする。
【0084】
メールサーバ46に制御モジュール421のファームウェアが入着していたら、これをダウンロードする。そして、制御モジュール421についてファームウェア書き換え処理を実行する。制御モジュール421についてのファームウェア書き換え処理の前若しくは後に実行すべき処理を記述したスクリプトが添付されている場合には、当該スクリプトに基づく処理を行うことも可能である。制御モジュール421においてファームウェア書き換え処理が実行された場合、画像処理装置42は、フラッシュROM4212の内容を読み出してチェックサム値を計算し、これを管理ユニット41へ送信する。
【0085】
管理ユニット41は、サービスセンタ20からファームウェアを受け付けた際に、併せて当該ファームウェアのチェックサム値も受け付けており、制御モジュール421から受け付けたチェックサム値とサービスセンタ20から受け付けたチェックサム値を比較して、これらが一致していたら、サービスセンタ20のホストコンピュータ21に向けて、次のファームウェアを要求する電子メールメッセージを送信する。
【0086】
図14は、管理ユニット41がサービスセンタ20に送信する電子メールメッセージの内容の一例を示す図である。この電子メールメッセージのメッセージボディ部には、ファームウェアを書き換えた装置のID、制御モジュール識別子、及びバージョン情報(図14においては「model1_module1_v10」、即ち機種ID「1」、制御モジュール識別子「1」、バージョン番号「10」を含んでいる。)が表示されている。
【0087】
また、続く二つの行には、サービスセンタ20に対する要求事項(図14においては「FW_download」、即ち次のファームウェアの送信要求である。)、及びファームウェア書き換え処理の結果(図14では「OK」、即ち書き換え成功。なお、書き換え失敗の場合は「NG」。)が表示されている。更に、これらのデータは所定の文字列により(図14では、「#XXXXXX_start」等。)により電子メールメッセージの他の部分と区画されている。
【0088】
なお、上記二つのチェックサム値が一致しない場合には、上記の書き換え結果を「書き換え失敗」として、サービスセンタ20に宛てて電子メールメッセージを送信する。従って、チェックサム値の一致、不一致の別にかかわらず、管理ユニット41からサービスセンタ20に向けて電子メールメッセージが送信されることになる。
【0089】
当該電子メールメッセージはメールサーバ46を経由してサービスセンタ20に送信される。サービスセンタ20はこの電子メールメッセージを受け付けると、書き換え結果が「書き換え成功」ならば、制御モジュール422のファームウェア、及び必要に応じて所定のスクリプトを添付した電子メールメッセージを管理ユニット41に向けて送信する。
【0090】
また、図示はしないが、電子メールメッセージのメッセージボディ部を参照して、書き換え結果が「書き換え失敗」である場合には、制御モジュール421のファームウェア及び、必要に応じて処理のスクリプトを添付した電子メールメッセージを管理ユニット41に対して再度送信する。
この間も、管理ユニット41はメールサーバ46に定期的にアクセスして、電子メールメッセージの確認を行う。管理ユニット41は、制御モジュール422のファームウェアを添付された電子メールメッセージが入着したのを確認したら、これをダウンロードしてファームウェアの書き換え処理を実行する。
【0091】
以上のような手順に従って、制御モジュール421〜424のファームウェアが順番にサービスセンタ20から管理ユニット41に対して送付される。このようにすれば、制御モジュール421〜424のファームウェアを一括して送信した場合に比べて管理ユニット41に実装される記憶装置の要領を節約することができる。
【0092】
なお、電子メールメッセージを中継するメールサーバは、メールアカウントごとに保持する電子メールメッセージの総容量の制限が設けられているのが一般的であり、メールサーバ46にも画像処理装置42あての電子メールメッセージを保持するデータ量に上限を有している。
これに対して、ファームウェアを分割送信すれば、同時に一つの制御モジュールに対応するファームウェアしかメールサーバ46に蓄積されないので、前記のような総容量制限によりメールサーバ46が電子メールメッセージの蓄積を拒絶するような事態を回避することができる。
【0093】
以上は、ファームウェアを制御モジュールごとに分割して送信する場合の例であるが、分割の方法はこれに限らず、例えば所定のデータサイズごとに分割して送信することもできる。係る場合について、以下に説明する。
所定のデータサイズごとに分割する場合には、分割されたファームウェアを受信側の管理ユニット41にて再結合し、元のファームウェアを復元できるようにすることが必要である。このために、電子メールメッセージに以下のような情報を付加するとよい。
【0094】
図15は、所定のデータサイズに分割されたファームウェアを添付された電子メールメッセージの一例について、その主要な部分を示す図である。同図に示されるように、電子メールメッセージのメッセージ・ヘッダ部に含まれるヘッダ・フィールドのうち、Subjectフィールドのフィールド・ボディの末尾に「(1/4)」という文字列が付加されている。
【0095】
これは、元のファームウェアが4つに分割されており、当該Subjectフィールドを有する電子メールメッセージに添付されているデータは、4つに分割されたファームウェアのうち、1番目の部分であることを表している。サービスセンタ20は、これに続いて、ファームウェアの2番目の部分から4番目のそれぞれの部分を添付した電子メールメッセージを送信する。
【0096】
これらの電子メールメッセージも上記と同様に、メッセージヘッダ部のSubjectフィールドの末尾にそれぞれ文字列「(2/4)」、「(3/4)」、「(4/4)」が付加される。管理ユニット41は、分割されたファームウェアのすべての部分を受信したのを確認した後、base64逆変換処理、圧縮ファイルの解凍処理、ファームウェアの書き換え処理(スクリプトによる前後処理を含む。)を開始する。なお、本実施の形態では、ファームウェアとスクリプトとをあわせて圧縮し、圧縮ファイルとした後にBase64方式でテキストデータに変換しているため、分割された全てのテキストデータを取得した後にバイナリデータへの変換を行うことが好ましい。
【0097】
以上に説明したように、メールサーバの制限サイズに合わせてファームウェアの分割を行うことにより、電子メールメッセージを中継するメールサーバで受け取りを拒否されることなく、円滑にファームウェアの書き換えを行うことができる。なお、上記の例では、「Subject」フィールドのフィールド・ボディに機種ID、制御モジュール識別子を記述し、さらに(1/4)のような情報を付加することにより、分割された圧縮ファイルの内容のそれぞれを対応づけるようにしたが、対応づけの方法はこれに限定されない。
【0098】
また、複数の制御モジュールに対応する複数のファームウェアを、対応するスクリプトとともに圧縮して送信することも勿論可能である。この場合には、管理ユニットないし画像処理装置の側で解凍後のファイル名を識別し、制御モジュールごとに前処理、フラッシュROMの書き換え、後処理等を行うこともできる。
【0099】
【発明の効果】
以上のように、本発明に係る画像処理装置によれば、新たなファームウェアに、当該新たなファームウェアへの更新処理を行う前後の少なくとも一方において画像処理装置側で実行すべき処理を記述した制御プログラムが付加されている場合に、当該制御プログラムに基づく処理を実行するので、例えばファームウェアがカスタマイズされて使用されている場合等でも、適切にファームウェアの更新を行なうことができるという効果がある。
【図面の簡単な説明】
【図1】本発明の実施の形態に係る画像処理装置の管理システムの構成を示す図である。
【図2】画像処理装置42のうち、特にファームウェアを実行して画像処理装置42の動作を制御する4つの制御モジュールのハードウェア構成と各制御モジュールの接続状態を示す図である。
【図3】管理ユニット41の構成を示す図である。
【図4】ホストコンピュータ21の構成を示す図である。
【図5】ホストコンピュータ21の処理内容を示すフローチャートである。
【図6】送信先データベースの内容の一例を示す図である。
【図7】ファームウェア送信処理の詳細な内容を示すフローチャートである。
【図8】ファームウェア等が添付された電子メールメッセージの内容について説明するための図である。
【図9】特に管理ユニット41が電子メールメッセージを受信する際の処理内容について説明するためのフローチャートである。
【図10】電子メール読み取り処理の詳細な内容を示すフローチャートである。
【図11】画像処理装置42において実行される処理の内容を示すフローチャートである。
【図12】ファームウェア書き換え処理の詳細な内容を示すフローチャートである。
【図13】ファームウェアを分割送信する際に、サービスセンタ20、メールサーバ46、及び管理ユニット41の間で実行される通信手順を示したシーケンス図である。
【図14】管理ユニット41がサービスセンタ20に送信する電子メールメッセージの内容の一例を示す図である。
【図15】所定のデータサイズに分割されたファームウェアを添付された電子メールメッセージの一例について、その主要な部分を示す図である。
【符号の説明】
10 管理システム
20 サービスセンタ
21 ホストコンピュータ
23 メールサーバ
30 インターネット
40 ユーザサイト
41 管理ユニット
42 画像処理装置

Claims (2)

  1. ファームウェアにより動作が制御される画像処理装置において、
    外部から送信された更新用ファームウェア及び当該更新用ファームウェアに更新前制御プログラム・更新後制御プログラムの少なくとも一方が付加されているときには更新用ファームウェアとともに当該付加されている制御プログラムを受信する受信手段と、
    前記受信手段が受信した更新用ファームウェアに、当該更新用ファームウェアへの更新処理に際し、その更新処理の前後の少なくとも一方において画像処理装置側で実行すべき処理を記述した更新前制御プログラム・更新後制御プログラムの少なくとも一方が付加されているか否かを判定し、付加されていると判定された場合に、前記更新処理に加えてさらにその前後の少なくとも一方において当該付加されている制御プログラムに基づく処理を実行する前後処理手段と
    を含むことを特徴とする画像処理装置。
  2. ファームウェアにより動作が制御される画像処理装置と、当該画像処理装置に新たなファームウェアを送信する管理装置とを含む画像処理装置の管理システムにおいて、
    前記管理装置は、
    更新用ファームウェアと、当該更新用ファームウェアへの更新処理に際し、その更新処の前後の少なくとも一方において画像処理装置側で実行すべき処理を記述した更新前制御プログラム・更新後制御プログラムを添付した電子メールメッセージを生成する生成手段と、
    前記生成手段が生成した電子メールメッセージを画像処理装置に送信する送信手段とを含み、
    前記画像処理装置は、
    更新用ファームウェア及び当該更新用ファームウェアに更新前制御プログラム・更新後制御プログラムの少なくとも一方が付加されているときには更新用ファームウェアとともに当該付加されている電子メールメッセージを受信する受信手段と、
    前記受信手段が受信した更新用ファームウェアに、当該更新用ファームウェアへの更新処理に際し、その更新処理の前後の少なくとも一方において画像処理装置側で実行すべき処理を記述した更新前制御プログラムまたは更新後制御プログラムの何れかが付加されているか否かを判定し、付加されていると判定された場合に、前記更新処理に加えてさらにその前後の少なくとも一方において当該付加されている制御プログラムに基づく処理を実行する前後処理手段と
    を含む
    ことを特徴とする画像処理装置の管理システム。
JP2001400200A 2001-12-28 2001-12-28 画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム Expired - Fee Related JP4189570B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001400200A JP4189570B2 (ja) 2001-12-28 2001-12-28 画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム
US10/327,961 US7979855B2 (en) 2001-12-28 2002-12-26 Image processing apparatus, management system, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001400200A JP4189570B2 (ja) 2001-12-28 2001-12-28 画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム

Publications (2)

Publication Number Publication Date
JP2003196186A JP2003196186A (ja) 2003-07-11
JP4189570B2 true JP4189570B2 (ja) 2008-12-03

Family

ID=19189583

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001400200A Expired - Fee Related JP4189570B2 (ja) 2001-12-28 2001-12-28 画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム

Country Status (2)

Country Link
US (1) US7979855B2 (ja)
JP (1) JP4189570B2 (ja)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002297520A (ja) * 2001-03-29 2002-10-11 Sony Corp 受信装置および方法、送信装置および方法、記録媒体、プログラム、並びに通信システム
JP3823777B2 (ja) * 2001-08-14 2006-09-20 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置および画像処理方法
JP2003198765A (ja) * 2001-12-25 2003-07-11 Murata Mach Ltd ファクシミリ装置
JP4085930B2 (ja) * 2002-11-08 2008-05-14 コニカミノルタホールディングス株式会社 画像処理装置
JP4698182B2 (ja) * 2003-09-16 2011-06-08 株式会社リコー 電子装置、ネットワーク機器、管理方法、ソフトウェア更新方法、管理プログラム、ソフトウェア更新プログラム及び記録媒体
WO2005088430A2 (de) * 2004-03-11 2005-09-22 Preh Keytec Gmbh Tastatur, insbesondere kassentastatur, und verfahren zur inbetriebnahme sowie zum austausch und update von firmware der tastatur
US7412039B2 (en) * 2004-04-23 2008-08-12 International Business Machines Corporation Method and system for verifying an attachment file within an e-mail
JP2005309934A (ja) * 2004-04-23 2005-11-04 Fujitsu Ltd 周辺装置のファームウェアダウンロード方法及び周辺装置
US7454605B2 (en) * 2004-11-18 2008-11-18 International Business Machines Corporation Method for adapter code image update
JP4055769B2 (ja) * 2004-12-10 2008-03-05 ブラザー工業株式会社 設定データ伝送プログラム、設定データ伝送方法、設定データ伝送システム、および設定データ伝送装置
JP4929726B2 (ja) * 2005-03-07 2012-05-09 富士ゼロックス株式会社 画像処理システム
CN100399269C (zh) * 2005-03-07 2008-07-02 富士施乐株式会社 图像处理系统,图像处理方法
JP4764056B2 (ja) * 2005-04-14 2011-08-31 キヤノン株式会社 画像処理装置、制御プログラムの更新方法、およびプログラム
JP2006338409A (ja) * 2005-06-02 2006-12-14 Fuji Electric Fa Components & Systems Co Ltd 圧縮データ転送方式及び圧縮データ転送システム
JP4979220B2 (ja) * 2005-10-12 2012-07-18 キヤノン株式会社 画像処理装置及びその制御方法
JP4419963B2 (ja) * 2006-01-03 2010-02-24 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置及び画像処理システム
US8094334B2 (en) 2006-05-12 2012-01-10 Canon Kabushiki Kaisha Image forming apparatus for managing application and control method therefor
JP2008078815A (ja) * 2006-09-19 2008-04-03 Ricoh Co Ltd 画像形成装置、機器管理装置、機器管理システム、状態取得方法、機器管理方法およびプログラム
JP4673284B2 (ja) * 2006-12-15 2011-04-20 キヤノン株式会社 サーバ装置
JP4876051B2 (ja) * 2007-10-10 2012-02-15 キヤノン株式会社 画像処理装置及びその制御方法
JP5062847B2 (ja) * 2008-07-27 2012-10-31 株式会社リコー 画像処理装置
JP5383516B2 (ja) * 2010-01-06 2014-01-08 キヤノン株式会社 画像形成装置及びそのファームウェア更新方法、並びにプログラム
JP5564956B2 (ja) * 2010-01-15 2014-08-06 富士通株式会社 情報処理装置及び情報処理装置のファームウェア更新方法
WO2011117954A1 (ja) * 2010-03-20 2011-09-29 株式会社Pfu 仮想マシン管理装置、仮想マシン管理方法、及びプログラム
US9058238B2 (en) * 2010-10-13 2015-06-16 Sony Corporation Electronic device with customizable embedded software and methods therefor
KR101524096B1 (ko) * 2011-06-07 2015-06-01 엘에스아이 코포레이션 호스트가 볼 때 디바이스 펌웨어 업데이트 효과들의 관리
JP5919204B2 (ja) * 2013-01-24 2016-05-18 株式会社日立製作所 情報処理装置、情報処理方法およびサーバ
CN103399761B (zh) * 2013-07-22 2016-11-23 珠海全志科技股份有限公司 固件烧录方法及其装置
US9910660B2 (en) * 2013-08-05 2018-03-06 Harman International Industries, Incorporated Operating system replacement for in-vehicle computing system
JP6226709B2 (ja) * 2013-11-15 2017-11-08 キヤノン株式会社 画像形成装置及びその制御方法、並びにプログラム
EP2889765A1 (en) * 2013-12-26 2015-07-01 Gemalto SA Method for updating a firmware on a low memory device
KR102261815B1 (ko) * 2014-10-30 2021-06-07 삼성전자주식회사 펌웨어 업데이트 시간을 줄일 수 있는 데이터 저장 장치, 및 이를 포함하는 데이터 처리 시스템
JP6501595B2 (ja) * 2015-04-06 2019-04-17 キヤノン株式会社 画像形成装置およびその制御方法、並びにプログラム
JP6600240B2 (ja) 2015-12-08 2019-10-30 キヤノン株式会社 情報処理装置、ファームウェア更新方法、およびプログラム
JP6904135B2 (ja) * 2017-07-26 2021-07-14 京セラドキュメントソリューションズ株式会社 電子機器および設定値変更プログラム
US10346157B2 (en) * 2017-07-31 2019-07-09 Qualcomm Incorporated Patch infrastructure for ROM firmware
JP6940365B2 (ja) * 2017-10-12 2021-09-29 日立Astemo株式会社 情報更新装置
CN107832075A (zh) * 2017-11-30 2018-03-23 郑州云海信息技术有限公司 一种linux环境下覆盖多品牌硬盘的FW升级方法
CN108829407B (zh) * 2018-06-15 2022-04-01 深圳市网心科技有限公司 电子设备的系统引导方法、电子设备及存储介质
JP2020040613A (ja) * 2018-09-13 2020-03-19 株式会社デンソー 車載器のソフトウェア更新システム、車載器及び情報処理装置
JP7166904B2 (ja) * 2018-12-19 2022-11-08 キヤノン株式会社 情報処理システム及び制御方法
JP2021002081A (ja) * 2019-06-19 2021-01-07 キヤノン株式会社 情報処理装置、その制御方法、及びプログラム
FR3105853B1 (fr) * 2019-12-31 2023-01-06 Proton World Int Nv Système embarqué
TWI737106B (zh) * 2019-12-31 2021-08-21 啟碁科技股份有限公司 韌體更新方法和韌體更新系統

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7428575B1 (en) 1998-11-17 2008-09-23 Ricoh Company, Ltd. Method and system for communicating with a device attached to a computer using electronic mail messages
US5623604A (en) * 1992-11-18 1997-04-22 Canon Information Systems, Inc. Method and apparatus for remotely altering programmable firmware stored in an interactive network board coupled to a network peripheral
JP3127716B2 (ja) * 1994-06-02 2001-01-29 セイコーエプソン株式会社 プリンタ
US5502797A (en) * 1994-10-04 1996-03-26 Lexmark International, Inc. Apparatus with flash memory control for revision
JPH09325904A (ja) 1996-06-04 1997-12-16 Nec Corp ファームウエア情報のバックアップ方法
JP3003619B2 (ja) 1997-04-09 2000-01-31 日本電気株式会社 装置内部設定情報バックアップ装置及び方法並びに装置内部設定情報バックアップ制御プログラムを記憶した記憶媒体
JPH11203218A (ja) * 1998-01-19 1999-07-30 Brother Ind Ltd データ通信システム、インタフェース装置、及び記憶媒体
JPH11212891A (ja) 1998-01-26 1999-08-06 Fuji Xerox Co Ltd プリンタおよびネットワークシステム
JPH11282656A (ja) * 1998-03-30 1999-10-15 Brother Ind Ltd プログラム書換装置、ネットワークシステム、及び記憶媒体
US6167567A (en) * 1998-05-05 2000-12-26 3Com Corporation Technique for automatically updating software stored on a client computer in a networked client-server environment
US6066182A (en) * 1998-11-05 2000-05-23 Platinum Technology Ip, Inc. Method and apparatus for operating system personalization during installation
TW436734B (en) * 1998-12-24 2001-05-28 Destiny Technology Corp Printer firmware updating method
JP2000222311A (ja) 1999-02-01 2000-08-11 Ricoh Co Ltd 画像形成装置管理システム
US6668374B1 (en) * 1999-07-08 2003-12-23 Axis Ab Method and apparatus for upgrading firmware in an embedded system
JP2001022572A (ja) 1999-07-12 2001-01-26 Nec Software Shikoku Ltd 情報処理システム及びファームウェア更新方法
US6915337B1 (en) * 2000-03-07 2005-07-05 Ricoh Co. Ltd. Method and system for updating the device driver of a business office appliance
US6601212B1 (en) * 2000-03-29 2003-07-29 Hewlett-Packard Development Company, Lp. Method and apparatus for downloading firmware to a non-volatile memory
JP2001350684A (ja) 2000-06-05 2001-12-21 Nec Gumma Ltd ソフトウェア提供システム及びソフトウェア提供装置
AU2001294677A1 (en) * 2000-09-22 2002-04-02 Patchlink.Com Corporation Non-invasive automatic offsite patch fingerprinting and updating system and method
US7055148B2 (en) * 2000-12-07 2006-05-30 Hewlett-Packard Development Company, L.P. System and method for updating firmware
US20020152292A1 (en) * 2001-01-09 2002-10-17 Ricoh Company Limited Method and system of remote support of device using e-mail
US20020184350A1 (en) * 2001-06-05 2002-12-05 Ko-Meng Chen Method for updating firmware by e-mail
JP3743323B2 (ja) * 2001-08-02 2006-02-08 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置、画像形成装置管理ユニット、および、画像処理装置もしくは画像処理装置の管理ユニットにおいて実行されるプログラム
US8200988B2 (en) * 2001-08-03 2012-06-12 Intel Corporation Firmware security key upgrade algorithm
JP3823777B2 (ja) * 2001-08-14 2006-09-20 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置および画像処理方法
JP3780883B2 (ja) * 2001-08-14 2006-05-31 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置および画像処理方法
JP3726726B2 (ja) * 2001-08-20 2005-12-14 コニカミノルタビジネステクノロジーズ株式会社 画像処理装置および管理ユニット
US7146412B2 (en) * 2001-08-27 2006-12-05 Hewlett-Packard Development Company, L.P. System and methods for the automatic discovery, notification and installation of firmware upgrades
US7107588B2 (en) * 2001-08-31 2006-09-12 Hewlett-Packard Development Company, L.P. System and method for installing window installer service without rebooting
US20030065723A1 (en) * 2001-09-28 2003-04-03 Kumhyr David B. Computer-based communication using multiple communications channels
US20030063305A1 (en) * 2001-09-28 2003-04-03 Mcintyre C. Kevin Method and system for saving and restoring printer control panel settings
US7174548B2 (en) * 2001-10-15 2007-02-06 Intel Corporation Managing firmware download
US20030101288A1 (en) * 2001-11-27 2003-05-29 Joel Tague Tracking features of devices
US7266818B2 (en) * 2002-06-28 2007-09-04 Microsoft Corporation Automated system setup

Also Published As

Publication number Publication date
US7979855B2 (en) 2011-07-12
JP2003196186A (ja) 2003-07-11
US20030131083A1 (en) 2003-07-10

Similar Documents

Publication Publication Date Title
JP4189570B2 (ja) 画像処理装置、ファームウェアの送信方法、及び画像処理装置の管理システム
US7380243B2 (en) Image forming apparatus of which programs are remotely updatable
US8823992B2 (en) Image handling apparatus, image processing system, image process controlling method, and image process controlling program product
US8694143B2 (en) Apparatus and method for managing successive jobs in devices in a network
US9811294B2 (en) Relay device, image forming apparatus, relay method, and non-transitory computer-readable recording medium encoded with relay program
US8230200B2 (en) Image forming apparatus capable of creating, managing and using job history and control method for the same
JP4358203B2 (ja) 複合機、複合機の制御方法、制御装置、制御装置の制御方法、複合機制御システム、制御プログラム、およびコンピュータ読み取り可能な記録媒体
US8219597B2 (en) Information processing apparatus and method
US20060277279A1 (en) Image processing apparatus used in network environment
US20110066960A1 (en) Program download system, program download method, image forming apparatus, program delivery server, and download program
US20120054730A1 (en) Image processing apparatus capable of reducing time required to update software, method of controlling the same, information processing system, and storage medium
JP2006202028A (ja) プログラム管理システムとその制御方法、ならびに記憶媒体
US8001191B2 (en) Data communication apparatus capable of rewriting firmware
US7511840B2 (en) Image forming apparatus
US8135998B2 (en) Information processor and information processing method
JPH11212793A (ja) 画像処理装置
JP2004165734A (ja) 画像形成装置及びファームウェアプログラム
JP7131044B2 (ja) プログラム及び通信システム
JPH10171634A (ja) 情報処理端末およびプログラム更新システム
JP4523991B2 (ja) 端末装置、方法、システム、及びプログラム
JP2008279714A (ja) 画像形成装置
JP3636114B2 (ja) 画像処理装置、管理ユニット、画像処理方法、および画像処理プログラム
JP4133290B2 (ja) 画像形成装置のデータ更新方法、画像形成装置、及び画像形成システム
JP2004148612A (ja) 画像形成装置及びプログラム
JP2004160687A (ja) 画像形成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040927

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20040927

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20041125

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070302

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070313

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070514

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070605

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070806

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070809

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080819

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080901

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110926

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120926

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120926

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130926

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees