Abstract:
An image processing apparatus is provided. Firmware customized for a user who uses the image processing apparatus has been installed in advance in the image processing apparatus. The image processing apparatus has a hardware processor configured to monitor a condition of use of the image processing apparatus and determine whether or not the monitored condition of use is a condition of use adapted to the customized firmware, and to perform processing for updating to the latest standard firmware when it is determined that the monitored condition of use departs from the condition of use adapted to the customized firmware.

Description:
[0001]    This application is based on Japanese Patent Application No. 2015-073131 filed with the Japan Patent Office on Mar. 31, 2015, the entire content of which is hereby incorporated by reference. 
       BACKGROUND OF THE INVENTION 
       [0002]    1. Field of the Invention 
         [0003]    The present disclosure relates to an image processing apparatus in which firmware has been installed, a distribution server and a management server capable of communicating with such an image processing apparatus, and a computer readable storage medium. 
         [0004]    2. Description of the Related Art 
         [0005]    Firmware (hereinafter also denoted as appropriate as “FW”) installed in an image processing apparatus such as a multi-function machine such as a multi-functional peripheral (MFP) has conventionally been standard FW conforming to all machines. Even though FW common to all machines has thus been installed, needs of users have been fulfilled. 
         [0006]    Recently, however, demands from users have become diversified, and even in the same user (for example, a company), a form of use of an image processing apparatus is often significantly different for each department in the user. Thus, standard FW often does not fulfill the demands from individual users. 
         [0007]    In order to address such a situation, in some image processing apparatuses, a plurality of installed applications are individually revised and selected depending on a situation. Needs of a user to use equipment in its own special environment tend to increasingly be high, and consequently, mere revision and selection of some applications cannot meet the needs. Namely, needs of the user cannot be met when various modifications are not made on the entire FW. In order to meet such needs, separately from standard FW, customized FW modified to be tailored to a form of use by the user has been released. 
         [0008]    Various techniques have been proposed for updating to a program in equipment. 
         [0009]    For example, Japanese Laid-Open Patent Publication No. 2006-331394 discloses a technique for computing an importance of modifications to a current program to the latest program based on improvement in functionality resulting from addition of the functionality, improvement in stability resulting from fixing of troubles, a range affected by the modifications (breadth of the affected range), and an amount of the modifications (the possibility of being affected), and performing or prompting update to the latest program when the importance of modifications exceeds a predetermined threshold value. 
         [0010]    Japanese Laid-Open Patent Publication No. 2005-092803 discloses a system that dynamically assigns a plurality of pieces of software to a plurality of servers to perform customer services. In the system, in order to appropriately apply revision information to software, an index to which there have been integrated the newness of a customer&#39;s software and the security level of the software is calculated by using information provided at the time of issuance of the revision information. If the calculated index does not satisfy restricting conditions designated by a customer, revision information is applied to the software. The software is thus updated. 
         [0011]    Japanese Laid-Open Patent Publication No. 2012-242980 discloses an image formation apparatus obtaining the latest firmware corresponding to an image formation control module from a data server through a network connection portion with start of update of firmware stored in at least one control module based on update firmware stored in a portable storage medium and automatically updating the firmware stored in the image formation control module to the latest version. 
         [0012]    Japanese Laid-Open Patent Publication No. 2012-221197 discloses a system including various means used for registering firmware for an image formation apparatus in a distribution server. The system includes means for searching for a product code tied to firmware to be registered, means for searching for the latest firmware tied to the product code, means for determining whether or not a type of the latest firmware is appropriate, means for taking over update setting of the latest firmware if the type of the latest firmware is appropriate, means for searching for the second latest firmware if the type of the latest firmware is not appropriate, means for changing update setting depending on a type of the firmware when the type of the firmware to be registered is changed, and means for checking compatibility of update setting as to the firmware to be registered and all versions of firmware already registered in the distribution server. 
         [0013]    Japanese Laid-Open Patent Publication No. 2011-204239 discloses a method for upgrading firmware of an image forming apparatus using a print controlling terminal device. The method includes the steps of receiving information on firmware installed in the image forming apparatus, identifying whether there exists a firmware version newer or later than that installed in the image forming apparatus using the received firmware information, determining whether the firmware of the newer or latest version is compatible with a program installed in the print controlling terminal device using compatibility information when firmware of the newer or latest version exists, receiving the firmware of the newer or latest version from a firmware providing server according to the compatibility determination result, and upgrading firmware of the image forming apparatus using the received firmware of the newer or latest version. 
         [0014]    Updating customized FW at an appropriate frequency like a frequency for standard FW, however, is difficult from a point of view of labor and cost of a manufacturer, because, for example, the number of image processing apparatuses to which customized FW is adapted is considerably smaller than the number of multi-function machines to which the standard FW is adapted. 
         [0015]    Consequently, a user who uses the multi-function machine in which customized FW has been installed often has to continue to use the FW having a potential bug or inconvenient specifications, and suffers from a defective condition in terms of quality. 
       SUMMARY OF THE INVENTION 
       [0016]    In view of the circumstances above, promoted use of standard firmware in an image processing apparatus in which customized firmware had been installed has been demanded. 
         [0017]    According to one aspect of the present disclosure, an image processing apparatus in which firmware customized for a user who uses the image processing apparatus has been installed in advance is provided. The image processing apparatus has a hardware processor configured to monitor a condition of use of the image processing apparatus and determine whether or not the monitored condition of use is a condition of use adapted to the customized firmware, and to perform processing for updating to the latest standard firmware when the monitored condition of use is determined as departing from the condition of use adapted to the customized firmware. 
         [0018]    According to another aspect of the present disclosure, a distribution server for updating firmware installed in an image processing apparatus is provided. The distribution server has a hardware processor configured to monitor a condition of use of the image processing apparatus and determine whether or not the monitored condition of use is a condition of use adapted to customized firmware, and to perform processing for updating to the latest standard firmware in the image processing apparatus when the monitored condition of use is determined as departing from the condition of use adapted to the customized firmware. 
         [0019]    According to yet another aspect of the present disclosure, a management server for managing an image processing apparatus in which firmware has been installed is provided. The management server has a hardware processor configured to monitor a condition of use of the image processing apparatus and determine whether or not the monitored condition of use is a condition of use adapted to customized firmware, and to perform processing for updating to the latest standard firmware in the image processing apparatus when the monitored condition of use is determined as departing from the condition of use adapted to the customized firmware. 
         [0020]    According to yet another aspect of the present disclosure, a non-transitory computer-readable storage medium storing a program executed by a computer of an image processing apparatus is provided. The program causes the computer to monitor a condition of use of the image processing apparatus and determine whether or not the condition of use is a condition of use adapted to customized firmware, and to perform processing for updating to the latest standard firmware when the condition of use is determined as departing from the condition of use. 
         [0021]    According to yet another aspect of the present disclosure, a non-transitory computer-readable storage medium storing a program executed by a computer of a distribution server for updating firmware installed in an image processing apparatus is provided. The program causes the computer to monitor a condition of use of the image processing apparatus and determine whether or not the condition of use is a condition of use adapted to customized firmware, and to perform processing for updating to the latest standard firmware in the image processing apparatus when the condition of use is determined as departing from the condition of use. 
         [0022]    According to yet another aspect of the present disclosure, a non-transitory computer-readable storage medium storing a program executed by a computer of a management server for managing an image processing apparatus in which firmware has been installed is provided. The program causes the computer to monitor a condition of use of the image processing apparatus and determine whether or not the condition of use is a condition of use adapted to customized firmware, and to perform processing for updating to the latest standard firmware in the image processing apparatus when the condition of use is determined as departing from the condition of use. 
         [0023]    The foregoing and other objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0024]      FIG. 1  is a diagram showing one example of an overall configuration of a first embodiment of an image processing system. 
           [0025]      FIG. 2  is a perspective view showing an overall configuration of an MFP. 
           [0026]      FIG. 3  is a diagram showing a hardware configuration of the MFP. 
           [0027]      FIG. 4  is a diagram for illustrating a function implemented by the MFP. 
           [0028]      FIG. 5  is a diagram showing one example of a hardware configuration of an FW distribution server. 
           [0029]      FIG. 6  is a diagram for illustrating an environment of use of customized FW for a “toner near empty function.” 
           [0030]      FIG. 7  is a diagram for illustrating an environment of use of customized FW for a “paper near empty function.” 
           [0031]      FIG. 8  is a flowchart of processing for downloading standard FW performed in the MFP in which customized FW has been installed. 
           [0032]      FIG. 9  is a diagram showing a sequence when the MFP in which the customized FW has been installed downloads standard FW in the first embodiment of the image processing system. 
           [0033]      FIG. 10  is a diagram showing a sequence when the MFP in which the customized FW has been installed downloads the standard FW in a second embodiment of the image processing system. 
           [0034]      FIG. 11  is a diagram showing a configuration of the image processing system in a third embodiment. 
           [0035]      FIG. 12  is a diagram showing one example of a hardware configuration of an MFP manager server. 
           [0036]      FIG. 13  is a diagram showing a sequence in processing in the image processing system in the third embodiment. 
           [0037]      FIG. 14  is a diagram showing a sequence in processing in the image processing system in a fourth embodiment. 
           [0038]      FIG. 15  is a diagram showing a sequence in processing performed in the image processing system in a fifth embodiment. 
       
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENTS 
       [0039]    An embodiment of an image processing system will be described hereinafter with reference to the drawings. In the description below, the same elements and components have the same reference characters allotted. Their label and function are also identical. Therefore, description thereof will not be repeated. 
       First Embodiment 
     (1) Configuration of Image Processing System 
       [0040]    An image processing system shown in  FIG. 1  includes an FW distribution server  100  and five MFPs  200 . These can give a notification to one another through a network NX. The number “5” of MFPs  200  shown in  FIG. 1  is by way of example and limitation thereto is not intended. 
         [0041]    In the image processing system in  FIG. 1 , firmware for each of various functions such as a printing function or for implementing two or more functions has been installed in each MFP  200 . Firmware installed in MFP  200  includes firmware installed in common to a large number of MFPs  200  (hereinafter also referred to as “standard FW”) and firmware customized to an environment of use of one (or a few) MFP(s) (hereinafter also referred to as “customized FW”). 
         [0042]    A difference between customized FW and standard FW corresponds to an environment of use of MFP  200  in which the customized FW has been installed. More specifically, for example, customized FW which has a warning about near empty issued under such a condition that the remaining number of sheets of paper is larger than that associated with standard FW is installed in MFP  200  which is used in a manner satisfying an environment of use in which “a frequency of use of printing paper is high.” 
         [0043]    Each MFP  200  determines whether or not an environment for using customized FW (an environment of use) has been established in that MFP  200 . Thereafter, when it determines that the environment has not been established, MFP  200  notifies FW distribution server  100  of that fact as shown with a solid line in  FIG. 1  (an environment cancellation notification). In the description below, the fact that an environment of use is established in MFP  200  may be expressed as “a condition of use of MFP  200  being within the environment of use.” The fact that an environment of use is not established in MFP  200  may be expressed as “a condition of use of MFP  200  departing from the environment of use.” 
         [0044]    FW distribution server  100  has MFP  200  which is a sender of the environment cancellation notification download standard FW as shown with a dashed arrow in  FIG. 1 . 
         [0045]    The image processing system in  FIG. 1  includes an MFP group  200 X constituted of three MFPs  200 . In the image processing system in  FIG. 1 , FW distribution server  100  may have each MFP  200  in MFP group  200 X download standard FW, in response to transmission of the environment cancellation notification from all MFPs  200  in MFP group  200 X. 
       (2) Appearance of MFP 
       [0046]      FIG. 2  is a perspective view showing an overall configuration of MFP  200 . 
         [0047]    As shown in  FIG. 2 , MFP  200  includes an image reading portion  2  which obtains image data by optically reading a document and an image formation portion  6  which prints an image on paper based on the image data. A feeder  4  which sends a document to image reading portion  2  is arranged in an upper surface of a main body of MFP  200  representing an image formation apparatus. A plurality of paper feed portions  9  which supply printing paper to image formation portion  6  are arranged in a lower portion of MFP  200 . A tray  5  to which printing paper having an image formed by image formation portion  6  is ejected is arranged in a central portion of MFP  200 . An operation panel  207  is attached on a front surface side in an upper portion of the main body of MFP  200 . 
         [0048]    (3) Hardware Configuration of MFP 
         [0049]      FIG. 3  is a diagram showing a hardware configuration of MFP  200 . As shown in  FIG. 3 , MFP  200  includes, as main constituent elements, a central processing unit (CPU)  201 , a read only memory (ROM)  202 , a random access memory (RAM)  203 , an NV-RAM  204 , a storage  205 , a network interface controller (NIC)  206 , operation panel  207 , a scanner portion  208 , and a printer portion  209 . Elements in MFP  200  are connected to one another through an internal bus. 
         [0050]    CPU  201  represents one example of a processor performing processing for centralized control of operations of MFP  200 . 
         [0051]    ROM  202  stores various types of data including a program executed by CPU  201 . 
         [0052]    RAM  203  and NV-RAM  204  function as a work area while CPU  201  executes a program. RAM  203  and/or NV-RAM  204  may temporarily save image data read by scanner portion  208 . 
         [0053]    Storage  205  saves various types of data such as a destination information registered in MFP  200  or a document. Document data may be input to MFP  200  through a network or generated as scanner portion  208  reads an image. 
         [0054]    NIC  206  is a communication interface in exchange of information by MFP  200  with FW distribution server  100 . 
         [0055]    Operation panel  207  accepts input of various types of information such as a setting value for copy quality or paper, or information for registering or selecting a transmission destination of scanning (destination registration). For example, a liquid crystal display portion on which a touch panel is layered is provided on a surface of operation panel  207 . For example, operation panel  207  displays contents of setting in MFP  200 . 
         [0056]    Scanner portion  208  scans a set document and generates image data of the document. A known method can be adopted for a method of generating image data in scanner portion  208 . Scanner portion  208  is included in image reading portion  2  in  FIG. 2 . 
         [0057]    Printer portion  209  is an apparatus converting image data read by scanner portion  208  or print data transmitted from an external information processing apparatus such as FW distribution server  100  into data for printing, for example, in accordance with electrophotography, and printing an image of a document or the like based on resultant data. A known technique can be adopted for a manner of formation of an image such as electrophotography. Printer portion  209  is included in image formation portion  6  in  FIG. 2 . 
         [0058]    In MFP  200 , an operation of MFP  200  as described herein is implemented as CPU  201  executes an appropriate program. A program executed by CPU  201  may stored in storage  205  or stored in a storage medium attachable to or removable from MFP  200 , instead of being stored in ROM  202  as described above. A storage medium storing the program is a medium storing data in a non-volatile manner, such as a CD-ROM (Compact Disc-Read Only Memory), a DVD-ROM (Digital Versatile Disk-Read Only Memory), a USB (Universal Serial Bus) memory, a memory card, an FD (Flexible Disk), a hard disk, an SSD (Solid State Drive), a magnetic tape, a cassette tape, an MO (Magnetic Optical Disc), an MD (Mini Disc), an IC (Integrated Circuit) card (except for memory cards), an optical card, a mask ROM, an EPROM, an EEPROM (Electronically Erasable Programmable Read-Only Memory), and the like. 
         [0059]    The program according to the present disclosure may execute the processing by calling a necessary module out of program modules provided as a part of an operating system (OS) of the computer, in a prescribed sequence and at prescribed timing. In such a case, the program itself does not include the module above but executes the processing in cooperation with the OS. Such a program not including the module may also be encompassed in the program according to the present invention. 
         [0060]    The program according to the present disclosure may be provided in a manner incorporated as a part of another program. In such a case as well, the program itself does not include the module included in another program, but the program executes the processing in cooperation with another program. Such a program incorporated in another program may also be encompassed in the program according to the present invention. 
         [0061]    The provided program product is installed in a program storing portion such as a hard disk for execution. The program product includes the program itself and a storage medium recording the program. 
         [0062]    (4) Functional Configuration of MFP 
         [0063]    As described above, MFP  200  implements various functions such as a printing function.  FIG. 4  is a diagram for illustrating a function implemented by MFP  200 . 
         [0064]    Referring to  FIG. 4 , as the premise of explanation of the functions of MFP  200 , a function of CPU  201  and a configuration in printer portion  209  will be described. 
         [0065]    CPU  201  of MFP  200  functions as a network control unit  201 A, an engine control unit  201 B, and a system control unit  201 C by executing an appropriate program. Network control unit  201 A controls input and output. Engine control unit  201 B controls an operation of a mechanism in an electrophotography process in printer portion  209  (a print head portion, a paper transportation portion, and a fixation portion). System control unit  201 C controls a job for each function of copying, faxing, scanning, and printing. 
         [0066]    Printer portion  209  is constituted of various elements for image formation. The elements constituting printer portion  209  include a color image formation unit  209 A, a monochrome image formation unit  209 B, a first paper counting unit  209 C, a second paper counting unit  209 D, a third paper counting unit  209 E, a color toner amount counting unit  209 F, and a monochrome toner amount counting unit  209 G. 
         [0067]    Color image formation unit  209 A includes an element for forming a color toner image on printing paper through an electrophotography process. Color image formation unit  209 A includes an element (such as a sensor) for controlling image stability of a color image in MFP  200 . 
         [0068]    Monochrome image formation unit  209 B includes an element for forming a monochrome toner image on printing paper through the electrophotography process. Monochrome image formation unit  209 B includes an element (such as a sensor) for controlling image stability of a monochrome image in MFP  200 . 
         [0069]    First paper counting unit  209 C, second paper counting unit  209 D, and third paper counting unit  209 E count the number of used sheets of paper of respective three types of printing paper stored individually in paper feed portion  9  in  FIG. 2 . First paper counting unit  209 C, second paper counting unit  209 D, and third paper counting unit  209 E are implemented, for example, as CPU  201  updates a count value of the type of used printing paper when a print job is executed. The count value may be reset at the time of replenishment with printing paper. 
         [0070]    Color toner amount counting unit  209 F counts an amount of consumption of toner used in image formation in color image formation unit  209 A. Color toner amount counting unit  209 F is implemented, for example, as CPU  201  calculates an amount of toner of each color expected to be used based on image data to be printed and holds a total of calculation results for each color when a print job is executed. An amount of consumption of toner of each color may be reset at the time of replenishment with toner of a corresponding color. 
         [0071]    Monochrome toner amount counting unit  209 G counts an amount of consumption of toner used in image formation in monochrome image formation unit  209 B. Monochrome toner amount counting unit  209 G is implemented, for example, as CPU  201  calculates an amount of monochrome toner expected to be used based on image data to be printed and holds a total of calculation results when a print job is executed. An amount of consumption of monochrome toner may be reset at the time of replenishment with monochrome toner. 
         [0072]    The functions of MFP  200  are implemented mainly by system control unit  201 C. More specifically, the functions of MFP  200  are implemented as CPU  201  executes firmware corresponding to each function of MFP  200 . Six representative functions of MFP  200  will be listed below. 
         [0073]    1) Copying Function 
         [0074]    A copying function is a function to read an image on a document and form the read image on printing paper. For example, firmware for implementing the copying function includes a software module controlling scanner portion  208  and printer portion  209 . 
         [0075]    2) Fax Function 
         [0076]    A fax function is a function to transmit and receive an image through facsimile communication. Firmware for implementing the fax function includes a software module controlling NIC  206 , scanner portion  208 , and printer portion  209 . 
         [0077]    3) Printer Function 
         [0078]    A printer function is a function to form an externally input image on printing paper. Firmware for implementing the printer function includes a software module controlling NIC  206  and printer portion  209 . 
         [0079]    4) Toner Near Empty Function 
         [0080]    A toner near empty function is a function to issue a warning that a remaining amount of toner is small. Firmware for implementing the toner near empty function includes a software module having a warning displayed on operation panel  207  when an amount of consumption of toner is equal to or greater than a prescribed amount (a remaining amount of toner is equal to or less than a prescribed amount), based on a detection output from color toner amount counting unit  209 F and/or monochrome toner amount counting unit  209 G. 
         [0081]    5) Paper Near Empty Function 
         [0082]    A paper near empty function is a function to issue a warning that a remaining amount of printing paper is small. Firmware implementing the paper near empty function includes a software module having a warning displayed on operation panel  207  when an amount of consumption of paper is equal to or greater than a prescribed amount (a remaining amount of printing paper is equal to or less than a prescribed amount), based on a detection output from first paper counting unit  209 C, second paper counting unit  209 D, and/or third paper counting unit  209 E. 
         [0083]    6) Image Stabilization Control Function 
         [0084]    An image stabilization control function is a function to stabilize an image formed on MFP  200 . Firmware for implementing the image stabilization control function includes a software module, for example, for having engine control unit  201 B control image stabilization in color image formation unit  209 A and/or monochrome image formation unit  209 B. In image stabilization control, for example, color image formation unit  209 A and/or monochrome image formation unit  209 B form(s) a toner pattern and detect(s) a density of the toner pattern, and thereafter engine control unit  201 B corrects at least one of parameters associated with development quality to a direction toward a target toner image density based on a result of detection of the density. 
         [0085]    (5) Hardware Configuration of FW Distribution Server 
         [0086]      FIG. 5  is a diagram showing one example of a hardware configuration of FW distribution server  100 . 
         [0087]    As shown in  FIG. 5 , FW distribution server  100  includes, as main constituent elements, a CPU  101 , a RAM  102 , a storage  103 , a display  104 , an input apparatus  105 , and an NIC  106 . CPU  101 , RAM  102 , storage  103 , display  104 , input apparatus  105 , and communication device  106  are connected to one another through an internal bus. 
         [0088]    CPU  101  represents one example of an arithmetic unit performing processing for controlling an overall operation of FW distribution server  100 . 
         [0089]    RAM  102  functions as a work area while CPU  101  performs processing. 
         [0090]    Storage  103  saves various types of data including various programs such as an OS or a browser application executed by CPU  101  and data used in execution of these programs. Storage  103  is implemented, for example, by a medium storing data in a non-volatile manner, such as a CD-ROM, a DVD-ROM, a USB memory, a memory card, an FD, a hard disk, an SSD, a magnetic tape, a cassette tape, an MO, an MD, an IC card (except for memory cards), an optical card, a mask ROM, an EPROM, an EEPROM, and the like. A program downloaded through a network may also be installed in storage  103 . 
         [0091]    Display  104  is a display apparatus for displaying an image showing a result of processing by a program executed by CPU  101 . FW distribution server  100  may not have display  104 . 
         [0092]    Input apparatus  105  is implemented, for example, by a keyboard or an operation button. When input apparatus  105  accepts an input of information, it sends the information to CPU  101 . 
         [0093]    NIC  106  is a communication interface in exchange of information by FW distribution server  100  with MFP  200 . 
         [0094]    (6) Detection of Environment of Use of Customized FW 
         [0095]    A specific example of customized FW and a method of detecting an environment for using customized FW (an environment of use) in connection with the “toner near empty function,” the “paper near empty function,” and the “image stabilization control function” will now be exemplified. 
         [0096]    1) Customized FW for “Toner Near Empty Function” 
         [0097]    The toner near empty function is a function to show a warning when an amount of consumption of toner is equal to or greater than a prescribed amount (a remaining amount of toner is equal to or less than a prescribed amount) as described above. For standard FW, a “prescribed amount” associated with representation of a warning is specified. 
         [0098]    One example of customized FW for the toner near empty function specifies as the “prescribed amount,” an amount smaller than an amount specified for standard FW. With installation of customized FW, a warning about toner near empty can be shown at an earlier stage during the course of consumption of toner, than with installation of standard FW. 
         [0099]    2) Environment of Use of Customized FW for “Toner Near Empty Function” 
         [0100]    In MFP  200 , a situation that a rate of consumption of toner is equal to or higher than a certain rate is an environment of use of customized FW.  FIG. 6  is a diagram for illustrating an environment of use of customized FW for the “toner near empty function.” In  FIG. 6 , the ordinate represents an amount of consumption of toner and the abscissa represents lapse of time during which MFP  200  is used.  FIG. 6  shows three lines L 1  to L 3 . An amount of consumption of toner here represents, for example, an amount of consumption of monochrome toner. 
         [0101]    Line L 2  represents a “certain rate” in connection with a rate of consumption of toner. 
         [0102]    Line L 1  is greater in inclination than line L 2 . Namely, a situation shown with line L 1  is higher in rate of consumption of toner than a situation shown with line L 2 . Therefore, the situation shown with line L 1  is a situation where an environment of use of customized FW for the “toner near empty function” has been established. 
         [0103]    Line L 3  is smaller in inclination than line L 2 . Namely, a situation shown with line L 3  is lower in rate of consumption of toner than the situation shown with line L 2 . Therefore, the situation shown with line L 3  is a situation where an environment of use of customized FW for the “toner near empty function” has not been established. 
         [0104]      FIG. 6  shows a threshold value at which a warning about toner near empty is output in the case of standard FW as “standard Ver near empty.” A threshold value at which a warning about toner near empty is output in the case of customized FW is shown as “customized FW near empty.” 
         [0105]    Customized FW for the toner near empty function is installed, for example, in MFP  200  which is assumed to be used in a situation in which a frequency of use of color toner and/or monochrome toner is high. 
         [0106]    In MFP  200 , an amount of consumption is detected for each color of color toner (CYM) and a warning about toner near empty may be shown. 
         [0107]    3) Customized FW for “Paper Near Empty Function” 
         [0108]    The paper near empty function is a function to show a warning when an amount of consumption of printing paper is equal to or greater than a certain amount as described above. For standard FW, a “certain amount” in connection with representation of a warning is specified. 
         [0109]    One example of customized FW for the paper near empty function specifies as the “prescribed amount,” an amount smaller than an amount specified for standard FW. With installation of customized FW, a warning about paper near empty can be shown at an earlier stage during the course of consumption of printing paper, than with installation of standard FW. 
         [0110]    4) Environment of Use of Customized FW for “Paper Near Empty Function” 
         [0111]    In MFP  200 , a situation that a rate of consumption of printing paper is equal to or higher than a certain rate is an environment of use of customized FW.  FIG. 7  is a diagram for illustrating an environment of use of customized FW for the “paper near empty function.” In  FIG. 7 , the ordinate represents an amount of consumption of printing paper and the abscissa represents lapse of time during which MFP  200  is used.  FIG. 7  shows three lines L 1  to L 3 . An amount of consumption of printing paper here represents, for example, an amount of consumption detected by any of first paper counting unit  209 C to third paper counting unit  209 E. 
         [0112]    Line L 2  represents a “certain rate” in connection with a rate of consumption of printing paper. 
         [0113]    Line L 1  is greater in inclination than line L 2 . Namely, a situation shown with line L 1  is higher in rate of consumption of printing paper than a situation shown with line L 2 . Therefore, the situation shown with line L 1  is a situation where an environment of use of customized FW for the “paper near empty function” has been established. 
         [0114]    Line L 3  is smaller in inclination than line L 2 . Namely, a situation shown with line L 3  is lower in rate of consumption of printing paper than the situation shown with line L 2 . Therefore, the situation shown with line L 3  is a situation where an environment of use of customized FW for the “paper near empty function” has not been established. 
         [0115]      FIG. 7  shows a threshold value at which a warning about paper near empty is output in the case of standard FW as “standard Ver near empty.” A threshold value at which a warning about paper near empty is output in the case of customized FW is shown as “customized FW near empty.” 
         [0116]    Customized FW for the paper near empty function is installed, for example, in MFP  200  which is assumed to be used in a situation in which a frequency of use of printing paper is high. 
         [0117]    MFP  200  counts an amount of consumption of three types of printing paper, as shown with first paper counting unit  209 C, second paper counting unit  209 D, and third paper counting unit  209 E in  FIG. 4 . As compared with the standard FW, only for some of the three types of printing paper, customized FW for the “paper near empty function” may have a threshold value modified, at which a warning about near empty is shown. 
         [0118]    In particular, in MFP  200 , paper feed portion  9  may include a storage portion dedicated for printing paper used for the fax function. First paper counting unit  209 C may detect an amount of consumption of paper stored in the storage portion dedicated for printing paper used for the fax function. As compared with the standard FW, for an amount of use (or a remaining amount) of printing paper dedicated for the fax function, customized FW for the “paper near empty function” may have a threshold value modified, at which a warning about near empty is shown. 
         [0119]    5) Customized FW for “Image Stabilization Control Function” 
         [0120]    The image stabilization control function is a function to perform processing for stabilizing a formed image in both of color image formation unit  209 A and monochrome image formation unit  209 B. 
         [0121]    In one example of customized FW for the image stabilization control function, as compared with standard FW, a frequency of processing for stabilization of an image in monochrome image formation unit  209 B is set to be higher than a frequency of processing for stabilization of an image in color image formation unit  209 A. Namely, customized FW is lower in frequency of processing for stabilization of an image in color image formation unit  209 A (the number of times of processing performed in a unit period) than standard FW. 
         [0122]    6) Environment of Use of Customized FW for “Image Stabilization Control Function” 
         [0123]    In MFP  200 , an environment in which a frequency of output (formation on printing paper) of a monochrome image is higher by a certain value or more than a frequency of output of a color image is an environment of use of customized FW. 
         [0124]    In MFP  200 , for example, the number of output monochrome images and the number of output color images are counted with a known method. In MFP  200 , a frequency of output of monochrome images is specified by specifying the number of output monochrome images per unit period (for example, one week). In MFP  200 , a frequency of output of color images is specified by specifying the number of output color images per unit period. Thereafter, these two frequencies are compared with each other. When the frequency of output of monochrome images is higher than the frequency of output of color images by a certain value or more, it is determined that an environment of use of customized FW for the “image stabilization control function” has been established. When an environment in which the frequency of output of monochrome images is higher than the frequency of output of color images by a certain value or more is not established, it is determined that an environment of use of customized FW for the “image stabilization control function” has not been established. 
         [0125]    Customized FW for the image stabilization control function is installed, for example, in MFP  200  assumed to be used in a situation where output mainly of a monochrome image is indicated. In general, a time period required for processing for stabilization of an image in color image formation unit  209 A is longer than a time period required for processing for stabilization of an image in monochrome image formation unit  209 B. With installation of customized FW, in MFP  200  placed in an environment where a frequency of output of color images is relatively low, the number of times of processing performed for stabilization of color images can be decreased and thus a waiting time of a user, for stabilization of a color image can be decreased. 
         [0126]    (7) Flow of Processing in MFP 
         [0127]      FIG. 8  is a flowchart of processing for downloading standard FW performed in MFP  200  in which customized FW has been installed. Processing shown in  FIG. 8  is performed, for example, every certain period (for example, one week). The processing shown in  FIG. 8  is processing performed in MFP  200  in which customized FW for the “toner near empty function” has been installed by way of example of customized FW. 
         [0128]    Referring to  FIG. 8 , when timing to perform the processing in  FIG. 8  comes, in step S 10 , CPU  201  calls a history of amounts of consumption of toner for a certain period. Here, monochrome toner is addressed by way of example of toner. Thereafter, control proceeds to step S 20 . 
         [0129]    In step S 20 , CPU  201  calculates an inclination of an amount of consumption of toner based on the amounts of consumption of toner for a certain period called in step S 10 . Thereafter, control proceeds to step S 30 . 
         [0130]    In step S 30 , CPU  201  determines whether or not the inclination calculated in step S 20  is smaller than a threshold value (for example, the inclination of line L 2  in  FIG. 6 ). When CPU  201  determines that the calculated inclination is smaller than the threshold value (YES in step S 30 ), control proceeds to step S 40 . When CPU  201  determines that the calculated inclination is not smaller than the threshold value (NO in step S 30 ), control returns to step S 10 . When control returns to step S 10 , the processing in  FIG. 8  is not performed until the certain period further elapses. 
         [0131]    In step S 40 , CPU  201  notifies FW distribution server  100  of cancellation of the environment of use of customized FW in MFP  200  on which CPU  201  is mounted. In response to the notification, FW distribution server  100  transmits the latest standard FW to MFP  200 . Thereafter, control proceeds to step S 50 . 
         [0132]    In step S 50 , CPU  201  downloads standard FW, that is, receives the latest standard FW transmitted from FW distribution server  100 , and updates firmware by installing the downloaded latest standard FW. The processing in  FIG. 8  thus ends. 
         [0133]    According to the processing in  FIG. 8 , when an environment of use of customized FW has not been established in MFP  200 , MFP  200  in which customized FW has been installed notifies FW distribution server  100  of that fact. In the present embodiment, FW distribution server  100  transmits the latest standard FW to MFP  200  in response to the notification. MFP  200  downloads standard FW and thereafter automatically updates firmware. 
         [0134]    (8) Flow of Processing in Image Processing System 
         [0135]    A flow of processing in the image processing system as a whole in the first embodiment will be described with reference to  FIG. 9 .  FIG. 9  is a diagram showing a sequence at the time when MFP  200  in which the customized FW has been installed downloads standard FW in the first embodiment of the image processing system. The sequence diagram shows exchange between MFP  200  and FW distribution server  100 . 
         [0136]    More specifically, in the image processing system in the first embodiment, as shown with step SA 1  in  FIG. 9 , when MFP  200  determines that an environment of use has not been established in MFP  200 , it transmits an “environment cancellation notification” to FW distribution server  100 , which corresponds to step S 40  in  FIG. 8 . 
         [0137]    When FW distribution server  100  receives the “environment cancellation notification” from MFP  200 , as shown with step SA 2 , FW distribution server  100  transmits standard FW to MFP  200 . In response, in step SA 3 , MFP  200  receives the standard FW and updates firmware. Step SA 3  corresponds to step S 50  in  FIG. 8 , and firmware is updated by installing downloaded standard FW. 
       Second Embodiment 
       [0138]    In the image processing system in a second embodiment, for example, three MFPs  200  are managed in a group like MFP group  200 X in  FIG. 1 . When an environment of use of customized FW has not been established, each MFP  200  gives a notification of that fact as an “environment cancellation notification” (see step S 40  in  FIG. 8 ) as in the first embodiment. 
         [0139]    In the second embodiment, in response to reception of the “environment cancellation notification” from all MFPs  200  forming MFP group  200 X, FW distribution server  100  transmits “information for downloading” to each MFP  200 . 
         [0140]      FIG. 10  is a diagram showing a sequence at the time when MFP  200  in which the customized FW has been installed downloads the standard FW in the second embodiment of the image processing system. A sequence in processing performed in the image processing system in the second embodiment will more specifically be described with reference to  FIG. 10 . 
         [0141]    As shown with steps SA 10 , SA 20 , and SA 30  in  FIG. 10 , each of three MFPs  200  forming MFP group  200 X transmits an environment cancellation notification to FW distribution server  100 . 
         [0142]    CPU  101  of FW distribution server  100  determines whether or not the environment cancellation notification has been received from all MFPs  200  forming MFP group  200 X as shown with step SA 40 . CPU  101  specifies from which MFP  200  the “environment cancellation notification” has been received, by referring to information specifying each MFP  200  registered in storage  103 . CPU  101  has control remain in step SA 40  until the environment cancellation notification is received from all MFPs  200  (NO in step SA 40 ), and when it determines that the environment cancellation notification has been received from all MFPs  200 , control proceeds to step SA 50  and later. 
         [0143]    CPU  101  has standard FW transmitted to each MFP  200  in steps SA 50 , SA 60 , and SA 70 . 
         [0144]    Standard FW may be transmitted from FW distribution server  100  to each MFP  200  on condition that an instruction for transmission of firmware is transmitted from each MFP  200 . 
         [0145]    FW distribution server  100  may manage MFP  200  for each of two or more groups. Namely, when CPU  101  receives an environment cancellation notification from all MFPs  200  belonging to each group of two or more groups, it may allow downloading of standard FW to all MFPs  200  belonging to the group. 
       Third Embodiment 
       [0146]    The image processing system in a third embodiment further includes a server managing MFP  200  in addition to the constituent elements in the image processing system in the first embodiment. 
         [0147]    (1) Configuration of Image Processing System 
         [0148]      FIG. 11  is a diagram showing a configuration of the image processing system in the third embodiment.  FIG. 11  shows an MFP manager server  300  as a server managing MFP  200 . 
         [0149]    In the third embodiment, as shown with a solid arrow, each of five MFPs  200  transmits an environment cancellation notification to MFP manager server  300 . In response, as shown with a thin dashed line, MFP manager server  300  requests of FW distribution server  100  for downloading of standard FW to each MFP  200 . In response, as shown with a thick dashed arrow, standard FW is downloaded from FW distribution server  100  to MFP  200 . 
         [0150]    (2) Hardware Configuration of MFP Manager Server  300   
         [0151]      FIG. 12  is a diagram showing one example of a hardware configuration of MFP manager server  300 . 
         [0152]    As shown in  FIG. 12 , MFP manager server  300  includes, as main constituent elements, a CPU  301 , a RAM  302 , a storage  303 , a display  304 , an input apparatus  305 , and an NIC  306 . CPU  301 , RAM  302 , storage  303 , display  304 , input apparatus  305 , and communication device  306  are connected to one another through an internal bus. 
         [0153]    CPU  301  represents one example of an arithmetic unit performing processing for controlling an overall operation of MFP manager server  300 . 
         [0154]    RAM  302  functions as a work area while CPU  301  performs processing. 
         [0155]    Storage  303  saves various types of data including various programs such as an OS or a browser application executed by CPU  301  and data used in execution of these programs. Storage  303  is implemented, for example, by a medium storing data in a non-volatile manner, such as a CD-ROM, a DVD-ROM, a USB memory, a memory card, an FD, a hard disk, an SSD, a magnetic tape, a cassette tape, an MO, an MD, an IC card (except for memory cards), an optical card, a mask ROM, an EPROM, an EEPROM, and the like. A program downloaded through a network may also be installed in storage  303 . 
         [0156]    Display  304  is a display apparatus for displaying an image showing a result of processing by a program executed by CPU  301 . MFP manager server  300  may not have display  304 . 
         [0157]    Input apparatus  305  is implemented, for example, by a keyboard or an operation button. When input apparatus  305  accepts input of information, it sends the information to CPU  301 . 
         [0158]    NIC  306  is a communication interface in exchange of information by MFP manager server  300  with FW distribution server  100  or MFP  200 . 
         [0159]      FIG. 13  is a diagram showing a sequence in processing in the image processing system in the third embodiment. In the image processing system, initially, referring to  FIG. 13 , as shown with step SB 10 , MFP  200  transmits an environment cancellation notification to MFP manager server  300 . 
         [0160]    In step SB 40 , CPU  301  of MFP manager server  300  determines whether or not it has received the environment cancellation notification from MFP  200 . CPU  301  has control remain in step SB 40  until it determines that the environment cancellation notification has been received from MFP  200  (NO in step SB 40 ), and when it thereafter determines that the environment cancellation notification has been received from MFP  200  (YES in step SB 40 ), control proceeds to step SB 42 . 
         [0161]    In step SB 42 , CPU  301  stands by until an input from a manager of the image processing system for an instruction to invite downloading of standard FW is received (NO in step SB 42 ). When the instruction is input (YES in step SB 42 ), control proceeds to step SB 50 . The instruction invites downloading of standard FW to MFP  200  from which the environment cancellation notification has been received in step SB 40 . Whether or not the input is from the manager of the image processing system is determined, for example, based on whether or not an ID and a password for the manager have been input to MFP manager server  300 . 
         [0162]    In step SB 50 , CPU  301  requests of FW distribution server  100  for downloading of standard FW to all MFPs  200  forming MFP group  200 X. 
         [0163]    CPU  101  of FW distribution server  100  stands by until it receives a download request from MFP manager server  300  in step SB 60  (NO in step SB 60 ). Thereafter, when CPU  101  determines that it has received a download request from MFP manager server  300  (YES in step SB 60 ), control proceeds to step SB 70  and later. 
         [0164]    In step SB 70 , CPU  101  has standard FW transmitted to each MFP  200 . In response to transmission, each MFP  200  downloads standard FW and thereafter the downloaded standard FW is installed in MFP  200 . Standard FW may be transmitted from FW distribution server  100  to MFP  200  on condition that an instruction for transmission of firmware is transmitted from MFP  200 . 
         [0165]    In the third embodiment described above, MFP  200  in which customized FW has been installed transmits an environment cancellation notification to MFP manager server  300 . In response, MFP manager server  300  allows MFP  200  to download standard FW from FW distribution server  100 . 
       Fourth Embodiment 
       [0166]    In the image processing system in a fourth embodiment, as in the image processing system (see  FIG. 11 ) in the third embodiment, MFP manager server  300  manages MFP  200 . In the image processing system in the fourth embodiment, MFP manager server  300  manages a plurality of MFPs  200  as a group as shown with MFP group  200 X in  FIG. 11 . More specifically, MFP manager server  300  requests of FW distribution server  100  for downloading of standard FW to all MFPs  200  forming MFP group  200 X on condition that an environment cancellation notification has been received from all MFPs  200  forming MFP group  200 X. 
         [0167]      FIG. 14  is a diagram showing a sequence in processing in the image processing system in a fourth embodiment. Referring to  FIG. 14 , in the image processing system in the fourth embodiment, as shown with steps SB 10 , SB 20 , and SB 30 , each of three MFPs  200  forming MFP group  200 X transmits an environment cancellation notification to MFP manager server  300 . 
         [0168]    CPU  301  of MFP manager server  300  determines in step SB 41  whether or not it has received the environment cancellation notification from all MFPs  200  forming MFP group  200 X. CPU  301  has control remain in step SB 41  until it determines that the environment cancellation notification has been received from all MFPs  200  forming MFP group  200 X (NO in step SB 41 ), and when it thereafter determines that the environment cancellation notification has been received from all MFPs  200  (YES in step SB 41 ), control proceeds to step SB 42 . 
         [0169]    In step SB 42 , CPU  301  stands by until an input from a manager of the image processing system for an instruction to invite downloading of standard FW in each MFP  200  is received (NO in step SB 42 ). When the instruction is input (YES in step SB 42 ), control proceeds to step SB 50 . Whether or not the input is from the manager of the image processing system is determined, for example, based on whether or not an ID and a password for the manager have been input to MFP manager server  300 . 
         [0170]    In step SB 50 , CPU  301  requests of FW distribution server  100  for downloading of standard FW to all MFPs  200  forming MFP group  200 X. 
         [0171]    CPU  101  of FW distribution server  100  stands by until it receives a download request from MFP manager server  300  in step SB 60  (NO in step SB 60 ). When CPU  101  determines that it has received a download request from MFP manager server  300  (YES in step SB 60 ), control proceeds to step SB 70  and later. 
         [0172]    CPU  101  has standard FW transmitted to each MFP  200  in steps SB 70 , SB 80 , and SB 90 . In response, each MFP  200  downloads standard FW and thereafter downloaded standard FW is installed in MFP  200 . 
         [0173]    Standard FW may be transmitted from FW distribution server  100  to each MFP  200  on condition that an instruction for transmission of firmware is transmitted from each MFP  200 . 
         [0174]    MFP management server  100  may manage MFP  200  for each of two or more groups. Namely, when CPU  301  receives an environment cancellation notification from all MFPs  200  belonging to each group of two or more groups, it may request of FW distribution server  100  for downloading of standard FW to all MFPs  200  belonging to the group. 
       Fifth Embodiment 
       [0175]    The image processing system in a fifth embodiment includes FW distribution server  100 , MFP  200 , and MFP manager server  300  as in the image processing system in the fourth embodiment. In the fifth embodiment, FW distribution server  100  instructs MFP  200  to download standard FW. 
         [0176]      FIG. 15  is a diagram showing a sequence in processing performed in the image processing system in the fifth embodiment. 
         [0177]    As shown in  FIG. 15 , when it is determined in step SB 41  that an environment cancellation notification has been received from all MFPs  200  forming MFP group  200 X (YES in step SB 41 ), CPU  301  of MFP manager server  300  allows control to proceed to step SB 42 . 
         [0178]    In step SB 42 , CPU  301  stands by until an input from a manager of the image processing system for an instruction to invite downloading of standard FW in each MFP  200  is received (NO in step SB 42 ). When the instruction is input (YES in step SB 42 ), control proceeds to step SB 44  and later. 
         [0179]    CPU  301  indicates downloading of standard FW to MFPs  200  forming MFP group  200 X in steps SB 44 , SB 46 , and SB 48 . 
         [0180]    In response, each MFP  200  requests of FW distribution server  100  for downloading of standard FW in steps SB 70 A, SB 80 A, and SB 90 A. 
         [0181]    In response, CPU  101  has standard FW transmitted to each MFP  200  in steps SB 70 , SB 80 , and SB 90 . 
         [0182]    In the fifth embodiment described above, MFP  200  notifies MFP manager server  300  of the fact that an environment of use of customized FW is no longer established in MFP  200 . In response, MFP manager server  300  instructs each MFP  200  to download standard FW. In response to the instruction, each MFP  200  downloads standard FW from FW distribution server  100 . 
         [0183]    MFP manager server  300  may manage a plurality of groups of MFPs  200  for each group in the fifth embodiment. Namely, CPU  301  may instruct, for each group, all MFPs  200  forming the group to download standard FW on condition that an environment cancellation notification has been received from all MFPs  200  forming the group. 
         [0184]    MFP manager server  300  does not have to manage MFPs  200  in a group in the fifth embodiment. Namely, CPU  301  may instruct MFP  200  to download standard FW each time it receives an environment cancellation notification from MFP  200 . 
         [0185]    Though embodiments of the present invention have been described, it should be understood that the embodiments disclosed herein are illustrative and non-restrictive in every respect. The scope of the present invention is defined by the terms of the claims and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.