(57)【要約】【課題】端末装置から機能実行装置へファームウェアを送信する際に、機能実行装置の機能の実行時において使用される情報がクリアされるおそれがなく、かつ、送信に手間が掛からないコンピュータプログラム、データ送信方法および端末装置を提供すること。【解決手段】携帯端末１０に備えられたＣＰＵを、ファームウェアである第１のファイルをモバイルプリンタ２０へ送信させる第１の送信手段と、ファームウェアである第１のファイルと異なるファイルであって、モバイルプリンタ２０の機能の実行時において使用される情報を示す第２のファイルをモバイルプリンタ２０へ送信する場合は、第１のファイルのモバイルプリンタ２０への送信が完了した後で第２のファイルをモバイルプリンタ２０へ送信させる第２の送信手段と、して機能させるためのコンピュータプログラム。【選択図】図１
2019153036.tif 000002
【特許請求の範囲】
【請求項１】
機能実行装置が実行するソフトウェアを端末装置から前記機能実行装置へ送信するために前記端末装置に備えられたコンピュータが実行するコンピュータプログラムであって、
前記コンピュータを、
ファームウェアである第１のファイルを前記機能実行装置である所定の機能実行装置へ送信させる第１の送信手段と、
前記ファームウェアである第１のファイルと異なるファイルであって、前記所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを前記所定の機能実行装置へ送信する場合は、前記第１のファイルの前記所定の機能実行装置への送信が完了した後で前記第２のファイルを前記所定の機能実行装置へ送信させる第２の送信手段と、
して機能させるためのコンピュータプログラム。
【請求項２】
前記第２の送信手段は、
前記第１のファイルの送信が完了した前記所定の機能実行装置が再起動した後に前記第２のファイルを再起動した前記所定の機能実行装置へ送信させる手段である請求項１に記載のコンピュータプログラム。
【請求項３】
前記コンピュータを、
前記第１のファイルの送信が完了した後、前記所定の機能実行装置を再起動させるための再起動指示を、前記所定の機能実行装置へ送信させる第１再起動指示手段として機能させる請求項１または請求項２に記載のコンピュータプログラム。
【請求項４】
前記端末装置は、再起動した前記所定の機能実行装置との通信の再確立を促すための報知を行う報知部を備えており、
前記コンピュータを、
再起動した前記所定の機能実行装置との通信を再確立できなかった場合は、前記報知を前記報知部に行わせる報知手段として機能させる請求項２または請求項３に記載のコンピュータプログラム。
【請求項５】
前記コンピュータを、
再起動した前記所定の機能実行装置に対して送信すべき前記第２のファイルが存在しない場合は、前記報知手段として機能させない請求項４に記載のコンピュータプログラム。
【請求項６】
前記第２の送信手段は、
再起動した前記所定の機能実行装置との通信が再確立されたことを契機として、前記第２のファイルを再起動した前記機能実行装置へ送信させる手段である請求項２ないし請求項５のいずれか１項に記載のコンピュータプログラム。
【請求項７】
前記第２の送信手段は、
再起動した前記所定の機能実行装置との通信が再確立されたことを契機として、ユーザの操作により前記第２のファイルを再起動した前記所定の機能実行装置へ送信可能な状態にさせる手段である請求項２ないし請求項５のいずれか１項に記載のコンピュータプログラム。
【請求項８】
前記コンピュータを、
前記端末装置と通信可能な複数の機能実行装置が存在する場合において、前記第２の送信手段として機能させる際に、前記第２のファイルを送信すべき前記所定の機能実行装置を前記複数の機能実行装置の中から検索させる検索手段として機能させ、
前記第２の送信手段は、
前記第２のファイルを前記検索手段により検索された前記所定の機能実行装置へ送信させる手段である請求項１ないし請求項７のいずれか１項に記載のコンピュータプログラム。
【請求項９】
前記コンピュータを、
前記第１の送信手段として機能させる際に、前記第１のファイルを送信した前記所定の機能実行装置を他の機能実行装置と識別するための識別データを前記端末装置の所定の記憶領域に記憶させる記憶手段として機能させ、
前記検索手段は、
前記コンピュータを前記第２の送信手段として機能させる際に、前記第２のファイルを送信すべき前記所定の機能実行装置を、前記複数の機能実行装置の中から、前記記憶手段により前記所定の記憶領域に記憶させた前記識別データに基づいて検索させる手段である請求項８に記載のコンピュータプログラム。
【請求項１０】
前記コンピュータを、
前記第２のファイルの送信が完了した前記所定の機能実行装置を再起動させるための再起動指示を、前記第２のファイルの送信が完了した前記所定の機能実行装置へ送信させる第２再起動指示手段として機能させるための請求項１ないし請求項９のいずれか１項に記載のコンピュータプログラム。
【請求項１１】
機能実行装置が実行するソフトウェアを前記機能実行装置へ送信する端末装置であって、
前記機能実行装置との通信を制御する通信制御部を備えており、
前記通信制御部は、
ファームウェアである第１のファイルを前記機能実行装置である所定の機能実行装置へ送信する第１の送信処理と、
前記ファームウェアである第１のファイルと異なるファイルであって、前記所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを前記所定の機能実行装置へ送信する場合は、前記第１のファイルの前記所定の機能実行装置への送信が完了した後で前記第２のファイルを前記所定の機能実行装置へ送信する第２の送信処理と、
を実行することを特徴とする端末装置。
【請求項１２】
機能実行装置が実行するソフトウェアを端末装置から前記機能実行装置へ送信するために前記端末装置に備えられたコンピュータが実行するデータ送信方法であって、
ファームウェアである第１のファイルを前記機能実行装置である所定の機能実行装置へ送信し、
前記ファームウェアである第１のファイルと異なるファイルであって、前記所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを前記所定の機能実行装置へ送信する場合は、前記第１のファイルの前記所定の機能実行装置への送信が完了した後で前記第２のファイルを前記所定の機能実行装置へ送信することを特徴とするデータ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機能実行装置が実行するソフトウェアを端末装置から機能実行装置へ送信するために端末装置に備えられたコンピュータが実行するコンピュータプログラムおよびデータ送信方法、さらに端末装置に関する。
【背景技術】
【０００２】
従来、機能実行装置が実行するファームウェアであるファームウェアファイルを端末装置から機能実行装置へ送信することにより、機能実行装置のファームウェアを更新する手法が提案されている（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８-１４０２３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかし、前述した従来の手法では、端末装置から機能実行装置へ各種の設定ファイル（たとえば、通信設定ファイルや本体設定ファイルなど）を送信した後でファームウェアファイルを送信すると、そのファームウェアファイルの情報によっては（たとえば、設定ファイルをクリアするコマンドが含まれている場合）、各種の設定ファイルに設定されている情報がクリアされてしまうという問題があった。
また、そのような問題に対処するためには、ユーザが端末装置のフォルダの中から、機能実行装置に適合したファームウェアファイルや各種の設定ファイルを探し出し、探し出したファイルを適切な順番で送信しなければならないため、非常に手間が掛かっていた。
【０００５】
そこで、本発明は、上記の諸問題を解決するために創出されたものであって、端末装置から機能実行装置へファームウェアファイルを送信する際に、機能実行装置の機能の実行時において使用される情報がクリアされるおそれがなく、かつ、送信に手間が掛からないコンピュータプログラム、データ送信方法および端末装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した目的を達成するため、本発明のコンピュータプログラムは、機能実行装置が実行するソフトウェアを端末装置から機能実行装置へ送信するために端末装置に備えられたコンピュータが実行するコンピュータプログラムであって、コンピュータを、ファームウェアである第１のファイルを機能実行装置である所定の機能実行装置へ送信させる第１の送信手段と、ファームウェアである第１のファイルと異なるファイルであって、所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを所定の機能実行装置へ送信する場合は、第１のファイルの所定の機能実行装置への送信が完了した後で第２のファイルを所定の機能実行装置へ送信させる第２の送信手段と、して機能させるためのコンピュータプログラムであることを特徴とする。
【０００７】
第１の送信手段は、ファームウェアである第１のファイルを端末装置から所定の機能実行装置へ送信させ、第２の送信手段は、ファームウェアである第１のファイルと異なるファイルであって、所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを所定の機能実行装置へ送信する場合は、第１のファイルの所定の機能実行装置への送信が完了した後で第２のファイルを所定の機能実行装置へ送信させる。そして、本発明のコンピュータプログラムは、コンピュータを第１および第２の送信手段として機能させる。
つまり、本発明のコンピュータプログラムをコンピュータに実行させれば、ファームウェアである第１のファイルの所定の機能実行装置への送信が完了した後で、ファームウェアである第１のファイルと異なるファイルであって、所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを所定の機能実行装置へ送信することができる。
したがって、本発明のコンピュータプログラムによれば、所定の機能実行装置の機能の実行時において使用される情報の端末装置から所定の機能実行装置への送信が完了した後で、端末装置へファームウェアファイルを送信することにより、所定の機能実行装置の機能の実行時において使用される情報がクリアされるおそれがない。
しかも、端末装置から所定の機能実行装置へ送信すべきファイルをユーザが選別したり、ファイルの送信順序をユーザが決定したりする必要がないため、ファイルの送信に手間が掛からない。
【０００８】
また、前述した目的を達成するため、本発明の端末装置は、機能実行装置が実行するソフトウェアを機能実行装置へ送信する端末装置であって、機能実行装置との通信を制御する通信制御部を備えており、通信制御部は、ファームウェアである第１のファイルを機能実行装置である所定の機能実行装置へ送信する第１の送信処理と、ファームウェアである第１のファイルと異なるファイルであって、所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを所定の機能実行装置へ送信する場合は、第１のファイルの所定の機能実行装置への送信が完了した後で第２のファイルを所定の機能実行装置へ送信する第２の送信処理と、を実行することを特徴とする。
【０００９】
端末装置が備える通信制御部が実行する第１の送信処理は、ファームウェアである第１のファイルを端末装置から機能実行装置である所定の機能実行装置へ送信し、第２の送信処理は、ファームウェアである第１のファイルと異なるファイルであって、所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを所定の機能実行装置へ送信する場合は、第１のファイルの所定の機能実行装置への送信が完了した後で第２のファイルを所定の機能実行装置へ送信する。
つまり、本発明の端末装置によれば、ファームウェアである第１のファイルの所定の機能実行装置への送信が完了した後で、ファームウェアである第１のファイルと異なるファイルであって、所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを所定の機能実行装置へ送信することができる。
したがって、本発明の端末装置によれば、所定の機能実行装置の機能の実行時において使用される情報の端末装置から所定の機能実行装置への送信が完了した後で、端末装置へファームウェアファイルを送信することにより、所定の機能実行装置の機能の実行時において使用される情報がクリアされるおそれがない。
しかも、端末装置から所定の機能実行装置へ送信すべきファイルをユーザが選別したり、ファイルの送信順序をユーザが決定したりする必要がないため、ファイルの送信に手間が掛からない。
【００１０】
また、前述した目的を達成するため、本発明のデータ送信方法は、機能実行装置が実行するソフトウェアを端末装置から機能実行装置へ送信するために端末装置に備えられたコンピュータが実行するデータ送信方法であって、ファームウェアである第１のファイルを機能実行装置である所定の機能実行装置へ送信し、ファームウェアである第１のファイルと異なるファイルであって、所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを所定の機能実行装置へ送信する場合は、第１のファイルの所定の機能実行装置への送信が完了した後で第２のファイルを所定の機能実行装置へ送信することを特徴とする。
【００１１】
端末装置に備えられたコンピュータは、ファームウェアである第１のファイルを所定の機能実行装置へ送信し、ファームウェアである第１のファイルと異なるファイルであって、所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを所定の機能実行装置へ送信する場合は、第１のファイルの所定の機能実行装置への送信が完了した後で第２のファイルを所定の機能実行装置へ送信する。
つまり、本発明のデータ送信方法によれば、ファームウェアである第１のファイルの所定の機能実行装置への送信が完了した後で、ファームウェアである第１のファイルと異なるファイルであって、所定の機能実行装置の機能の実行時において使用される情報を示す第２のファイルを所定の機能実行装置へ送信することができる。
したがって、本発明のデータ送信方法によれば、所定の機能実行装置の機能の実行時において使用される情報の端末装置から所定の機能実行装置への送信が完了した後で、端末装置へファームウェアファイルを送信することにより、所定の機能実行装置の機能の実行時において使用される情報がクリアされるおそれがない。
しかも、端末装置から所定の機能実行装置へ送信すべきファイルをユーザが選別したり、ファイルの送信順序をユーザが決定したりする必要がないため、ファイルの送信に手間が掛からない。
【発明の効果】
【００１２】
本発明を実施すれば、端末装置から機能実行装置へファームウェアファイルを送信する際に、機能実行装置の機能の実行時において使用される情報がクリアされるおそれがなく、かつ、送信に手間が掛からないコンピュータプログラム、データ送信方法および端末装置を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施形態の模式図である。
【図２】携帯端末およびモバイルプリンタの主な電気的構成をブロックで示す説明図である。
【図３】携帯端末のＣＰＵが実行する主な処理の流れを示すフローチャートである。
【図４】図３に示す処理の続きを示すフローチャートである。
【図５】図４に示す処理の続きを示すフローチャートである。
【図６】本発明の第２実施形態において携帯端末のＣＰＵが実行する主な処理の流れを一部省略して示すフローチャートである。
【図７】携帯端末の表示画面を示す説明図である。
【発明を実施するための形態】
【００１４】
〈第１実施形態〉
［携帯端末が行う通信の概要］
本発明の第１実施形態に係る携帯端末が行う通信の概要について図１を参照しつつ説明する。
本実施形態の携帯端末１０は、モバイルプリンタ２０との間で、相互に通信可能に構成されている。本実施形態では、携帯端末１０は、Wi-Fi（登録商標）などの無線ＬＡＮ、または、Bluetooth（登録商標）などの通信規格によってモバイルプリンタ２０と相互に通信を行う。また、携帯端末１０は、通信回線を介してサーバ４０との間で、相互に通信可能に構成されている。本実施形態では、上記の通信回線としてインターネットを用いる。携帯端末１０は、タブレット端末などの携帯情報端末やスマートフォン（携帯情報端末機能を備えた携帯電話）などである。また、モバイルプリンタ２０は、携帯可能なプリンタである。
【００１５】
モバイルプリンタ２０には、印字媒体に印字を行うためのプリンタドライバなどのファームウェアがインストールされている。モバイルプリンタ２０にインストールされているファームウェアは、携帯端末１０から通信によって提供され、更新される。サーバ４０に備えられたローカルフォルダ４１には、ファームウェアファイルや通信設定ファイルなどのファイルＡ〜Ｄが記憶されている。これらのファイルＡ〜Ｄは、サーバ４０のＩＴ管理者などによってローカルフォルダ４１に記憶される。サーバ４０に設定されたファイル４２には、ローカルフォルダ４１のＵＲＬおよびバージョン情報が、たとえば、JSON(JavaScript(登録商標) Object Notation)形式で記述されている。携帯端末１０のメモリ１２に記憶されたファイル１２ｂには、サーバ４０のファイル４２のＵＲＬおよびローカルフォルダ４１のバージョン情報が、たとえば、JSON形式で記述されている。また、携帯端末１０のメモリ１２には、サーバ４０のローカルフォルダ４１と同期可能な同期フォルダ１２ａが記憶されている。同期フォルダ１２ａには、サーバ４０のローカルフォルダ４１からダウンロードされたファームウェアファイルや通信設定ファイルなどのファイルＡ〜Ｄが格納されている。
【００１６】
携帯端末１０には、モバイルプリンタ２０のファームウェアなどをアップデートするためのソフトウェアであるアップデーターが格納されている。ユーザが携帯端末１０の表示部１３に表示されたアップデートボタンＢ１を選択すると、アップデーターが起動し、サーバ４０と通信を開始する。続いて、携帯端末１０は、ファイル４２に記述されているバージョン情報をダウンロードし、そのダウンロードしたバージョン情報と、自身のファイル１２ｂに記述されているバージョン情報とが一致するか否かを判定する。続いて、携帯端末１０は、バージョン情報が一致していないと判定した場合は、ファイル１２ｂに記述されているＵＲＬに対応するサーバ４０のローカルフォルダ４１にアクセスし、ローカルフォルダ４１に格納されているファイルＡ〜Ｄを同期フォルダ１２ａにダウンロードする。ファイルＡ〜Ｄは、フォルダに格納され、サーバ４０から携帯端末１０へ、たとえば、Ｚｉｐ（登録商標）などの形式で圧縮されてダウンロードされる。図１において符号Ｚは、圧縮されたフォルダを示す。ダウンロードされたフォルダは、携帯端末１０の同期フォルダ１２ａにおいて解凍される。また、携帯端末１０のファイル１２ｂに記述されているバージョン情報は、サーバ４０からファイルをダウンロードする毎にファイル４２に記述されているバージョン情報に更新される。このように、携帯端末１０は、アップデーターを起動してサーバ４０と通信を行うことにより、モバイルプリンタ２０にて使用するファームウェアや通信設定ファイルなどをアップデートする。
【００１７】
［携帯端末およびモバイルプリンタの主な電気的構成］
次に、本実施形態の携帯端末およびモバイルプリンタの主な電気的構成について図２を参照しつつ説明する。
携帯端末１０は、ＣＰＵ１１、メモリ１２、表示部１３、操作部１４および通信インターフェース（図では通信Ｉ／Ｆと記載）１５などの構成要素と、通信バス１６とを備える。携帯端末１０の各構成要素は通信バス１６を通じて相互に電気的に接続されている。ＣＰＵ１１は、携帯端末１０とサーバ４０との通信制御、携帯端末１０とモバイルプリンタ２０との通信制御など、携帯端末１０の全体を制御する。メモリ１２は、ＲＯＭ、ＲＡＭおよびフラッシュＲＯＭなどにより構成されている。メモリ１２には、ＣＰＵ１１をコンピュータとして機能させるためのコンピュータプログラム１２ｃが記憶されている。そのコンピュータプログラムには、サーバ４０と通信を行うための通信制御プログラム、モバイルプリンタ２０と通信を行うための通信制御プログラムなどが含まれている。サーバ４０と通信を行うための通信制御プログラムには、モバイルプリンタ２０が実行するファームウェアをアップデートするためのアップデーターが含まれている。また、メモリ１２には、サーバ４０からダウンロードしたファイルであって、モバイルプリンタ２０の機能の実行時において使用される情報を示すファイルなどが記憶されている。
【００１８】
本実施形態では、モバイルプリンタ２０の機能の実行時において使用される情報を示すファイルは、通信設定ファイル、本体設定ファイル、テンプレート設定ファイル、フォント設定ファイル、用紙サイズ設定ファイルなどである。通信設定ファイルには、Wi-Fiなどの無線ＬＡＮ通信、または、有線ＬＡＮ通信を行うためのＩＰアドレス、サブネットマスク、ＤＨＣＰサーバのＩＰアドレス、ＬＡＮ通信機能のＯＮまたはＯＦＦ、Blue tooth通信機能のＯＮまたはＯＦＦなどの情報が設定されている。また、本体設定ファイルには、電源設定や印刷設定などのモバイルプリンタ２０の動作に関する設定、モバイルプリンタ２０の表示部２７の設定などを行うための情報が設定されている。テンプレート設定ファイルおよびフォント設定ファイルは、携帯端末１０から送信されてきたテキストデータをモバイルプリンタ２０に保存されている印字レイアウトのオブジェクトに反映させるための情報が設定されている。用紙サイズ設定ファイルは、モバイルプリンタ２０のプリンタドライバに設定されていない用紙サイズをモバイルプリンタ２０にて設定可能に追加するための情報が設定されている。以下、モバイルプリンタ２０の機能の実行時において使用される情報を示す上記各ファイルを各種設定ファイルと称する。
なお、モバイルプリンタ２０が本発明の機能実行装置の一例であり、携帯端末１０が端末装置の一例である。また、ＣＰＵ１１が本発明のコンピュータまたは通信制御部の一例である。また、メモリ１２が、本発明の所定の記憶領域の一例である。また、ファームウェアファイルが本発明の第１のファイルの一例であり、各種設定ファイルが本発明の第２のファイルの一例である。
【００１９】
表示部１３は、液晶表示パネルまたは有機ＥＬパネルなどにより構成されている。操作部１４は、表示部１３の表面に設けられたタッチセンサ、携帯端末１０の側面などに設けられた操作スイッチなどにより構成されている。表示部１３は、携帯端末１０の動作状態、ＣＰＵ１１の処理結果、サーバ４０との通信状態、モバイルプリンタ２０との通信状態、アップデーターなどのソフトウェアを起動するための各種のアイコンの表示などを行う。通信インターフェース１５は、モバイルプリンタ２０およびサーバ４０との通信を可能にするための回路である。
【００２０】
モバイルプリンタ２０は、ＣＰＵ２１と、メモリ２２と、印字ヘッド駆動回路２３と、印字ヘッド２４と、モータ駆動回路２５と、プラテンローラ用モータ２６と、表示部２７と、操作部２８と、通信インターフェース（図では通信Ｉ／Ｆと記載）２９と、通信バス３０とを備える。ＣＰＵ２１、メモリ２２、印字ヘッド駆動回路２３、モータ駆動回路２５、表示部２７、操作部２８および通信インターフェース２９は、通信バス３０を通じて相互に通信可能に接続されている。ＣＰＵ２１は、印字制御、紙（印字媒体）送り制御、携帯端末１０との通信の制御など、モバイルプリンタ２０の全体を制御する。メモリ２２は、ＲＯＭ、ＲＡＭおよびフラッシュＲＯＭなどにより構成されている。メモリ２２には、モバイルプリンタ２０をプリンタとして機能させるためのプリンタドライバなどのファームウェアファイルおよび各種の設定ファイルなどが記憶されている。
【００２１】
本実施形態では、印字ヘッド２４はサーマルヘッドであり、印字ヘッド駆動回路２３は、印字ヘッド２４を駆動する。プラテンローラ用モータ２６は、印字ヘッド２４と対向して配置されたプラテンローラ（図示せず）を回転駆動させるためのモータである。印刷用紙やラベルなどの印字媒体は、印字ヘッドとプラテンローラとによって挾持され、プラテンローラの回転により、所定方向へ送り出される。モータ駆動回路２５は、プラテンローラ用モータ２６の回転を制御する。表示部２７は、電源のオンおよびオフを表示する電源表示ランプ、モバイルプリンタ２０の状態を表示する状態表示ランプ、充電状態を表示する充電表示ランプ、Wi-Fiの接続状態を表示するWi-Fi表示ランプ、Bluetoothの接続状態を表示するBluetooth表示ランプなどにより構成されている。操作部２８は、モバイルプリンタ２０の電源のオンおよびオフを行うための電源ボタン、紙（印字媒体）送りのためのフィードボタンなどにより構成されている。通信インターフェース２９は、携帯端末１０との通信を可能にするための回路である。
【００２２】
［ファームウェアのアップデート］
次に、モバイルプリンタ２０のメモリ２２（図２）に記憶されているファームウェアをアップデートするために携帯端末１０のＣＰＵ１１（図２）が実行する処理の流れについて図３ないし図５を参照しつつ説明する。
ここでは、携帯端末１０のメモリ１２の同期フォルダ１２ａ（図２）には、サーバ４０（図１）からダウンロードしたファームウェアファイルおよび各種設定ファイルなどが記憶されているものとする。また、携帯端末１０およびモバイルプリンタ２０は、携帯端末１０をマスターとし、モバイルプリンタ２０をスレーブとして、Bluetoothによって相互通信を行うものとする。
【００２３】
ＣＰＵ１１は、モバイルプリンタ２０との通信が確立したか否かを判定し（図３のステップ（以下、ステップをＳと略す）１）、モバイルプリンタ２０との通信が確立したと判定した場合は（Ｓ１：Ｙｅｓ）、モバイルプリンタ２０から、モバイルプリンタ２０のモデル名を示すモデル名情報および通信インターフェース名を示すインターフェース情報を取得し、メモリ１２に記憶する（Ｓ２）。続いて、ＣＰＵ１１は、同期フォルダ１２ａ（図２）に記憶されているファイルの中に、ファイルの種類を特定していないファイルが存在するか否かを判定する（Ｓ３）。つまり、ファームウェアファイルか否かの判定を行っていないファイルが存在するか否かを判定する（Ｓ３）。ここで、ＣＰＵ１１は、ファイルの種類を特定していないファイルが存在すると判定した場合は（Ｓ３：Ｙｅｓ）、Ｓ２においてメモリ１２に記憶したモデル名情報および通信インターフェース情報に基づいて、携帯端末１０からモバイルプリンタ２０へ送信可能なファイルの拡張子を特定する（Ｓ４）。続いて、ＣＰＵ１１は、Ｓ３において、種類を特定していないと判定したファイルの拡張子は、Ｓ４において特定した拡張子か否かを判定する（Ｓ５）。
【００２４】
たとえば、ＣＰＵ１１は、Ｓ４において、ファイルの拡張子として「.blf」が特定された場合は、Ｓ３において種類を特定していないと判定したファイルの拡張子が「.blf」であるか否かを判定する（Ｓ５）。図１に示す例では、同期フォルダ１２ａに記憶されているファイルＡの拡張子は「.blf」であるため、ＣＰＵ１１は、ファイルＡは、モバイルプリンタ２０へ送信可能なファイルであると判定する。
ここで、ＣＰＵ１１は、Ｓ４において特定した拡張子であると判定した場合は（Ｓ５：Ｙｅｓ）、そのファイルのヘッダには、Ｓ２においてメモリ１２に記憶したモデル名情報が含まれているか否かを判定する（Ｓ６）。ここで、ＣＰＵ１１は、Ｓ２においてメモリ１２に記憶したモデル名情報が含まれていると判定した場合は（Ｓ６：Ｙｅｓ）、そのファイルのヘッダには、ファームウェアを特定する情報が含まれているか否かを判定する（Ｓ７）。たとえば、ファイルのヘッダにファームウェアを特定する文字列（たとえば、ＦＰ−ＭＡＩＮ）が含まれているか否かを判定する（Ｓ７）。ここで、ＣＰＵ１１は、ファイルのヘッダにファームウェアを特定する情報が含まれていると判定した場合は（Ｓ７：Ｙｅｓ）、その判定の対象となったファイルをファームウェアファイルに分類する（Ｓ８）。また、ＣＰＵ１１は、ファイルのヘッダにファームウェアを特定する情報が含まれていないと判定した場合は（Ｓ７：Ｎｏ）、その判定の対象となったファイルをファームウェア以外のその他のファイル（各種設定ファイルなど）に分類する（Ｓ９）。なお、Ｓ５またはＳ６において否定判定の対象となったファイルは、Ｓ３における判定の対象にはならない。
【００２５】
ＣＰＵ１１は、Ｓ３において、同期フォルダ１２ａに記憶されているファイルの中にファイルの種類を特定していないファイルが存在しないと判定するまで上記のＳ３〜Ｓ９を繰り返す。そして、ＣＰＵ１１は、同期フォルダ１２ａに記憶されているファイルの中にファイルの種類を特定していないファイルが存在しないと判定した場合は（Ｓ３：Ｎｏ）、ファームウェアファイルに分類されたファイルが存在するか否かを判定し（図４のＳ１０）、ファームウェアファイルに分類されたファイルが存在すると判定した場合は（Ｓ１０：Ｙｅｓ）、複数のファームウェアファイルが存在するか否かを判定する（Ｓ１１）。ここで、ＣＰＵ１１は、複数のファームウェアファイルが存在すると判定した場合は（Ｓ１１：Ｙｅｓ）、各ファームウェアファイルからバージョン情報を読取り、一番大きいバージョンのファームウェアファイルを特定する（Ｓ１２）。続いて、ＣＰＵ１１は、モバイルプリンタ２０との通信により、モバイルプリンタ２０に記憶されているファームウェアのバージョン情報を取得し（Ｓ１３）、Ｓ１２において特定したバージョンと、Ｓ１３においてモバイルプリンタ２０から取得したバージョンとが一致していないか否かを判定する（Ｓ１４）。
【００２６】
ここで、ＣＰＵ１１は、バージョンが一致していないと判定した場合は（Ｓ１４：Ｙｅｓ）、ファームウェアファイルを更新する必要があるため、Ｓ１２において特定したバージョンのファームウェアファイルをモバイルプリンタ２０へ送信する（Ｓ１５）。
また、ＣＰＵ１１は、Ｓ１１において、複数のファームウェアが存在しないと判定した場合は（Ｓ１１：Ｎｏ）、Ｓ１３にスキップし、モバイルプリンタ２０に記憶されているファームウェアのバージョン情報を取得する。
続いて、ＣＰＵ１１は、その他のファイルに分類されたファイルが存在するか否かを判定し（図５のＳ１６）、存在すると判定した場合は（Ｓ１６：Ｙｅｓ）、モバイルプリンタ２０の再起動が必要か否かを判定する（Ｓ１７）。ここで、Ｓ１５においてファームウェアファイルをモバイルプリンタ２０へ送信し、かつ、Ｓ１６において、その他のファイルに分類されたファイルが存在すると判定した場合は（Ｓ１６：Ｙｅｓ）、その他のファイルを送信して使用可能な状態にするためにはモバイルプリンタ２０が再起動してファームウェアを機能させる必要があるため、モバイルプリンタ２０の再起動が必要であると判定する（Ｓ１７：Ｙｅｓ）。また、Ｓ１０において、ファームウェアファイルに分類されたファイルが存在しないと判定し（Ｓ１０：Ｎｏ）、あるいは、Ｓ１４においてファームウェアのバージョンが一致すると判定し（Ｓ１４：Ｎｏ）、Ｓ１５をスキップした場合は、ファームウェアファイルをモバイルプリンタ２０へ送信していないため、再起動が必要ではないと判定する（Ｓ１７：Ｎｏ）。
【００２７】
ここで、ＣＰＵ１１は、モバイルプリンタ２０の再起動が必要であると判定した場合は（Ｓ１７：Ｙｅｓ）、ＣＰＵ１１は、モバイルプリンタ２０の再起動を促す報知を行う（Ｓ１７Ａ）。たとえば、表示部１３に「ファームウェアの送信が完了しました。モバイルプリンタを再起動してください。」というメッセージを表示する。これにより、ユーザにモバイルプリンタ２０を再起動させることにより、ファームウェアを機能させることができる。続いて、ＣＰＵ１１は、その他のファイルを送信すべきモバイルプリンタ２０を検索する（Ｓ１９）。つまり、携帯端末１０から送信されたファームウェアファイルを受信したモバイルプリンタ２０は、再起動することにより、携帯端末１０との通信が遮断されるので、携帯端末１０と通信可能な範囲に携帯端末１０が複数存在する場合は、Ｓ１５においてファームウェアファイルを送信したモバイルプリンタ２０を検索する必要がある。このため、その他のファイルを送信すべきモバイルプリンタ２０を検索する（Ｓ１９）。続いて、ＣＰＵ１１は、その他のファイルを送信すべきモバイルプリンタ２０が見つかったか否かを判定し（Ｓ２０）、見つかっていないと判定した場合は（Ｓ２０：Ｎｏ）、モバイルプリンタ２０の検索を開始してからの経過時間がタイムアウトしたか否かを判定する（Ｓ２１）。ここで、ＣＰＵ１１は、タイムアウトしていないと判定した場合は（Ｓ２１：Ｎｏ）、再度、モバイルプリンタ２０を検索する（Ｓ１９）。モバイルプリンタ２０の検索を開始してからタイムアウトするまでの時間は、モバイルプリンタ２０がファームウェアファイルを受信してから再起動するまでに必要な時間に基づいて設定する。
【００２８】
ＣＰＵ１１は、タイムアウトするまでモバイルプリンタ２０を検索し（Ｓ１９〜Ｓ２１）、モバイルプリンタ２０が見つかったと判定した場合は（Ｓ２０：Ｙｅｓ）、その他のファイルを、Ｓ２０において見つかったモバイルプリンタ２０へ順次送信する（Ｓ２２）。つまり、ＣＰＵ１１は、再起動したモバイルプリンタ２０との通信が再確立されたことを契機として、その他のファイルを、再起動したモバイルプリンタ２０へ順次送信する。また、ＣＰＵ１１は、Ｓ２１において、タイムアウトしたと判定した場合は（Ｓ２１：Ｙｅｓ）、モバイルプリンタ２０との通信が遮断されたことを報知するエラー報知を行うとともに、ユーザの手動による通信の再確立を待つ状態に変化し（Ｓ２４）、今回の処理サイクルを終了する。たとえば、エラー報知は、表示部１３に、「通信エラー」というメッセージを表示することにより、行うことができる。また、Ｓ１６において、その他のファイルに分類されたファイルが存在しないと判定した場合は（Ｓ１６：Ｎｏ）、今回の処理サイクルを終了する。また、Ｓ１７において、モバイルプリンタ２０の再起動が必要ではないと判定した場合は（Ｓ１７：Ｎｏ）、その他のファイルを順次送信する（Ｓ２２）。
なお、ＣＰＵ１１がＳ１〜Ｓ２４を実行するためのコンピュータプログラムが、本発明のコンピュータプログラムの一例であり、本発明のデータ送信方法の一例である。また、Ｓ２が本発明の記憶手段の一例である。また、Ｓ１５が本発明の第１の送信手段の一例であり、第１の送信処理の一例である。また、Ｓ２２が本発明の第２の送信手段の一例であり、第２の送信処理の一例である。また、Ｓ１９が本発明の検索手段の一例である。また、モデル名情報が本発明の識別データの一例である。
【００２９】
［第１実施形態の効果］
（１）上述した第１実施形態のＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が実行するデータ送信方法および携帯端末１０を実施すれば、ファームウェアファイルのモバイルプリンタ２０への送信が完了した後で、各種設定ファイルをモバイルプリンタ２０へ送信することができる。
したがって、携帯端末１０からモバイルプリンタ２０へ各種設定ファイルの送信が完了した後でモバイルプリンタ２０へファームウェアファイルを送信してしまい、各種設定ファイルがクリアされるおそれがない。
しかも、携帯端末１０からモバイルプリンタ２０へ送信すべきファイルをＣＰＵ１１が選別し、かつ、正しい送信順序でモバイルプリンタ２０へ送信することができるため、送信すべきファイルをユーザが選別したり、ファイルの送信順序をユーザが決定したりする必要がないので、ファイルの送信に手間が掛からない。
【００３０】
（２）さらに、第１実施形態のＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が実行するデータ送信方法および携帯端末１０を実施すれば、ファームウェアファイルの送信が完了したモバイルプリンタ２０が再起動した後に、各種設定ファイルを、再起動したモバイルプリンタ２０へ送信することができる。
したがって、ファームウェアファイルを更新したモバイルプリンタ２０へ各種設定ファイルなどを送信することができるため、ファームウェアと各種設定ファイルとを関連付けることができる。つまり、各種設定ファイルを使用可能な状態にすることができる。
【００３１】
（３）さらに、第１実施形態のＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が実行するデータ送信方法および携帯端末１０を実施すれば、再起動したモバイルプリンタ２０との通信が再確立されたことを契機として、各種設定ファイルを、再起動したモバイルプリンタ２０へ送信することができるため、各種設定ファイルの送信忘れを防止することができる。
【００３２】
（４）さらに、第１実施形態のＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が実行するデータ送信方法および携帯端末１０を実施すれば、携帯端末１０と通信可能な複数のモバイルプリンタ２０が存在する場合であっても、モバイルプリンタ２０が再起動した際に、各種設定ファイルを送信すべきモバイルプリンタ２０を検索し、その検索したモバイルプリンタ２０へ各種設定ファイルを送信することができる。
したがって、ファームウェアファイルを送信したモバイルプリンタ２０に各種設定ファイルを確実に送信することができる。
【００３３】
（５）上述したように、第１実施形態のＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が実行するデータ送信方法および携帯端末１０を実施すれば、携帯端末１０からモバイルプリンタ２０へファームウェアを送信する際に、モバイルプリンタ２０の機能の実行時において使用される情報を示すファイルがクリアされるおそれがなく、かつ、送信に手間が掛からないコンピュータプログラム、データ送信方法および端末装置を提供することができる。
【００３４】
〈第２実施形態〉
次に、本発明の第２実施形態について図を参照しつつ説明する。
なお、第１実施形態と同じ構成および機能については説明を省略する。また、ＣＰＵ１１が実行する処理のうち第１実施形態と同じ処理（Ｓ１〜Ｓ１７，Ｓ１９〜Ｓ２２）については説明を省略または簡略化する。
ＣＰＵ１１は、モバイルプリンタ２０の再起動が必要であると判定した場合は（図６のＳ１７：Ｙｅｓ）、モバイルプリンタ２０へ再起動コマンドを送信する（Ｓ１８）。これにより、モバイルプリンタ２０は再起動し、ファームウェアを実行可能な状態になる。ＣＰＵ１１は、検索により見つかったモバイルプリンタ２０へ各種設定ファイルを順次送信すると（Ｓ２２）、モバイルプリンタ２０へ再起動コマンドを送信する（Ｓ２３）。これにより、モバイルプリンタ２０は再起動し、ファームウェアと各種設定ファイルとが関連付けられ、各種設定ファイルを使用可能な状態になる。また、ＣＰＵ１１は、タイムアウトしたと判定した場合は（Ｓ２１：Ｙｅｓ）、モバイルプリンタ２０との通信の再確立を促す報知を行うとともに、ユーザの手動による通信の再確立を待つ状態に変化する（Ｓ２５）。
【００３５】
たとえば、図７に示すように、携帯端末１０の表示部１３に、通信の再確立を促すメッセージ画像Ｍ１と、再接続するための接続ボタンＢ２とを表示する。図示の例では、「下の接続ボタンをタップしてモバイルプリンタとの通信を再確立してください」というメッセージ画像Ｍ１と、「接続」と表示された接続ボタンＢ２とが表示されている。ユーザが接続ボタンＢ２をタップすると、モバイルプリンタ２０との通信が再確立される。
また、その他のファイルに分類されたファイルが存在しない場合は（Ｓ１６：Ｎｏ）、通信の再確立を促す報知は行わない。なお、表示部１３が本発明の報知部の一例であり、再起動コマンドが本発明の再起動指示の一例である。また、Ｓ１８が本発明の第１再起動指示手段の一例であり、Ｓ２３が第２再起動指示手段の一例であり、Ｓ２５が報知手段の一例である。
【００３６】
［第２実施形態の効果］
（１）上述した第２実施形態のＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が実行するデータ送信方法および携帯端末１０を実施すれば、携帯端末１０からモバイルプリンタ２０を再起動させることができるため、ユーザがモバイルプリンタ２０を再起動させる手間を省くことができる。
しかも、モバイルプリンタ２０が再起動することにより、ファームウェアが更新され、モバイルプリンタ２０をファームウェアを実行可能な状態にすることができる。
【００３７】
（２）第２実施形態のＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が実行するデータ送信方法および携帯端末１０を実施すれば、その他のファイルの送信が完了した後でモバイルプリンタ２０を再起動させることができるため、ユーザがモバイルプリンタ２０を再起動させる手間を省くことができる。
しかも、モバイルプリンタ２０を再起動することにより、その他のファイルが更新され、ファームウェアとその他のファイルとを関連付けることができる。さらに、モバイルプリンタ２０をその他のファイルを使用可能な状態にすることができる。
【００３８】
（３）第２実施形態のＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が実行するデータ送信方法および携帯端末１０を実施すれば、モバイルプリンタ２０の再起動により、モバイルプリンタ２０との通信が遮断された場合に、通信の再確立を促す報知を行うことができるため、ユーザに通信の再確立を促すことができる。
【００３９】
（４）第２実施形態のＣＰＵ１１が実行するコンピュータプログラム、ＣＰＵ１１が実行するデータ送信方法および携帯端末１０を実施すれば、その他のファイルに分類されたファイルが存在しない場合は、通信の再確立を促す報知を行わないため、その分、ＣＰＵ１１に無駄な処理を実行しないようにすることができる。
【００４０】
〈他の実施形態〉
（１）携帯端末１０からモバイルプリンタ２０へファームウェアファイルを送信した後でモバイルプリンタ２０が再起動し、モバイルプリンタ２０との通信が再確立されたことを契機として、ユーザの操作により、ファームウェアファイル以外のその他のファイルを再起動したモバイルプリンタ２０へ送信可能な状態にさせる手段を備えることもできる。
この手段を実施すれば、ユーザは、その他のファイルをモバイルプリンタ２０へ送信するか否かを選択することができる。なお、上記手段は本発明の第２の送信手段の一例である。
【００４１】
（２）ファームウェアファイルのインストールが完了したときに再起動するコンピュータプログラムをファームウェアファイルと共に携帯端末１０からモバイルプリンタ２０へ送信する手段を設けることもできる。この手段を実施すれば、ＣＰＵ１１は、ファームウェアファイルをモバイルプリンタ２０へ送信した後で再起動コマンドを送信する処理を省くことができる。また、再起動するプログラムが予めファームウェアに含まれている場合は、再起動を促すメッセージの表示は不要であり、また、再起動コマンドの送信も不要である。
（３）その他のファイルのインストールが完了したときに再起動するコンピュータプログラムを、その他のファイルと共に携帯端末１０からモバイルプリンタ２０へ送信する手段を設けることもできる。この手段を実施すれば、ＣＰＵ１１は、その他のファイルをモバイルプリンタ２０へ送信した後で再起動コマンドを送信する処理を省くことができる。
【００４２】
（４）携帯端末１０およびモバイルプリンタ２０をＵＳＢコードなどの接続コードによって接続し、その接続コードを通じて相互通信することもできる。
（５）本発明は、端末装置との通信によりファームウェアファイルを受信し、その受信したファームウェアファイルにより機能する装置であれば、どのような装置にも本発明を適用することができる。たとえば、非携帯タイプのプリンタ、ファクシミリ装置、複合機、ミシンなどに適用することができる。
【００４３】
（６）モバイルプリンタ２０へ送信するファイルのうち、通信設定を含むファイルには、モバイルプリンタ２０との通信を切断する設定が含まれることがあり、通信設定を含まないファイルを送信する前に、通信設定を含むファイルを送信すると、モバイルプリンタ２０との通信が切断され、通信設定を含まないファイルを送信することができなくなるおそれがある。
そこで、モバイルプリンタ２０へ送信する各種設定ファイルの中に、通信設定を含むファイルと通信設定を含まないファイルとが存在する場合は、通信設定を含まないファイルを送信した後で、通信設定を含むファイルを送信する送信手段を備えることが望ましい。
この送信手段を有する端末装置に備えられたコンピュータが実行するコンピュータプログラムは、次に記載する内容のコンピュータプログラムとして表すことができる。
【００４４】
機能実行装置が実行するソフトウェアを端末装置から機能実行装置へ送信するために端末装置に備えられたコンピュータが実行するコンピュータプログラムであって、
コンピュータを、
機能実行装置の機能の実行時において使用される情報を示すファイルを機能実行装置へ送信する場合は、端末装置との間で行う通信に関する設定を含むファイルが存在する場合は、通信に関する設定を含まないファイルを送信した後で、通信の設定を含むファイルを送信させる送信手段と、
して機能させるためのコンピュータプログラム。
【符号の説明】
【００４５】
１０    携帯端末
１１    ＣＰＵ
１２    メモリ
１２ａ  同期フォルダ
１２ｃ  コンピュータプログラム
１３    表示部
２０    モバイルプリンタ
２２    メモリ
４０    サーバ
４１    ローカルフォルダ
Ｂ１    アップデートボタン
【図１】
2019153036.tif 000003
【図２】
2019153036.tif 000004
【図３】
2019153036.tif 000005
【図４】
2019153036.tif 000006
【図５】
2019153036.tif 000007
【図６】
2019153036.tif 000008
【図７】
2019153036.tif 000009