Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3551933B2 - Data communication program, computer-readable recording medium recording data communication program, data communication device, and data communication method - Google Patents
[go: Go Back, main page]

JP3551933B2 - Data communication program, computer-readable recording medium recording data communication program, data communication device, and data communication method - Google Patents

Data communication program, computer-readable recording medium recording data communication program, data communication device, and data communication method Download PDF

Info

Publication number
JP3551933B2
JP3551933B2 JP2001099194A JP2001099194A JP3551933B2 JP 3551933 B2 JP3551933 B2 JP 3551933B2 JP 2001099194 A JP2001099194 A JP 2001099194A JP 2001099194 A JP2001099194 A JP 2001099194A JP 3551933 B2 JP3551933 B2 JP 3551933B2
Authority
JP
Japan
Prior art keywords
firmware
mail
divided
image forming
transmitted
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
JP2001099194A
Other languages
Japanese (ja)
Other versions
JP2002297351A (en
Inventor
秀樹 日野
篤 冨田
豪郎 前
Original Assignee
ミノルタ株式会社
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 ミノルタ株式会社 filed Critical ミノルタ株式会社
Priority to JP2001099194A priority Critical patent/JP3551933B2/en
Publication of JP2002297351A publication Critical patent/JP2002297351A/en
Application granted granted Critical
Publication of JP3551933B2 publication Critical patent/JP3551933B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、データ通信プログラム、データ通信プログラムを記録したコンピュータ読み取り可能な記録媒体、データ通信装置およびデータ通信方法に関し、特に、インターネットを介してファームウェアデータの通信を行なうデータ通信プログラム、データ通信プログラムを記録したコンピュータ読み取り可能な記録媒体、データ通信装置およびデータ通信方法に関する。
【0002】
【従来の技術】
従来、たとえば画像形成装置の動作を制御するファームウェアはマスクROM(Read Only Memory)に書き込まれていた。このためファームウェアを交換する必要が生じた場合は、画像形成装置内の制御基盤上にあるマスクROMを新しいファームウェアの書き込まれたマスクROMに交換するという方法がとられていた。
【0003】
マスクROMの交換作業は、時間がかかるとともに煩雑であった。このため、作業性を向上させるために、マスクROMに代わって、書き換え可能なフラッシュROMが用いられるようになってきた。
【0004】
フラッシュROMに書き込まれたファームウェアを交換する際には、以下のような方法がとられていた。
【0005】
まず、第1の方法としては、メモリカード等の外部記憶装置を用いるという方法である。すなわち、画像形成装置にメモリカード等の外部記憶装置とのI/F(インターフェイス)が設けられ、そのI/Fに新しいファームウェアを格納したメモリカードが接続される。そして、メモリカードからフラッシュROMに新しいファームウェアが書き込まれる。この方法では、ファームウェアの書き換える際、遠隔操作はできず、実際に画像形成装置の設置してある場所まで出向いていかなければならい。
【0006】
第2の方法としては、公衆回線網を利用するという方法である。この方法はファクシミリ装置を中心として実用化されている。すなわち、公衆回線網に接続された遠隔地の装置からファームウェアが画像形成装置に送信される。これをダウンロードすることでファームウェアが書き換えられる。この方法では、第1の方法のように実際に出向いていく必要はなくなるが、通信コストが高く、ファームウェアのダウンロードにも比較的長時間を要することになる。
【0007】
このため最近はインターネットの普及に伴い、第3の方法として、公衆回線網を用いて行なわれていたファームウェアのダウンロードを、インターネットを介して行なうという方法がとられるようになった。インターネットを利用すると、通信コストを削減するとともに、ファームウェアのダウンロードに要する時間を短縮することができる。
【0008】
ここで、インターネットを介して行なう通信のプロトコルには、ホームページを閲覧するためのHTTP(Hyper Text Transfer Protocol)、ファイル転送を行なうFTP(File Transfer Protocol)、電子メールの送信に用いられるSMTP(Simple Mail Transfer Protocol)などさまざまなプロトコルがある。しかし、画像形成装置のファームウェアを遠隔地からインターネットを介してダウンロードするプロトコルとしては、インターネットを介した通信に対するセキュリティ意識の高まりから、制限がみられ、どのプロトコルを用いてもよいというわけではない。
【0009】
すなわち、インターネットと各ユーザとの接続口には、ユーザの内部システムへのインターネットからの不正アクセス等に対処するため、一般に「防御壁」の役割をするファイアウォールが設けられている。このファイアウォールの機能には、インターネットとユーザの内部システムとの間を通過できる通信プロトコルを制御するという機能がある。これにより通過可能なプロトコルが制限されるが、通常、電子メールのプロトコルは通過可能に設定されることが多い。このため、インターネットを介してファームウェアを送信する場合には、従来から電子メールシステムを利用するという方法が知られている。
【0010】
【発明が解決しようとする課題】
しかしながら、上記第3の方法、すなわち、電子メールシステムを利用してファームウェアを送信するという方法には、以下に示すような問題があった。
【0011】
すなわち、最近の画像形成装置のファームウェアのサイズは、その高機能・多機能化に伴い10Mバイト前後にまで膨れ上がっている。そして、今後さらに増大する傾向にある。
【0012】
一方、電子メールの収集と配布のサービスを行なうメールサーバは、受信可能な電子メールのサイズに制限を設けているのが一般的であり、この制限サイズは1Mバイト前後に設定されている場合が多いようである。
【0013】
このため、前述のサイズのファームウェアを電子メールで送信しようとした場合、制限サイズを超えてしまい、受け取りを拒否されるケースが多発するものと予想される。
【0014】
このため、ファームウェアを適当なサイズに分割して送信するという方法が考えられる。しかし、メールサーバには、メッセージを受け取る際の個々のメッセージの容量に加えて、メール・アカウント毎に保持するメッセージの総容量にも制限が設けられているのが一般的である。したがって、ファームウェアを分割して複数のメッセージに添付したとしても、それを一度に全て送信すると、メール・アカウント毎に設けられた制限サイズを超えてしまい、適切に送信できない可能性が高くなる。
【0015】
また、メールサーバの中には、受信可能な電子メールのサイズやメール・アカウント毎のメッセージの総容量に制限が設けられていないものもある。このようなメールサーバに対しては、ファームウェアを分割して、それらを個別に送信するという方法をとると、ファームウェア全体を書き換えるのに要する時間も長くなり効率が悪い。
【0016】
本発明は、かかる実情に鑑み考え出されたものであり、その目的の1つは、電子メールシステムを用いてファームウェアの送受信を行なう際、使用するメールサーバの制限サイズを考慮することで、より適切にファームウェアを送受信することのできるデータ通信プログラム、該プログラムを記録したコンピュータ読み取り可能な記録媒体、データ通信装置およびデータ通信方法を提供することである。
【0017】
【課題を解決するための手段】
上記目的を達成するため、本発明のある局面に従うと、データ通信プログラムは、使用するメールサーバに設けられたデータの制限容量を取得する制限容量取得ステップと、取得された制限容量に基づいて送信対象となるファームウェアを分割するか否かを判断する判断ステップと、判断ステップにより分割しないと判断された場合に、ファームウェアを電子メールに添付して送信する第1の送信ステップと、判断ステップにより分割すると判断された場合に、前記ファームウェアを前記取得された制限容量に基づいて複数に分割する分割ステップと、分割された複数のファームウェアの中の1のファームウェアを電子メールに添付して送信する第2の送信ステップと、電子メールに添付された1のファームウェアを取得した相手先から送られてくるファームウェアの書き換え結果に関する情報を取得する取得ステップと、取得された書き換え結果が成功を示す場合に、分割された複数のファームウェアの中の次に送るべき1のファームウェアを電子メールに添付して送信する第3の送信ステップとをコンピュータに実行させる。
【0018】
この発明によると、使用するメールサーバに設けられたデータの制限容量に応じて送信対象となるファームウェアを分割するか否かが判断される。そして、分割しないと判断された場合は、対象となるファームウェアは分割されずに一括して電子メールに添付され送信される。このように、メールサーバに制限容量が設けられていない場合等には分割されないため、ファームウェアの送信および送信先でも書き換え処理が効率よく行なわれる。
【0019】
なお、ファームウェアの分割とは、単一のファームウェアを分割するというケースのみではなく、送信予定の複数のファームを所定条件にしたがって複数に分割するというケースも含まれる。
【0020】
また、分割すると判断された場合は、ファームウェアはメールサーバの制限容量に基づいて適当に分割され、その中の1のファームウェアが電子メールに添付して送信される。適当に分割されるため、大容量のファームウェアを電子メールに添付することにより、メールサーバに設けられた個々の電子メールの容量制限を超えるという事態が回避され、電子メールの受け取り拒否がされることもない。
【0021】
また、電子メールを取得した相手先から送られてくるファームウェアの書き換え結果に関する情報を取得し、書き換え結果が成功を示す場合に、分割された複数のファームウェアの中の次に送るべき1のファームウェアが添付された電子メールが送信される。メールサーバからファームウェアがダウンロードされた後に次の電子メールが送信されるため、メールサーバの個々のメールアカウント毎に設けられたデータ容量の制限を越えるという事態が回避される。
【0022】
したがって、電子メールシステムを用いてファームウェアの送受信を行なう際、使用するメールサーバの制限サイズを考慮することで、ファームウェアを分割するか否かが決定され、より適切にファームウェアを送信することのできるデータ通信プログラムを提供することが可能となる。
【0023】
好ましくは、判断ステップは、送信対象となるファームウェアが取得された制限容量より大きい場合、分割すると判断し、送信対象となるファームウェアが取得された制限容量以下の場合、分割しないと判断する。
【0024】
これによると、送信対象となるファームウェアのデータ容量がメールサーバに設けられた制限容量より大きい場合は個々の容量がそれ以下となるようにファームウェアが分割され、制限容量以下の場合は、分割されずに一括してファームウェアが送信される。このため、メールサーバに設けられた制限容量オーバーのために電子メールの受け取りが拒否されるなどの不都合は発生せず、最適な状態でファームウェアの送信が行なわれる
【0028】
本発明の別の局面に従うと、コンピュータ読み取り可能な記録媒体は、上記いずれかに記載のデータ通信プログラムを記録する。
【0029】
この発明によると、電子メールシステムを用いてファームウェアの送受信を行なう際、使用するメールサーバの制限サイズを考慮することで、ファームウェアを分割するか否かが決定され、より適切にファームウェアを送信することのできるデータ通信装置を提供することが可能となる。
【0030】
本発明のさらに別の局面に従うと、データ通信装置は、使用するメールサーバに設けられたデータの制限容量を取得する制限容量取得手段と、取得された制限容量に基づいて送信対象となるファームウェアを分割するか否かを判断する判断手段と、判断手段により分割しないと判断された場合に、ファームウェアを電子メールに添付して送信する第1の送信手段と、判断手段により分割すると判断された場合に、ファームウェアを取得された制限容量に基づいて複数に分割する分割手段と、分割された複数のファームウェアの中の1のファームウェアを電子メールに添付して送信する第2の送信手段と、電子メールに添付された1のファームウェアを取得した相手先から送られてくるファームウェアの書き換え結果に関する情報を取得する取得手段と、取得された書き換え結果が成功を示す場合に、分割された複数のファームウェアの中の次に送るべき1のファームウェアを電子メールに添付して送信する第3の送信手段とを含む。
【0031】
この発明によると、使用するメールサーバに設けられたデータの制限容量に応じて送信対象となるファームウェアを分割するか否かが判断される。そして、分割しないと判断された場合は、対象となるファームウェアは分割されずに一括して電子メールに添付され送信される。このように、メールサーバに制限容量が設けられていない場合等には分割されないため、ファームウェアの送信および送信先でも書き換え処理が効率よく行なわれる。
【0032】
また、分割すると判断された場合は、ファームウェアはメールサーバの制限容量に基づいて適当に分割され、その中の1のファームウェアが電子メールに添付して送信される。適当に分割されるため、大容量のファームウェアを電子メールに添付することにより、メールサーバに設けられた個々の電子メールの容量制限を超えるという事態が回避され、電子メールの受け取り拒否がされることもない。
【0033】
また、電子メールを取得した相手先から送られてくるファームウェアの書き換え結果に関する情報を取得し、その書き換え結果が成功を示す場合に、分割された複数のファームウェアの中の次に送るべき1のファームウェアが添付された電子メールが送信される。メールサーバからファームウェアがダウンロードされた後に次の電子メールが送信されるため、メールサーバの個々のメールアカウント毎に設けられたデータ容量の制限を越えるという事態が回避される。
【0034】
したがって、電子メールシステムを用いてファームウェアの送信を行なう際、使用するメールサーバの制限サイズを考慮することで、ファームウェアを分割するか否かが決定され、より適切にファームウェアを送信することのできるデータ通信装置を提供することが可能となる。
【0038】
本発明のさらに別の局面に従うと、データ通信方法は、使用するメールサーバに設けられたデータの制限容量を取得する制限容量取得ステップと、取得された制限容量に基づいて送信対象となるファームウェアを分割するか否かを判断する判断ステップと、判断ステップにより分割しないと判断された場合に、ファームウェアを電子メールに添付して送信する第1の送信ステップと、判断ステップにより分割すると判断された場合に、ファームウェアを取得された制限容量に基づいて複数に分割する分割ステップと、分割された複数のファームウェアの中の1のファームウェアを電子メールに添付して送信する第2の送信ステップと、電子メールに添付された1のファームウェアを取得した相手先から送られてくるファームウェアの書き換え結果に関する情報を取得する取得ステップと、取得された書き換え結果が成功を示す場合に、分割された複数のファームウェアの中の次に送るべき1のファームウェアを電子メールに添付して送信する第3の送信ステップとを含む。
【0039】
この発明によると、電子メールシステムを用いてファームウェアの送受信を行なう際、使用するメールサーバの制限サイズを考慮することで、ファームウェアを分割するか否かが決定され、より適切にファームウェアを送信することのできるデータ通信方法を提供することが可能となる。
【0040】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照しながら詳細に説明する。
【0041】
ここでは、画像形成装置のファームウェアが、電子メールシステムを利用して書き換えられる場合を例に挙げて説明する。図1は、本発明の実施の形態におけるファームウェアの送受信方法を実施するためのシステム構成を示した図である。本図を参照して、本システムは、画像形成装置を含むユーザ側の装置と、画像形成装置にファームウェアを送信するサービスセンター側の装置と、これらを接続するインターネットとにより構成される。
【0042】
本システムでは、1のサービスセンター側の装置に対して、複数のユーザ側の装置を接続することが可能である。しかし、ここでは説明を簡略化するため、1(組)のユーザ側の装置が接続されている場合を例として示している。
【0043】
ユーザ側の装置には、画像形成装置11とこれに接続されたプリンタコントーラ21とが含まれる。プリンタコントローラ21は、LANを経由して、ファイアウォール31に、そして、ルータ32を介してインターネットに接続されている。また、LANには、電子メールの収集と配布のサービスを行なうメールサーバ33が接続されている。
【0044】
サービスセンター側には、ファームウェアの送信を行なうコンピュータ91が設置されている。コンピュータ91は、ユーザ側のプリンタコントローラ21と通信するために、LANを経由して、ファイアウォール81に、そして、ルータ82を介してインターネットに接続されている。また、LANには、電子メールの収集と配布のサービスを行なうメールサーバ83も接続されている。
【0045】
なお、図示せぬが、ルータ82とルータ32の間のインターネット上でも複数のメールサーバが介在し、これら不定の複数のメールサーバを経由して電子メールは送信される。
【0046】
ここで、ファームウェアの書き換えが行なわれる動作について簡単に説明する。まず、サービスセンター側のコンピュータ91から新たなファームウェアが電子メールに添付されて、ユーザ側の画像形成装置11宛てに送信される。この際、添付されるファームウェアは適当に分割されたものである。ファームウェア付きの電子メールは、サービスセンター側のLAN、メールサーバ83、インターネット、ユーザ側のLANをそれぞれ経由して、メールサーバ33のメールボックスに格納される。
【0047】
ユーザ側の画像形成装置11のプリンタコントローラ21は、メールサーバ33から、その電子メールをダウンロードする。そして、電子メールからファームウェアを取りだし、画像形成装置11の書き換え対象となるFlash ROMにこの新たなファームウェアの書き込みを行なう。そして、書き換えの結果をサービスセンター側のコンピュータ91に送信する。
【0048】
結果を受けたコンピュータ91は、書き換えが成功であれば分割されたファームウェアのうちの他の1つを電子メールに添付して画像形成装置11宛てに送信する。書き換えが失敗であれば、再び同じファームウェアを再送信する。
【0049】
次に、図1に示したそれぞれの装置について詳しく説明する。
図2は、画像形成装置11の回路構成を示すブロック図である。本図を参照して、画像形成装置11は、原稿画像を走査して、その複写画像を用紙上に形成するマルチCPU(Central Processing Unit)構成の装置である。したがって、個々のCPUに対応した制御モジュール1から制御モジュール4の4つの制御モジュールにより構成される。
【0050】
制御モジュール1は、画像形成装置11の全体制御を司るCPU111と、そのファームウェアを格納した書き換え可能なFlash ROM112と、作業用のS−RAM113と、各種設定値を保存するバッテリバックアップされたNV−RAM114と、制御モジュール2と各種の制御データを送受信するシリアルI/F115と、制御モジュール3と各種の制御データを送受信するシリアルI/F116と、プリンタコントローラ2と各種のデータを送受信するシリアルI/F117と、各種キーや表示部を含む操作パネル118とから構成される。
【0051】
制御モジュール2は、画像形成装置11のプリント処理を制御するCPU121と、そのファームウェアを格納した書き換え可能なFlash ROM122と、作業用のS−RAM123と、各種設定値を保存するバッテリバックアップされたNV−RAM124と、制御モジュール1と各種の制御データを送受信するシリアルI/F125と、制御モジュール4と各種の制御データを送受信するシリアルI/F126と、画像形成処理の負荷を制御するプリント負荷制御I/O,GA127とから構成される。
【0052】
制御モジュール3は、画像形成装置11の原稿画像の読取処理を制御するCPU131と、そのファームウェアを格納した書き換え可能なFlash ROM132と、作業用のS−RAM133と、各種設定値を保存するバッテリバックアップされたNV−RAM134と、制御モジュール1と各種の制御データを送受信するシリアルI/F135と、原稿画像の読取処理の負荷を制御するIR負荷制御I/O,GA136とから構成される。
【0053】
制御モジュール4は、画像形成装置11に対する画質の補正を制御するCPU141と、そのファームウェアを格納した書き換え可能なFlash ROM142と、作業用のS−RAM143と、各種設定値を保存するバッテリバックアップされたNV−RAM144と、制御モジュール2と各種の制御データを送受信するシリアルI/F145と、画質補正制御を行なう画質補正制御GA146とから構成されている。
【0054】
これら制御モジュール1〜4はシリアルI/Fを介した通信を実行する。通常は各モジュールのCPU間での制御命令、制御情報の送受信を実行しており、ファームウェア書き換え時にはファームウェアデータの送信を実行する。シリアルI/Fを介した通信は、通常利用する制御命令、制御情報の通信データサイズにあわせた構成であるため、ファームウェアのような大容量のデータでは送信時間を要しており、ファームウェアのデータサイズによっては、センターPC91から画像形成装置11に電子メールを送信するよりも時間を要する場合もある。
【0055】
図3は、プリンタコントローラ21の回路構成を示したブロック図である。本図を参照して、プリンタコントローラ21は、CPU201と、その制御プログラムが格納されたEP−ROM202と、作業用のS−RAM203と、各種設定値を記憶するNV−RAM(不揮発性メモリ)204と、画像形成装置11との各種データを送受信するシリアルI/F205と、LANを介して各種のデータを送受信するためのNIC(ネットワークインターフェイスカード)206と、各種の操作設定を行なうための操作パネル207とを含んでいる。
【0056】
NV−RAM204には、自己のIPアドレス以外に、プリンタコントローラ21が自分(画像形成装置11)宛の電子メール・メッセージをメールサーバ33からダウンロードするために必要となるメールサーバのIPアドレス、自分の電子メール・アカウントの名称およびパスワード等が格納されている。
【0057】
図4は、サービスセンター側に設置されたコンピュータ91の回路構成を示すブロック図である。本図を参照して、コンピュータ91は、装置全体を制御するCPU901と、プログラム等が格納されているROM902と、作業領域および各種データの一時保存領域であるRAM903と、種々の情報等が格納される固定記憶装置904と、ディスプレイ92を制御する表示制御部905と、キーボード93およびマウス94を制御する入力制御部906と、LANを介して外部と各種データを送受信するためのNIC907とを含んでいる。
【0058】
固定記憶装置904には、画像形成装置11の機種や電子メールアドレス、メールサーバに設けられた制限容量情報を含む画像形成装置の登録情報が記憶される。また、画像形成装置11の機種に対応したファームウェアも記憶される。
【0059】
ファームウェアは、サービスセンターのオペレータにより、予め機種とその制御モジュールに応じて、固定記憶装置904内のそれぞれ異なる所定のフォルダ/ディレクトリに格納される。
【0060】
続いて、図1に示したシステムにおいて、画像形成装置のファームウェアが遠隔地から書き換ええられる際の動作について説明する。
【0061】
まず、サービスセンター側のコンピュータ91に搭載されているCPU901における処理について図5から図8を用いて説明する。
【0062】
図5は、サービスセンター側のコンピュータ91のCPU901が行なう処理のメインルーチンを示すフローチャートである。CPU901は電源の投入によって処理をスタートし、まず、メモリの初期化やパラメータの初期化などのコンピュータ装置が行なう一般的な初期化処理を実行する(ステップS501)。その後、たとえばキーボード93上の各ファンクションキー(F1からF3)の入力操作に応じて、通信設定処理(ステップS505)、画像形成装置の登録処理(ステップS509)、またはファームウェア送信処理(ステップS513)を行なう。
【0063】
F1キーが入力された場合は(ステップS503で“YES”)、ステップS505において、通信設定処理が行なわれる。すなわち、ここではコンピュータ91が電子メールを送信するために必要なパラメータの設定が行なわれる。たとえば、サービスセンター側のLANに接続されたメールサーバ83のIPアドレスや、コンピュータ91の電子メールアドレス等が入力され、それぞれ固定記憶装置904に記憶される。コンピュータ91の電子メールアドレスは、コンピュータ91がプリンタコントローラ21にファームウェアの添付された電子メールを送信する際に、そのFromフィールドにセットされるものである。
【0064】
F2キーが入力された場合は(ステップS507で“YES”)、ステップS509において、画像形成装置の登録処理が行なわれる。すなわち、各画像形成装置の機種名、電子メールアドレス、対応するメールサーバに設けられた制限容量情報、その他必要に応じて、各画像形成装置のユーザの名称、住所、電話番号等の情報が入力され、固定記憶装置904に記憶される。
【0065】
F3キーが入力された場合は(ステップS511で“YES”)、ステップS513において、ファームウェアの送信処理が行なわれる。すなわち、書き換えの対象となる機種のファームウェアが適切に分割され、その1つが電子メールに添付されて画像形成装置11宛に送信される。
【0066】
図6は、図5の画像形成装置の登録処理(ステップS509)において固定記憶装置904に登録されるデータ例を示した図である。サービスセンター側のオペレータは、画像形成装置のファームウェアを書き換える前に、予めキーボード93、マウス94などを用いてコンピュータ91にその画像形成装置に関する情報を入力する。
【0067】
図6に示すように、画像形成装置に関する情報には、画像形成装置の機種名、電子メールアドレス、利用するメールサーバの制限容量情報が含まれる。その他の情報として、画像形成装置を容易に識別するために、たとえば画像形成装置のユーザの名称、住所、電話番号等のユーザ情報を含んでもよい。
【0068】
ここで、メールサーバの制限容量情報として、“1M”や“2M”とあるのは、メールサーバの受信可能な電子メールの容量、あるいは、メール・アカウント毎に設けられた上限容量のいずれか小さい方の容量である。なお、“NULL”とあるのは、メールサーバに制限が設けられていないことを意味する。
【0069】
このような画像形成装置に関する情報はコンピュータ91に入力され、本図に示すようなテーブル形式にまとめられ固定記憶装置904に記憶される。なお、説明の便宜上テーブル形式にまとめたこの情報を以下(「登録情報テーブル」という)。
【0070】
次に、画像形成装置のファームウェアを書き換える必要が生じた場合に、コンピュータ91によりファームウェアを添付した電子メールメッセージが作成され、それが画像形成装置11に送信される処理の流れについて説明する。図7は、図5のファームウェア送信処理(ステップS513)の詳細を示したフローチャートであり、前述のコンピュータ91のCPU901で実行する。
【0071】
本図を参照して、まず、ステップS701において、サービスセンター側のオペレータにより、キーボード93、マウス94等を用いてコンピュータ91にファームウェアを書き換える対象となる画像形成装置の機種およびその制御モジュールの指定がなされる。機種および制御モジュールが指定されるのは、一般に画像形成装置のファームウェアは、これら機種と制御モジュールによって異なるからである。
【0072】
次に、ステップS703において、固定記憶装置904に記憶されている登録情報テーブル(図6)が読み出され、ステップS705において、指定された画像形成装置の機種についての登録台数nが計数される。そして、ステップS707において、指定された機種のIDが図8に示すようなIDテーブルへ順に格納される。IDテーブルとは指定された機種毎に容量制限をチェックして、ファームウェアの適切な分割を行なうために使用するテーブルである。
【0073】
IDテーブルへの格納が終了すると、ステップS709において、ループカウンタiに1がセットされ、続くステップS711からステップS725において、図8のIDテーブルに登録されている指定機種の画像形成装置について、ファームウェアの適切な分割等が行なわれ、電子メールの送信処理が行なわれる。
【0074】
すなわち、ステップS711において、ループカウンタiがIDテーブルの登録台数n以下であれば(ステップS711で“YES”)、ステップS713において、IDテーブルの上から第i番目のレコードに格納されているIDに対応する図6の登録情報テーブルの制限容量情報が取得される。
【0075】
そして、ステップS715において、指定された機種のファームウェアの容量と、取得された制限容量とが比較され、ファームウェアの容量が大きい場合は(ステップS715で“Yes”)、ファームウェアの分割が行なわれる。
【0076】
例えば、図8の例でいうと、IDが1の機種のファームウェアの場合、その容量が制限容量である1Mを超えるときは、個々の容量がそれ以下となるような複数のファームウェアに分割される。本例では、例えば4Mのファームウェアが1Mずつに4分割されている。
【0077】
ステップS721では、メールサーバの制限容量に収まるようにファームウェアが分割され、その分割数がIDテーブルに格納される。そして、分割されたファームウェアを用いて電子メール・メッセージが作成され、ステップS723において、その作成された電子メール・メッセージが画像形成装置11宛てに送信される。すなわち、図5のステップS505で設定されているメールサーバ83のIPアドレスを基にメールサーバ83との接続が確立された後、電子メール送信のインターネット標準であるSMTPプロトコル(RFC821)に従ってメールサーバ83に電子メール・メッセージが送信される。
【0078】
一方、指定された機種のファームウェアの容量がメールサーバの制限容量以下である場合は(ステップS715で“NO”)、ファームウェアの分割は行なわれない。例えば、図8の例でいうと、IDが21の機種のファームウェアは、その容量が制限容量を超えていないか、あるいは、制限容量のない“NULL”のメールサーバが使用される。このため、そのファームウェアは分割されない。
【0079】
したがって、ステップS717では、ファームウェアは分割されずに、電子メール・メッセージが作成され、ステップS719において、その作成された電子メール・メッセージが画像形成装置11宛てに送信される。
【0080】
電子メールが送信されると、ステップS725において、ループカウンタiが1つインクリメントされ、再びステップS711の処理へと戻る。このようにして、IDテーブルに登録されているすべての画像形成装置に対してステップS711からステップS725までの処理が行なわれる。
【0081】
そして、IDテーブルに登録されているすべての装置に対する処理が終了すると(ステップS711で“NO”)、ファームウェアの送信処理が終了する。
【0082】
以上の処理によると、指定された機種についてのファームウェアの容量がメールサーバの制限容量よりも大きい場合であっても、適切にファームウェアが分割されて送信されるため、送信できないという事態を回避することが可能となる。
【0083】
そして、メールサーバに制限容量が設けられていない場合、あるいは、ファームウェアの容量がメールサーバの制限容量以下の場合は、そのファームウェアは分割されずに送信される。したがって、メールサーバの制限容量を考慮した、より効率のよいファームウェアの送信処理を行なうことが可能となる。
【0084】
ファームウェアが分割送信された場合には、サービスセンター側のコンピュータ91は、ファームウェアを添付した電子メールを画像形成装置11宛てに送信した後、画像形成装置11からのファームウェアの書き換え結果についての返信メールが送信されてくるのを待って、次の電子メールの送信を行なう。
【0085】
図9は、コンピュータ91が、書き換え結果についての返信メールを受信した際の処理の流れについて示したフローチャートである。本図を参照して、まず、ステップS901において、コンピュータ91は、メールサーバ83に、ファームウェアの書き換えを行なった画像形成装置11からの書き換え終了の電子メールが届いているか否かのチェックを行なう。書き換え終了の電子メールか否かは、Subjectフィールドに、ファームウェアに関する記述があるか否かで判断される。
【0086】
書き換え終了のメールが届いている場合(ステップS901で“YES”)、ステップS903において、電子メール・メッセージのボディ部のResultが取得される。これにより、ファームウェアの書き換えが成功したか否かを判断することができる。
【0087】
正常に書き換えが終了した場合(ステップS905で“YES”)、ステップS907において、Subjectに示されている分割番号、分割数、機種、モジュールから次の分割ファームウェアを添付した電子メール・メッセージが送信される。一方、正常に書き換えが終了してない場合(ステップS905で“NO”)、ステップS909において、Subjectに示されているファームウェアが再度送信される。
【0088】
そして、ステップS911において、コンピュータ91は、所定時間が経過するまで待機し、所定時間が経過すると、ステップS901の処理へと戻り、ファームウェアの書き換え終了メールが到着したか否かを見に行く。
【0089】
以上の処理によると、メールサーバの制限容量を超えるファームウェアは適切に複数に分割され、送信する際にそれぞれ電子メールに添付される。そして、先に送信されたファームウェアについての書き換え終了メールを受信してから、次のファームウェアを添付した電子メールの送信が行なわれる。このため、メールサーバの制限容量を超えてデータ送受信が行なわれない。
【0090】
続いて、ファームウェアを添付した電子メールについて、図10および図11を用いて詳しく説明する。図10は、分割されたファームウェアを添付した電子メールのメッセージ文の一例を示した図であり、図11は、分割されていないファームウェアを添付した電子メールのメッセージ文の一例を示した図である。
【0091】
図10および図11を参照して、電子メールのメッセージに関するインターネット標準(RFC822)により、電子メールのメッセージ・フィールドは、大きく分けて、ヘッダ部とボディ部に分かれており、両者はNULL行によって区別される。
【0092】
ヘッダ部は、インターネット標準(RFC822)で規定された複数のヘッダ・フィールドで構成され、このヘッダ・フィールドは、行頭から“:”までのフィールド名とそれ以降のフィールド・ボディにより構成される。
【0093】
ところで、画像形成装置のファームウェアはバイナリデータであるが、RFC822では電子メールのメッセージに直接バイナリデータを記述することが禁止されている。このため、RFC2045、2046、2047で規定されているMIME(Multipurpose Internet Mail Extensions)拡張規定を利用して、画像形成装置のファームウェアをメッセージのボディ部にファイルとして添付する。
【0094】
メッセージのヘッダ部には、「From」、「To」、「Date」、「Subject」等のRFC822で規定されたフィールド以外に、MIME拡張規定に伴う「MIME−Version」、「Content−Type」の各フィールドが追加される。
【0095】
Subjectフィールドのフィールド・ボディには、オペレータによって指定された機種の名称、および添付するファームウェアの対象制御モジュールの番号をアンダーバーで繋いだ文字列が記述される。たとえば、機種名が「model1」、対象制御モジュールの番号が「1」の場合、「model1#module1」という文字列が記述される。そして、添付のファームウェアデータが分割されたものである場合は、図10に示すように、最後に分割数と何番目のデータなのかを示す番号が記述される。たとえば、ファームウェアを4分割したうちの1番目のものである場合、(1/4)という文字が記述される。なお、添付のファームウェアデータが分割されたものでない場合は、図11に示すように、最後に分割数等は何も記述されない。
【0096】
Content−Typeフィールドのフィールド・ボディには、「Multipart/mixed」を指定してメッセージ・ボディ部が複数のパートに分割可能に設定された上で、個々のパートの境界を表わす「Boundary」パラメータに適切なUS−ASCII文字列(本図では文字列の後「5kvrZF/hrA」)が指定される。
【0097】
メッセージのボディ部には、ヘッダ部のContent−Typeフィールドのboundaryパラメータの値(本図では「5kvrZF/hrA」)の前に「−−」を加えた文字列が記載され、1つのパートの始まりが指定される。その下に、「Content−Type」フィールドが記述され、そのフィールド・ボディに添付するファイルがバイナリデータであることを示す「application/octet−stream」が指定される。
【0098】
さらにその下に、「Content−Transfer−Encoding」フィールドが記述され、フィールド・ボディに「base64」が指定される。前述のとおり、RFC822により電子メールのメッセージに直接バイナリデータを記述することが禁止されているため、バイナリデータをUS−ASCII文字に変換しなければならない。MIME拡張規定では、この変換の方式として複数の方式が定められているが、その中の1つがBase64方式である。
【0099】
上記2つのフィールドの下に、ファームウェアのバイナリデータがBase64方式でUS−ASCII文字に変換して追加される。そして最後に、ボディ部のすべてのパートの終端であることを示すため、ヘッダ部のContent−TypeフィールドのBoundaryパラメータの値(本図では「5kvrZF/hrA」)の前後にそれぞれ「−−」を加えた文字列が記述される。
【0100】
次に、ファームウェアを受け取った画像形成装置が、書き換え対象となるFlash−ROMにファームウェアの書き換えを行ない、その結果を電子メールで返信する際の電子メール・メッセージについて簡単に説明する。図12は、ファームウェアの書き換え結果についての電子メールのメッセージ文の一例を示した図である。図12を参照して、電子メールのメッセージに関するインターネット標準(RFC822)に従い、電子メールのメッセージ・フィールドがヘッダ部と、NULL行を挟んでボディ部とに分かれる点は図10および図11と同様である。
【0101】
「Subject」フィールドに、機種名およびモジュール番号が記述され、さらに分割数とその何番目のファームウェアを受信したかが記述される。そして、ボディ部の「Result」フィールドに、書き換えが成功したか失敗したかを示す「OK」か「NG」かのいずれかが書き込まれる。
【0102】
したがって、書き換え結果についての電子メールを受信したサービスセンター側では、「Result」の内容を取得することにより、書き換え結果が成功したか失敗したかを知ることができる。そして、「Subject」の内容を取得することにより、「Result」の内容と併せて、次にどのファームウェアを添付して電子メールを送信すればよいかを知ることができる。
【0103】
続いて、ユーザ側における処理について説明する。図13は、画像形成装置11のプリンタコントローラ21のCPU201における処理のメインルーチンを示すフローチャートである。本図を参照して、CPU201は、電源の投入によって処理をスタートし、まずメモリの初期化やパラメータの初期化などのコンピュータ装置が行なう一般的な初期化処理を行なう(ステップS1301)。その後、必要に応じて、通信設定処理(ステップS1305)やファームウェアの読み取り処理(ステップS1309)を行なう。
【0104】
たとえば、操作パネル207上の「設定」キーがユーザにより入力された場合(ステップS1303で“YES”)、ステップS1305において、電子メールを送受信するために必要なパラメータの設定が行なわれる。すなわち、ここでは、ユーザ側のLANに接続されたメールサーバ33のIPアドレス、メールサーバ33上の画像形成装置11の電子メール・アカウントの名称とパスワード、画像形成装置11の電子メールアドレス、画像形成装置11宛の新しい電子メールが届いているかどうかを定期的に確認する際の時間間隔等が入力され、それぞれNV−RAM204に記憶される。
【0105】
そして、ステップS1307では、確認間隔が経過したか否かが判断される。すなわち、ステップS1305で設定された時間間隔(画像形成装置11宛の新しい電子メールメッセージが到着したか否かの確認する時間間隔)が経過したか否かがここで判断される。
【0106】
時間間隔が経過している場合は(ステップS1307で“YES”)、ステップS1309において、CPU201はメールサーバ33に対して新しい電子メールメッセージが届いているかどうかを読みに行き、必要な電子メールのダウンロード処理を行なう。確認間隔が経過していない場合は(ステップS1307で“NO”)、たとえばステップS1303に戻り、確認間隔が経過するまで上記処理を繰り返す。
【0107】
続いて、プリンタコントローラ21が、メールサーバ33に画像形成装置11宛の新しいメッセージが届いているかどうかを確認し届いていればそれをダウンロードするという処理について説明する。
【0108】
図14は、図13のファームウェアの読取処理(ステップS1309)の詳細を示したフローチャートである。本図を参照して、まず、ステップS1401において、図13のステップS1305で設定されたメールサーバ33のIPアドレスをもとに、メールサーバ33とのTCPコネクションが確立され、画像形成装置11宛の新しいメッセージが届いているか否かが確認される(ステップS1403)。
【0109】
なお、この確認処理、およびメールサーバ33に画像形成装置11宛の新しいメッセージが届いていた場合にそれをダウンロードするという後述の処理においては、POP3(Post Office Protocol Version 3)プロトコルが用いられる。そして、ここでは、仮にメールサーバ33に画像形成装置11宛の新しいメッセージが複数届いている場合でも、一度のTCPコネクションでは1つのメッセージだけがダウンロードされるものとする。
【0110】
新着メッセージの確認の結果、メールサーバ33に画像形成装置11宛の新しいメッセージが届いていた場合(ステップS1403で“YES”)、ステップS1405において、メールサーバ33からそのメッセージのダウンロードが行なわれる。そして、ステップS1407において、ファームウェアが添付された電子メールか否かが判断される。ファームウェアが添付されているかどうかは、たとえば、メッセージのヘッダ部のContent−Descriptionフィールドのフィールド・ボディの値が「Firmware」であるか否かにより判断される。
【0111】
ファームウェアが添付されていた場合(ステップS1407で“YES”)、ステップS1409において、メッセージの中からファームウェアの部分のUS−ASCII文字が抜き出され、ステップS1411において、その抜き出されたUS−ASCII文字が逆Base64変換によりバイナリデータに戻される。
【0112】
次に、ステップS1413において、メッセージのヘッダ部のSubjectフィールドの値からそのファームウェアの対象機種と対象制御モジュールの番号が読み出される。さらにバイナリデータのチェックサムが計算される。なお、ファームウェアが一括送信されてきた場合は、モジュールごとにチェックサムが計算される。ファームウェア、対象制御モジュール番号、チェックサム値は、S−RAM203に一時的に記憶される。そして、ステップS1415において、シリアルI/F205を介して、バイナリデータに戻されたファームウェアとモジュール番号とが画像形成装置11に転送される。
【0113】
次に、ステップS1417において、メールサーバ33からダウンロードしたメッセージのオリジナルが削除される。そして、ステップS1419において、画像形成装置11からのファームウェアの書き換え終了通知が来るまで待機する。書き換え終了通知が来ると(ステップS1419で“YES”)、ステップS1421において、画像形成装置11から送られてきたチェックサムの値と、S−RAM203に一時的に記憶していたチェックサムの値とが比較され、その結果が電子メール・メッセージ本文にOKまたはNGとして書き込まれる。そして、ステップS1423において、その結果が記載された電子メール(終了メール)がサービスセンター側のコンピュータ91宛てに送信される。
【0114】
なお、ダウンロードされたメッセージにファームウェアが添付されていなかった場合(ステップS1407で“NO”)、ステップS1425において、画像形成装置のファームウェアの書き換え処理以外の用途のメッセージを受信した際の処理が通常通り実行される。
【0115】
このようにして、画像形成装置11のプリンタコントローラ21においてメールサーバ33からのメッセージがダウンロードされ、画像形成装置11に、ファームウェアのバイナリデータが送信される。そして、画像形成装置からの書き換え結果を受けて、書き換えが成功したか否かを電子メールとして、サービスセンター側のコンピュータ91に返信する。
【0116】
次に、画像形成装置11において行なわれる処理について説明する。図15は、画像形成装置11における基本処理を示すフローチャートであり、画像形成装置11におけるCPU101で実行する。画像形成装置11は、電源の投入等により処理が開始され、まず、各制御モジュールそれぞれにおいて、メモリのクリア、標準モードの設定等の初期設定が行なわれる(ステップS1501)。そして次に、プリンタコントローラ21からファームウェアの受信通知がなされるまで、入力受付処理(ステップS1503)およびコピー制御処理(ステップS1505)の各処理が繰り返し実行される。
【0117】
ステップS1503では、各種の入力信号に対する受け付けが一括して行なわれる。ここで入力信号とは、たとえば画像形成装置11の操作パネル118上のキースイッチ群や装置内の各種センサ群からの入力信号、あるいは、プリンタコントローラ21から送信されてくるプリントジョブやファームウェア受信通知等である。
【0118】
ステップS1505では、コピー制御処理、すなわち画像形成装置11の動作に必要な処理が行なわれる。たとえば、給紙制御、走査制御、感光体ドラム制御、現像機制御等の各種作動部群の制御、あるいは、プリンタコントローラ21からのプリントジョブ等に従った処理などである。
【0119】
プリンタコントローラ21からファームウェアの受信通知がされると(ステップS1507で“YES”)、ステップS1509において、ファームウェアの書き換え処理が行なわれる。そして、ファームウェアの書き換え処理が終了すると、ステップS1503の処理へと戻り、再びファームウェアの受信が通知されるまでステップS1503とステップS1505の処理が繰り返される。
【0120】
続いて、画像形成装置11のファームウェアの書き換え処理について説明する。まず、プリンタコントローラ21によりシリアルI/F205を介して送信されたファームウェアとその対象制御モジュール番号は、画像形成装置11のシリアルI/F117を経由してCPU11が受信する。このようにしてCPU111がファームウェアを受信した場合、受信したファームウェアの対象制御モジュールのFlash ROMが、次に示す処理に従って書き換えられる。
【0121】
図16は、画像形成装置11におけるファームウェア書き換え処理(図15のステップS1509)の詳細を示したフローチャートであり、CPU101で実行する。本図を参照して、ステップS1601、ステップS1605、およびステップS1609により、まず、受信したファームウェアが制御モジュール1〜4のいずれのファームウェアであるかが判断される。
【0122】
そして、制御モジュール1のファームウェアであると判断された場合(ステップS1601で“YES”)、ステップS1603において、分割された部分のデータが対応するFlash ROM112の部分へと書き込まれる。Flash ROM112への部分書き込みが終了すると、ステップS1615の処理へと進む。
【0123】
受信したファームウェアが制御モジュール2のファームウェアであると判断された場合(ステップS1605で“YES”)、ファームウェアがCPU111から制御モジュール2のCPU121へと転送され、ステップS1607において、ファームウェアがFlash ROM122へと書き込まれる。Flash ROM122の書き込みが終了すると、ステップS1615の処理へと進む。
【0124】
受信したファームウェアが制御モジュール3のファームウェアであると判断された場合(ステップS1609で“YES”)は、ファームウェアがCPU111から制御モジュール3のCPU131へと転送され、ステップS1611において、ファームウェアがFlash ROM132へと書き込まれる。Flash ROM132への書き込みが終了すると、ステップS1615の処理へと進む。
【0125】
受信したファームウェアが制御モジュール4のファームウェアであると判断された場合(ステップS1609で“NO”)は、ファームウェアがCPU111からCPU121を介して、制御モジュール4のCPU141へと転送され、ステップS1613において、ファームウェアがFlash ROM142へと書き込まれる。Flash ROM142の書き込みが終了すると、ステップS1615の処理へと進む。
【0126】
ステップS1615では、対象となるFlash ROMの書き換え部分の内容が読み出され、チェックサムが算出される。そして、ステップS1617において、算出されたチェックサムの値が、シリアルI/F117を介してプリンタコントローラ21に送信され、ファームウェアの書き換え処理が終了する。
【0127】
以上説明した、サービスセンター側のコンピュータ91、メールサーバ83、33、およびユーザ側の画像形成装置(プリンタ)11の各処理の流れを図17を用いて、時系列で簡単に説明する。図17においては、左から順に、コンピュータ91、メールサーバ83、33、および画像形成装置11を示しており、上から下に時間軸が向いているものとする。
【0128】
本図を参照して、まず、センター側のコンピュータ91からモジュール1の分割番号1のファームウェアが画像形成装置11宛てに送信される(1)。画像形成装置11は、メールサーバ33に一定時間毎に新着メールが届いているか否かのチェックを行なう(点線矢印)。そして、届いている場合は、その電子メール・メッセージを画像形成装置11側にダウンロードし(2)、対応する部分のファームウェアの書き換えを行なう(3)。
【0129】
書き換えが終了すると、その結果を電子メールとして、コンピュータ91宛てに返信する(4)。コンピュータ91はこれを受けて(5)、再び容量の大きい電子メールの送信を行なうことが可能になったことを知る。そして、次回送るべき分割されたファームウェアを決定し、その内容に従って、次の分割番号のファームウェアデータを電子メールに添付して画像形成装置11宛てに送信する(6)。
【0130】
画像形成装置11は、再びメールサーバ33に自己宛ての新着メールの存在を知ると、ダウンロードする(7)。そして、ファームウェアの書き換え処理を行ない(8)、その結果を電子メールとしてコンピュータ91に送信する(9)。コンピュータ91はこれを受信することで(10)、再び、電子メールの送信可能状態になったことを知る。
【0131】
以上説明したように、本実施の形態におけるデータ通信方法(ファームウェア通信方法)によると、ファームウェアの容量が大きく、メールサーバの制限容量を超えるような場合でも、適切にデータ通信を行なうことが可能となる。
【0132】
すなわち、制限オーバーとなったファームウェアは適当に分割されて電子メールに添付される。そして、各分割されたファームウェア付きの電子メールは、送信先である画像形成装置からの書き換え終了通知を待って順に送信される。このため、分割されたファームウェアが同時に送信され、メールサーバの各メールアカウントに設けられた容量オーバーのために送信不可能になるという事態が回避される。
【0133】
なお、今回は、メールサーバの制限容量に基づいてファームウェアが分割され、それぞれが順次、電子メールに添付されて送信される場合を示した。そして、電子メールを受信する毎に、画像形成装置においてファームウェアの書き換えが行なわれた。したがって、図16でも示したが、分割されたファームウェアは通常、各モジュール単位よりも小さく、該当する部分のファームウェアがその都度書き換えられた。しかし、このような方法以外にも、モジュール単位で書き換えが行なわれるようにしてもよい。以下、図18から図20を用いて、モジュール単位でファームウェアの書き換え処理が行なわれる場合について説明する。
【0134】
図18は、モジュール単位で行なわれるファームウェアの書き換え処理を示したフローチャートである。本図は、図7で示した図5のファームウェア送信処理(ステップS513)の詳細を示したフローチャートとほぼ同様である。ただし、図7のステップS723の代わりに、ステップS1823の処理が行なわれる点が異なる。
【0135】
すなわち、図7においては、画像形成装置に対して、適当に分割された1の分割ファームウェアを電子メールに添付して送信していた。しかしここでは、モジュール単位でファームウェアの書き換えを行なうために、1の分割ファームウェアのみでなく、1のモジュール分に相当する複数の分割ファームウェアが順に送信される。
【0136】
したがって、この1モジュールに相当する複数の分割ファームウェアを受信するユーザ側の画像形成装置(プリンタコントローラ)の処理も図14で示したものとは少し異なってくる。
【0137】
図19は、モジュール単位でファームウェアの書き換えが行なわれる場合の、プリンタコントローラにおけるファームウェアの読取処理(図13のステップS1309)の詳細を示したフローチャートである。
【0138】
本図においては、ステップS1415で画像形成装置にファームウェアを送信する前に、1のモジュール分に相当する複数の分割ファームウェアがすべて送られてくるのを待つ(ステップS1912)。そして、すべて受け取った場合に、1つのモジュールとしてチェックサムが算出され(ステップS1917)、この値とともにファームウェアが画像形成装置に送信される(ステップS1415)。
【0139】
最後に、このようにしてモジュール単位で送られてくるファームウェアデータを受信した画像形成装置11におけるファームウェアの書き換え処理について説明する。図20は、画像形成装置11における、モジュール単位で行なわれるファームウェアの書き換え処理を示したフローチャートである。ここでは、図16の場合と同様に、まず、送信されてきたファームウェアがどのモジュールのファームウェアに対応するものかの判断が行なわれる(ステップS1601,S1605,S1609)。
【0140】
そして、判断結果に応じて、対応するモジュールのFlash ROMのファームウェアが書き換えられる(ステップS2003、S2007,S2011,S2013)。このため、ステップS1615におけるチェックサムの計算では、モジュール単位のファームウェアについてのチェックサムが求められることになる。そして、図19のステップS1421において、モジュール単位で計算されたチェックサムの比較が行なわれ、ファームウェアの書き換えが成功したか否かが判断される。
【0141】
このように、ファームウェアの書き換えをモジュール単位で一度に行なうことにより、結果として1のモジュールに対するファームウェアの書き換え開始から終了までに要する総時間が短縮されることになる。また、Flash ROMのどの部分を書き換えるかという管理が不要となり、処理が簡易化される。
【0142】
なお、画像形成装置が複数の制御モジュールから構成されており、各制御モジュール間でのファームウェアの転送・送信に比較的時間を要する場合においても、画像形成装置からファームウェア送信元へファームウェアの書き込み結果を通知してから後に、次のファームウェアが電子メールに添付されて送信されるため、画像形成装置の動作にあわせた、ファームウェアの送信も可能となる。
【0143】
今回は、書き換え対象となるファームウェアを有するデータ通信装置として画像形成装置を例に挙げて説明したが、これに限定されるものではない。したがって、たとえば、ハブやルータ等の通信機能を有するデバイスであれば、本発明を適用することが可能となる。
【0144】
また、今回はファームウェアの書き換え結果(書き換え終了情報)について、電子メールを用いて返信する場合を示した。しかし、電子メールシステムに限定されず、他の方法を用いて返信するようにしてもよい。
【0145】
さらに、今回は、ファームウェアが分割されて送信された場合にのみ、それぞれの書き換え結果が返信されるものとして説明した。しかし、ファームウェアが分割されずに送信された場合でも、その書き換え結果が返信されるようにしてもよい。この場合は、書き換えの失敗に対して、同じファームウェアを再度送信することができるため、確実にファームウェアの書き換え処理を遂行することが可能となる。
【0146】
なお、ファームウェアが分割されずに一括して送信される場合としては、全ファームウェアデータを1つの添付ファイルとして送信する方法、個々のファームウェアデータを複数の添付ファイルとして1つの電子メールで送信する方法、個々のファームウェアを個別に電子メールに添付して送信する方法などが考えられる。
【0147】
全ファームウェアデータを1つの添付ファイルとして送信する方法としては、例えば次に示すようなものがある。全ファームウェアのデータ(バイナリー)を1つのデータ(バイナリー)とする場合は、データの0番地〜7FFFF番地は制御モジュール1のファームウェアデータ、80000番地〜FFFFF番地は制御モジュール2のファームウェアデータ、・・・・というように、その機種における各制御モジュールのデータの格納アドレスとサイズが予めデータとして記憶されている。このデータが電子メールに添付されてメールサーバへ送信される。
【0148】
プリンタコントローラ21においても各制御モジュールのデータの格納アドレスとサイズの関係がデータとして記憶されている。このため、プリンタコントローラ21は、所定のアドレスにあるファームウェアデータを対応する制御モジュールに送信することで、順次、書き換え処理を行なうことができる。
【0149】
なお、今回は、図1等で示したように、プリンタコントローラと画像形成装置とは別体の装置として説明したが、画像形成装置にプリンタコントローラの機能を内蔵した一体構造であってもよい。この場合、同様に、プリンタコントローラと制御モジュール1は互いに連携をとりながら処理が実行される。また、プリンタコントローラのCPU201によって、CPU101で実施していた制御を実行してもよい。
【0150】
今回示したコンピュータ91、画像形成装置11およびプリンタコントローラ21が行なうファームウェアの通信方法(データ通信方法)は、上述した一連の処理動作を機能させるためのプログラムによって実現されることができる。このデータ通信プログラムは、予め、コンピュータ91、画像形成装置11およびプリンタコントローラ21内のハードディスクにそれぞれインストールされたものであってもよいし、CD−ROM、磁気テープのような取外し可能な記録媒体に記録されたものであってもよい。いずれにせよ、データ通信プログラムはコンピュータ読み取り可能な記録媒体に記録されている。
【0151】
なお、コンピュータ読み取り可能な記録媒体としては、磁気テープやカセットテープなどのテープ系、磁気ディスク(フレキシブルディスク、ハードディスク装置等)や光ディスク(CD−ROM/MO/MD/DVD等)などのディスク系、ICカード(メモリカードを含む)や光カードなどのカード系、あるいはROM、EPROM、EEPROM、フラッシュROMなどの半導体メモリ等の固定的にプログラムを担持する媒体が考えられる。
【0152】
なお、記録媒体に格納される内容としては、プログラムに限定されず、データであってもよい。
【0153】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【図1】本発明の実施の形態におけるファームウェアの送受信方法を実施するためのシステム構成を示した図である。
【図2】画像形成装置11の回路構成を示すブロック図である。
【図3】プリンタコントローラ21の回路構成を示したブロック図である。
【図4】サービスセンター側に設置されたコンピュータ91の回路構成を示すブロック図である。
【図5】サービスセンター側のコンピュータ91のCPU901が行なう処理のメインルーチンを示すフローチャートである。
【図6】図5の画像形成装置の登録処理(ステップS509)において固定記憶装置904に登録されるデータ例を示した図である。
【図7】図5のファームウェア送信処理(ステップS513)の詳細を示したフローチャートである。
【図8】固定記憶装置904に登録されるIDテーブルの例を示した図である。
【図9】コンピュータ91が、書き換え結果についての返信メールを受信した際の処理の流れについて示したフローチャートである。
【図10】分割されたファームウェアを添付した電子メールのメッセージ文の一例を示した図である。
【図11】分割されていないファームウェアを添付した電子メールのメッセージ文の一例を示した図である。
【図12】ファームウェアの書き換え結果についての電子メールのメッセージ文の一例を示した図である。
【図13】画像形成装置11のプリンタコントローラ21のCPU201における処理のメインルーチンを示すフローチャートである。
【図14】図13のファームウェアの読取処理(ステップS1309)の詳細を示したフローチャートである。
【図15】画像形成装置11における基本処理を示すフローチャートである。
【図16】画像形成装置11におけるファームウェア書き換え処理(図15のステップS1509)の詳細を示したフローチャートである。
【図17】サービスセンター側のコンピュータ91、メールサーバ83、33、およびユーザ側の画像形成装置(プリンタ)11の各処理の流れを説明するための図である。
【図18】モジュール単位で行なわれるファームウェアの書き換え処理を示したフローチャートである。
【図19】モジュール単位でファームウェアの書き換えが行なわれる場合の、プリンタコントローラにおけるファームウェアの読取処理(図13のステップS1309)の詳細を示したフローチャートである。
【図20】画像形成装置11における、モジュール単位で行なわれるファームウェアの書き換え処理を示したフローチャートである。
【符号の説明】
11 画像形成装置、21 プリンタコントローラ、32,82 ルータ、33,83 メールサーバ、91 コンピュータ、111,121,131,141,201,901 CPU、112,122,132,142 Flash ROM、118,207 操作パネル、904 固定記憶装置。
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a data communication program, a computer-readable recording medium recording the data communication program, a data communication device, and a data communication method, and more particularly to a data communication program and a data communication program for communicating firmware data via the Internet. The present invention relates to a recorded computer-readable recording medium, a data communication device, and a data communication method.
[0002]
[Prior art]
Conventionally, for example, firmware for controlling the operation of an image forming apparatus has been written in a mask ROM (Read Only Memory). Therefore, when it is necessary to replace the firmware, a method has been adopted in which the mask ROM on the control board in the image forming apparatus is replaced with a mask ROM in which new firmware is written.
[0003]
Replacing the mask ROM is time-consuming and complicated. Therefore, in order to improve workability, a rewritable flash ROM has been used instead of the mask ROM.
[0004]
When replacing the firmware written in the flash ROM, the following method has been used.
[0005]
First, a first method is to use an external storage device such as a memory card. That is, an I / F (interface) with an external storage device such as a memory card is provided in the image forming apparatus, and a memory card storing new firmware is connected to the I / F. Then, new firmware is written from the memory card to the flash ROM. In this method, when rewriting the firmware, remote operation is not possible, and the user must go to the place where the image forming apparatus is actually installed.
[0006]
A second method is to use a public line network. This method has been put to practical use mainly for facsimile machines. That is, firmware is transmitted from a remote device connected to the public line network to the image forming apparatus. Downloading this will rewrite the firmware. In this method, it is not necessary to actually go out as in the first method, but the communication cost is high and the download of the firmware requires a relatively long time.
[0007]
For this reason, recently, along with the spread of the Internet, as a third method, a method of downloading firmware via a public network, which has been performed using a public line network, has been adopted. Using the Internet can reduce communication costs and shorten the time required for downloading firmware.
[0008]
Here, the protocol of communication performed via the Internet includes HTTP (Hyper Text Transfer Protocol) for browsing home pages, FTP (File Transfer Protocol) for file transfer, and SMTP (Simple Mail) for sending e-mail. There are various protocols such as Transfer Protocol (Transfer Protocol). However, a protocol for downloading the firmware of the image forming apparatus from a remote place via the Internet is restricted due to an increase in security awareness regarding communication via the Internet, and any protocol may not be used.
[0009]
That is, a firewall that generally serves as a “defense wall” is provided at a connection port between the Internet and each user in order to cope with unauthorized access to the user's internal system from the Internet. The function of the firewall is to control a communication protocol that can pass between the Internet and the user's internal system. This limits the protocols that can be passed, but usually the email protocol is often set to be passable. For this reason, when transmitting firmware via the Internet, a method of using an electronic mail system is conventionally known.
[0010]
[Problems to be solved by the invention]
However, the third method, that is, the method of transmitting firmware using an electronic mail system has the following problems.
[0011]
That is, the size of the firmware of the recent image forming apparatus has expanded to about 10 Mbytes with the increase in the number of functions and functions. And it tends to increase further in the future.
[0012]
On the other hand, a mail server that provides an e-mail collection and distribution service generally sets a limit on the size of an e-mail that can be received, and this limit size may be set to about 1 Mbyte. Seems to be more.
[0013]
For this reason, it is expected that, when an attempt is made to send firmware of the above-mentioned size by e-mail, the size of the firmware will exceed the limit size, and reception will be refused frequently.
[0014]
For this reason, a method of dividing the firmware into an appropriate size and transmitting the divided firmware can be considered. However, a mail server generally has a limit on the total capacity of messages held for each mail account, in addition to the capacity of individual messages when receiving messages. Therefore, even if the firmware is divided and attached to a plurality of messages, if all of them are transmitted at once, the size exceeds the limit size provided for each mail account, and there is a high possibility that the transmission cannot be performed properly.
[0015]
Some mail servers do not limit the size of receivable e-mails or the total capacity of messages for each mail account. For such a mail server, if the method of dividing the firmware and transmitting them individually is adopted, the time required to rewrite the entire firmware becomes longer, which is inefficient.
[0016]
The present invention has been conceived in view of such circumstances, and one of its objects is to consider the limited size of a mail server to be used when transmitting / receiving firmware using an e-mail system. An object of the present invention is to provide a data communication program capable of appropriately transmitting and receiving firmware, a computer-readable recording medium storing the program, a data communication device, and a data communication method.
[0017]
[Means for Solving the Problems]
In order to achieve the above object, according to an aspect of the present invention, a data communication program includes: a quota obtaining step of obtaining a quota of data provided in a mail server to be used; A determining step of determining whether or not to split the target firmware; a first transmitting step of attaching the firmware to an e-mail when the determining step determines that the firmware is not to be split; If so, a dividing step of dividing the firmware into a plurality of pieces based on the acquired limited capacity, and a second step of attaching one of the divided firmware pieces to an e-mail and transmitting the attached firmware. Sending step and sending from the other party who acquired the 1 firmware attached to the e-mail An acquisition step of acquiring information on rewriting result of coming firmware, obtained rewriting resultsIndicates success, In multiple divided firmwareShould send nextAnd a third transmitting step of transmitting the first firmware attached to the electronic mail.
[0018]
According to the present invention, it is determined whether to divide the firmware to be transmitted according to the limited data capacity provided in the mail server to be used. If it is determined that the firmware is not to be divided, the target firmware is not divided and is collectively attached to an e-mail and transmitted. As described above, since there is no division when the mail server does not have the limited capacity, the rewriting process is efficiently performed even at the transmission and the transmission destination of the firmware.
[0019]
Note that dividing the firmware includes not only dividing a single firmware, but also dividing a plurality of firmware to be transmitted into a plurality of firmware according to predetermined conditions.
[0020]
If it is determined that the firmware is to be divided, the firmware is appropriately divided based on the limited capacity of the mail server, and one of the firmware is attached to an e-mail and transmitted. Appropriate splitting will result in attaching a large amount of firmware to an e-mail, thereby avoiding the situation where individual e-mails set on the mail server are exceeded and rejecting e-mails. Nor.
[0021]
In addition, it obtains information on the firmware rewrite result sent from the other party who has obtained the e-mail,If the rewrite result indicates success, In multiple divided firmwareShould send nextThe e-mail attached with the firmware 1 is transmitted. Since the next e-mail is transmitted after the firmware is downloaded from the mail server, it is possible to avoid a situation where the data capacity limit provided for each mail account of the mail server is exceeded.
[0022]
Therefore, when sending and receiving firmware using the e-mail system, it is determined whether to split the firmware by considering the limit size of the mail server to be used, and the firmware is more appropriately downloaded.SubmitIt is possible to provide a data communication program that can perform the program.
[0023]
Preferably, the determining step determines that the firmware to be transmitted is divided when the firmware to be transmitted is larger than the acquired limited capacity, and determines that the firmware is not divided when the firmware to be transmitted is equal to or less than the acquired limited capacity.
[0024]
According to this, when the data capacity of the firmware to be transmitted is larger than the quota set in the mail server, the firmware is divided so that the individual capacities are smaller than that. Firmware is sent collectively. Therefore, there is no inconvenience such as rejection of e-mail due to exceeding the capacity limit provided in the mail server, and the firmware is transmitted in an optimal state..
[0028]
According to another aspect of the present invention, a computer-readable recording medium records the data communication program according to any of the above.
[0029]
According to the present invention, when transmitting / receiving firmware using the e-mail system, it is determined whether or not to split the firmware by considering the limit size of the mail server to be used.SubmitIt is possible to provide a data communication device that can perform the communication.
[0030]
According to still another aspect of the present invention, a data communication device includes: a limited capacity obtaining unit configured to obtain a limited capacity of data provided in a mail server to be used; and a firmware to be transmitted based on the obtained limited capacity. Determining means for determining whether or not to divide, first transmitting means for attaching firmware to an e-mail when the determining means determines not to divide, and determining to divide by the determining means Dividing means for dividing the firmware into a plurality of pieces based on the acquired limited capacity; second transmitting means for attaching one of the divided firmware pieces to an e-mail to be transmitted; To acquire information about the firmware rewrite result sent from the other party that acquired the one firmware attached to Means, obtained rewriting resultsIndicates success, In multiple divided firmwareShould send nextAnd third transmission means for transmitting the first firmware attached to the electronic mail.
[0031]
According to the present invention, it is determined whether to divide the firmware to be transmitted according to the limited data capacity provided in the mail server to be used. If it is determined that the firmware is not to be divided, the target firmware is not divided and is collectively attached to an e-mail and transmitted. As described above, since there is no division when the mail server does not have the limited capacity, the rewriting process is efficiently performed even at the transmission and the transmission destination of the firmware.
[0032]
If it is determined that the firmware is to be divided, the firmware is appropriately divided based on the limited capacity of the mail server, and one of the firmware is attached to an e-mail and transmitted. Appropriate splitting will result in attaching a large amount of firmware to an e-mail, thereby avoiding the situation where individual e-mails set on the mail server are exceeded and rejecting e-mails. Nor.
[0033]
It also obtains information about the firmware rewrite result sent from the other party who has received the e-mail,If the rewrite result indicates success, In multiple divided firmwareShould send nextThe e-mail attached with the firmware 1 is transmitted. Since the next e-mail is transmitted after the firmware is downloaded from the mail server, it is possible to avoid a situation where the data capacity limit provided for each mail account of the mail server is exceeded.
[0034]
Therefore, using the e-mail system to update the firmwareSubmitWhen performing the firmware, it is determined whether to split the firmware by considering the limit size of the mail server to be used, and the firmware is more appropriately downloaded.SubmitIt is possible to provide a data communication device that can perform the communication.
[0038]
According to yet another aspect of the present invention, a data communication method includes: a quota obtaining step of obtaining a quota of data provided in a mail server to be used; and a firmware to be transmitted based on the obtained quota. A determining step of determining whether to divide, a first transmitting step of attaching the firmware to an e-mail when the determining step determines not to split, and a determining step of dividing by the determining step A dividing step of dividing the firmware into a plurality of pieces based on the acquired limited capacity, a second transmitting step of attaching one of the divided firmware pieces to an e-mail and transmitting the same, and an e-mail Rewriting the firmware sent from the other party that acquired the 1 firmware attached to the An acquisition step of acquiring information about the result, the obtained rewriting resultsIndicates success, In multiple divided firmwareShould send nextA third transmission step of transmitting the first firmware attached to an electronic mail.
[0039]
According to the present invention, when transmitting / receiving firmware using the e-mail system, it is determined whether or not to split the firmware by considering the limit size of the mail server to be used.SubmitIt is possible to provide a data communication method that can perform the data communication.
[0040]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
[0041]
Here, a case where the firmware of the image forming apparatus is rewritten using an electronic mail system will be described as an example. FIG. 1 is a diagram showing a system configuration for implementing a firmware transmission / reception method according to an embodiment of the present invention. Referring to FIG. 1, the present system includes a user-side apparatus including an image forming apparatus, a service center-side apparatus that transmits firmware to the image forming apparatus, and the Internet connecting these apparatuses.
[0042]
In this system, a plurality of user devices can be connected to one service center device. However, here, for simplicity of description, an example is shown in which one (set) of user-side devices is connected.
[0043]
The devices on the user side include the image forming apparatus 11 and the printer controller 21 connected thereto. The printer controller 21 is connected to a firewall 31 via a LAN and to the Internet via a router 32. Further, a mail server 33 that provides a service of collecting and distributing e-mail is connected to the LAN.
[0044]
On the service center side, a computer 91 for transmitting firmware is installed. The computer 91 is connected to the firewall 81 via the LAN and to the Internet via the router 82 to communicate with the printer controller 21 on the user side. The LAN is also connected to a mail server 83 that performs a service of collecting and distributing electronic mail.
[0045]
Although not shown, a plurality of mail servers also intervene on the Internet between the router 82 and the router 32, and the e-mail is transmitted via these unspecified plurality of mail servers.
[0046]
Here, the operation of rewriting the firmware will be briefly described. First, new firmware is attached to an e-mail from the computer 91 on the service center side and transmitted to the image forming apparatus 11 on the user side. At this time, the attached firmware is appropriately divided. The electronic mail with the firmware is stored in the mailbox of the mail server 33 via the LAN on the service center side, the mail server 83, the Internet, and the LAN on the user side.
[0047]
The printer controller 21 of the image forming apparatus 11 on the user side downloads the electronic mail from the mail server 33. Then, the firmware is extracted from the e-mail, and the new firmware is written in the flash ROM to be rewritten in the image forming apparatus 11. Then, the rewriting result is transmitted to the computer 91 on the service center side.
[0048]
If the rewriting is successful, the computer 91 receiving the result attaches another one of the divided firmware to an e-mail and transmits it to the image forming apparatus 11. If the rewriting fails, the same firmware is transmitted again.
[0049]
Next, each device shown in FIG. 1 will be described in detail.
FIG. 2 is a block diagram illustrating a circuit configuration of the image forming apparatus 11. Referring to FIG. 1, image forming apparatus 11 is an apparatus having a multi-CPU (Central Processing Unit) configuration for scanning a document image and forming a copy image on paper. Therefore, the control module includes four control modules from the control module 1 to the control module 4 corresponding to each CPU.
[0050]
The control module 1 includes a CPU 111 that controls the overall control of the image forming apparatus 11, a rewritable Flash ROM 112 storing its firmware, a working S-RAM 113, and a battery-backed NV-RAM 114 that stores various setting values. A serial I / F 115 for transmitting and receiving various control data to and from the control module 2, a serial I / F 116 for transmitting and receiving various control data to and from the control module 3, and a serial I / F 117 for transmitting and receiving various data to and from the printer controller 2. And an operation panel 118 including various keys and a display unit.
[0051]
The control module 2 includes a CPU 121 for controlling the printing process of the image forming apparatus 11, a rewritable Flash ROM 122 storing its firmware, a working S-RAM 123, and a battery-backed NV-ROM for storing various setting values. RAM 124, serial I / F 125 for transmitting and receiving various control data to and from control module 1, serial I / F 126 for transmitting and receiving various control data to and from control module 4, and print load control I / F for controlling the load of image forming processing. O, GA127.
[0052]
The control module 3 includes a CPU 131 for controlling the reading process of the original image of the image forming apparatus 11, a rewritable Flash ROM 132 storing the firmware thereof, a working S-RAM 133, and a battery backup for storing various setting values. An NV-RAM 134, a serial I / F 135 for transmitting and receiving various control data to and from the control module 1, and an IR load control I / O and GA 136 for controlling the load of the original image reading process.
[0053]
The control module 4 includes a CPU 141 for controlling image quality correction for the image forming apparatus 11, a rewritable Flash ROM 142 storing firmware thereof, a work S-RAM 143, and a battery-backed NV for storing various set values. -A RAM 144, a serial I / F 145 for transmitting and receiving various control data to and from the control module 2, and an image quality correction control GA 146 for performing image quality correction control.
[0054]
These control modules 1 to 4 execute communication via a serial I / F. Normally, control commands and control information are transmitted and received between CPUs of each module, and when firmware is rewritten, firmware data is transmitted. The communication via the serial I / F has a configuration according to the communication data size of control commands and control information that are normally used. Therefore, transmission time is required for large-capacity data such as firmware. Depending on the size, it may take longer than sending an e-mail from the center PC 91 to the image forming apparatus 11.
[0055]
FIG. 3 is a block diagram showing a circuit configuration of the printer controller 21. Referring to this figure, printer controller 21 includes CPU 201, EP-ROM 202 in which a control program is stored, work S-RAM 203, and NV-RAM (non-volatile memory) 204 that stores various set values. A serial I / F 205 for transmitting and receiving various data to and from the image forming apparatus 11, a NIC (network interface card) 206 for transmitting and receiving various data via the LAN, and an operation panel for performing various operation settings 207.
[0056]
The NV-RAM 204 contains, besides its own IP address, the IP address of a mail server required for the printer controller 21 to download an e-mail message addressed to itself (the image forming apparatus 11) from the mail server 33. The e-mail account name and password are stored.
[0057]
FIG. 4 is a block diagram showing a circuit configuration of the computer 91 installed on the service center side. Referring to this figure, a computer 91 stores a CPU 901 that controls the entire apparatus, a ROM 902 that stores programs and the like, a RAM 903 that is a temporary storage area for a work area and various data, and various information and the like. And a display controller 905 for controlling the display 92, an input controller 906 for controlling the keyboard 93 and the mouse 94, and an NIC 907 for transmitting and receiving various data to and from the outside via a LAN. I have.
[0058]
The fixed storage device 904 stores registration information of the image forming apparatus including the model of the image forming apparatus 11, an e-mail address, and limited capacity information provided in a mail server. Also, firmware corresponding to the model of the image forming apparatus 11 is stored.
[0059]
The firmware is stored in a predetermined different folder / directory in the fixed storage device 904 in advance by the service center operator according to the model and its control module.
[0060]
Next, an operation when the firmware of the image forming apparatus is rewritten from a remote location in the system shown in FIG. 1 will be described.
[0061]
First, processing in the CPU 901 mounted on the computer 91 on the service center side will be described with reference to FIGS.
[0062]
FIG. 5 is a flowchart showing a main routine of a process performed by the CPU 901 of the computer 91 on the service center side. The CPU 901 starts processing when the power is turned on, and first executes general initialization processing performed by a computer device, such as memory initialization and parameter initialization (step S501). Thereafter, for example, in response to an input operation of each function key (F1 to F3) on the keyboard 93, a communication setting process (step S505), an image forming device registration process (step S509), or a firmware transmission process (step S513) is performed. Do.
[0063]
If the F1 key has been input ("YES" in step S503), communication setting processing is performed in step S505. That is, here, the parameters necessary for the computer 91 to transmit the e-mail are set. For example, the IP address of the mail server 83 connected to the LAN on the service center side, the e-mail address of the computer 91, and the like are input and stored in the fixed storage device 904, respectively. The e-mail address of the computer 91 is set in the From field when the computer 91 transmits an e-mail with firmware attached to the printer controller 21.
[0064]
If the F2 key has been input ("YES" in step S507), a registration process for the image forming apparatus is performed in step S509. That is, information such as a model name of each image forming apparatus, an e-mail address, limited capacity information provided in a corresponding mail server, and other information such as a user name, an address, and a telephone number of each image forming apparatus are input as necessary. And stored in the fixed storage device 904.
[0065]
If the F3 key has been input ("YES" in step S511), a firmware transmission process is performed in step S513. That is, the firmware of the model to be rewritten is appropriately divided, and one of the firmware is attached to an electronic mail and transmitted to the image forming apparatus 11.
[0066]
FIG. 6 is a diagram illustrating an example of data registered in the fixed storage device 904 in the registration processing (step S509) of the image forming apparatus in FIG. Before rewriting the firmware of the image forming apparatus, the operator of the service center inputs information about the image forming apparatus to the computer 91 using the keyboard 93, the mouse 94, and the like in advance.
[0067]
As shown in FIG. 6, the information on the image forming apparatus includes a model name of the image forming apparatus, an e-mail address, and information on a quota of a mail server to be used. As other information, in order to easily identify the image forming apparatus, for example, user information such as the name, address, and telephone number of the user of the image forming apparatus may be included.
[0068]
Here, "1M" or "2M" as the limited capacity information of the mail server means that the capacity of the receivable e-mail of the mail server or the upper limit capacity provided for each mail account is smaller. Capacity. In addition, "NULL" means that the mail server is not limited.
[0069]
Information on such an image forming apparatus is input to the computer 91, compiled in a table format as shown in FIG. In addition, this information summarized in a table format for convenience of explanation is hereinafter referred to as “registration information table”.
[0070]
Next, a description will be given of a flow of processing in which, when it is necessary to rewrite the firmware of the image forming apparatus, an e-mail message with the firmware attached thereto is created by the computer 91 and transmitted to the image forming apparatus 11. FIG. 7 is a flowchart showing details of the firmware transmission process (step S513) of FIG. 5, and is executed by the CPU 901 of the computer 91 described above.
[0071]
Referring to this figure, first, in step S701, the operator of the service center uses the keyboard 93, mouse 94, and the like to specify the model of the image forming apparatus whose firmware is to be rewritten and its control module using the keyboard 93, mouse 94, and the like. Done. The model and the control module are specified because the firmware of the image forming apparatus generally differs depending on the model and the control module.
[0072]
Next, in step S703, the registration information table (FIG. 6) stored in the fixed storage device 904 is read, and in step S705, the number of registrations n for the designated model of the image forming apparatus is counted. Then, in step S707, the IDs of the designated models are sequentially stored in an ID table as shown in FIG. The ID table is a table used to check the capacity limit for each designated model and to appropriately divide the firmware.
[0073]
When the storage in the ID table is completed, in step S709, 1 is set to the loop counter i, and in steps S711 to S725, the firmware of the image forming apparatus of the designated model registered in the ID table of FIG. Appropriate division or the like is performed, and an electronic mail transmission process is performed.
[0074]
That is, if the loop counter i is equal to or smaller than the registered number n of the ID table in step S711 (“YES” in step S711), in step S713, the ID stored in the i-th record from the top of the ID table is changed. The corresponding limited capacity information of the registration information table of FIG. 6 is obtained.
[0075]
Then, in step S715, the firmware capacity of the designated model is compared with the acquired limited capacity, and if the firmware capacity is large (“Yes” in step S715), the firmware is divided.
[0076]
For example, in the example of FIG. 8, in the case of the firmware of the model whose ID is 1, if the capacity exceeds the limited capacity of 1M, the firmware is divided into a plurality of firmwares each of which has a smaller capacity. . In this example, for example, a 4M firmware is divided into four 1M units.
[0077]
In step S721, the firmware is divided so as to be within the limited capacity of the mail server, and the number of divisions is stored in the ID table. Then, an e-mail message is created using the divided firmware, and the created e-mail message is transmitted to the image forming apparatus 11 in step S723. That is, after the connection with the mail server 83 is established based on the IP address of the mail server 83 set in step S505 in FIG. 5, the mail server 83 is in accordance with the SMTP protocol (RFC821), which is the Internet standard for electronic mail transmission. Is sent an e-mail message.
[0078]
On the other hand, if the capacity of the firmware of the designated model is equal to or smaller than the mail server's limited capacity ("NO" in step S715), the firmware is not divided. For example, in the example of FIG. 8, for the firmware of the model with the ID of 21, the capacity does not exceed the limit capacity, or a "NULL" mail server without the limit capacity is used. Therefore, the firmware is not divided.
[0079]
Therefore, in step S717, an e-mail message is created without dividing the firmware. In step S719, the created e-mail message is transmitted to the image forming apparatus 11.
[0080]
When the e-mail is transmitted, in step S725, the loop counter i is incremented by one, and the process returns to step S711 again. In this way, the processing from step S711 to step S725 is performed on all the image forming apparatuses registered in the ID table.
[0081]
When the processing for all the devices registered in the ID table ends (“NO” in step S711), the transmission processing of the firmware ends.
[0082]
According to the above processing, even when the firmware capacity of the designated model is larger than the mail server's limited capacity, the firmware is appropriately divided and transmitted, so that it is possible to avoid a situation in which transmission cannot be performed. Becomes possible.
[0083]
If the mail server has no capacity limit, or if the capacity of the firmware is less than the capacity limit of the mail server, the firmware is transmitted without being divided. Therefore, it is possible to perform more efficient firmware transmission processing in consideration of the limited capacity of the mail server.
[0084]
When the firmware is divided and transmitted, the computer 91 on the service center side sends an e-mail with the firmware attached to the image forming apparatus 11 and then sends a reply e-mail from the image forming apparatus 11 regarding the result of rewriting the firmware. Waiting for the transmission, the next e-mail is transmitted.
[0085]
FIG. 9 is a flowchart showing the flow of processing when the computer 91 receives a reply mail about the rewriting result. Referring to this figure, first, in step S901, the computer 91 checks whether or not an e-mail indicating rewriting completion has arrived from the image forming apparatus 11 that has rewritten the firmware to the mail server 83. Whether or not the rewriting has been completed is determined based on whether or not there is a description about firmware in the Subject field.
[0086]
If the rewriting mail has been received (“YES” in step S901), the result of the body of the e-mail message is acquired in step S903. As a result, it is possible to determine whether or not the firmware has been successfully rewritten.
[0087]
If the rewriting has been completed normally (“YES” in step S905), in step S907, an e-mail message to which the next divided firmware is attached is transmitted from the division number, division number, model, and module indicated in the subject. You. On the other hand, if the rewriting has not been completed normally (“NO” in step S905), in step S909, the firmware indicated in the subject is transmitted again.
[0088]
Then, in step S911, the computer 91 waits until a predetermined time elapses, and when the predetermined time elapses, returns to the process of step S901 and checks whether a firmware rewrite completion mail has arrived.
[0089]
According to the above processing, the firmware exceeding the capacity limit of the mail server is appropriately divided into a plurality of pieces, and each piece is attached to the e-mail when it is transmitted. Then, after receiving the previously transmitted rewrite mail for the firmware, the e-mail with the next firmware attached is transmitted. For this reason, data transmission / reception is not performed beyond the capacity limit of the mail server.
[0090]
Next, the e-mail attached with the firmware will be described in detail with reference to FIGS. FIG. 10 is a diagram showing an example of an e-mail message to which the divided firmware is attached, and FIG. 11 is a diagram showing an example of an e-mail message to which the undivided firmware is attached. .
[0091]
Referring to FIGS. 10 and 11, according to the Internet standard (RFC822) for e-mail messages, an e-mail message field is roughly divided into a header part and a body part, and both are distinguished by NULL lines. Is done.
[0092]
The header section is composed of a plurality of header fields defined by the Internet standard (RFC822), and this header field is composed of a field name from the beginning of the line to ":" and a subsequent field body.
[0093]
By the way, although the firmware of the image forming apparatus is binary data, RFC822 prohibits writing binary data directly in an e-mail message. For this reason, the firmware of the image forming apparatus is attached as a file to the body part of the message by using the MIME (Multipurpose Internet Mail Extensions) extension regulation specified by RFC2045, 2046, and 2047.
[0094]
In the header part of the message, in addition to fields defined by RFC822 such as “From”, “To”, “Date”, and “Subject”, “MIME-Version” and “Content-Type” accompanying the MIME extension specification are included. Each field is added.
[0095]
In the field body of the Subject field, a character string in which the name of the model specified by the operator and the number of the target control module of the attached firmware are connected by underbars is described. For example, when the model name is “model1” and the number of the target control module is “1”, a character string “model1 # module1” is described. If the attached firmware data is divided, as shown in FIG. 10, the number of divisions and the number indicating the number of the data are described last. For example, if the firmware is the first of four divisions, the character (1/4) is described. If the attached firmware data is not divided, no division number or the like is described at the end as shown in FIG.
[0096]
In the field body of the Content-Type field, “Multipart / mixed” is specified so that the message body part is set to be able to be divided into a plurality of parts, and then the “Boundary” parameter representing the boundary of each part is set. An appropriate US-ASCII character string ("5 kvrZF / hrA" after the character string in this figure) is specified.
[0097]
In the body part of the message, a character string in which “−−” is added before the value of the boundary parameter (“5 kvrZF / hrA” in this drawing) of the Content-Type field of the header part is described, and the beginning of one part Is specified. Below this, a “Content-Type” field is described, and “application / octet-stream” indicating that the file attached to the field body is binary data is specified.
[0098]
Below this, a “Content-Transfer-Encoding” field is described, and “base64” is specified in the field body. As described above, direct description of binary data in an e-mail message is prohibited by RFC 822, so the binary data must be converted to US-ASCII characters. In the MIME extension specification, a plurality of methods are defined as the conversion method, and one of them is the Base64 method.
[0099]
Below the above two fields, the binary data of the firmware is converted into US-ASCII characters by Base64 method and added. Finally, in order to indicate the end of all the parts of the body part, “−−” is added before and after the value of the Boundary parameter (“5 kvrZF / hrA” in this figure) of the Content-Type field of the header part. The added character string is described.
[0100]
Next, an e-mail message when the image forming apparatus that has received the firmware rewrites the firmware in the Flash-ROM to be rewritten and returns the result by e-mail will be briefly described. FIG. 12 is a diagram showing an example of an electronic mail message about a firmware rewrite result. Referring to FIG. 12, according to the Internet standard (RFC822) for e-mail messages, the message field of the e-mail is divided into a header part and a body part with a NULL line in between, as in FIGS. 10 and 11. is there.
[0101]
In the “Subject” field, the model name and the module number are described, and further, the number of divisions and the number of the received firmware are described. Then, either "OK" or "NG" indicating whether the rewriting succeeded or failed is written in the "Result" field of the body part.
[0102]
Therefore, the service center that has received the e-mail about the rewriting result can know whether the rewriting result has succeeded or failed by acquiring the content of “Result”. Then, by acquiring the content of “Subject”, it is possible to know which firmware should be attached next to send the e-mail together with the content of “Result”.
[0103]
Next, processing on the user side will be described. FIG. 13 is a flowchart illustrating a main routine of processing in the CPU 201 of the printer controller 21 of the image forming apparatus 11. Referring to this figure, CPU 201 starts processing when power is turned on, and first performs general initialization processing performed by a computer device, such as memory initialization and parameter initialization (step S1301). Thereafter, as necessary, a communication setting process (step S1305) and a firmware reading process (step S1309) are performed.
[0104]
For example, when the “setting” key on operation panel 207 is input by the user (“YES” in step S1303), in step S1305, parameters necessary for transmitting and receiving an e-mail are set. That is, here, the IP address of the mail server 33 connected to the user's LAN, the name and password of the e-mail account of the image forming apparatus 11 on the mail server 33, the e-mail address of the image forming apparatus 11, A time interval for periodically checking whether a new e-mail addressed to the device 11 has arrived or the like is input and stored in the NV-RAM 204, respectively.
[0105]
Then, in step S1307, it is determined whether the confirmation interval has elapsed. That is, it is determined here whether the time interval set in step S1305 (time interval for checking whether a new e-mail message addressed to image forming apparatus 11 has arrived) has elapsed.
[0106]
If the time interval has elapsed (“YES” in step S1307), in step S1309, the CPU 201 goes to the mail server 33 to check whether a new e-mail message has arrived, and downloads the necessary e-mail. Perform processing. If the confirmation interval has not elapsed ("NO" in step S1307), the process returns to, for example, step S1303, and the above processing is repeated until the confirmation interval has elapsed.
[0107]
Next, a process will be described in which the printer controller 21 checks whether a new message addressed to the image forming apparatus 11 has arrived at the mail server 33 and downloads it if it has arrived.
[0108]
FIG. 14 is a flowchart showing details of the firmware reading process (step S1309) of FIG. Referring to this figure, first, in step S1401, a TCP connection with mail server 33 is established based on the IP address of mail server 33 set in step S1305 in FIG. It is checked whether a new message has arrived (step S1403).
[0109]
The POP3 (Post Office Protocol Version 3) protocol is used in this confirmation processing and in the processing described below in which a new message addressed to the image forming apparatus 11 arrives at the mail server 33 and is downloaded. Here, even if a plurality of new messages addressed to the image forming apparatus 11 have arrived at the mail server 33, only one message is downloaded by one TCP connection.
[0110]
As a result of checking the new message, if a new message addressed to the image forming apparatus 11 has arrived at the mail server 33 (“YES” in step S1403), the message is downloaded from the mail server 33 in step S1405. Then, in step S1407, it is determined whether or not the electronic mail has the firmware attached. Whether or not the firmware is attached is determined, for example, based on whether or not the value of the field body of the Content-Description field in the header of the message is “Firmware”.
[0111]
If the firmware is attached (“YES” in step S1407), in step S1409, the US-ASCII character of the firmware is extracted from the message, and in step S1411, the extracted US-ASCII character is extracted. Is converted back to binary data by inverse Base64 conversion.
[0112]
Next, in step S1413, the target model of the firmware and the number of the target control module are read from the value of the Subject field in the header of the message. Further, a checksum of the binary data is calculated. When firmware is transmitted collectively, a checksum is calculated for each module. The firmware, the target control module number, and the checksum value are temporarily stored in the S-RAM 203. Then, in step S1415, the firmware and the module number that have been returned to the binary data are transferred to the image forming apparatus 11 via the serial I / F 205.
[0113]
Next, in step S1417, the original of the message downloaded from the mail server 33 is deleted. In step S1419, the process waits until a firmware rewrite completion notification is received from the image forming apparatus 11. When the rewriting end notification is received (“YES” in step S1419), in step S1421, the checksum value sent from image forming apparatus 11 and the checksum value temporarily stored in S-RAM 203 are compared. Are compared and the result is written as OK or NG in the email message body. Then, in step S1423, an e-mail (end mail) describing the result is transmitted to the computer 91 on the service center side.
[0114]
If no firmware is attached to the downloaded message (“NO” in step S1407), the process performed when a message other than the firmware rewriting process of the image forming apparatus is received in step S1425 is performed normally. Be executed.
[0115]
Thus, the message from the mail server 33 is downloaded in the printer controller 21 of the image forming apparatus 11, and the binary data of the firmware is transmitted to the image forming apparatus 11. Then, in response to the rewriting result from the image forming apparatus, a reply is sent to the computer 91 on the service center side as an e-mail indicating whether the rewriting was successful.
[0116]
Next, processing performed in the image forming apparatus 11 will be described. FIG. 15 is a flowchart showing a basic process in the image forming apparatus 11, which is executed by the CPU 101 in the image forming apparatus 11. The image forming apparatus 11 starts processing when the power is turned on or the like. First, each control module performs initial settings such as clearing of a memory and setting of a standard mode (step S1501). Next, until the printer controller 21 notifies the reception of the firmware, the input receiving process (step S1503) and the copy control process (step S1505) are repeatedly executed.
[0117]
In step S1503, reception of various input signals is performed collectively. Here, the input signal is, for example, an input signal from a key switch group on the operation panel 118 of the image forming apparatus 11 or various sensor groups in the apparatus, a print job transmitted from the printer controller 21, a firmware reception notification, and the like. It is.
[0118]
In step S1505, copy control processing, that is, processing necessary for the operation of image forming apparatus 11 is performed. For example, control of various operating units such as paper feed control, scanning control, photosensitive drum control, and development machine control, or processing in accordance with a print job from the printer controller 21 and the like.
[0119]
When the firmware reception notification is received from the printer controller 21 (“YES” in step S1507), in step S1509, the firmware is rewritten. When the firmware rewriting process is completed, the process returns to step S1503, and the processes of step S1503 and step S1505 are repeated until the reception of the firmware is notified again.
[0120]
Next, a process of rewriting the firmware of the image forming apparatus 11 will be described. First, the firmware and the target control module number transmitted by the printer controller 21 via the serial I / F 205 are received by the CPU 11 via the serial I / F 117 of the image forming apparatus 11. When the CPU 111 receives the firmware in this way, the Flash ROM of the target control module of the received firmware is rewritten according to the following process.
[0121]
FIG. 16 is a flowchart showing details of the firmware rewriting process (step S1509 in FIG. 15) in the image forming apparatus 11, which is executed by the CPU 101. Referring to this figure, in steps S1601, S1605, and S1609, it is first determined which of the control modules 1 to 4 the received firmware is.
[0122]
If it is determined that the firmware is for the control module 1 (“YES” in step S1601), in step S1603, the data of the divided part is written to the corresponding part of the Flash ROM 112. Upon completion of the partial writing to the Flash ROM 112, the process proceeds to step S1615.
[0123]
If it is determined that the received firmware is the firmware of the control module 2 (“YES” in step S1605), the firmware is transferred from the CPU 111 to the CPU 121 of the control module 2, and the firmware is written to the Flash ROM 122 in step S1607. It is. Upon completion of the writing to the Flash ROM 122, the process proceeds to step S1615.
[0124]
When it is determined that the received firmware is the firmware of the control module 3 (“YES” in step S1609), the firmware is transferred from the CPU 111 to the CPU 131 of the control module 3, and in step S1611, the firmware is transferred to the flash ROM 132. Written. When the writing to the Flash ROM 132 is completed, the process proceeds to step S1615.
[0125]
If it is determined that the received firmware is the firmware of the control module 4 (“NO” in step S1609), the firmware is transferred from the CPU 111 to the CPU 141 of the control module 4 via the CPU 121, and in step S1613, Is written to the Flash ROM 142. Upon completion of the writing to the Flash ROM 142, the process proceeds to step S1615.
[0126]
In step S1615, the contents of the rewritten portion of the target Flash ROM are read, and the checksum is calculated. Then, in step S1617, the calculated checksum value is transmitted to the printer controller 21 via the serial I / F 117, and the firmware rewriting process ends.
[0127]
The flow of each process of the computer 91 on the service center side, the mail servers 83 and 33, and the image forming apparatus (printer) 11 on the user side described above will be briefly described in chronological order with reference to FIG. In FIG. 17, the computer 91, the mail servers 83 and 33, and the image forming apparatus 11 are shown in order from the left, and it is assumed that the time axis is directed from top to bottom.
[0128]
Referring to the figure, first, the firmware of division number 1 of module 1 is transmitted to image forming apparatus 11 from computer 91 on the center side (1). The image forming apparatus 11 checks whether new mail has arrived at the mail server 33 at regular intervals (dotted arrow). If it has arrived, the e-mail message is downloaded to the image forming apparatus 11 (2), and the corresponding part of the firmware is rewritten (3).
[0129]
When the rewriting is completed, the result is returned as an e-mail to the computer 91 (4). In response to this (5), the computer 91 knows that it is possible to transmit a large-capacity e-mail again. Then, the divided firmware to be sent next time is determined, and the firmware data of the next division number is attached to the e-mail and transmitted to the image forming apparatus 11 according to the contents (6).
[0130]
When the image forming apparatus 11 knows the presence of new mail addressed to itself to the mail server 33 again, it downloads it (7). Then, the firmware is rewritten (8), and the result is transmitted to the computer 91 as an e-mail (9). The computer 91 receives this message (10) and knows again that the e-mail can be transmitted.
[0131]
As described above, according to the data communication method (firmware communication method) in the present embodiment, it is possible to appropriately perform data communication even when the capacity of the firmware is large and exceeds the limit capacity of the mail server. Become.
[0132]
That is, the firmware that has exceeded the limit is appropriately divided and attached to the e-mail. The divided e-mails with firmware are sequentially transmitted after waiting for a rewrite completion notification from the image forming apparatus that is the transmission destination. For this reason, it is possible to avoid a situation in which the divided firmware is transmitted at the same time and cannot be transmitted due to an overcapacity provided in each mail account of the mail server.
[0133]
In this case, the case where the firmware is divided based on the limited capacity of the mail server, and each of the firmware is sequentially attached to an e-mail and transmitted is shown. Each time an e-mail was received, the firmware was rewritten in the image forming apparatus. Therefore, as shown in FIG. 16, the divided firmware is usually smaller than each module unit, and the corresponding part of the firmware is rewritten each time. However, other than such a method, rewriting may be performed in module units. Hereinafter, a case in which the firmware rewriting process is performed on a module basis will be described with reference to FIGS.
[0134]
FIG. 18 is a flowchart showing a firmware rewriting process performed on a module basis. This figure is almost the same as the flowchart showing the details of the firmware transmission processing (step S513) of FIG. 5 shown in FIG. However, the difference is that the process of step S1823 is performed instead of step S723 of FIG.
[0135]
That is, in FIG. 7, one appropriately divided firmware is attached to the electronic mail and transmitted to the image forming apparatus. However, in this case, in order to rewrite the firmware in module units, not only one divided firmware but also a plurality of divided firmwares corresponding to one module are sequentially transmitted.
[0136]
Therefore, the processing of the image forming apparatus (printer controller) on the user side that receives the plurality of divided firmware corresponding to this one module is slightly different from that shown in FIG.
[0137]
FIG. 19 is a flowchart showing details of the firmware reading process (step S1309 in FIG. 13) in the printer controller when the firmware is rewritten in module units.
[0138]
In this figure, before transmitting the firmware to the image forming apparatus in step S1415, it waits until all the divided firmware corresponding to one module has been transmitted (step S1912). If all of them have been received, a checksum is calculated as one module (step S1917), and the firmware is transmitted to the image forming apparatus together with this value (step S1415).
[0139]
Finally, a description will be given of the firmware rewriting process in the image forming apparatus 11 that has received the firmware data transmitted in module units as described above. FIG. 20 is a flowchart illustrating a firmware rewriting process performed in units of modules in the image forming apparatus 11. Here, as in the case of FIG. 16, first, it is determined which module the transmitted firmware corresponds to (steps S1601, S1605, and S1609).
[0140]
Then, according to the determination result, the firmware of the Flash ROM of the corresponding module is rewritten (steps S2003, S2007, S2011, S2013). Therefore, in the calculation of the checksum in step S1615, the checksum for the firmware in module units is obtained. Then, in step S1421 in FIG. 19, the checksum calculated for each module is compared, and it is determined whether or not the firmware has been successfully rewritten.
[0141]
As described above, by performing the firmware rewriting at once for each module, the total time required from the start to the end of the firmware rewriting for one module is reduced. In addition, there is no need to manage which part of the Flash ROM is to be rewritten, and the processing is simplified.
[0142]
It should be noted that even when the image forming apparatus is composed of a plurality of control modules and the transfer / transmission of the firmware between the respective control modules requires a relatively long time, the result of writing the firmware from the image forming apparatus to the firmware transmission source can be transmitted. After the notification, the next firmware is attached to the e-mail and transmitted, so that the firmware can be transmitted in accordance with the operation of the image forming apparatus.
[0143]
This time, the image forming apparatus has been described as an example of the data communication apparatus having the firmware to be rewritten, but the present invention is not limited to this. Therefore, the present invention can be applied to any device having a communication function, such as a hub or a router.
[0144]
Also, this time, a case was described in which a reply is made using an e-mail about a firmware rewrite result (rewrite end information). However, the present invention is not limited to the electronic mail system, and a reply may be made using another method.
[0145]
Furthermore, in this example, it has been described that each rewrite result is returned only when the firmware is divided and transmitted. However, even when the firmware is transmitted without being divided, the rewriting result may be returned. In this case, the same firmware can be transmitted again in response to the rewriting failure, so that the firmware rewriting process can be reliably performed.
[0146]
Note that, when the firmware is transmitted collectively without being divided, a method of transmitting all firmware data as one attached file, a method of transmitting individual firmware data as a plurality of attached files by one e-mail, For example, a method of individually attaching each firmware to an e-mail and transmitting it is conceivable.
[0147]
As a method of transmitting all firmware data as one attached file, for example, there is the following method. When the data (binary) of all firmware is one data (binary), addresses 0 to 7FFFF of the data are firmware data of the control module 1, addresses 80000 to FFFFF are firmware data of the control module 2,... Thus, the storage address and size of the data of each control module in the model are stored in advance as data. This data is attached to the e-mail and sent to the mail server.
[0148]
Also in the printer controller 21, the relationship between the storage address and the size of the data of each control module is stored as data. Therefore, the printer controller 21 can sequentially perform the rewriting process by transmitting the firmware data at the predetermined address to the corresponding control module.
[0149]
Although the printer controller and the image forming apparatus have been described as separate devices as shown in FIG. 1 and the like this time, the image forming apparatus may have an integrated structure in which the function of the printer controller is incorporated. In this case, similarly, the process is executed while the printer controller and the control module 1 cooperate with each other. Further, the control performed by the CPU 101 may be executed by the CPU 201 of the printer controller.
[0150]
The firmware communication method (data communication method) performed by the computer 91, the image forming apparatus 11, and the printer controller 21 described above can be realized by a program for causing the above-described series of processing operations to function. The data communication program may be installed in advance on the hard disk in the computer 91, the image forming apparatus 11, and the printer controller 21, or may be stored on a removable recording medium such as a CD-ROM or a magnetic tape. It may be recorded. In any case, the data communication program is recorded on a computer-readable recording medium.
[0151]
Examples of the computer-readable recording medium include a tape system such as a magnetic tape and a cassette tape, a disk system such as a magnetic disk (such as a flexible disk and a hard disk device) and an optical disk (such as a CD-ROM / MO / MD / DVD), A fixed medium such as a card system such as an IC card (including a memory card) or an optical card, or a semiconductor memory such as a ROM, an EPROM, an EEPROM, or a flash ROM may be used.
[0152]
Note that the content stored in the recording medium is not limited to a program, but may be data.
[0153]
The embodiments disclosed this time are to be considered in all respects as illustrative and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.
[Brief description of the drawings]
FIG. 1 is a diagram showing a system configuration for implementing a firmware transmission / reception method according to an embodiment of the present invention.
FIG. 2 is a block diagram illustrating a circuit configuration of the image forming apparatus 11.
FIG. 3 is a block diagram showing a circuit configuration of the printer controller 21.
FIG. 4 is a block diagram showing a circuit configuration of a computer 91 installed on the service center side.
FIG. 5 is a flowchart illustrating a main routine of a process performed by a CPU 901 of the computer 91 on the service center side.
6 is a diagram illustrating an example of data registered in a fixed storage device 904 in the registration processing (step S509) of the image forming apparatus in FIG.
FIG. 7 is a flowchart showing details of a firmware transmission process (step S513) of FIG. 5;
FIG. 8 is a diagram showing an example of an ID table registered in a fixed storage device 904.
FIG. 9 is a flowchart showing a processing flow when the computer 91 receives a reply mail about the rewriting result.
FIG. 10 is a diagram showing an example of an electronic mail message to which the divided firmware is attached.
FIG. 11 is a diagram showing an example of a message of an electronic mail to which undivided firmware is attached.
FIG. 12 is a diagram showing an example of an electronic mail message sentence regarding a firmware rewrite result.
FIG. 13 is a flowchart illustrating a main routine of processing in the CPU 201 of the printer controller 21 of the image forming apparatus 11.
FIG. 14 is a flowchart showing details of a firmware reading process (step S1309) of FIG. 13;
FIG. 15 is a flowchart showing basic processing in the image forming apparatus 11;
FIG. 16 is a flowchart illustrating details of a firmware rewriting process (step S1509 in FIG. 15) in the image forming apparatus 11.
FIG. 17 is a diagram for explaining a flow of each process of the computer 91 on the service center side, the mail servers 83 and 33, and the image forming apparatus (printer) 11 on the user side.
FIG. 18 is a flowchart illustrating a firmware rewriting process performed on a module basis.
19 is a flowchart showing details of firmware reading processing (step S1309 in FIG. 13) in the printer controller when the firmware is rewritten in module units.
FIG. 20 is a flowchart illustrating firmware rewriting processing performed in units of modules in the image forming apparatus 11.
[Explanation of symbols]
Reference Signs List 11 image forming apparatus, 21 printer controller, 32, 82 router, 33, 83 mail server, 91 computer, 111, 121, 131, 141, 201, 901 CPU, 112, 122, 132, 142 Flash ROM, 118, 207 operation Panel, 904 permanent storage.

Claims (5)

使用するメールサーバに設けられたデータの制限容量を取得する制限容量取得ステップと、
前記取得された制限容量に基づいて送信対象となるファームウェアを分割するか否かを判断する判断ステップと、
前記判断ステップにより分割しないと判断された場合に、前記ファームウェアを電子メールに添付して送信する第1の送信ステップと、
前記判断ステップにより分割すると判断された場合に、前記ファームウェアを前記取得された制限容量に基づいて複数に分割する分割ステップと、
前記分割された複数のファームウェアの中の1のファームウェアを電子メールに添付して送信する第2の送信ステップと、
前記電子メールに添付された1のファームウェアを取得した相手先から送られてくるファームウェアの書き換え結果に関する情報を取得する取得ステップと、
前記取得された書き換え結果が成功を示す場合に、前記分割された複数のファームウェアの中の次に送るべき1のファームウェアを電子メールに添付して送信する第3の送信ステップと、をコンピュータに実行させるためのデータ通信プログラム。
A quota obtaining step of obtaining a quota of data provided in a mail server to be used;
A determining step of determining whether to divide the firmware to be transmitted based on the obtained limited capacity,
A first transmission step of attaching the firmware to an e-mail and transmitting it when it is determined that the firmware is not to be divided by the determination step;
A division step of dividing the firmware into a plurality of pieces based on the acquired limited capacity, when it is determined that the firmware is divided by the determination step;
A second transmitting step of transmitting one firmware of the plurality of divided firmware attached to an e-mail, and
An acquisition step of acquiring information on a firmware rewrite result sent from the other party that acquired the one firmware attached to the electronic mail;
And performing, when the obtained rewrite result indicates success, a third transmission step of attaching one firmware to be transmitted next among the plurality of divided firmware to an e-mail and transmitting the e-mail to the computer. Data communication program to let
前記判断ステップは、
前記送信対象となるファームウェアが前記取得された制限容量より大きい場合、分割すると判断し、
前記送信対象となるファームウェアが前記取得された制限容量以下の場合、分割しないと判断する、請求項1に記載のデータ通信プログラム。
The determining step includes:
If the firmware to be transmitted is larger than the acquired limited capacity, it is determined to be divided,
The data communication program according to claim 1, wherein when the firmware to be transmitted is equal to or less than the acquired limited capacity, it is determined that the firmware is not divided.
請求項1または2に記載のデータ通信プログラムを記録したコンピュータ読み取り可能な記録媒体。A computer-readable recording medium a data communication program according to claim 1 or 2. 使用するメールサーバに設けられたデータの制限容量を取得する制限容量取得手段と、
前記取得された制限容量に基づいて送信対象となるファームウェアを分割するか否かを判断する判断手段と、
前記判断手段により分割しないと判断された場合に、前記ファームウェアを電子メールに添付して送信する第1の送信手段と、
前記判断手段により分割すると判断された場合に、前記ファームウェアを前記取得された制限容量に基づいて複数に分割する分割手段と、
前記分割された複数のファームウェアの中の1のファームウェアを電子メールに添付して送信する第2の送信手段と、
前記電子メールに添付された1のファームウェアを取得した相手先から送られてくるファームウェアの書き換え結果に関する情報を取得する取得手段と、
前記取得された書き換え結果が成功を示す場合に、前記分割された複数のファームウェアの中の次に送るべき1のファームウェアを電子メールに添付して送信する第3の送信手段とを含む、データ通信装置。
A quota obtaining means for obtaining a quota of data provided in a mail server to be used;
Determining means for determining whether to divide firmware to be transmitted based on the obtained limited capacity,
A first transmission unit that transmits the firmware attached to an e-mail when the determination unit determines that the firmware is not to be divided;
Division means for dividing the firmware into a plurality of pieces based on the acquired limited capacity, when the judgment means judges that the firmware is to be divided;
Second transmission means for attaching one of the divided firmware to an e-mail and transmitting the e-mail;
Acquiring means for acquiring information on a rewrite result of the firmware transmitted from the other party who acquired the one firmware attached to the electronic mail;
And a third transmission unit that attaches, to an e-mail, one firmware to be transmitted next among the plurality of divided firmware when the acquired rewrite result indicates success, and apparatus.
使用するメールサーバに設けられたデータの制限容量を取得する制限容量取得ステップと、
前記取得された制限容量に基づいて送信対象となるファームウェアを分割するか否かを判断する判断ステップと、
前記判断ステップにより分割しないと判断された場合に、前記ファームウェアを電子メールに添付して送信する第1の送信ステップと、
前記判断ステップにより分割すると判断された場合に、前記ファームウェアを前記取得された制限容量に基づいて複数に分割する分割ステップと、
前記分割された複数のファームウェアの中の1のファームウェアを電子メールに添付して送信する第2の送信ステップと、
前記電子メールに添付された1のファームウェアを取得した相手先から送られてくるファームウェアの書き換え結果に関する情報を取得する取得ステップと、
前記取得された書き換え結果が成功を示す場合に、前記分割された複数のファームウェアの中の次に送るべき1のファームウェアを電子メールに添付して送信する第3の送信ステップとを含む、データ通信方法。
A quota obtaining step of obtaining a quota of data provided in a mail server to be used;
A determining step of determining whether to divide the firmware to be transmitted based on the obtained limited capacity,
A first transmission step of attaching the firmware to an e-mail and transmitting it when it is determined that the firmware is not to be divided by the determination step;
A division step of dividing the firmware into a plurality of pieces based on the acquired limited capacity, when it is determined that the firmware is divided by the determination step;
A second transmitting step of transmitting one firmware of the plurality of divided firmware attached to an e-mail, and
An acquisition step of acquiring information on a firmware rewrite result sent from the other party that acquired the one firmware attached to the electronic mail;
A third transmission step of , when the obtained rewrite result indicates success , attaching one firmware to be transmitted next among the plurality of divided firmware to an e-mail and transmitting the e-mail. Method.
JP2001099194A 2001-03-30 2001-03-30 Data communication program, computer-readable recording medium recording data communication program, data communication device, and data communication method Expired - Fee Related JP3551933B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001099194A JP3551933B2 (en) 2001-03-30 2001-03-30 Data communication program, computer-readable recording medium recording data communication program, data communication device, and data communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001099194A JP3551933B2 (en) 2001-03-30 2001-03-30 Data communication program, computer-readable recording medium recording data communication program, data communication device, and data communication method

Publications (2)

Publication Number Publication Date
JP2002297351A JP2002297351A (en) 2002-10-11
JP3551933B2 true JP3551933B2 (en) 2004-08-11

Family

ID=18952769

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001099194A Expired - Fee Related JP3551933B2 (en) 2001-03-30 2001-03-30 Data communication program, computer-readable recording medium recording data communication program, data communication device, and data communication method

Country Status (1)

Country Link
JP (1) JP3551933B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4967881B2 (en) * 2006-07-31 2012-07-04 セイコーエプソン株式会社 Update data transmission method, firmware rewriting system, and update data transmission program
JP6163802B2 (en) * 2013-03-14 2017-07-19 株式会社リコー Server apparatus, update system, update method and program

Also Published As

Publication number Publication date
JP2002297351A (en) 2002-10-11

Similar Documents

Publication Publication Date Title
US7312882B2 (en) Image processing apparatus, management unit for image forming apparatus, and program executed by image processing apparatus or by management unit for image forming apparatus
EP2600591B1 (en) Server and method for changing settings of image processing devices
JP2010035151A (en) Data transmission apparatus, transmission control method, and program
JP2015138297A (en) Distribution system and control method thereof
EP2902952A1 (en) Data processing apparatus, data processing system, and data processing method
US20030035140A1 (en) Image processing apparatus, management unit, and program
JP5430181B2 (en) Image forming apparatus, control method thereof, and program
JP2025010320A (en) Information processing device
JP6547717B2 (en) Electronic device and application control program
CN105302504B (en) Information processing unit and information processing method
JP3551933B2 (en) Data communication program, computer-readable recording medium recording data communication program, data communication device, and data communication method
JP2001103232A (en) Data processing device and control method thereof
JP3501138B2 (en) Data communication program, computer-readable recording medium recording data communication program, data communication device, and data communication method
JP2002297410A (en) Data communication program, computer-readable recording medium with data communication program recorded thereon, data communication device and data communication method
JP4227568B2 (en) Information processing apparatus, information processing method, and program
JP3853173B2 (en) DATA COMMUNICATION PROGRAM, COMPUTER-READABLE RECORDING MEDIUM CONTAINING DATA COMMUNICATION PROGRAM, DATA COMMUNICATION DEVICE, AND DATA COMMUNICATION METHOD
JP3833902B2 (en) DATA COMMUNICATION PROGRAM, COMPUTER-READABLE RECORDING MEDIUM CONTAINING DATA COMMUNICATION PROGRAM, DATA COMMUNICATION DEVICE, AND DATA COMMUNICATION METHOD
JP6942578B2 (en) Management system and control method
JP6669382B2 (en) Device device, information processing method and program
JP5278172B2 (en) Image processing apparatus, system, image processing method, program, and recording medium
JP4732698B2 (en) Network equipment
JP2006244372A (en) Image forming system
JP2016117286A (en) Image outputting device, relay device, program of image outputting device, and control method of image outputting device
JP2003058387A (en) Image processor, program and management unit
JP6191271B2 (en) COMMUNICATION SYSTEM, COMMUNICATION SETTING METHOD, AND PROGRAM

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20031111

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040106

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20040113

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: 20040406

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040419

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

Free format text: PAYMENT UNTIL: 20090514

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090514

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100514

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110514

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120514

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130514

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20140514

Year of fee payment: 10

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