Information processing apparatus, information processing method, and recording medium
The described information processing apparatus optimizes firmware updates by determining necessary updates based on shipping destination configurations, reducing downtime and improving efficiency by ensuring only required updates are performed.
Patent Information
- Application Number
- PCT/IB2024/063142
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-07-01
- Filing Date
- 2024-12-24
- Publication Date
- 2025-07-31
AI Technical Summary
Existing firmware update methods cause unnecessary downtime and inefficiency due to updates being performed on devices that do not require them, as they do not account for device configurations specific to shipping destinations or models, and involve significant operational restrictions.
An information processing apparatus and method that includes an update information acquisition unit, destination information acquisition unit, and update unit to determine which firmware needs updating based on shipping destination-specific configurations, ensuring only necessary updates are performed, with efficient management of the update process.
This approach reduces the time required for firmware updates and minimizes downtime by ensuring only necessary updates are executed, optimizing the update process for devices with varying configurations.
Smart Images

Figure IB2024063142_31072025_PF_FP_ABST
Abstract
Description
[DESCRIPTION][Title of Invention]INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND RECORDING MEDIUM [Technical Field]
[0001] The present disclosure relates to an information processing apparatus, an information processing method, and a recording medium.[Background Art]
[0002] Some apparatuses include a main body and an operation device in each of which a central processing unit (CPU) is mounted and a program is to be installed. For example, in order to increase the probability that the consistency among the programs installed in two or more information processing apparatuses included in an apparatus is kept, Patent Literature (PTL) 1 discloses a technique to update, in an image forming apparatus that includes a main body and an operation device each including a CPU, individual applications installed in the operation device.[Citation List][Patent Literature]
[0003] [PTL 1]Japanese Unexamined Patent Application Publication No. 2020-021286 [Summary of Invention] [Technical Problem]
[0004] In an apparatus that includes an operation device and a main body each including a system such as an operating system (OS) that operates independently and the operation device includes various devices such as an integrated circuit (IC) for controlling a touch panel used for controlling operations on the touch panel and another IC for controlling wireless communication such as BLUETOOTH, the firmware of the devices included in the operation device can be updated. These devices are not necessarily distributed by the same vendor, and the firmware needs to be appropriately applied to the devices depending on the device. In addition, since the update of the firmware involves some restrictions that, for example, “no operation is allowed during the update,” “the update takes several minutes,” and “the operation device needs to be restarted for re-initialization after the update,” the update of the firmware results in significant downtime for operators. The firmware can be updated to the latest version at that time by using a jig before the shipment of the device. However, in the event that a failure occurs in one of the devices included in the operation device in the market, the firmware of the target device is required to be updated using existing mechanisms forupdating firmware, instead of using a jig. In view of the above, it is difficult to completely prevent the above-mentioned downtime under the current circumstances. On the other hand, for the apparatuses that are used in various regions, a configuration of the devices among the devices included in the apparatuses effective for the model or in the shipping destination may differ. However, according to the technique in the art, it is not considered for the update of the firmware that the configuration of the devices effective for the model or in the shipping destination may differ. As a result, since the update of the firmware is performed even for the device whose firmware is not required to be updated, the update of the firmware unnecessarily causes downtime and results in being inefficient.[Solution to Problem]
[0005] In light of the above-described issue, an object of the present disclosure is to increase the efficiency of updating the firmware of devices included in an operation device of an apparatus.[Advantageous Effects of Invention]
[0006] The efficiency of updating the firmware of devices included in an operation device of an apparatus increases.[Brief Description of Drawings]
[0007] A more complete appreciation of embodiments of the present disclosure and many of the attendant advantages and features thereof can be readily obtained and understood from the following detailed description with reference to the accompanying drawings.[FIG. 1]FIG. 1 is a block diagram illustrating a hardware configuration of an image forming apparatus.[FIG. 2]FIG. 2 is a block diagram illustrating a functional configuration of an operation device.[FIG. 3]FIG. 3 is a flowchart of the process executed by an operation device when an update package file is acquired.[FIG. 4]FIG. 4 is a block diagram illustrating a configuration of an update package file.[FIG. 5]FIG. 5 is a block diagram illustrating the structure of data relating to firmware stored in an auxiliary storage device.[FIGS. 6A to 6C (FIG. 6)]FIGS. 6A to 6C (FIG. 6) are a flowchart of the firmware update process for a device.[FIG. 7]FIG. 7 is a diagram illustrating the structure of device configuration information.[FIG. 8]FIG. 8 is a diagram illustrating the structure of a device control firmware version list.[FIG. 9]FIG. 9 is a diagram illustrating display of an updating screen.[FIG. 10]FIG. 10 is a diagram illustrating display of an update completion screen.[FIG. 11]FIG. 11 is a diagram illustrating display of an update failure screen.The accompanying drawings are intended to depict embodiments of the present disclosure and should not be interpreted to limit the scope thereof. The accompanying drawings are not to be considered as drawn to scale unless explicitly noted. Also, identical or similar reference numerals designate identical or similar components throughout the several views. [Description of Embodiments]
[0008] In describing embodiments illustrated in the drawings, specific terminology is employed for the sake of clarity. However, the disclosure of this specification is not intended to be limited to the specific terminology so selected and it is to be understood that each specific element includes all technical equivalents that have a similar function, operate in a similar manner, and achieve a similar result. Referring now to the drawings, embodiments of the present disclosure are described below. As used herein, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise.
[0009] Embodiments of the present disclosure are described below with reference to the drawings.
[0010] FIG. 1 is a block diagram illustrating a hardware configuration of an image forming apparatus 10.
[0011] As illustrated in FIG. 1, the image forming apparatus 10 includes hardware resources, such as a controller 11, a scanner 12, a printer 13, a modem 14, a network interface 16, a secure digital (SD) card slot 17, and an operation device 20.
[0012] The controller 11 is an information processing apparatus included in the main body of the image forming apparatus 10, and includes a central processing unit (CPU) 111, a randomaccess memory (RAM) 112, a read-only memory (ROM) 113, a hard disk drive (HDD) 114, and a non-volatile random-access memory (NVRAM) 115. The ROM 113 stores, for example, various programs and data used by the programs. The RAM 112 is used as a memory area to which a program is loaded and used as a work area for executing the loaded program. The CPU 111 executes the program loaded to the RAM 112 to implement variousfunctions. The HDD 114 stores, for example, programs and various data used by the programs. The NVRAM 115 stores, for example, various setting information.
[0013] The scanner 12 is hardware (an image reading device) that scans a document to obtain image data. The printer 13 is hardware (a printing device) that forms an image on a printing sheet in accordance with print data. The modem 14 is hardware for connecting to a telephone line and is used for transmitting and receiving image data by facsimile communication. The network interface 16 is hardware that connects the image forming apparatus 10 to a wired or wireless network, such as a local area network (LAN). The SD card slot 17 is used for reading programs stored in an SD card 80. Accordingly, in the image forming apparatus 10, not only the programs stored in the ROM 113 but also the programs stored in the SD card 80 may be loaded to the RAM 112 for execution. In addition or alternative to the SD card 80, any other suitable recording medium may be used, such as a compact disc-read-only memory (CD- ROM) or a universal serial bus (USB) memory. In other words, the type of recording medium corresponding to the SD card 80 is not limited to a specific type. In this case, any other suitable hardware is used as the connection port in alternative to the SD card slot 17 depending on the type of the recording medium.
[0014] The operation device 20 is an information processing apparatus that includes, for example, an input device such as keys or buttons for receiving a user input and a display and input device such as a touch panel. In other words, this information processing apparatus is an information processing apparatus that functions as the operation device 20 of the image forming apparatus 10.
[0015] As illustrated in FIG. 1, the operation device 20 includes, for example, a CPU 21, a RAM 22, an auxiliary storage device 23, a touch panel control integrated circuit (IC) 24, and a wireless communication control IC 25. The auxiliary storage device 23 stores, for example, programs installed in the operation device 20. For example, the auxiliary storage device 23 may be a flash memory such as an embedded multimedia card (eMMC). The RAM 22, in response to an instruction to activate a program, reads the program from the auxiliary storage device 23 and stores the program. The CPU 21 implements the functions of the operation device 20 in accordance with the program stored in the RAM 22. The touch panel control IC 24 is an IC that controls the touch panel. The wireless communication control IC 25 is, for example, an IC that controls wireless communication such as BLUETOOTH. The firmware of these devices such as the ICs can be updated. These IC devices are selected one by one from a group of devices distributed by multiple vendors and mounted on the operation device 20.
[0016] The operation device 20 and the controller 11 are connected by an interface such as a USB . Various data is transmitted from the operation device 20 to the controller 11 to be written toand read from the HDD 114 of the controller 11. The operation device 20 and the controller 11 are operated by different operating systems. The operation device 20 can be operated independently by using a graphical user interface (GUI) displayed on the touch panel.
[0017] FIG. 2 is a block diagram illustrating a functional configuration of the operation device 20.
[0018] As illustrated in FIG. 2, the operation device 20 includes an update information acquisition unit 211, a destination information acquisition unit 212, an update necessity determination unit 213, and an update unit 214. These functional units provide functions implemented by the CPU 21 executing instructions included in one or more programs installed in the operation device 20.
[0019] The update information acquisition unit 211 acquires, for example, firmware used for updating the firmware of the devices included in the operation device 20 and device configuration information. The firmware used for updating the firmware of the devices may be referred to simply as the “firmware for an update” in the following description. The device configuration information refers to information indicating a determination of whether the firmware needs to be updated for each of a plurality of combinations, each combination including a candidate of a shipping destination to which the image forming apparatus 10 is shipped and each device. The shipping destination refers to information indicating a destination to which the image forming apparatus 10 is shipped. The destination to which the image forming apparatus 10 is shipped is distinguished by, for example, a country name, a region name, or a customer name. The shipping destination may be differentiated based on another classification criterion.
[0020] The destination information acquisition unit 212 acquires destination information indicating a shipping destination of the image forming apparatus 10 from the controller 11. The destination information acquisition unit 212 may acquire the destination information via a network.
[0021] The update necessity determination unit 213 determines whether the firmware corresponding to the device to be used in the shipping destination indicated by the destination information needs to be updated for each device included in the operation device 20 with reference to the device configuration information. The destination indicated by the destination information may be referred to simply as the “shipping destination” in the following description. The update necessity determination unit 213 also determines whether the firmware needs to be updated for each device whose firmware is determined to need to be updated for the use of the device in the shipping destination, based on a comparison between the version information ofthe current firmware stored in the auxiliary storage device 23 for each device included in the operation device 20 and the version information of the firmware for an update.
[0022] The update unit 214 updates, based on the firmware for an update, the firmware of the device determined to need to be updated for the use of the device in the shipping destination and determined to need to be updated based on the comparison.
[0023] The process executed by the operation device 20 is described below.
[0024] FIG. 3 is a flowchart of the process executed by the operation device 20 when an update package file is acquired. The update package file is an archive file containing a group of pieces of data (i.e., a group of files) for updating the firmware of the devices included in the operation device 20. The process of FIG. 3 is performed in response to, for example, an operation performed by an operator. Alternatively, the process may be automatically performed in the case where an update package file is newly stored in a predetermined storage area.
[0025] In step S 101, the update information acquisition unit 211 acquires an update package file. The update package file may be downloaded from a predetermined server via a network, or may be acquired from a USB memory connected to a USB port of the controller 11 or the SD card 80 inserted into the SD card slot 17 of the controller 11.
[0026] FIG. 4 is a block diagram illustrating a configuration of the update package file. As illustrated in FIG. 4, an update package file pl includes a group of files such as a system image pl 1, system version information pl2, device configuration information pl3, a touch panel firmware image pl4, a touch panel firmware image pl5, and an other device control firmware image pl 6.
[0027] The system image pl 1 is a file containing a firmware image of an operating system (OS) that operates on the operation device 20. The OS is referred to as a “system” in the following description.
[0028] The system version information p 12 is a file containing a character string indicating the version information of the system image pl 1. The character string is referred to as “system version information” in the following description.
[0029] The device configuration information p 13 is a file containing device configuration information indicating, for each shipping destination, the determination of whether the firmware needs to be updated for each device whose firmware can be updated in the operationdevice 20. Each device refers to one of the touch panel control IC 24 and the wireless communication control IC 25 in the present embodiment.
[0030] The touch panel firmware images pl4 and pl5 are files each containing a firmware image for the control of the touch panel control IC 24.
[0031] The other device control firmware image p 16 is a group of files containing a firmware image for the control of the device (device whose firmware can be updated) other than the touch panel control IC 24. In the present embodiment, the device whose firmware can be updated other than the touch panel control IC 24 is the wireless communication control IC 25. Accordingly, in the present embodiment, the other device control firmware image p 16 is a file containing a firmware image for the control of the wireless communication control IC 25.
[0032] The firmware image for the control of various devices allows the device type, vendor information, and firmware version information to be uniquely identified by file name. For example, the file name of the touch panel firmware image pl4 is “Touchpanel VendorA l.O.O.img” indicated in parentheses in FIG. 4. In this file name, The “Touchpanel” indicates that the type of device to which the firmware image corresponds is the touch panel control IC 24. The “VendorA” indicates that the firmware image is a firmware image for the touch panel control IC 24 distributed by a vendor whose vendor name is the “VendorA.” The “1.0.0” indicates the version of the firmware image. Accordingly, the vendors of the touch panel control ICs 24 corresponding to the two firmware images pl4 and pl5 are different from each other. In other words, the touch panel firmware image pl4 is a firmware image corresponding to the touch panel control IC 24 distributed by the vendor A, and the touch panel firmware image p 15 is a firmware image corresponding to the touch panel control IC 24 distributed by a vendor B. Note that the other device control firmware image pl6 may also contain firmware images corresponding to the same type of devices distributed by multiple vendors. Regarding a certain type of device, the vendor of the device to be mounted in the operation device 20 differs depending on the type of the operation device 20. In view of the above, in order to be able to support multiple types of operation devices 20, firmware images of multiple vendors (all vendors that can be a provider of the device) are included in a single update package file pl.
[0033] In order for the version of each firmware image and the version of the system of the operation device 20 to be consistent with each other, the single update package file pl contains a firmware image corresponding to the system relating to the system version information pl2 contained in the single update package file pl.
[0034] In step S102, the update information acquisition unit 211 decompresses the update package file pl into the auxiliary storage device 23. As a result, the file name of each file before the update stored in the auxiliary storage device 23 is overwritten.
[0035] FIG. 5 is a block diagram illustrating the structure of data relating to the firmware stored in the auxiliary storage device 23. As illustrated in FIG. 5, in the auxiliary storage device 23, for example, a system ml, a current system version m2, device configuration information m3, a touch panel firmware image m4, a touch panel firmware image m5, an other device control firmware image m6, a device control firmware version list m7, and an updating flag m8 are stored.
[0036] The system ml is the OS of the operation device 20 as described above.
[0037] The current system version m2 is the version information of the system ml.
[0038] In step S102, the update information acquisition unit 211 updates the system ml based on the system image pl 1. The update information acquisition unit 211 also overwrites the current system version m2 with the system version information included in the system version information pl2. The update information acquisition unit 211 further overwrites the touch panel firmware images m4 and m5, and the other device control firmware image m6 with the touch panel firmware images pl4 and pl5, and the other device control firmware image pl6, respectively.
[0039] Note that in step S102, the touch panel firmware images pl4 and pl5, and the other device control firmware image pl6 are only copied in the auxiliary storage device 23 as the touch panel firmware images m4 and m5, and the other device control firmware image m6, respectively. The firmware stored in each device is not updated by this copying. The firmware of a certain device is updated by executing a firmware update process for the device according to a process described below.
[0040] The device control firmware version list m7 is a file containing a list of version information of current firmware of each device (before execution of the firmware update process). Each time the firmware update process is executed, the version information acquired from the device at that time is recorded in the device control firmware version list m7.
[0041] The updating flag m8 is a file used in the firmware update process for the device. At this point, the update information acquisition unit 211 initializes the updating flag m8 to make the contents empty.
[0042] FIGS. 6A to 6C (FIG. 6) are a flowchart of the firmware update process for the device. The flowchart of FIGS. 6A to 6C (FIG. 6) is performed, for example, when the operation device 20 is activated in accordance with the activation of the image forming apparatus 10. Alternatively, the process of FIGS. 6A to 6C (FIG. 6) may be started in response to an operation performed by the operator.
[0043] In step S201, the destination information acquisition unit 212 acquires the destination information from the controller 11. The destination information is stored in, for example, the NVRAM 115 of the controller 11.
[0044] In step S202, the update necessity determination unit 213 determines whether the firmware of each device included in the operation device 20 needs to be updated for the use of the device in the shipping destination based on the acquired destination information and the device configuration information m3 to specify a candidate of a device whose firmware is updated.
[0045] FIG. 7 is a diagram illustrating the structure of the device configuration information m3. As illustrated in FIG. 7, the device configuration information m3 is information that indicates the “necessity” of the update of the firmware for an individual combination of a “shipping destination” and a “device.” The combination of the “shipping destination” and the “device” indicates a set of the “device” to be mounted in the operation device 20 according to the “shipping destination.” The “necessity” indicates whether the firmware needs to be updated in the case of that combination. Depending on the shipping destination, a valid device may differ. For example, in a specific shipping destination, BLUETOOTH may not be allowed in the first place for security reasons. In short, the necessity of the update of the firmware for the device may differ depending on the shipping destination.
[0046] The update necessity determination unit 213 acquires the value (the type of device) of the “device” in a row (referred to as a “target row” in the following description), to which the value of the “shipping destination” included in the destination information acquired in step S201 matches, in the device configuration information m3. A list of the types of device thus acquired is a list (referred to as a “mounted device list”) of the types of the devices currently mounted in the operation device 20.
[0047] In step S203, the update necessity determination unit 213 refers to the updating flag m8 to check whether there is firmware being updated. The updating flag m8 is a file recorded at the start of the update as data indicating that the file name of the firmware image being updated is in the execution of the update based on the firmware image. In the case there is no firmware being updated, the contents of the updating flag m8 are empty. The update necessitydetermination unit 213 checks whether the contents of the updating flag m8 are empty to check whether there is any firmware being updated.
[0048] In the case where there is no firmware being updated (in the case where the contents of the updating flag m8 are empty) (NO in step S204), the update necessity determination unit 213 sequentially sets the devices included in the mounted device list as targets for the process one by one, and performs the processes of step S205 and subsequent steps. The targets for the process are referred to as “target devices” and any one of the target devices is referred to as a target device in the following description.
[0049] In step S205, the update necessity determination unit 213 determines whether the firmware of the target device needs to be updated based on the value of the “necessity” in the row (target row) where the value of the “device” in the device configuration information m3 (see FIG. 5) corresponds to the target device.
[0050] In the case where the value of the “necessity” is “NO” (NO in step S206), the firmware does not need to be updated for the target device. Then, the process proceeds to step S210. For example, when the version of the system ml needs to be updated but the firmware of the device does not need to be updated, the value of the “necessity” is set to “NO.”
[0051] On the other hand, in the case where the value of the “necessity” is “YES” (YES in step S206), the update necessity determination unit 213 acquires the version information of the current firmware of the target device from the device control firmware version list m7 in step S207.
[0052] FIG. 8 is a diagram illustrating the structure of the device control firmware version list m7. As illustrated in FIG. 8, the device control firmware version list m7 includes version information of the firmware currently applied to the device for each device.
[0053] As will be described later, the version information of the firmware currently applied to each device can also be acquired from each device. However, by storing the version information of the firmware currently applied to each device in the auxiliary storage device 23 as the device control firmware version list m7, the process for acquiring the version information from each device can be omitted, and the activation time of the operation device 20 is shortened.
[0054] In step S208, the update necessity determination unit 213 determines whether the version information of the current firmware of the target device is consistent with the system version information ml2. In the present embodiment, when the firmware is updated in accordance with the version upgrade of the system, the version information of the firmware becomesconsistent with the system version information ml2. Accordingly, in the case where the version information of the current firmware of the target device is determined to be consistent with the system version information ml2 (YES in step S209), the firmware of the target device does not need to be updated. Then, the process proceeds to step S210.
[0055] In step S210, the update necessity determination unit 213 determines whether the process has been completed for all the devices in the mounted device list. In the case where there is a device not subjected to the process (NO in step S211), the update necessity determination unit 213 sets the device next to the target device in the mounted device list as the target device in step S212, and repeats the processes of step S205 and subsequent steps.
[0056] On the other hand, in the case where the version information of the current firmware of the target device is determined not to be consistent with the system version information ml2 (that is, in the case where the firmware of the target device is not updated corresponding to the system version information ml2) (NO in step S209), the update necessity determination unit 213 acquires the vendor name (referred to as a “VENDOR” in the following description) and the version information (referred to as “CUR VER” in the following description) of the firmware currently applied to the target device from the target device in step S213. In short, these pieces of information (VENDOR and CUR_VER) are stored in the target device itself.
[0057] In step S214, the update necessity determination unit 213 searches the auxiliary storage device 23 (see FIG. 5) for a device control firmware image (referred to as a “target firmware image” in the following description) having a file name including the name of the target device (referred to as a “target device name” in the following description) and the VENDOR. The name of the target device is the name of the type of the target device. For example, if the target device name is a “Touchpanel” and the “VENDOR” is “VendorA,” the firmware image having a file name including “Touchpanel” and “VendorA” is searched for. In this case, in FIG. 5, the touch panel firmware image m4 corresponds to the firmware image in question.
[0058] In step S215, the update necessity determination unit 213 acquires version information (referred to as “UPDATE VER” in the following description) from the file name of the target firmware image.
[0059] In step S216, the update necessity determination unit 213 compares the CUR_VER (the version of the current firmware acquired from the target device) with the UPDATE_VER (the version of the firmware image for the target device in the update package file pl).
[0060] In the case where the CUR_VER and UPDATE_VER are determined to be the same (YES in step S217), the firmware image in the update package file pl has already been applied to thetarget device. Accordingly, the firmware of the target device does not need to be updated. In step S218, the update necessity determination unit 213 overwrites the version information corresponding to the target device in the device control firmware version list m7 with the CUR_VER. Then, the process proceeds to step S210.
[0061] On the other hand, in the case where the CUR_VER and the UPDATE_VER are determined not to be the same (NO in step S217), the update unit 214 starts updating the firmware of the target device in step S219. In step S220, the update unit 214 writes the file name of the target firmware image in the updating flag m8.
[0062] In step S221, the update unit 214 displays an updating screen on the touch panel of the operation device 20.
[0063] FIG. 9 is a diagram illustrating display of the updating screen. As illustrated in FIG. 9, an updating screen 510 includes, for example, information indicating the target device and information indicating the progress of the update.
[0064] In step S222, the update unit 214 updates the firmware of the target device using the target firmware image stored in the auxiliary storage device 23 (see FIG. 5) to apply the target firmware image to the target device. For example, if the target device name is a “Touchpanel” and the “VENDOR” is “VendorA,” the touch panel firmware image m4 in FIG. 5 is applied to the touch panel control IC 24 (see FIG. 1).
[0065] When the update is completed, the update unit 214 acquires version information (referred to as “NEW VER” in the following description) of the firmware currently (i.e., after the completion of the update) applied to the target device from the target device in step S223.
[0066] In step S224, the update unit 214 checks whether the NEW_VER and the UPDATE_VER are the same. In other words, the update unit 214 verifies whether the target firmware image is properly applied to the target device. In short, the update unit 214 determines whether the update is successful based on the target firmware image. As a result, a failure of the update due to, for example, a defect of the device can be correctly detected.
[0067] In the case where the NEW_VER and the UPDATE_VER are determined to be the same (in the case where the update is successful) (YES in step S225), the update unit 214 deletes the file name written in step S220 from the updating flag m8 to empty the contents of the updating flag m8 in step S226. In step S218, the update unit 214 overwrites the version information corresponding to the target device in the device control firmware version list m7 with the NEW_VER. Then, the process proceeds to step S210.
[0068] When the process has been completed for all the devices included in the mounted device list as the targets for the process (YES in step S211), the update unit 214 determines whether the firmware of any one of the devices included in the mounted device list is updated in step S228.
[0069] In the case where the firmware of one of the devices is determined to be updated (YES in step S229), the update unit 214 displays an update completion screen indicating that the update is completed on the touch panel of the operation device 20, and waits for a certain period of time in step S230.
[0070] FIG. 10 is a diagram illustrating display of the update completion screen. As illustrated in FIG. 10, an update completion screen 520 includes the name of the device whose firmware has been updated and version information of the firmware before and after the update.
[0071] After waiting for a certain period of time, the update unit 214 reboots (restarts) the operation device 20 in step S231. The operator does not need to perform operations (such as turning the power off and on) to restart the operation device 20. Thus, the workload of operation for the operator is reduced.
[0072] In the case where the firmware of none of the devices is determined to be updated (NO in step S229), the update unit 214 notifies the controller 11 of the completion of the process in step S232. In this case, the ordinary startup process is performed for the image forming apparatus10.
[0073] On the other hand, in the case where the NEW_VER and the UPDATE_VER are determined not to be the same (in the case where the update has failed) (NO in step S225), the update unit 214 displays an update failure screen indicating that the update has failed on the touch panel of the operation device 20, and waits for a certain period of time in step S227.
[0074] FIG. 11 is a diagram illustrating display of the update failure screen. As illustrated in FIG.11, an update failure screen 530 includes the name of the firmware that has failed to be updated (e.g., the file name of the firmware image) and a message indicating that the operation device will be rebooted. By referring to the update failure screen 530, the operator can perform a visual check for the firmware that has failed to be updated. Accordingly, the operator can receive appropriate support from, for example, the vendor of the image forming apparatus 10 at a later stage.
[0075] After waiting for a certain period of time, the update unit 214 reboots (restarts) the operation device 20 in step S231.
[0076] Regardless of whether the update of the firmware is successful or not, the operation device 20 rebooted by the execution of the process in step S231 starts the process of FIGS. 6A to 6C (FIG. 6) upon being rebooted.
[0077] In the case where the update of the firmware is successful (i.e., in the case where the operation device 20 is rebooted by the process in step S231 following the process in step S230), the processes of steps S205 and subsequent steps are performed. However, the processes of step S219 and subsequent steps are not performed. Accordingly, since the firmware of any device is not updated (NO in step S229), the processes of steps S232 and S233 are performed.
[0078] On the other hand, in the case where the firmware has failed to be updated (i.e., in the case where the operation device 20 is rebooted by the process in step S231 following the process in step S227), the file name of the firmware image of the firmware that has failed to be updated is recorded in the updating flag m8 referred to in step S203. Accordingly, in this case (YES in step S204), in step S234, the update unit 214 sets the firmware image relating to the file name recorded in the updating flag m8 as the “target firmware image” and sets the device relating to the file name as the “target device,” and executes the processes of step S219 and subsequent steps to perform the process to update the firmware for the target device. In this way, by the updating flag m8 managing the success or failure of the update of the firmware, it is possible to detect that the update of the firmware has been interrupted due to an unforeseen event such as a power outage, and even if such an interruption occurs, the update can be resumed.
[0079] As described above, according to the present embodiment, only the device whose firmware needs to be updated for the use of the device in the shipping destination indicated by the destination information acquired from the controller 11 is set as a candidate for the update of the firmware. Accordingly, it is possible to prevent from performing the update of the firmware not required for the device according to, for example, the model of the image forming apparatus 10 or the shipping destination. As a result, the efficiency of updating the firmware of the device included in the operation device 20 of the image forming apparatus 10 increases. More specifically, the time required for updating such firmware can be reduced, and downtime caused by the update of the firmware is reduced.
[0080] The present embodiment is applicable to any apparatuses other than the image forming apparatus 10 as long as the apparatuses include an information processing apparatus thatfunctions as an operation device. The present embodiment may be applied to apparatuses and devices such as a projector, an interactive whiteboard (IWB; an electronic whiteboard having a blackboard function capable of mutual communication), an output device like a digital signage, a head-up display (HUD) device, an industrial machine, an imaging device, a sound collecting device, a medical device, a network home appliance, a laptop personal computer (PC), a mobile phone, a smartphone, a tablet terminal, a game console, a personal digital assistant (PDA), a digital camera, a wearable PC, and a desktop PC.
[0081] Each of the functions of the embodiments described above may be implemented by one or more processing circuits or circuitry. The “processing circuit or circuitry” herein includes a programmed processor to execute each function by software, such as a processor implemented by an electronic circuit, and devices, such as an application-specific integrated circuit (ASIC), a digital signal processor (DSP), a field-programmable gate array (FPGA), and circuit modules known in the art arranged to perform the recited functions.
[0082] The above-described embodiments are illustrative and do not limit the present disclosure. Thus, numerous additional modifications and variations are possible in light of the above teachings. For example, elements and / or features of different illustrative embodiments may be combined with each other and / or substituted for each other within the scope of the present disclosure.
[0083] Aspects of the present disclosure are, for example, as follows.
[0084] First AspectAccording to Aspect 1, an information processing apparatus includes an update information acquisition unit that acquires firmware for an update of a device included in the information processing apparatus and device configuration information indicating a determination of whether firmware needs to be updated for each of a plurality of combinations, each combination including a candidate of a shipping destination to which the information processing apparatus is shipped and the device, a destination information acquisition unit that acquires destination information indicating a shipping destination to which the information processing apparatus is shipped, and an update unit to, in a case that the device configuration information for the device to be used in the shipping destination of the acquired destination information indicates that the firmware needs to be updated, perform an update of the firmware for the device based on the firmware for the update.
[0085] Second AspectAccording to Aspect 2, in the information processing apparatus of Aspect 1, the update unit records data indicating that the firmware is being updated in a storage device at the start of theupdate of the firmware for the device, and deletes the data in the case where the update is successful.
[0086] Third AspectAccording to Aspect 3, in the information processing apparatus of Aspect 2, in the case where the data remains recorded in the storage device at the time of activating the information processing apparatus, the update unit performs the update indicated by the data.
[0087] Fourth AspectAccording to Aspect 4, in the information processing apparatus of any one of Aspects 1 to 3, the update unit acquires version information of the firmware from the device after the update is performed, and determines whether the update is successful based on a comparison between the acquired version information of the firmware and version information of the firmware for the update.
[0088] Fifth AspectAccording to Aspect 5, in the information processing apparatus of any one of Aspects 1 to 4, in the case where the update is successful, the update unit displays a screen indicating that the update has been completed and restarts the information processing apparatus.
[0089] Sixth AspectAccording to Aspect 6, in the information processing apparatus of any one of Aspects 1 to 5, in the case where the update fails, the update unit displays a screen indicating that the update has failed and restarts the information processing apparatus.
[0090] Seventh AspectAccording to Aspect 7, the information processing apparatus of any one of Aspects 1 to 6 further includes an update necessity determination unit that determines whether the firmware needs to be updated for the device to be used in the shipping destination of the acquired destination information based on the device configuration information.
[0091] Eighth AspectAccording to Aspect 8, in the information processing apparatus of any one of Aspects 1 to 7, the update necessity determination unit determines whether the firmware needs to be updated further based on a comparison between version information of the current firmware of the device stored in the storage device of the information processing apparatus and the version information of the firmware for the update.
[0092] Ninth AspectAccording to Aspect 9, an information processing method performed by an information processing apparatus includes acquiring firmware for an update of a device included in the information processing apparatus and device configuration information indicating a determination of whether firmware needs to be updated for each of a plurality of combinations, each combination including a candidate of a shipping destination to which the information processing apparatus is shipped and the device, acquiring destination information indicating a shipping destination to which the device is shipped, and in a case that the device configuration information for the device to be used in the shipping destination of the acquired destination information indicates that the firmware needs to be updated, performing an update of the firmware for the device based on the firmware for the update.
[0093] Tenth AspectAccording to Aspect 10, a recording medium carries computer readable code for controlling an information processing apparatus to carry out a method including acquiring firmware for an update of a device included in the information processing apparatus and device configuration information indicating a determination of whether firmware needs to be updated for each of a plurality of combinations, each combination including a candidate of a shipping destination to which the information processing apparatus is shipped and the device, acquiring destination information indicating a shipping destination to which the device is shipped, and in a case that the device configuration information for the device to be used in the shipping destination of the acquired destination information indicates that the firmware needs to be updated, performing an update of the firmware for the device based on the firmware for the update.
[0094] The above-described embodiments are illustrative and do not limit the present invention. Thus, numerous additional modifications and variations are possible in light of the above teachings. For example, elements and / or features of different illustrative embodiments may be combined with each other and / or substituted for each other within the scope of the present invention. Any one of the above-described operations may be performed in various other ways, for example, in an order different from the one described above.
[0095] The present invention can be implemented in any convenient form, for example using dedicated hardware, or a mixture of dedicated hardware and software. The present invention may be implemented as computer software implemented by one or more networked processing apparatuses. The processing apparatuses include any suitably programmed apparatuses such as a general purpose computer, a personal digital assistant, a Wireless Application Protocol (WAP) or third-generation (3G)-compliant mobile telephone, and so on. Since the present invention can be implemented as software, each and every aspect of the present invention thus encompasses computer software implementable on a programmabledevice. The computer software can be provided to the programmable device using any conventional carrier medium (carrier means). The carrier medium includes a transient carrier medium such as an electrical, optical, microwave, acoustic or radio frequency signal carrying the computer code. An example of such a transient medium is a Transmission Control Protocol / Intemet Protocol (TCP / IP) signal carrying computer code over an IP network, such as the Internet. The carrier medium may also include a storage medium for storing processor readable code such as a floppy disk, a hard disk, a compact disc read-only memory (CD- ROM), a magnetic tape device, or a solid state memory device.
[0096] The functionality of the elements disclosed herein may be implemented using circuitry or processing circuitry which includes general purpose processors, special purpose processors, integrated circuits, application- specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), and / or combinations thereof which are configured or programmed, using one or more programs stored in one or more memories, to perform the disclosed functionality. Processors are considered processing circuitry or circuitry as they include transistors and other circuitry therein. In the disclosure, the circuitry, units, or means are hardware that carry out or are programmed to perform the recited functionality. The hardware may be any hardware disclosed herein which is programmed or configured to carry out the recited functionality. There is a memory that stores a computer program which includes computer instructions. These computer instructions provide the logic and routines that enable the hardware (e.g., processing circuitry or circuitry) to perform the method disclosed herein. This computer program can be implemented in known formats as a computer-readable storage medium, a computer program product, a memory device, a record medium such as a CD- ROM or DVD, and / or the memory of an FPGA or ASIC.
[0097] This patent application is based on and claims priority to Japanese Patent Application Nos. 2024-008000, filed on January 23, 2024 and 2024-106243, filed on July 1, 2024, in the Japan Patent Office, the entire disclosure of which is hereby incorporated by reference herein. [Reference Signs List]
[0098] 10 image forming apparatus11 controller12 scanner13 printer14 modem16 network interface17 SD card slot20 operating device21 CPURAM auxiliary storage device touch panel control IC wireless communication control IC SD card CPU RAM ROM HDD NVRAM update information acquisition unit destination information acquisition unit update necessity determination unit update unit
Claims
[CLAIMS]1. An information processing apparatus comprising; an update information acquisition unit configured to acquire firmware for an update of a device included in the information processing apparatus and device configuration information indicating a determination of whether firmware needs to be updated for each of a plurality of combinations, each combination including a candidate of a shipping destination to which the information processing apparatus is shipped and the device; a destination information acquisition unit configured to acquire destination information indicating a shipping destination to which the device is shipped; and an update unit configured to, in a case that the device configuration information for the device to be used in the shipping destination of the acquired destination information indicates that the firmware needs to be updated, perform an update of the firmware for the device based on the firmware for the update.
2. The information processing apparatus according to claim 1, wherein the update unit is further configured to record data indicating that the firmware is being updated in a storage device at a start of the update of the firmware for the device, and deletes the data in a case that the update is successful.
3. The information processing apparatus according to claim 2, wherein in a case that the data remains recorded in the storage device at a time of activating the information processing apparatus, the update unit is configured to perform the update indicated by the data.
4. The information processing apparatus according to any one of claims 1 to 3, wherein the update unit is further configured to acquire version information of the firmware from the device after the update is performed, and determine whether the update is successful based on a comparison between the acquired version information of the firmware and version information of the firmware for the update.
5. The information processing apparatus according to any one of claims 1 to 4, wherein in a case that the update is successful, the update unit is further configured to display a screen indicating that the update has been completed, and restart the information processing apparatus.
6. The information processing apparatus according to any one of claims 1 to 5, wherein in a case that the update fails, the update unit is configured to display a screen indicating that the update has failed, and restart the information processing apparatus.
7. The information processing apparatus according to any one of claims 1 to 6, further comprising an update necessity determination unit configured to determine whether the firmware needs to be updated for the device to be used in the shipping destination of the acquired destination information based on the device configuration information.
8. The information processing apparatus according to any one of claims 1 to 7, wherein the update necessity determination unit is configured to determine whether the firmware needs to be updated further based on a comparison between version information of a current firmware of the device stored in the storage device of the information processing apparatus and the version information of the firmware for the update.
9. An information processing method performed by an information processing apparatus, the method comprising: acquiring firmware for an update of a device included in the information processing apparatus and device configuration information indicating a determination of whether firmware needs to be updated for each of a plurality of combinations, each combination including a candidate of a shipping destination to which the information processing apparatus is shipped and the device; acquiring destination information indicating a shipping destination to which the device is shipped; and in a case that the device configuration information for the device to be used in the shipping destination of the acquired destination information indicates that the firmware needs to be updated, performing an update of the firmware for the device based on the firmware for the update.
10. A recording medium carrying computer-readable code for controlling an information processing apparatus to carry out a method, the method comprising: acquiring firmware for an update of a device included in the information processing apparatus and device configuration information indicating a determination of whether firmware needs to be updated for each of a plurality of combinations, each combination including a candidate of a shipping destination to which the information processing apparatus is shipped and the device; acquiring destination information indicating a shipping destination to which the device is shipped; and in a case that the device configuration information for the device to be used in the shipping destination of the acquired destination information indicates that the firmware needs to be updated, performing an update of the firmware for the device based on the firmware for the update.
Citation Information
Patent Citations
Apparatus, system and method for processing information, and program
JP2020021286A
Rubber composition for tire and tire using the same
JP2024008000A
Inspection hatch
JP2024106243A
Determining whether a vehicle should be configured for a different region
US11245583B2
Image forming apparatus, control method for image forming apparatus, and storage medium
US20140115572A1