(57)【要約】【課題】ファームウェアデータのダウンロードが容易に可能で、印刷処理に影響を与えることのないファームウェアダウンロード方法、ファームウェアダウンロードシステム及びファームウェアダウンロードプログラムを提供する。【解決手段】ホストＰＣ１０は、プリンタ２０と双方向通信可能に接続されたことを検知し、かつファームウェアデータをダウンロードするためのダウンロードモードにある場合にファームウェアデータをプリンタ２０へダウンロードして該プリンタ２０が備えるフラッシュＲＯＭ２８に書き込む。このダウンロードモードとしては、例えばプリンタドライバをインストールする動作に基づいて設定される。【選択図】      図１
2004334443.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置とプリンタとが双方向通信可能に接続されたことを検知するとともに、前記ホスト装置側の制御手段がダウンロードモードであることを検出すると、前記ホスト装置側の記憶手段からファームウェアデータを読み出して該ホスト装置から前記プリンタへダウンロードすることで当該プリンタの不揮発性メモリに該ファームウェアデータを書き込むことを特徴とするファームウェアダウンロード方法。
【請求項２】
ホスト装置とプリンタとが双方向通信可能に接続されたことを検知する検知手段と、
ファームウェアデータをダウンロードするために前記ホスト装置の制御手段をダウンロードモードに設定する設定手段と、
前記ダウンロードモードを検出するモード検出手段と、
前記検知手段により前記ホスト装置と前記プリンタとが双方向通信可能に接続されたことが検知されるとともに、前記モード検出手段によりダウンロードモードが検出されると、該ホスト装置に記憶されているファームウェアデータを当該ホスト装置から前記プリンタへダウンロードして該プリンタの不揮発性メモリに書き込むダウンロード手段と
を備えたことを特徴とするファームウェアダウンロードシステム。
【請求項３】
前記ダウンロード手段は、前記検知手段による検知の後、前記プリンタの識別情報を当該プリンタから前記ホスト装置へ送らせ、前記プリンタから送られた識別情報を基に識別したプリンタに対応したファームウェアデータを当該プリンタにダウンロードすることを特徴とする請求項２に記載のファームウェアダウンロードシステム。
【請求項４】
請求項２又は請求項３に記載のファームウェアダウンロードシステムにおいて、前記ホスト装置にプリンタドライバをインストールするインストール手段を備え、前記設定手段は、前記インストール手段の動作に基づいて前記ホスト装置の制御手段をダウンロードモードに設定することを特徴とするファームウェアダウンロードシステム。
【請求項５】
前記設定手段は、前記プリンタの電源スイッチをプリンタに備えられた所定のスイッチと共に操作されたことに基づいて前記ホスト装置の制御手段をダウンロードモードに設定することを特徴とする請求項２又は請求項３に記載のファームウェアダウンロードシステム。
【請求項６】
請求項２〜請求項５のいずれか一項に記載のファームウェアダウンロードシステムにおいて、前記ダウンロード手段により前記ファームウェアデータがダウンロードされる前に前記ホスト装置と前記プリンタとの通信形式を判断して該通信形式を特定する特定手段を備え、当該特定手段により特定された通信形式に基づき前記ダウンロード手段は、当該通信形式に対応したファームウェアデータを記憶手段から選択して読み出し、前記プリンタにダウンロードすることを特徴とするファームウェアダウンロードシステム。
【請求項７】
ホスト装置に接続されるプリンタに対してファームウェアデータをダウンロードする際に、前記ホスト装置が備えるコンピュータにより実行されるプログラムであって、
前記ホスト装置と前記プリンタとが双方向通信可能に接続されたことが検知された状態でダウンロードモードであるか否かを判断して当該ダウンロードモードを検出するステップと、
前記ダウンロードモードの検出に基づいて、前記ホスト装置側の記憶手段からファームウェアデータを読み出して前記プリンタにダウンロードするステップとを備えたことを特徴とするファームウェアダウンロードプログラム。
【請求項８】
請求項７に記載のファームウェアダウンロードプログラムにおいて、前記ダウンロードモードを検出するステップにおいてダウンロードモードが検出された後、前記プリンタから送信された識別情報を基に識別したプリンタが前記ファームウェアデータに対応するか否かを判断するステップを備え、
前記ファームウェアデータに対応するか否かを判断するステップにおいて、前記プリンタが前記ファームウェアデータに対応するものであると判断すると、前記記憶手段から前記ファームウェアデータを読み出して前記プリンタにダウンロードすることを特徴とするファームウェアダウンロードプログラム。
【請求項９】
請求項７又は請求項８に記載のファームウェアデータダウンロードプログラムにおいて、前記ダウンロードモードを検出するステップは、プリンタドライバが前記ホスト装置にインストールされる処理に基づきダウンロードモードであると判断し、当該ダウンロードモードを検出するステップであることを特徴とするファームウェアダウンロードプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ファームウェアダウンロードシステム、ファームウェアダウンロード方法及びファームウェアダウンロードプログラムに関するものである。
【０００２】
【従来の技術】
従来、プリンタにファームウェアをダウンロードするためには、そのプリンタに搭載されているＲＯＭ自体を取り替えなければならず、プリンタを工場やサービスセンターに持ち込まなければならないなどの手間がかかっていた。また、プリンタの提供側は、仕向け毎に異なるファームウェアを作成して提供する必要があるため、ＲＯＭの差し替えをプリンタ毎に行った後、出荷していた。
【０００３】
しかし、近年  電気的に書き替え可能な不揮発性メモリ（例えば、フラッシュＲＯＭ）の普及に伴い、データの書き替えによりフラッシュＲＯＭに格納されているファームウェアデータを変更することが可能なプリンタが開発されている。このため、プログラムの不具合等の修正や新機能の追加等も上記ＲＯＭ自体の差し替えをする必要がなくなり、比較的簡単な操作で行うことができるようになっている。
【０００４】
フラッシュＲＯＭを用いたファームウェアの更新方式として、以下に示す方式が提案されている。この方式では、ファームウェアデータの一部又は全部をホストＰＣがプリンタドライバ内に持ち、印刷処理を行う度にプリンタドライバがプリンタのファームウェアデータの状態とアプリケーションが要求するファームウェアデータとを比較する。そして、その比較に基づいてホストＰＣは、必要なモジュールだけをプリンタ側にダウンロードする（例えば、特許文献１参照。）。
【０００５】
ところで、プリンタを制御するためにホストＰＣにインストールされるプリンタドライバも仕向けごとに提供され、仕向け先のユーザ等は例えばＣＤ−ＲＯＭに記憶されているプリンタドライバをホストＰＣにインストールしている。
【０００６】
【特許文献１】
特開２００１−６７２２８号公報（明細書の段落［００２６］〜［００５０］、第２図）
【０００７】
【発明が解決しようとする課題】
ところが、特許文献１に記載の方式では、印刷処理を行う度にファームウェアデータの更新の必要性を判断して、必要であれば更新を行う。このため、ある程度の印刷速度の確保は可能であるが、やはり印刷処理の度にファームウェアデータの更新を行うため印刷速度が遅くなってしまうという問題がある。
【０００８】
この問題を解決するために、印刷処理を始めるにあたり、ファームウェアデータを一括でダウンロードしてフラッシュＲＯＭに書き込むことが考えられる。これにより、印刷処理の際に更新を行うことがなくなり印刷速度が遅くなることは解消される。しかし、最初の印刷処理に入るまでに時間が掛かるため、結果として印刷完了までの時間が遅くなってしまう。
【０００９】
また、印刷処理とは関係のないときに、ファームウェアデータをダウンロードすることも考えれる。しかし、この場合、ホストＰＣ及びプリンタをファームウェアデータの書き替えを行うモードに手動で設定し、手動でホストＰＣ等を操作してプリンタのフラッシュＲＯＭに格納されたファームウェアデータの書き替えを行うことになる。このため、ユーザがファームウェアデータを間違えてダウンロードする虞があり、さらに、前記のようにプリンタドライバのインストールをする作業とファームウェアデータをダウンロードする作業との２つの作業を行わなければならず、煩雑である。
【００１０】
本発明は、上記実情に鑑みなされたものであって、その目的は、ファームウェアデータのダウンロードが容易に可能で、印刷処理に影響を与えることのないファームウェアダウンロード方法、ファームウェアダウンロードシステム及びファームウェアダウンロードプログラムを提供することにある。
【００１１】
【課題を解決するための手段】
上記問題点を解決するために、本発明は、ホスト装置とプリンタとが双方向通信可能に接続されたことを検知するとともに、前記ホスト装置側の制御手段がダウンロードモードであることを検出すると、前記ホスト装置側の記憶手段からファームウェアデータを読み出して該ホスト装置から前記プリンタへダウンロードすることで当該プリンタの不揮発性メモリに該ファームウェアデータを書き込むことを要旨とする。
【００１２】
この発明によれば、ホスト装置とプリンタとが双方向通信可能に接続され、且つ、ホスト装置側の制御手段がダウンロードモードであることに基づいて、プリンタにファームウェアデータがダウンロードされる。このため、従来技術と異なり印刷処理に関連してファームウェアデータをダウンロードすることがなく、印刷処理に影響を与えることがない。また、ホスト装置とプリンタとが通信可能に接続され、かつ制御手段がダウンロードモードであることに基づいてファームウェアデータがダウンロードされるため、手動でファームウェアデータのダウンロード作業を行う必要がなく自動でファームウェアデータがダウンロードされる。このため、容易にファームウェアデータをダウンロードすることができる。
【００１３】
本発明は、ホスト装置とプリンタとが双方向通信可能に接続されたことを検知する検知手段と、ファームウェアデータをダウンロードするために前記ホスト装置の制御手段をダウンロードモードに設定する設定手段と、前記ダウンロードモードを検出するモード検出手段と、前記検知手段により前記ホスト装置と前記プリンタとが双方向通信可能に接続されたことが検知されるとともに、前記モード検出手段によりダウンロードモードが検出されると、該ホスト装置に記憶されているファームウェアデータを当該ホスト装置から前記プリンタへダウンロードして該プリンタの不揮発性メモリに書き込むダウンロード手段とを備えたことを要旨とする。
【００１４】
この発明によれば、検知手段による検知及び設定手段により設定されたダウンロードモードの検出を行う検出手段により当該ダウンロードモードが検出されていることに基づいて、ダウンロード手段によりホスト装置からプリンタにファームウェアデータがダウンロードされる。このため、従来技術と異なり印刷処理に関連してファームウェアデータをダウンロードすることがないため、印刷処理に影響を与えることがない。また、通信可能に接続されるとともに、ホスト装置側の制御手段がダウンロードモードである場合にファームウェアデータがダウンロードされる。つまり、手動でファームウェアデータをダウンロードする作業が介在せず、自動で判断されてファームウェアデータがダウンロードされる。このため、容易にファームウェアデータをダウンロードすることができる。
【００１５】
また、本発明は、前記ダウンロード手段は、前記検知手段による検知の後、前記プリンタの識別情報を当該プリンタから前記ホスト装置へ送らせ、前記プリンタから送られた識別情報を基に識別したプリンタに対応したファームウェアデータを当該プリンタにダウンロードすることを要旨とする。
【００１６】
この発明によれば、検知手段により双方向通信可能に接続されたことが検知された後、プリンタの識別情報に基づいてファームウェアデータがプリンタに対応するか否か判断され、対応する場合にそのファームウェアデータがプリンタにダウンロードされる。このため、対応しないファームウェアデータがプリンタにダウンロードされることがなくなる。さらに、ファームウェアデータがプリンタに対応しているか否かを識別情報に基づき判断するため、例えば、プリンタとホスト装置とが接続された際に必然的にプリンタからホスト装置に送信され、やりとりされる識別情報に基づくことで、判断のための処理を特別に設ける必要がない。
【００１７】
さらに、本発明は、前記ホスト装置にプリンタドライバをインストールするインストール手段を備え、前記設定手段は、前記インストール手段の動作に基づいて前記ホスト装置の制御手段をダウンロードモードに設定することを要旨とする。この発明によれば、プリンタドライバをインストールする動作に基づいて、設定手段によりダウンロードモードに設定される。このため、プリンタドライバのインストールとファームウェアデータのダウンロードがまとめて行われる。また、ユーザ等が必ず行うインストールの作業でファームウェアデータをダウンロードするダウンロードモードが自動で設定され、該ファームウェアデータがダウンロードされるため、より容易にファームウェアデータをダウンロードすることができる。
【００１８】
本発明は、前記設定手段は、前記プリンタの電源スイッチをプリンタに備えられた所定のスイッチと共に操作されたことに基づいて前記ホスト装置の制御手段をダウンロードモードに設定することを要旨とする。この発明によれば、電源スイッチと所定のスイッチとが共に操作された状態のプリンタとホスト装置とが双方向通信可能に接続された際、又は、プリンタとホスト装置とが双方向通信可能に接続されている状態で電源スイッチと所定のスイッチとが共に操作された際に、検出手段によりダウンロードモードと判断される。そして、そのダウンロードモードに基づきファームウェアデータがダウンロードされる。従って、必ず行うプリンタの電源投入時にファームウェアデータをダウンロードするか否かを設定することが可能となる。
【００１９】
本発明は、前記ダウンロード手段により前記ファームウェアデータがダウンロードされる前に前記ホスト装置と前記プリンタとの通信形式を判断して該通信形式を特定する特定手段を備え、当該特定手段により特定された通信形式に基づき前記ダウンロード手段は、当該通信形式に対応したファームウェアデータを記憶手段から選択して読み出し、前記プリンタにダウンロードすることを要旨とする。
【００２０】
この発明によれば、プリンタが複数の通信形式により通信可能に構成されていても、特定手段によりその通信形式が特定され、ダウンロード手段がその通信形式に対応したファームウェアデータを記憶手段から選択して読み出し、ダウンロードを行う。このため、プリンタの通信形式によって、ファームウェアのダウンロードが制限されることがなく、種々のプリンタに対応することが可能である。
【００２１】
本発明は、ホスト装置に接続されるプリンタに対してファームウェアデータをダウンロードする際に、前記ホスト装置が備えるコンピュータにより実行されるプログラムであって、前記ホスト装置と前記プリンタとが双方向通信可能に接続されたことが検知された状態でダウンロードモードであるか否かを判断して当該ダウンロードモードを検出するステップと、前記ダウンロードモードの検出に基づいて、前記ホスト装置側の記憶手段からファームウェアデータを読み出して前記プリンタにダウンロードするステップとを備えたことを要旨とする。
【００２２】
この発明に係るプログラムを用いることで、ホスト装置とプリンタとが双方向通信可能に接続され、且つ、ダウンロードモードであることに基づいて、プリンタにファームウェアデータがダウンロードされる。このため、従来技術と異なり印刷処理を行う際にファームウェアデータがダウンロードされるのではなく、通信可能に接続され、且つダウンロードモードである際にのみ、ダウンロードされる。このため、印刷処理に影響を与えることがない。また、手動でファームウェアデータのダウンロード作業を行う必要がなく自動でファームウェアデータのダウンロードが行われる。このため、容易にファームウェアデータをダウンロードすることができる。
【００２３】
本発明は、前記ダウンロードモードを検出するステップにおいてダウンロードモードが検出された後、前記プリンタから送信された識別情報を基に識別したプリンタが前記ファームウェアデータに対応するか否かを判断するステップを備え、前記ファームウェアデータに対応するか否かを判断するステップにおいて、前記プリンタが前記ファームウェアデータに対応するものであると判断すると、前記記憶手段から前記ファームウェアデータを読み出して前記プリンタにダウンロードすることを要旨とする。
【００２４】
この発明に係るプログラムを用いることで、プリンタから送信される識別情報に基づいてファームウェアデータがプリンタに対応するか否かが判断されて、対応する場合にそのファームウェアデータがプリンタにダウンロードされる。このため、対応しないファームウェアデータがダウンロードされることがなくなる。さらに、ファームウェアデータがプリンタに対応しているか否かを識別情報に基づき判断するため、例えば、プリンタとホスト装置とが接続された際に必然的にプリンタからホスト装置に送信され、やりとりされる識別情報に基づくことで、判断のための処理を特別に設ける必要がない。
【００２５】
本発明は、前記ダウンロードモードを検出するステップは、プリンタドライバが前記ホスト装置にインストールされる処理に基づきダウンロードモードであると判断し、当該ダウンロードモードを検出するステップであることを要旨とする。この発明のプログラムを用いることで、プリンタドライバがインストールされる処理に基づいて、ダウンロードモードが設定され、ファームウェアデータのダウンロードが行われる。このため、プリンタドライバのインストールとファームウェアデータのダウンロードがまとめて行うことが可能となる。このため、必ず行うインストールの作業でファームウェアデータまでもがダウンロード可能となるため、ファームウェアデータのダウンロードを容易に行うことができる。
【００２６】
【発明の実施の形態】
以下、本発明を具体化した一実施形態を図１〜図３を参照して説明する。
図１はホストコンピュータ及びプリンタのブロック図を示す。ホスト装置としてのホストコンピュータ（以下、ホストＰＣという）１０にはプリンタ２０が接続されている。ホストＰＣ１０は、アプリケーションプログラム（以下、アプリケーションという）１１とオペレーティングシステム（以下、ＯＳという）１２とを備えている。
【００２７】
ホストＰＣ１０は、周辺機器と通信を行うためのホストＩ／Ｆ１３、通信ポート１４を備える。ホストＰＣ１０は、通信ポート１４に接続されたパラレルインターフェイス（以下、パラレルＩ／Ｆという）１５を介してプリンタ２０の通信ポート２１に接続されている。なお、本実施形態では、双方向通信性のパラレルＩ／Ｆ１５によりホストＰＣ１０とプリンタ２０とが接続されているが、双方向通信性のインターフェイスであれば特に限定されるものではない。
【００２８】
プリンタ２０は、ヘッド駆動機構や用紙供給・搬送機構等の印刷に必要な機構からなるプリントエンジン２２と、ホストＰＣ１０からの印刷データを処理してプリントエンジン２２を制御する制御装置２３とを備える。制御装置２３は、一般のプリンタと同様に、ホストＰＣ１０と通信するための通信インターフェイス（通信Ｉ／Ｆ）２４、ホストＰＣ１０から受信したデータを処理するためのＣＰＵ２５とを備える。通信Ｉ／Ｆ２４にはパラレルＩ／Ｆ１５が接続されている。また、ＣＰＵ２５の動作プログラムを搭載したＲＯＭ２６と、主記憶、ワークエリア、受信バッファ、ページメモリ、印刷バッファとして利用されるＲＡＭ２７を備える。
【００２９】
さらに、制御装置２３はファームウェアデータを保持するための不揮発性メモリとしてのフラッシュＲＯＭ（例えば、ＥＥＰＲＯＭ）２８を備える。フラッシュＲＯＭ２８には、予め出荷時からファームウェアデータが組み込まれている。後に詳述するように、本実施形態では、フラッシュＲＯＭ２８に保持されている既存のファームウェアデータを消去するとともに、ホストＰＣ１０から送り込まれてくる新たなファームウェアデータを書き込むことができる。また、ファームウェアデータがフラッシュＲＯＭ２８に組み込まれるため、ファームウェアデータの下位で働くハードウェアに依存したプログラム等のプログラムがＲＯＭ２６には保持されている。
【００３０】
また、プリンタ２０は、プリンタの電源をＯＮ／ＯＦＦするための電源スイッチ２９及び給紙及び排紙を行うための紙送りスイッチ３０を備えており、それらはＣＰＵ２５と電気的に接続されている。
【００３１】
記憶手段を構成するＣＤ−ＲＯＭ４０には、プリンタドライバと、当該プリンタドライバに添付された状態でファームウェアデータとが記憶されている。ファームウェアデータは、プログラムデータ及びＣＧデータにより構成されている。ホストＰＣ１０は、ＣＤ−ＲＯＭ４０を読み込み可能な読込装置５０と接続されており、該読込装置５０によりプリンタドライバを読み込み、ＯＳ１２に従ってプリンタドライバをインストールする。これにより、プリンタドライバに添付されているファームウェアデータもインストールされる。なお、図１には、プリンタドライバ及びファームウェアデータがホストＰＣ１０にインストールされた状態が示されている。
【００３２】
本実施形態におけるファームウェアダウンロードシステムは、ホストＰＣ１０、パラレルＩ／Ｆ１５、プリンタ２０のＣＰＵ２５及びフラッシュＲＯＭ２８、ＣＤ−ＲＯＭ４０により構成される。なお、ホストＰＣ１０のコンピュータが、制御手段、設定手段、検知手段、モード検出手段、ダウンロード手段、インストール手段、特定手段を構成する。
【００３３】
次に、ファームウェアデータのダウンロード態様について図２及び図３に示すシーケンスチャートに基づき説明する。
まず、ユーザがホストＰＣ１０とプリンタ２０とをパラレルＩ／Ｆ１５により通信可能にするために接続する。そして、プリンタ２０の電源をオンする。すると、図３に示すステップＳ１００において、ホストＰＣ１０はプラグアンドプレイ機能の働きにより、プリンタ２０を認識する。なお、プラグアンドプレイ機能とは、予めＯＳに設定されているアーキテクチャの一種で、パソコンに周辺機器等を接続した際に、自動的に認識して所定の処理を行う仕組みのことである。そして、ステップＳ１０１においてホストＰＣ１０は、ＯＳ１２の働きに基づいてプリンタ２０に対してデバイスＩＤ要求信号を送信して、プリンタ２０に識別情報としてのデバイスＩＤを要求する。
【００３４】
ステップＰ１００においてプリンタ２０のＣＰＵ２５は、デバイスＩＤ要求信号を受信すると、デバイスＩＤを準備する。そして、ステップＰ１０１においてＣＰＵ２５は、デバイスＩＤをホストＰＣ１０に送信する。
【００３５】
ステップＳ１０２においてホストＰＣ１０は、デバイスＩＤを取得する。そして、ステップＳ１０３においてホストＰＣ１０は、ＯＳ１２の働きに基づきデバイスＩＤをレジストリ（図示せず）に保存する。
【００３６】
次に、読込装置５０にＣＤ−ＲＯＭ４０が挿入されると、図２に示すように、ステップＳ２００においてホストＰＣ１０は、プリンタドライバのセットアップを実行する。そして、ステップＳ２０１においてホストＰＣ１０は、ファームウェアデータが添付されているプリンタドライバを読込装置５０によりＣＤ−ＲＯＭ４０から読み出してインストールする（インストールした状態は図１参照）。なお、インストールされたプリンタドライバ及びファームウェアデータはＯＳ１２の下層に位置する。
【００３７】
なお、これ以後ホストＰＣ１０は、ＯＳ１２ではなくプリンタドライバに基づいて以下の処理を行う。ステップＳ２０２においてホストＰＣ１０は、プリンタ２０が接続されているパラレルＩ／Ｆ１５の通信ポート１４をプリンタドライバの出力先に設定する。
【００３８】
また、ホストＰＣ１０は、プリンタドライバのプログラムに基づき、ステップＳ２０１のインストール処理が行われるとダウンロードモードとして設定するとともに、当該ダウンロードモードを検出してステップＳ２０３に移行する。これ以後、ホストＰＣ１０は、ファームウェアデータのダウンロードを行う。
【００３９】
次に、ステップＳ２０３においてホストＰＣ１０は、プラグアンドプレイ時に取得したデバイスＩＤに基づいて、ファームウェアデータに対応するプリンタであるか否かを判断する。ここで、対応しない場合、ステップＳ２０４に移行する。そして、ステップＳ２０４においてホストＰＣ１０は、ファームウェアデータがプリンタ２０に対応していない旨を自身が備える画面（図示略）に表示し、ファームウェアデータの更新を行うことなく処理を終了する。一方、ステップＳ２０３において、ファームウェアデータに対応するプリンタ２０である場合、ステップＳ２０５に移行する。そして、ステップＳ２０５においてホストＰＣ１０は、ＩＰＬ（イニシャライズプログラムローダ）モード移行コマンドをパラレルＩ／Ｆ１５を介してプリンタ２０に送信する。
【００４０】
そして、ステップＰ２００においてＣＰＵ２５は、ＩＰＬモード移行コマンドを受信すると、ＩＰＬモード判別ビットを立てて、制御装置２３にリセットをかける。これにより、制御装置２３がＩＰＬモードで立ち上がる。なお、ＩＰＬモードとは、プリンタ２０に備えられる電源スイッチ２９及び紙送りスイッチ３０や外部スイッチからの入力を受け付けない状態であり、ファームウェアデータ書き込み専用のモードのことである。そして、ステップＰ２０１においてＣＰＵ２５は、ファームウェアデータの受信準備が完了した旨を示す受信準備完了信号をホストＰＣ１０に送信する。
【００４１】
ステップＳ２０６においてホストＰＣ１０は、受信準備完了信号を受信し、ファームウェアデータの受信準備が完了したことを知ると、ＩＰＬ書込プログラム及びファームウェアデータをプリンタ２０に送信する。
【００４２】
ステップＰ２０２においてＣＰＵ２５は、ＩＰＬ書込プログラムとファームウェアデータとを受信すると、一旦、ＲＡＭ２７にＩＰＬ書込プログラム及びファームウェアデータを記憶する。そして、それら全てを記憶すると、そのＩＰＬ書込プログラムに基づきフラッシュＲＯＭ２８に記憶されている既存のファームウェアデータを消去するとともに、ホストＰＣ１０から送信されたＩＰＬ書込プログラム及び新たなファームウェアデータをフラッシュＲＯＭ２８に書き込む。
【００４３】
次に、ステップＰ２０３においてＣＰＵ２５は、ファームウェアデータの更新が終了した旨を示す書込完了信号をホストＰＣ１０に送信する。そして、ステップＰ２０４においてＣＰＵ２５は、ＩＰＬモードに移行する際に立ち上げた判別ビットをクリアしてリブート（システムの再起動）を行う。これにより、新しくダウンロードされたファームウェアデータに基づき、通常の状態（印刷処理を行える状態）で制御装置２３が立ち上がる。一方、ステップＳ２０７においてホストＰＣ１０は、書込完了信号によりファームウェアデータの書き込みが終了したことを知ると、ファームウェアデータの更新が完了したことを例えば自身が備える画面（図示略）に表示して処理を終了する。
【００４４】
上記シーケンスチャートは、ホストＰＣ１０にプリンタドライバをインストールするとともに、ファームウェアデータをプリンタ２０にダウンロードする場合について示したが、ファームウェアデータのみを更新する場合について以下に示す。なお、ホストＰＣ１０にはプリンタドライバが既にインストールされている状態であり、プリンタ２０とホストＰＣ１０とはパラレルＩ／Ｆ１５により接続されている。
【００４５】
まず、プリンタ２０に備えられる例えば紙送りスイッチ３０を操作しながら電源スイッチ２９を操作してプリンタ２０の電源を投入する。すると、ＣＰＵ２５がそれを判断して、制御装置２３がファームウェアデータをダウンロードするためのダウンロードモードで起動する。なお、この場合、電源スイッチ２９及び紙送りスイッチ３０が設定手段を構成する。ホストＰＣ１０は、そのダウンロードモード状態であるプリンタ２０を認識することで、自身もダウンロードモードに設定する。そして、デバイスＩＤを要求し、それに対してプリンタ２０からデバイスＩＤを取得する（図３に示すステップＳ１００〜Ｓ１０３に相当）。ホストＰＣ１０は、既にプリンタドライバが自身にインストールされているため、ファームウェアデータのダウンロード処理に移行する。そして、デバイスＩＤを用いてファームウェアデータが対応しているプリンタであるか否かを判断する（ステップＳ２０３に相当）。これ以後、上記の処理態様と同様にしてファームウェアデータのダウンロードが行われる（ステップＳ２０５〜Ｓ２０７及びステップＰ２００〜ステップＰ２０４に相当）。
【００４６】
上記実施形態によれば、以下のような効果を得ることができる。
（１）プリンタドライバがインストールされる処理に連続して、そのインストール後にファームウェアデータがプリンタ２０のフラッシュＲＯＭ２８にダウンロードされてフラッシュＲＯＭ２８に書き込まれる。すなわち、プリンタを使用するために必ず行うプリンタドライバのインストール作業を行うことで、ファームウェアデータまでもが更新される。このため、手動でダウンロードのための設定等を行う必要がなく、自動的にファームウェアデータがダウンロードされる。従って、容易にファームウェアデータをダウンロードすることができる。さらに、ユーザにとってはファームウェアデータの更新をしているという意識なく更新される。また、従来技術と異なり、印刷処理とともにファームウェアデータのダウンロードを行うことがないため、印刷処理に影響を与えることがない。
【００４７】
（２）プラグアンドプレイの際のデバイスＩＤを用いて、ファームウェアデータがプリンタに対応するか否かを判断する。このため、適合しないプリンタの判別を容易かつ確実に行うことができ、対応しない場合はファームウェアデータのダウンロードを行わないので、対応していないプリンタに間違えてファームウェアをダウンロードするような間違いを防止できる。また、プリンタの初期設定の際等に必然的に用いられるデバイスＩＤを用いて、ファームウェアデータがプリンタに対応しているか否かの判別を行う。このため、ホストＰＣ１０により実行されるプリンタドライバのプログラムに特別に判別の処理を設ける必要がない。
【００４８】
（３）電源スイッチ２９と紙送りスイッチ３０とが共に操作されることで、プリンタ２０はダウンロードモードで立ち上がり、ホストＰＣ１０はその状態のプリンタを認識して自身もダウンロードモードに移行する。そして、ファームウェアデータのダウンロードを行う。このため、プリンタの電源投入時にファームウェアデータをダウンロードするか否かを設定することが可能となり、更新したい場合にのみ上記の操作によりダウンロードモードとすることができる。
【００４９】
（４）ＣＤ−ＲＯＭ４０に記憶されたプリンタドライバをインストールするだけで、そのプリンタドライバに添付されているファームウェアデータがプリンタ２０にダウンロードされて更新される。このため、例えば、ユーザがプリンタの仕様を変更したい場合、その変更に対応したプリンタドライバ及びファームウェアデータが記憶された記憶媒体を入手するだけで可能であり、プリンタのカスタマイズが容易である。逆に、プリンタの提供側にとっては上記のようなユーザの要望、つまり、市場に対応させ易い。
【００５０】
なお、前記実施形態は以下のように変更してもよい。
（変形例１）前記実施形態では、パラレルＩ／Ｆ１５を備えるプリンタ２０であったが、パラレルＩ／Ｆ１５以外に通信形式の異なる複数のＩ／Ｆを備えるプリンタに本発明を適用してもよい。この場合、各Ｉ／Ｆに対応したＩＰＬ書込プログラム及びファームウェアデータをプリンタドライバに備える構成とする。そして、図４に示すシーケンスチャートの処理を行う。ステップＰ３００においてＣＰＵ２５が受信準備完了信号を送信する処理までは前記実施形態と同様である。そして、ステップＳ３００においてホストＰＣ１０は、プリンタドライバの働きに基づいてＩＰＬモード移行コマンドを送信する際に使用したインターフェイス（前記実施形態ではパラレルＩ／Ｆ）に対応したＩＰＬ書込プログラム及びファームウェアデータをプリンタドライバの中から選択する。そして、ステップＳ３０１においてホストＰＣ１０は、その選択したＩＰＬ書込プログラムとファームウェアデータをプリンタ２０に送信する。そして、ステップＰ３０１においてＣＰＵ２５は、そのＩＰＬ書込プログラム及びファームウェアデータに基づいてフラッシュＲＯＭ２８に書き込んで更新する。なお、これ以後の処理は前記実施形態と同様であるためその説明は省略する。また、ホストＰＣ１０が上記のように種々のインターフェイスの中からインターフェイスを選択するのではなく、ＩＰＬ書込みプログラムにインターフェイスの判別を行う処理を持たせてもよい。
【００５１】
（変形例２）前記実施形態では、プリンタドライバをインストールした後、必ずファームウェアデータが更新されていたが、プリンタドライバにファームウェアデータの更新を行うか否かを選択する機能が備えられていてもよい。この場合、例えば、プリンタドライバの機能によりホストＰＣ１０の画面（図示略）にファームウェアデータの更新を行うか否かを選択するための画面を表示し、ユーザが選択する。これにより、ファームウェアデータの更新が必要ない場合には、その更新を省略できるため、ダウンロードにかかる時間を省略することができる。
【００５２】
（変形例３）記憶手段はＣＤ−ＲＯＭ４０に限らず、サーバ等のＨＤＤであってもよい。例えば、プリンタ２０の供給側はサーバを使用してＷＥＢ上にファームウェアデータが添付されたプリンタドライバを公開し、ユーザがそのサーバ上からプリンタドライバを取得してもよい。
【００５３】
（変形例４）デュアルモード対応のフラッシュＲＯＭを使用してもよい。なお、デュアルモード対応のフラッシュＲＯＭとは、読み書きを同時に行えることができるフラッシュＲＯＭのことをいう。これを用いることで、前記実施形態のＩＰＬ書込プログラムに相当する書込プログラムが記憶されているエリアのみ読み込み専用となり、それ以外は書き込みが可能となる。このため、デュアルモード対応のフラッシュＲＯＭを使用することで、フラッシュＲＯＭ自体が書込プログラムを保持することが可能であるため、ＣＰＵ２５はＩＰＬ書込プログラムをホストＰＣ１０から取得する必要がなくなる。このため、前記実施形態におけるステップＳ２０６においてホストＰＣ１０が、ＩＰＬ書込プログラムを送信する処理が省略されるとともに、それに伴うプリンタ２０側の処理も省略される。
【００５４】
（変形例５）ファームウェアデータのダウンロードの際に、フラッシュＲＯＭ２８に記憶されている既存のファームウェアデータ（例えば、プリンタ２０の出荷時に記憶されるファームウェアデータ）とプリンタドライバに添付されたファームウェアデータとの新旧の判断をホストＰＣ１０が行う構成にしてもよい。そして、プリンタドライバに添付されたファームウェアデータの方が新しい場合にのみダウンロードを行うようにしてもよい。これにより、古いバージョンのファームウェアデータをダウンロードすることがなくなる。
【００５５】
（変形例６）ＯＳ１２のプラグアンドプレイ機能によりプリンタ２０を認識するが、その認識の方法やタイミングはＯＳにより様々であるため、その方法やタイミングは特に限定されない。本実施形態において、ＯＳ１２がプラグアンドプレイ機能により取得したデバイスＩＤのように、プリンタ２０を識別可能な識別情報を取得可能であれば特にＯＳについては限定されない。
【００５６】
（変形例７）前記実施形態では、ファームウェアデータを構成するプログラムデータ及びＣＧデータともにプリンタ２０にダウンロードしていたが、いずれか１つだけダウンロードする構成であってもよい。この場合、プログラムデータ及びＣＧデータのいずれをダウンロードするかについて、プリンタドライバで設定を行う機能が必要となるが、これにより、ファームウェアデータ全て更新するのではなく、例えばＣＧデータのみ更新することが可能となる。
【００５７】
（変形例８）前記実施形態では、パラレルＩ／Ｆ１５によりホストＰＣ１０とプリンタ２０とが双方向通信可能に接続されていたが、ＵＳＢインターフェイスのような動的接続が可能なインターフェイスを採用して双方向通信可能に接続されてもよい。この場合、プラグアンドプレイ機能は、ホストＰＣ１０とプリンタ２０とが、例えばＵＳＢインターフェイスで接続された状態でプリンタ２０の電源を投入する際だけでなく、プリンタ２０の電源がＯＮの状態でＵＳＢインターフェイスにより接続してもプラグアンドプレイ機能が働く。そのため、前記実施形態とその認識のタイミングが異なるが、前記実施形態と同様の効果を得ることができる。
【００５８】
（変形例９）前記実施形態では、ホストＰＣ１０は、ＣＤ−ＲＯＭ４０からプリンタドライバ及びファームウェアデータをともにインストールしたが、プリンタドライバのみＯＳ１２内にインストールしてもよい。そして、ファームウェアデータについては読込装置５０によりＣＤ−ＲＯＭ４０から随時読み込んで、プリンタ２０にダウンロードするようにしてもよい。
【００５９】
（変形例１０）ダウンロードモードに設定する際に、電源スイッチ２９と共に紙送りスイッチ３０を押していたが、紙送りスイッチ３０以外のスイッチと共に押すことでダウンロードモードに設定されてもよい。特に、電源スイッチ２９以外のスイッチについては限定されない。
【００６０】
（変形例１１）前記実施形態において、ホストＰＣ１０は、プリンタドライバに基づいてステップＳ２０１におけるインストール処理が終了した時点を基に、ダウンロードモードを設定して検出し、ファームウェアデータのダウンロードを行っていた。これに限らず、ホストＰＣ１０がインストール処理の終了をプリンタドライバに基づき判断可能であるならば、ダウンロードモードの設定及び検出のタイミングは特に限定されない。例えば、ステップＳ２０２の処理の際にダウンロードモードを設定及び検出して、ファームウェアデータのダウンロードを行うようにしてもよい。
【００６１】
（変形例１２）ファームウェアデータのみ記憶されたＣＤ−ＲＯＭ等の記憶手段を用いて、ファームウェアデータのみを更新するようにしてもよい。この場合、前記実施形態のようにプリンタ２０の電源スイッチ２９を所定のスイッチ（例えば、紙送りスイッチ３０）と共に操作して、ダウンロードモードに設定することで可能となる。
【００６２】
次に、前記実施形態及び変形例から把握できる技術的思想について以下に追記する。
（１）請求項２〜請求項６のいずれか一項に記載のファームウェアダウンロードシステムにおいて、
前記ホスト装置に記憶されているファームウェアデータが前記プリンタに予め記憶されているファームウェアデータより新しいか否かを判断する判断手段を備え、該判断手段により前記ホスト装置に記憶されているファームウェアデータの方が新しいと判断された場合、前記ダウンロード手段は前記プリンタに当該ファームウェアデータをダウンロードすることを特徴とするファームウェアダウンロードシステム。
【００６３】
（２）前記ファームウェアデータは、前記ホスト装置において前記プリンタドライバに添付された状態で記憶されていることを特徴とする請求項４〜請求項６及び前記技術的思想（１）のいずれか一項に記載のファームウェアダウンロードシステム。
【００６４】
（３）前記ホスト装置側の制御手段は、当該ホスト装置がプリンタドライバをインストールする動作に基づいてダウンロードモードに設定されることを特徴とする請求項１に記載のファームウェアダウンロード方法。
【００６５】
（４）前記ホスト装置は、前記プリンタから送信される該プリンタの識別情報に基づいて、前記ファームウェアデータが前記プリンタに対応するものであるか否かを判断し、当該ファームウェアデータが前記プリンタに対応するものであると判断した場合、当該ファームウェアデータを前記プリンタにダウンロードすることを特徴とする請求項１又は前記技術的思想（３）に記載のファームウェアダウンロード方法。
【００６６】
（５）  前記プリンタは、通信形式の異なる複数の通信形式により通信可能に構成されており、前記ホスト装置は、前記複数の通信形式のいずれにより前記プリンタと接続されているかを前記ファームウェアデータをダウンロードする前に判断して特定し、当該通信形式に対応した前記ファームウェアデータを前記記憶手段から選択してダウンロードすることを特徴とする請求項１及び前記技術的思想（３），（４）のいずれか一項に記載のファームウェアダウンロード方法。
【図面の簡単な説明】
【図１】ホストＰＣ及びプリンタの構成を示すブロック図。
【図２】ファームウェアのダウンロードに関するシーケンスチャート。
【図３】ＯＳのプラグアンドプレイに関するシーケンスチャート。
【図４】ファームウェアのダウンロードに関するシーケンスチャート。
【符号の説明】
１０…ホスト装置を構成するホストコンピュータ（制御手段、設定手段、検知手段、モード検出手段、ダウンロード手段、インストール手段、特定手段）、１５…パラレルインターフェイス（パラレルＩ／Ｆ）、２０…プリンタ、２５…ＣＰＵ、２８…不揮発性メモリとしてのフラッシュＲＯＭ、２９…電源スイッチ、３０…紙送りスイッチ。
【図１】
2004334443.tif 000003
【図２】
2004334443.tif 000004
【図３】
2004334443.tif 000005
【図４】
2004334443.tif 000006