Electronic apparatus, information processing system, information processing method, and program
The described electronic device facilitates flexible firmware updates by displaying activation information and automating the activation process, simplifying the update procedure and enabling users to add new functions efficiently.
Patent Information
- Application Number
- JP2025128082
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-07-31
- Publication Date
- 2025-10-14
AI Technical Summary
Updating pre-installed software such as firmware in electronic devices is complicated and difficult for users, making it hard to perform updates flexibly and select new functions.
An electronic device capable of acquiring software via a network, featuring a display control unit to show identification information for activation and an activation unit to activate specified software based on user input or automatic download.
Enables flexible firmware updates in electronic devices, allowing users to easily add new functions and maintain the latest software versions.
Smart Images

Figure 2025156454000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an electronic device, an information processing system, an information processing method, and a program. [Background technology]
[0002] Conventionally, there has been known a technique for automatically updating applications and firmware in a multifunction peripheral (MFP), which is an example of an electronic device. As a technique for automatically updating firmware, etc., a technique for remotely downloading and updating firmware at a specified timing has been disclosed (for example, Patent Document 1). Summary of the Invention [Problem to be solved by the invention]
[0003] However, updating pre-installed software such as firmware in electronic devices such as image forming apparatuses has the problem that the update procedure is complicated and difficult for users. For example, it is difficult for users to understand which screen to use, when and how to update the firmware, which makes it difficult to perform the update procedure flexibly.
[0004] Furthermore, although various functions can be added through firmware updates, there is also the problem that users themselves cannot flexibly select which new functions to add.
[0005] The present invention has been made in view of the above, and aims to provide an electronic device, an information processing system, an information processing method, and a program that enable firmware updates of the electronic device to be performed flexibly. [Means for solving the problem]
[0006] In order to solve the above-mentioned problems and achieve the object, the present invention is an electronic device capable of acquiring software via a network, characterized in that it comprises: a display control unit that causes a display unit to display identification information corresponding to at least the software to be activated among the software; and an activation unit that, for software for which identification information is displayed by the display control unit as software to be activated, activates the function of the software for which the specified operation has been performed in accordance with a designation operation; and, for software for which identification information is not displayed by the display control unit as software to be activated, automatically activates the function of the software after the software is downloaded. [Effects of the Invention]
[0007] According to the present invention, it is possible to flexibly update the firmware of an electronic device. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram illustrating an example of the overall configuration of an information processing system according to an embodiment. [Figure 2] FIG. 2 is a diagram illustrating an example of the hardware configuration of the MFP according to the embodiment. [Figure 3] FIG. 3 is a diagram illustrating an example of a hardware configuration of the application market server according to the embodiment. [Figure 4] FIG. 4 is a diagram illustrating an example of the software configuration of the information processing system according to the embodiment. [Figure 5] FIG. 5 is a diagram illustrating an example of a functional block configuration of the information processing system according to the embodiment. [Figure 6] FIG. 6 is a diagram showing an example of a screen transition. [Figure 7] FIG. 7 is a diagram showing an example of a screen transition. [Figure 8] FIG. 8 is a diagram showing an example of the home screen. [Figure 9]FIG. 9 is a diagram showing an example of a list screen showing examples of applications and firmware to be installed on an application site. [Figure 10] FIG. 10 is a diagram showing an example of functions supported by each function version. [Figure 11] FIG. 11 is a diagram showing the relationship between the maximum function version and the current function version. [Figure 12] FIG. 12 is a diagram showing an example of an installation screen for installing free firmware. [Figure 13] FIG. 13 is a diagram showing an example of an installation screen for installing paid firmware. [Figure 14] FIG. 14 is a diagram showing an example of an installation screen for already-installed firmware. [Figure 15] FIG. 15 is a diagram for explaining the operation when the current function version is upgraded. [Figure 16] FIG. 16 is a diagram for explaining a case where a paid function version is used. [Figure 17] FIG. 17 is a diagram showing an example of the automatic update setting screen. [Figure 18] FIG. 18 is a diagram showing an example of the automatic activation setting screen. [Figure 19] FIG. 19 is a sequence diagram showing an example of an operation for purchasing firmware. [Figure 20] FIG. 20 is a sequence diagram showing an example of the operation when performing installation. [Figure 21] FIG. 21 is a sequence diagram showing an example of the installation execution operation when automatic update setting and automatic activation setting are not performed. [Figure 22] FIG. 22 is a sequence diagram showing an example of the installation execution operation when automatic update is set but automatic activation is not set. [Figure 23] FIG. 23 is a sequence diagram showing an example of the operation when automatic activation is set. DETAILED DESCRIPTION OF THE INVENTION
[0009] The following describes in detail an electronic device, an information processing system, and an information processing method according to the present invention, with reference to the accompanying drawings. Furthermore, the present invention is not limited to the following embodiments, and the components in the following embodiments include those that would be easily conceived by a person skilled in the art, those that are substantially the same, and those that are within the scope of what is called equivalents. Furthermore, various omissions, substitutions, modifications, and combinations of the components can be made without departing from the spirit of the following embodiments.
[0010] Computer software refers to programs related to computer operation and other information used for computer processing that is equivalent to a program (hereinafter, computer software is referred to as software). Application software is a general term for software used to perform specific tasks. Meanwhile, an operating system (OS) is software that controls a computer and enables application software and other software to use computer resources. The operating system performs basic computer management and control, such as input / output control, hardware management such as memory and hard disk, and process management. Application software operates using the functions provided by the operating system. A program is a set of instructions for a computer, combined to achieve a single result. Equivalents to programs are those that are not directly directed at a computer and therefore cannot be called programs, but have properties similar to programs in that they define computer processing. For example, a data structure (the logical structure of data expressed by the interrelationships between data elements) is equivalent to a program.
[0011] In the following, an example of an electronic device according to the present invention will be described using a multifunction peripheral (MFP), which is an example of an image forming device, as an example, but is not limited to this. For example, the electronic device according to the present invention may be an information processing device such as a smartphone, a mobile phone, a personal computer (PC), a consumer electronic device, an industrial machine, an embedded machine, or a medical device. Note that an MFP is a device that has multiple different functions, such as a copy function, a scanner function, a printer function, and a fax function.
[0012] (Overall configuration of information processing system) 1 is a diagram showing an example of the overall configuration of an information processing system according to an embodiment, and the overall configuration of the information processing system 1 according to this embodiment will be described with reference to FIG.
[0013] 1, the information processing system 1 includes an MFP 10, an application market server 20 (an example of a first server), a contract management server 30 (an example of a second server), and a PC 40 (an example of an information processing device), which are interconnected so as to be able to communicate with each other via a network N. Of these, the application market server 20 and the contract management server 30 are included in a cloud C as servers that provide cloud services.
[0014] The MFP 10 is an image forming apparatus that is an example of an electronic device that can perform various functions such as a copy function, a scanner function, a fax function, and a printer function.
[0015] The application market server 20 is a server that provides the MFP10 with a list screen of multiple applications (hereinafter sometimes simply referred to as applications) and firmware that can be installed on the MFP10, and provides the cloud service of an application market site that allows the user to download and install the application or firmware selected by the user on the MFP10.
[0016] The contract management server 30 is a server that provides a cloud service of a purchasing site that enters into a purchase contract with a logged-in user for paid apps and firmware, and manages the status of the purchase contract in association with a tenant ID, a user ID, and a device ID.
[0017] The PC 40 is an information processing device that communicates with the contract management server 30 via the network N and that concludes a purchase contract for paid applications or firmware to be installed on the MFP 10 .
[0018] The services provided by the application market site are not limited to being realized by a single application market server 20, but may be realized, for example, by a plurality of distributed server devices. The same applies to the purchasing site of the contract management server 30.
[0019] (MFP hardware configuration) 2 is a diagram showing an example of the hardware configuration of the MFP according to the embodiment, and the hardware configuration of the MFP 10 according to the embodiment will be described with reference to FIG.
[0020] 2, MFP 10 includes an operation unit 11 that accepts user operations, and a main body unit 12 that realizes various image forming functions such as a scanner function and a printer function. Here, accepting user operations is a concept that includes accepting information (including signals indicating screen coordinate values, etc.) input in response to user operations.
[0021] The operation unit 11 and the main body unit 12 are connected to each other so as to be able to communicate with each other via a dedicated communication path 13. The communication path 13 may be, for example, a USB (Universal Serial Bus) standard, but is not limited to this and may be of any standard, whether wired or wireless. The main body unit 12 performs an operation in response to an operation received by the operation unit 11. The main body unit 12 can also communicate with an external device and perform an operation in response to an instruction received from the external device.
[0022] <Hardware configuration of the control unit> As shown in FIG. 2, the operation unit 11 includes a CPU (Central Processing Unit) 811, a ROM (Read Only Memory) 812, a RAM (Random Access Memory) 813, a flash memory 814, an operation panel 815, a connection I / F 816, a communication I / F 817, and a bus 818.
[0023] The CPU 811 is a computing device that comprehensively controls the operation of the operation unit 11. The CPU 811 controls the operation of the entire operation unit 11 by executing programs stored in the ROM 812, flash memory 814, or the like using the RAM 813 as a work area. For example, the CPU 811 realizes various functions such as displaying information (images) on the operation panel 815 in accordance with input received from the user.
[0024] The ROM 812 is a non-volatile memory that stores, for example, a BIOS (Basic Input / Output System) that is executed when the operation unit 811 is started up, various settings, etc. The RAM 813 is a volatile memory that is used as a work area, etc. for the CPU 811. The flash memory 814 is a non-volatile storage device that stores, for example, an OS (Operating System), application programs, various data, etc.
[0025] Operation panel 815 is a device with input and display functions that accepts various inputs in response to user operations and displays various information (e.g., information in response to the accepted operations, information indicating the operating status of MFP 10, and setting information). Operation panel 815 is configured, for example, by a liquid crystal display (LCD) equipped with a touch panel function. Note that operation panel 815 is not limited to a liquid crystal display, and may be configured, for example, by an organic electroluminescence (EL) display device equipped with a touch panel function. Furthermore, operation panel 815 may be provided with an operation unit such as hardware keys or a display unit such as a lamp in addition to or instead of the touch panel function.
[0026] The connection I / F 816 is an interface for communicating with the main body unit 12 via the communication path 13 .
[0027] The communication I / F 817 is a network interface that connects the operation unit 11 to a network N and communicates with external devices connected to the network N. The communication I / F 817 is, for example, an interface that supports Ethernet (registered trademark) and is capable of communication in accordance with TCP (Transmission Control Protocol) / IP (Internet Protocol) or the like.
[0028] The bus 818 is a transmission path that connects the above-mentioned components to each other and transmits address signals, data signals, various control signals, and the like.
[0029] The hardware configuration of the operation unit 11 shown in FIG. 2 is an example, and may include components other than those shown in FIG.
[0030] <Hardware configuration of the main unit> As shown in FIG. 2, the main body 12 includes a CPU 821, a ROM 822, a RAM 823, a storage 824, a scanner engine 825, a printer engine 826, a connection I / F 827, a communication I / F 828, and a bus 829.
[0031] The CPU 821 is a computing device that comprehensively controls the operation of the main body unit 12. The CPU 821 controls the operation of the entire main body unit 12 by executing programs stored in the ROM 822 or the storage 824, etc., using the RAM 823 as a work area. For example, the CPU 821 realizes various functions such as a copy function, a scanner function, a fax function, and a printer function.
[0032] The ROM 822 is a non-volatile memory that stores, for example, a BIOS executed when the main body unit 12 starts up, various settings, etc. The RAM 823 is a volatile memory that is used as a work area for the CPU 821, etc. The storage 824 is a non-volatile storage device that stores, for example, an OS, application programs, various data, etc. The storage 824 is configured, for example, by an HDD (Hard Disk Drive) or an SSD (Solid State Drive), etc.
[0033] The scanner engine 825 is hardware that performs general-purpose information processing and processing other than communication to realize a scanner function that scans an original document and reads it as an image, among the image forming functions. The printer engine 826 is hardware that performs general-purpose information processing and processing other than communication to realize a printer function that prints on a print medium such as paper, among the image forming functions.
[0034] The connection I / F 827 is an interface for communicating with the operation unit 11 via the communication path 13 .
[0035] The communication I / F 828 is a network interface for connecting the main body 12 to a network N and communicating with an external device connected to the network N. The communication I / F 828 is, for example, an interface that supports Ethernet and is capable of communication compliant with TCP / IP or the like.
[0036] The bus 829 is a transmission path that connects the above-mentioned components to each other and transmits address signals, data signals, various control signals, and the like.
[0037] Note that the hardware configuration of the main body 12 shown in Fig. 2 is an example, and may include components other than those shown in Fig. 2. For example, specific options such as a finisher that sorts printed media or an ADF (Auto Document Feeder) that automatically feeds documents may be included.
[0038] (Hardware configuration of application market servers, etc.) 3 is a diagram showing an example of the hardware configuration of the application market server according to the embodiment, The hardware configuration of the application market server 20 according to the embodiment will be described with reference to FIG.
[0039] As shown in FIG. 3, the application market server 20 includes a CPU 901, a ROM 902, a RAM 903, an auxiliary storage device 905, a media drive 907, a display 908, a network I / F 909, a keyboard 911, a mouse 912, and a DVD (Digital Versatile Disc) drive 914.
[0040] The CPU 901 is a computing device that controls the overall operation of the application market server 20. The ROM 902 is a non-volatile storage device that stores programs for the application market server 20. The RAM 903 is a volatile storage device that is used as a work area for the CPU 901.
[0041] The auxiliary storage device 905 is a storage device such as an HDD or SSD that stores images read by the MFP 10 using the scan function. The media drive 907 is a device that controls reading and writing of data from and to a recording medium 906 such as a flash memory under the control of the CPU 901.
[0042] The display 908 is a display device configured by a liquid crystal or organic EL display, etc., that displays various information such as a cursor, a menu, a window, characters, or an image.
[0043] The network I / F 909 is an interface for communicating data with an external device such as the MFP 10 using the network N. The network I / F 909 is, for example, a network interface card (NIC) that supports Ethernet and is capable of communication compliant with TCP / IP or the like.
[0044] The keyboard 911 is an input device for selecting letters, numbers, and various instructions, moving the cursor, etc. The mouse 912 is an input device for selecting and executing various instructions, selecting a processing target, moving the cursor, etc.
[0045] The DVD drive 914 is a device that controls reading and writing of data from and to a DVD 913 such as a DVD-ROM or a DVD-R (Digital Versatile Disk Recordable) as an example of a removable storage medium.
[0046] The above-mentioned CPU 901, ROM 902, RAM 903, auxiliary storage device 905, media drive 907, display 908, network I / F 909, keyboard 911, mouse 912 and DVD drive 914 are connected to each other so that they can communicate with each other via bus lines 910 such as an address bus and a data bus.
[0047] The hardware configuration of the application market server 20 shown in FIG. 3 is an example, and it is not necessary to include all of the components shown in FIG. 3, or other components may be included.
[0048] Furthermore, the hardware configuration shown in FIG. 3 has been described as the hardware configuration of the application market server 20, but the hardware configurations of the contract management server 30 and the PC 40 also conform to the hardware configuration shown in FIG.
[0049] (Software configuration for information processing systems) 4 is a diagram showing an example of the software configuration of the information processing system according to the embodiment, The software configuration of the information processing system 1 according to the embodiment will be described with reference to FIG.
[0050] As shown in FIG. 4, the operation unit 11 includes an application market application 51, a browser 52, and an operation unit system 53.
[0051] The application market application 51 is an application that communicates with an application market site provided by the application market server 20 via a browser 52 and provides a function for downloading applications or firmware in accordance with user operations.
[0052] The browser 52 is software that realizes functions such as web applications by obtaining web content (e.g., HTML (HyperText Markup Language), CSS (Cascading Style Sheets), JavaScript (registered trademark), various electronic files, etc.) from the application market server 20.
[0053] The operation unit system 53 is software that controls the operation of the operation unit 11 other than the functions realized by the browser 52 .
[0054] As shown in FIG. 4, the main body unit 12 includes a main body system 61, an image forming engine 62, and an image forming application 63.
[0055] The main body system 61 is software that controls the operation of the main body unit 12. The image forming engine 62 corresponds to the scanner engine 825 and the printer engine 826 described above. The image forming application 63 is an application that controls the operation of the image forming engine 62. For example, the image forming application 63 includes a copy application, a scanner application, a fax application, a printer application, etc.
[0056] As shown in FIG. 4, the ROM 822 has a non-operational area for temporarily storing firmware downloaded from the application market server 20 and holding it in an unexecuted state, and an operational area for storing firmware that actually controls the operation of the operation unit 11 and the main body unit 12.
[0057] 4, the PC 40 also has a browser 71. The browser 71 is software that realizes functions such as web applications by obtaining web content (e.g., HTML, CSS, JavaScript, various electronic files, etc.) from the contract management server 30.
[0058] (Functional block configuration of information processing system) 5 is a diagram showing an example of the configuration of functional blocks of the information processing system according to the embodiment, The configuration of functional blocks of the information processing system 1 according to the embodiment will be described with reference to FIG.
[0059] As shown in FIG. 5, the operation unit 11 of the MFP 10 according to this embodiment includes a UI (User Interface) unit 521 (an example of a display control unit), a list request unit 522, a screen request unit 523, an installation request unit 524, a UI unit 531, a setting unit 532, an input unit 111, a display unit 112, a communication unit 113, and a memory unit 114.
[0060] The UI unit 521 is a functional unit that displays, on the display unit 112, a web page or the like corresponding to content acquired from the application market server 20. The UI unit 521 also accepts various operations (e.g., clicking a link) on the web page in response to a user's operation input to the input unit 111. The UI unit 521 is realized by the CPU 811 of the operation unit 11 shown in FIG. 2 executing the browser 52.
[0061] The list request unit 522 is a functional unit that requests the application market server 20 to send a list of applications and firmware that can be installed in the MFP 10 in response to a user's operation input to the input unit 111. The list request unit 522 is realized by the CPU 811 of the operation unit 11 shown in FIG. 2 executing the browser 52.
[0062] The screen request unit 523 is a functional unit that requests information on various screens to be displayed on the display unit 112 from the application market server 20 in response to a user's operation input to the input unit 111. The screen request unit 523 is realized by the CPU 811 of the operation unit 11 shown in FIG. 2 executing the browser 52.
[0063] The installation request unit 524 is a functional unit that requests the application market server 20 to install designated firmware in response to a user's operation input to the input unit 111. The installation request unit 524 is realized by the CPU 811 of the operation unit 11 shown in FIG. 2 executing the browser 52.
[0064] The UI unit 531 is a functional unit that displays a screen (for example, a home screen described later) for performing various operations of the MFP 10 on the display unit 112. The UI unit 531 is realized by the CPU 811 of the operation unit 11 shown in FIG.
[0065] The setting unit 532 is a functional unit that sets various setting values in various setting screens (for example, an automatic update setting screen, an automatic activation setting screen, etc., which will be described later) displayed on the display unit 112 in response to a user's operation input to the input unit 111. The setting unit 532 is realized by the CPU 811 of the operation unit 11 shown in FIG. 2 executing the operation unit system 53.
[0066] The input unit 111 is a functional unit that accepts operational inputs from a user and is realized by the input function of the operation panel 815 shown in FIG.
[0067] Display unit 112 is a functional unit that displays various information in accordance with commands from UI unit 521 and UI unit 531. Display unit 112 is realized by the display function of operation panel 815 shown in FIG.
[0068] The communication unit 113 is a functional unit that performs data communication with the application market server 20 via the network N under the control of the browser 52. The communication unit 113 is realized by the communication I / F 817 shown in FIG. 2 and the CPU 811 executing a program.
[0069] The storage unit 114 is a functional unit that stores various data. For example, the storage unit 114 stores setting information set on an automatic update setting screen and an automatic activation setting screen, which will be described later. The storage unit 114 is realized by the RAM 813 or the flash memory 814 shown in FIG. 2.
[0070] As shown in FIG. 5, the main body unit 12 of the MFP 10 according to this embodiment includes a reservation unit 611, an update unit 612, a startup processing unit 613, an activation processing unit 614 (validation unit), and a determination unit 615.
[0071] The reservation unit 611 is a functional unit that reserves the activation of a function of a function version of firmware designated (selected) by a user after the firmware is updated. Hereinafter, the activation of a function of a function version of firmware that has been installed (updated) may be referred to as "activating." Information about the function of the function version reserved by the reservation unit 611 may be temporarily stored in, for example, the RAM 823 or the storage 824 shown in FIG. 2. The reservation unit 611 is realized by the CPU 821 of the main body unit 12 shown in FIG. 2 executing the main body system 61.
[0072] The update unit 612 is a functional unit that updates and stores firmware downloaded from the application market server 20 via the communication unit 113 in a non-operational area of the ROM 822 (an example of a storage unit) shown in Fig. 4. The update unit 612 is realized by the CPU 821 of the main body unit 12 shown in Fig. 2 executing the main body system 61.
[0073] The startup processing unit 613 is a functional unit that copies the firmware updated in the non-operational area of the ROM 822 by the update unit 612 to the operation area when the MFP 10 is started (or restarted), and executes the firmware. The startup processing unit 613 is realized by the CPU 821 of the main body unit 12 shown in FIG. 2 executing the main body system 61.
[0074] The activation processing unit 614 is a functional unit that activates the function of a functional version of firmware specified by the user for firmware installed in the ROM 822. The activation processing unit 614 may activate the function when the downloaded firmware is updated to the non-operational area of the ROM 822 (when the firmware is copied to the operation area by the activation processing unit 613 and executed, the function is activated), or may activate the function when the firmware is copied to the operation area by the activation processing unit 613. The activation processing unit 614 is realized by the CPU 821 of the main body unit 12 shown in FIG. 2 executing the main body system 61.
[0075] In this way, by updating pre-installed firmware and applications in an electronic device, such as the MFP 10, the latest functions can be added to the electronic device. In this embodiment, this mechanism is referred to as ACT (Always Current Technology). Electronic devices equipped with the ACT function can acquire the latest functions that were not installed at the time of purchase as firmware packages via the network N and add the functions. Furthermore, firmware packages for adding functions via the network N are updated and published as needed on the application market server 20, etc., from which the firmware packages are acquired. This reduces the time lag between the development of a function to be added to the electronic device and its installation, allowing new functions to be added to the electronic device in a timely manner. Furthermore, this reduces the cost to users of replacing their electronic devices to use new functions.
[0076] The determination unit 615 is a functional unit that compares and determines the function version of the firmware specified by the user, the maximum function version that can be activated in the currently installed firmware, and the currently activated function version. The determination unit 615 is realized by the CPU 821 of the main body unit 12 shown in FIG. 2 executing the main body system 61.
[0077] Note that the functional units of operation unit 11 and main body unit 12 of MFP 10 shown in Fig. 5 are conceptual representations of functions, and are not limited to such configurations. For example, the multiple functional units illustrated as independent functional units in MFP 10 shown in Fig. 5 may be configured as a single functional unit. On the other hand, the function of a single functional unit in MFP 10 shown in Fig. 5 may be divided into multiple units and configured as multiple functional units.
[0078] Furthermore, for example, in the operation unit 11, the functional units realized by the browser 52 and the functional units realized by the operation unit system 53 do not need to be clearly distinguished, and the functional units realized by the browser 52 may be realized by the operation unit system 53, or vice versa. Furthermore, software different from the browser 52 and the operation unit system 53 may realize each functional unit.
[0079] Also, as shown in FIG. 5, the application market server 20 according to this embodiment includes a list response unit 201, a screen response unit 202, a purchase confirmation request unit 203, a specified version response unit 204, a communication unit 205, and a memory unit 206.
[0080] List response unit 201 is a functional unit that generates a list of apps and firmware that can be installed on MFP 10 in response to a request from list request unit 522 of MFP 10, and transmits the list to MFP 10 via communication unit 205. List response unit 201 is realized by CPU 901 shown in FIG. 3 executing a program.
[0081] Screen response unit 202 is a functional unit that transmits information on various screens (for example, a home screen) to MFP 10 via communication unit 205 in response to a request from screen request unit 523 of MFP 10. Screen response unit 202 is realized by CPU 901 shown in FIG. 3 executing a program.
[0082] The purchase confirmation request unit 203 is a functional unit that, when receiving an installation command requesting installation of designated firmware from the installation request unit 524 of the MFP 10, requests the contract management server 30 to confirm whether the designated firmware has been purchased. The purchase confirmation request unit 203 is realized by the CPU 901 shown in FIG. 3 executing a program.
[0083] Specified version response unit 204 is a functional unit that responds to main body system 61 of MFP 10 with the functional version of firmware requested to be installed by installation request unit 524 of MFP 10. Specified version response unit 204 is realized by CPU 901 shown in FIG. 3 executing a program.
[0084] The communication unit 205 is a functional unit that performs data communication with the MFP 10 and the contract management server 30 via the network N. The communication unit 205 is realized by the network I / F 909 and the CPU 901 shown in FIG. 3 executing a program.
[0085] The storage unit 206 is a functional unit that stores applications, various firmware programs, and packages that combine these, etc. The storage unit 206 is realized by the auxiliary storage device 905 shown in FIG.
[0086] Note that the functional units of the application market server 20 shown in Figure 5 are conceptual representations of functions, and are not limited to this configuration. For example, the multiple functional units illustrated as independent units in the application market server 20 shown in Figure 5 may be configured as a single functional unit. On the other hand, the function of a single functional unit in the application market server 20 shown in Figure 5 may be divided into multiple units and configured as multiple functional units.
[0087] As shown in FIG. 5, the contract management server 30 according to this embodiment includes a purchase information registration unit 301, a purchase information response unit 302, a communication unit 303, and a storage unit 304.
[0088] The purchase information registration unit 301 is a functional unit that associates the function version of firmware requested for purchase from the PC 40 with the user ID of the user who logged in to the purchase site of the contract management server 30, the tenant ID, the device ID of the MFP 10, and the like, and stores (registers) this as purchase information in the storage unit 304. The purchase information registration unit 301 is realized by the CPU 901 shown in FIG. 3 executing a program.
[0089] The purchase information response unit 302 is a functional unit that transmits purchase information about the specified firmware to the application market server 20 via the communication unit 303 in response to a request for confirmation of the purchase of the firmware from the purchase confirmation request unit 203 of the application market server 20. The purchase information response unit 302 is realized by the CPU 901 shown in FIG. 3 executing a program.
[0090] The communication unit 303 is a functional unit that performs data communication with the application market server 20 and the PC 40 via the network N. The communication unit 303 is realized by the network I / F 909 and the CPU 901 shown in FIG. 3 executing a program.
[0091] The storage unit 304 is a functional unit that stores the above-mentioned purchase information, etc. The storage unit 304 is realized by the auxiliary storage device 905 shown in FIG.
[0092] Note that the functional units of the contract management server 30 shown in Figure 5 are conceptual representations of functions, and are not limited to this configuration. For example, the multiple functional units shown as independent functional units in the contract management server 30 shown in Figure 5 may be configured as a single functional unit. On the other hand, the function of a single functional unit in the contract management server 30 shown in Figure 5 may be divided into multiple functional units and configured as multiple functional units.
[0093] As shown in FIG. 5, the PC 40 according to this embodiment includes a purchase request unit 711, an input unit 401, and a communication unit 402.
[0094] The purchase request unit 711 is a functional unit that, in response to a user's operation input to the input unit 401, transmits the functional version of the firmware desired to be purchased, which is shown on the screen of the purchase site of the contract management server 30 displayed on the browser 71, together with the user ID logged in to the purchase site, to the contract management server 30 via the communication unit 402. The purchase request unit 711 is realized by the CPU 901 shown in FIG. 3 executing a program.
[0095] The input unit 401 is a functional unit that accepts operational inputs from a user and is realized by a keyboard 911 and a mouse 912 shown in FIG.
[0096] The communication unit 402 is a functional unit that performs data communication with the contract management server 30 via the network N under the control of the browser 71. The communication unit 402 is realized by the network I / F 909 shown in FIG. 3 and the CPU 901 executing a program.
[0097] Note that the functional units of PC 40 shown in Fig. 5 are conceptual representations of functions, and are not limited to such configurations. For example, the multiple functional units shown as independent functional units in PC 40 shown in Fig. 5 may be configured as a single functional unit. On the other hand, the function of a single functional unit in PC 40 shown in Fig. 5 may be divided into multiple functional units, and configured as multiple functional units.
[0098] Furthermore, among the functional units of the MFP 10, the application market server 20, the contract management server 30, and the PC 40 shown in FIG. 5, the functional units that are realized by executing various software are not limited to this, and at least one of the functional units may be realized by a dedicated hardware circuit (integrated circuit, etc.).
[0099] (Examples of screens and screen transitions displayed on MFP10) FIG. 6 is a diagram showing an example of screen transitions. FIG. 7 is a diagram showing an example of screen transitions. FIG. 8 is a diagram showing an example of a home screen. FIG. 9 is a diagram showing an example of a list screen showing an example of applications and firmware to be installed on an application site. FIG. 10 is a diagram showing an example of functions supported by each function version. FIG. 11 is a diagram showing the relationship between the maximum function version and the current function version. FIG. 12 is a diagram showing an example of an installation screen for installing free firmware. FIG. 13 is a diagram showing an example of an installation screen for installing paid firmware. FIG. 14 is a diagram showing an example of an installation screen for already installed firmware. With reference to FIGS. 6 to 14, the flow of screen transitions and screens displayed on the MFP 10 according to this embodiment will be described.
[0100] First, the screen transitions shown in Fig. 6 will be described. As shown in Fig. 6, when a user touches banner display portion 1001 on home screen 1000 displayed on display unit 112 of MFP 10, UI unit 531 displays banner details dialog box 1100 on display unit 112. Banner display portion 1001 on home screen 1000 is a display area that displays the latest information for MFP 10, and in the example shown in Fig. 6, it displays "Software update available," notifying the user that some software is available for update. Banner details dialog box 1100 is a dialog box that displays details of the latest information displayed in banner display portion 1001.
[0101] The banner details dialog box 1100 has a details button 1101 for displaying details of software update information. When the user presses this details button 1101, the UI unit 521 causes the display unit 112 to display a list screen 1200 showing a list of multiple apps and firmware that can be installed on the MFP 10, which are acquired from the application market server 20 by the list request unit 522. The list screen 1200 is also displayed by the UI unit 521 when the application site button 1002 on the home screen 1000 is pressed.
[0102] List screen 1200 displays a list of multiple apps and firmware that can be installed on MFP 10, and the apps and firmware are displayed as button icons for installing each app and for installing each firmware. Here, "installable apps" is not limited to apps that are not currently installed or activated, but also includes apps that are already installed or activated. That is, list screen 1200 displays the list without distinguishing between apps and firmware. For apps, there is no distinction between apps that can be updated and apps that are already installed. For firmware, there is no distinction between apps that can be updated, apps that are already installed but whose firmware functions can be activated, and apps that are already installed and whose firmware functions are activated. Paid apps and firmware are displayed regardless of whether they have been purchased or not. 9 includes, as buttons corresponding to firmware, a firmware button 1201a corresponding to "FW V1.0," a firmware button 1201b corresponding to "FW V1.1," a firmware button 1201c corresponding to "FW V1.2," and a firmware button 1201d corresponding to "FW V2.0." Furthermore, the list screen 1200 includes, as buttons corresponding to apps, an application button 1202a corresponding to "App A" and an application button 1202b corresponding to "App B." The list screen 1200 also includes a management button 1203 for configuring various settings.
[0103] The list screen 1200 may display only a list of apps and firmware that have not yet been installed, or firmware with function versions that have not yet been activated.
[0104] Here, for example, "FW V1.1" indicates that the firmware has a function version of V1.1. Referring to FIG. 10, the relationship between firmware function versions and the functions supported by each function version is shown. In the table shown in FIG. 10, the columns indicate function versions, the rows indicate functions supported by the firmware, and a circle in the table indicates that the function is supported. As shown in FIG. 10, generally, firmware supports more functions as the function version increases. For example, firmware with function version V1.0 supports only function A, while firmware with function version V1.1 supports function B in addition to function A. Examples of functions supported by each firmware include user interface updates and a function for notifying various information via banners or widgets on the operation unit 11. Examples of functions supported by paid firmware include an automatic upload function for device information, a two-way communication function for forming a dedicated line for remotely configuring and installing firmware on multiple MFPs, security functions based on image authentication, biometric authentication, and combined authentication, and a workflow creation function for creating processing flows.
[0105] Furthermore, there are multiple types of firmware versions (major version, minor version, maintenance version, paid version, etc.), as described below. Depending on the firmware version or type, installation and activation may be performed automatically or based on the operator's (user's) choice. For example, firmware that includes bug fixes or virus protection improvements may be automatically installed and activated upon firmware release. On the other hand, firmware that includes user interface changes may be installed automatically but activated based on the administrator's or user's choice, so that device administrators and users can easily understand the changes to functions on shared devices. The reason for automatically installing firmware in advance is that it can be activated (switched) immediately upon input. Furthermore, for paid versions of firmware, both installation and activation are controlled based on the user's contract and choice. By providing these stages, firmware updates can be easily understood by users and added value can be achieved without compromising the safety and robustness of the device.
[0106] Next, the maximum function version and the current function version will be described with reference to FIG. 11. The maximum function version refers to the function version corresponding to the activated functions when all functions of the firmware installed on the MFP 10 are activated. For example, when the "FW V1.2" firmware is installed, the maximum function version is V1.2. That is, when the "FW 1.2" firmware has functions A to C, and when the firmware is installed and all functions are activated, the function version corresponding to the activated functions A to C is V1.2, which is the maximum function version. The current function version refers to the function version corresponding to the activated functions of the currently installed firmware. For example, when the "FW V1.2" firmware is installed on the MFP 10, the maximum function version is V1.2. However, when only functions A and B of the firmware's functions are activated, V1.1, which corresponds to functions A and B, is the current function version. That is, the MFP 10 manages the maximum function version and the current function version of the installed firmware, as shown in Table 1 below.
[0107] [Table 1]
[0108] In the example shown in Table 1, firmware with function version V1.2 has been installed on MFP10, so the maximum function version is V1.2, and of the functions of the firmware, only those corresponding to function version V1.0 have been activated, so the current function version is V1.0.
[0109] Furthermore, the relationship between the maximum function version and the current function version will be described in detail with reference to FIG. 11. When firmware with function version V1.2 is installed on the MFP 10, the maximum function version will be V1.2, as described above. In this case, the V1.2 firmware has the potential to provide functions A to C, and when the firmware is installed, it is possible to activate the functions corresponding to function versions V1.0, V1.1, and V1.2. For example, as shown in FIG. 11, when a function corresponding to function version V1.1 is activated, function A and function B are provided, but function C is not provided. In other words, the functions of the firmware are not only enabled when the firmware is installed, but also after it has been activated.
[0110] Returning to Figure 6, the description of the screen transition operation will continue. The user presses the button of the firmware or app that the user desires to install from the list shown on the list screen 1200 displayed by the UI unit 521. For example, as shown in Figure 6, when the user presses the firmware button 1201c to install the firmware "FW V1.2," the UI unit 521 causes the display unit 112 to display an installation screen 1300 for installing the firmware.
[0111] 6, the installation screen 1300 includes a screenshot display section 1301 that displays the operating state of the firmware, an explanation display section 1302 that explains the operation of the firmware, and a detail link section 1303 for transitioning to a screen that displays details of the functions of the firmware. For example, as shown in FIG. 6, when the user touches the detail link section 1303, the UI section 521 causes the display section 112 to display a detail screen 1400 that displays details of the functions of the firmware. The detail screen 1400 is a screen that displays detailed explanations of functions that have been newly added in "FW V1.2."
[0112] Here, we will explain the installation screen in detail. Assume that firmware with function version V1.1 is installed on the MFP10 and functions corresponding to function version V1.1 are activated. In this case, the maximum function version is V1.1 and the current function version is also V1.1.
[0113] At this time, when a firmware button 1201c for installing the firmware "FW V1.2" is pressed on the list screen 1200, an installation screen 1300 for the firmware "FW V1.2" is displayed as shown in Fig. 12. As shown in Fig. 12, the installation screen 1300 has, in addition to the above-mentioned screenshot display section 1301, explanation display section 1302, and detail link section 1303, an install button 1304 for performing the installation process (or activation process), and a paid / free display section 1305 that indicates whether the firmware is paid or free.
[0114] 12, since the firmware "FW V1.2" is free, "Free" is displayed in the paid / free display section 1305. When the user presses the install button 1304, it becomes clear that the user desires to use the functions of function version V1.2, so the firmware "FW V1.2" is downloaded from the application market server 20 and installed, and the functions of function version V1.2 are activated.
[0115] Furthermore, when firmware button 1201d is pressed on list screen 1200 to install firmware "FW V2.0," an installation screen 1310 for firmware "FW V2.0" shown in FIG. 13 is displayed. As shown in FIG. 13, installation screen 1310 includes a screenshot display section 1311, an explanation display section 1312, a detail link section 1313, an install button 1314, and a paid / free display section 1315. The functions of screenshot display section 1311, explanation display section 1312, and detail link section 1313 are similar to the functions of screenshot display section 1301, explanation display section 1302, and detail link section 1303 on installation screen 1300 described above. Because firmware "FW V2.0" is paid for, paid / free display section 1315 displays "Paid: XX yen / unit." Therefore, the user can recognize that the desired firmware is a paid firmware by checking the content of the paid / free display section 1315 on the installation screen 1310. When the user presses the install button 1314, the MFP 10 sends an installation command for the firmware to the application market server 20, and the application market server 20 inquires of the contract management server 30 to confirm whether the firmware has already been purchased. If the result shows that the firmware has not been purchased, the UI unit 521 displays, for example, a dialog box or the like, a message indicating that the firmware "FW V2.0" cannot be installed because it has not been purchased. On the other hand, if the firmware has been purchased, the firmware "FW V2.0" is downloaded from the application market server 20 and installed, and the functions of function version V2.0 are activated.
[0116] Furthermore, when the firmware button 1201a is pressed on the list screen 1200 to install the firmware "FW V1.1," an installation screen 1320 for the firmware "FW V1.0" shown in FIG. 14 is displayed. As shown in FIG. 14, the installation screen 1320 includes a screenshot 1321, an explanation display section 1322, a detail link section 1323, an installed firmware display section 1324, and a paid / free display section 1325. The functions of the screenshot display section 1321, the explanation display section 1322, and the detail link section 1323 are similar to the functions of the screenshot display section 1301, the explanation display section 1302, and the detail link section 1303 on the installation screen 1300 described above. In the example shown in FIG. 14, the firmware "FW V1.0" is free, so the paid / free display section 1325 displays "free." However, as described above, the state of the firmware of MFP 10 is such that the maximum function version is V1.1 and the current function version is also V1.1, so the functions of function version V1.0 are already activated and there is no need to install firmware of function version V1.0, so instead of install buttons 1304 and 1314 shown in Figures 12 and 13, a message indicating that the firmware is already installed is displayed in installed display section 1324. This allows the user to recognize that the firmware selected on list screen 1200 has already been installed (or that the functions of the function version of the firmware have already been activated).
[0117] Next, with reference to FIG. 7, a screen transition from home screen 1000 to installation screen 1300 will be described, taking a different route from the screen transition shown in FIG. 6. Home screen 1000 shown in FIG. 7 includes widget 1003 instead of banner display section 1001 included in home screen 1000 shown in FIG. 6. Widget 1003 is a display area and button that displays the latest information for MFP 10. In the example shown in FIG. 7, widget 1003 displays "Latest software updates are available," informing the user that some software is available for update. As shown in FIG. 8, home screen 1000 includes, for example, application site button 1002 and widget 1003, as well as copy button 1004a for executing a copy process, scan button 1004b for executing a scan process, and fax button 1004c for executing a fax process.
[0118] When the user presses widget 1003, UI unit 531 displays notification dialog box 1500 on display unit 112. Unlike the above-described banner details dialog box 1100, notification dialog box 1500 is a screen that displays specific firmware that can be installed (or activated). As shown in FIG. 7, notification dialog box 1500 includes a screenshot display section 1501, an explanation display section 1502, and a details button 1503. The notification dialog box 1500 shown in FIG. 7 displays firmware "FW V1.2."
[0119] The screenshot display section 1501 is a section that displays a screenshot of a screen showing the operating state of the firmware displayed in the notification dialog box 1500. The explanation display section 1502 is a display section that explains the operation of the firmware. The details button 1503 is a button for displaying an installation screen for installing (activating) the firmware.
[0120] 7, when the user presses the Details button 1503 to install the firmware "FW V1.2," the UI unit 521 displays the installation screen 1300 for installing the firmware on the display unit 112. The layout and functions of the installation screen 1300 are as described above.
[0121] As described above, by pressing widget 1003 on home screen 1000, which displays the latest information about MFP 10, a notification dialog box 1500 is displayed that explains firmware that can be installed (or activated), allowing the user to check the contents of the firmware and easily proceed to the installation process.
[0122] (Explanation of behavior when upgrading the current function version) Fig. 15 is a diagram illustrating the operation when upgrading the current function version. Fig. 16 is a diagram illustrating the case when a paid function version is used. The operation when upgrading the current function version will be described with reference to Figs. 15 and 16.
[0123] In the example shown in FIG. 15, the maximum function version is V1.2 and the current function version is V1.1. In this case, the installed firmware has the potential to provide functions A to C, so functions corresponding to function versions V1.0, V1.1, and V1.2 can be activated without updating the firmware. For example, when upgrading the current function version from V1.1 to V1.2 (activating the functions of function version V1.2), the firmware of function version V1.2 naturally supports the functions of function version V1.2, so this can be done without updating the firmware. Specifically, on the list screen 1200 described above, pressing the firmware button 1201d for installing the firmware "FW V1.2" causes the installation screen 1300 to be displayed, and this can be achieved by pressing the install button 1304. In this case, since the maximum function version is V1.2, firmware with function version V1.2 is already installed. Therefore, only the functions of function version V1.2 are activated without updating the firmware.
[0124] On the other hand, if the current function version is to be upgraded from V1.1 to V1.3 (i.e., the function of function version V1.3 is activated), the maximum function version is V1.2, so firmware update to function version V1.3 is required. Specifically, this can be achieved by pressing the firmware button for installing the "FW V1.3" firmware on the list screen 1200 described above, displaying the "FW V1.3" installation screen, and then pressing the "Install" button. When the user presses the "Install" button, it becomes clear that the user desires to use the function of function version V1.3. Therefore, the "FW V1.3" firmware is downloaded from the application market server 20, installed, and the function of function version V1.3 is activated. As a result, the maximum function version becomes V1.3, and the current function version also becomes V1.3.
[0125] In the example shown in FIG. 16, the maximum function version is V1.3, and the current function version is V1.3. To update to paid function version V2.0 firmware, the user logged in to the MFP 10 must first sign a purchase contract for function version V2.0 firmware with the contract management server 30. When the user presses the install button 1314 on the installation screen 1310 for the "FW V2.0" firmware, the MFP 10 sends an installation command for the firmware to the application market server 20, and the application market server 20 inquires of the contract management server 30 about whether the firmware has already been purchased. If the firmware has not yet been purchased, the UI unit 521 displays, for example, a dialog box, indicating that the "FW V2.0" firmware cannot be installed because it has not yet been purchased. If the firmware has already been purchased, the "FW V2.0" firmware is downloaded from the application market server 20 and installed, and the functions of function version V2.0 are activated.
[0126] As explained above in Figure 10, the function version increases each time a function is added. However, firmware does not necessarily need to be upgraded to add new functions; it is also anticipated that firmware upgrades may be performed to fix bugs or other issues in the functions. In order to install upgraded firmware to fix bugs or other issues in such functions and activate the fixed functions, it is not necessary to go through the screen transitions shown in Figures 6 and 7 above to install and activate the updated functions; the installation and activation can be automatic. However, since version management is necessary before and after bugs or other issues are fixed, for example, it is possible to manage the version of the firmware itself in addition to the maximum function version, as shown in Table 2 below.
[0127] [Table 2]
[0128] For example, in firmware version "V1.0.1," the leftmost "1" is called the major version, the center "0" is called the minor version, and the rightmost "1" is called the maintenance version. In this case, a version change due to the addition of new functionality is made by incrementing the minor or major version. On the other hand, a version change to fix bugs or other issues in functionality is made by incrementing the maintenance version. For example, if the firmware version changes from V1.0.0 to V1.0.1, the increase in the maintenance version indicates that the version change is due to a bug or other issue. However, even if version V1.0.0 is upgraded to V1.0.1, the functional version remains unchanged at V1.0.
[0129] (Automatic renewal settings and automatic activation settings) Fig. 17 is a diagram showing an example of an automatic update setting screen. Fig. 18 is a diagram showing an example of an automatic activation setting screen. Automatic firmware update settings and automatic firmware function activation settings will be described with reference to Figs. 17 and 18.
[0130] When the user presses the Manage button 1203 on the list screen 1200, the UI unit 531 displays the automatic update setting screen 1600 shown in Fig. 17 or the automatic activation setting screen 1610 shown in Fig. 18 on the display unit 112. Note that the list screen 1200 may have a Manage button for displaying the automatic update setting screen 1600 or the automatic activation setting screen 1610, respectively, or alternatively, the automatic update setting screen 1600 or the automatic activation setting screen 1610 may be displayed when the Manage button 1203 is pressed, and the user may be able to freely transition between the automatic update setting screen 1600 and the automatic activation setting screen 1610.
[0131] 17 is a screen for setting whether or not, when firmware that is an upgrade from the firmware installed in the MFP 10 is released on the application market server 20, the MFP 10 will automatically download and install (update) the upgraded firmware from the application market server 20. When the user sets ON / OFF on the automatic update setting screen 1600 and then presses OK button 1601, setting unit 532 stores the setting information in storage unit 114.
[0132] For example, if the automatic firmware update setting is turned on on the automatic update setting screen 1600, when the installation request unit 524 of the MFP 10 receives a notification from the application market server 20 via the communication unit 113 that an upgraded firmware has been released, the installation request unit 524 automatically transmits an installation request for the firmware to the application market server 20. Then, the update unit 612 automatically downloads the firmware from the application market server 20 via the communication unit 113, and updates and stores the firmware in a non-operational area of the ROM 822.
[0133] 18 is a screen for setting whether or not to automatically activate all functions of the upgraded firmware when the firmware is installed in the MFP 10. When the user sets ON / OFF on the automatic activation setting screen 1610 and then presses OK button 1611, setting unit 532 stores the setting information in storage unit 114.
[0134] For example, if automatic activation is turned off on automatic activation setting screen 1610 and automatic update is turned on on automatic update setting screen 1600, when install is pressed on the installation screen, if the target firmware on the installation screen has already been automatically downloaded and updated, only activation processing of the function of that firmware is executed by activation processing unit 614. Also, if automatic activation is turned on on automatic activation setting screen 1610 and automatic update is also turned on on automatic update setting screen 1600, installation request unit 524 automatically requests installation of the firmware, and after update unit 612 automatically downloads the firmware and updates it to a non-operating area of ROM 822, activation processing unit 614 also automatically executes activation processing of the function of that firmware.
[0135] (Firmware purchase operation) 19 is a sequence diagram showing an example of an operation for purchasing firmware. With reference to FIG. 19, the flow of the operation for purchasing firmware in the information processing system 1 according to this embodiment will be described.
[0136] <Step S11> The user logs in to the purchasing site of the contract management server 30, views the purchasing site displayed on the browser 71 of the PC 40, and performs a firmware purchasing operation via the input unit 401 of the PC 40.
[0137] <Step S12> The purchase request unit 711 of the browser 71 of the PC 40 transmits the functional version of the firmware selected for purchase via the input unit 401 (or the version of the firmware itself, but for simplicity, we will refer to it as the functional version below) and the user ID to the contract management server 30 via the communication unit 402.
[0138] <Step S13> When the purchase information registration unit 301 of the contract management server 30 receives the function version and the user ID from the PC 40, the purchase information registration unit 301 stores (registers) the function version and the user ID in the storage unit 304 as purchase information in association with the tenant ID, the device ID, etc.
[0139] <Steps S14 and S15> When the purchase information response unit 302 of the contract management server 30 receives a purchase confirmation request from the purchase confirmation request unit 203 of the application market server 20 to confirm whether the specified firmware has been purchased, the purchase information response unit 302 transmits purchase information about the firmware to the application market server 20 via the communication unit 303 in response to the purchase confirmation request.
[0140] The firmware purchase operation is carried out through the flow of steps S11 to S15 above.
[0141] (Installation and activation of firmware in information processing systems) 20 is a sequence diagram showing an example of the operation when performing installation. First, an overview of the flow of the operation of installing and activating firmware in the information processing system 1 according to this embodiment will be described with reference to FIG.
[0142] <Step S21> The user displays an installation screen for the firmware that the user desires to install and activate on the MFP 10, and executes the installation by pressing the install button on the installation screen via the input unit 111. Then, the installation request unit 524 of the MFP 10 transmits an installation command to the application market server 20 via the communication unit 113, requesting the application market server 20 to install the specified firmware. Then, the process proceeds to step S22.
[0143] <Step S22> If the firmware for which the installation execution command has been issued is one that requires payment (step S22: paid), the process proceeds to step S23, and if the firmware is free of charge (step S22: free of charge), the process proceeds to step S24.
[0144] <Step S23> If the firmware for which an installation execution command has been issued is paid firmware, upon receiving the installation command from the installation request unit 524 of the MFP 10, the purchase confirmation request unit 203 of the application market server 20 transmits a purchase confirmation request to the contract management server 30 via the communication unit 205, confirming whether the specified firmware has been purchased. Then, upon receiving the purchase confirmation request from the application market server 20, the purchase information response unit 302 of the contract management server 30 refers to the storage unit 304 and transmits purchase information corresponding to the firmware indicated in the purchase confirmation request to the application market server 20 via the communication unit 303. If the purchase information indicates that the firmware has been purchased (step S23: purchased), the process proceeds to step S24, and if it indicates that the firmware has not been purchased (step S23: not purchased), the process proceeds to step S27.
[0145] <Step S24> The determination unit 615 of the MFP 10 determines whether the maximum function version of the currently installed firmware is smaller than the function version of the firmware selected on the application market site (hereinafter, sometimes referred to as the designated function version). If the maximum function version is smaller than the designated function version (step S24: Yes), the process proceeds to step S25, and if the maximum function version is equal to or greater than the designated function version (step S24: No), the process proceeds to step S26.
[0146] <Step S25> The update unit 612 of the MFP 10 downloads the firmware selected on the application market site from the application market server 20 via the communication unit 113, and updates and stores the firmware in the non-operational area of the ROM 822. If necessary, the MFP 10 is restarted, and the startup processing unit 613 of the MFP 10 copies the firmware updated in the non-operational area of the ROM 822 by the update unit 612 to the operation area and executes the firmware. This increases the maximum function version. Then, the process proceeds to step S26.
[0147] <Step S26> Then, the activation processing unit 614 of the MFP 10 activates the functions corresponding to the specified function version for the installed firmware. This raises the current function version to the specified function version. This completes the firmware installation and activation operations.
[0148] <Step S27> When the application market server 20 sends purchase information from the contract management server 30 and the purchase information indicates that the firmware has not been purchased, the purchase confirmation request unit 203 sends information to the MFP 10 via the communication unit 205 that the specified firmware cannot be installed because it has not been purchased. When the UI unit 521 of the MFP 10 receives the information from the application market server 20 that the specified firmware cannot be installed because it has not been purchased, it causes the display unit 112 to display a message that the specified firmware cannot be installed because it has not been purchased, and also a message that prompts the user to purchase it.
[0149] The firmware is installed and activated through the flow of steps S21 to S27 described above.
[0150] Fig. 21 is a sequence diagram showing an example of the installation execution operation when the automatic update setting and the automatic activation setting are not set. Next, with reference to Fig. 21, a detailed description will be given of the flow of the firmware installation and activation operation when the automatic update setting and the automatic activation setting are both set to off in the information processing system 1 according to this embodiment. Note that the firmware selected (specified) in Fig. 21 is assumed to be free firmware.
[0151] <Steps S31 and S32> The user logs in to the application market site of the application market server 20 via the input unit 111 of the MFP 10 and performs an operation to display the list screen 1200. In response, the list request unit 522 of the MFP 10 transmits to the application market server 20 a list request for a list of applications and firmware that can be installed on the MFP 10, the user ID of the logged-in user, and the device ID of the MFP 10.
[0152] <Steps S33 to S35> When the list response unit 201 of the application market server 20 receives the list request from the MFP 10, the list response unit 201 generates a list of applications and firmware that can be installed on the MFP 10 and transmits the list to the MFP 10 via the communication unit 205. The UI unit 521 of the MFP 10 displays a list screen 1200 that reflects the list received from the application market server 20 on the display unit 112.
[0153] <Steps S36 and S37> When the user selects and presses the firmware button of the firmware that the user desires to install and activate on the list screen 1200 via the input unit 111, the screen request unit 523 of the MFP 10 sends a request to display the installation screen of the selected (specified) firmware to the application market server 20 via the communication unit 113.
[0154] <Step S38> In response to a screen display request from the MFP 10, the screen response unit 202 of the application market server 20 transmits installation screen information for the specified firmware to the MFP 10 via the communication unit 205. The UI unit 521 of the MFP 10 displays the installation screen for the specified firmware on the display unit 112 based on the installation screen information received from the application market server 20.
[0155] <Steps S39 and S40> When the user presses the install button on the installation screen via input unit 111, installation request unit 524 of MFP 10 transmits an installation command requesting installation of the specified firmware to application market server 20 via communication unit 113. In this way, by pressing the install button on the installation screen, it becomes clear that the user desires to use the functions of the functional version of the firmware selected by the user.
[0156] <Steps S41 to S44> The determination unit 615 of the MFP 10 determines whether the function version of the specified firmware is larger than the maximum function version. Here, we will explain the case where it is determined that the function version of the specified firmware is larger than the maximum function version. In this case, the currently installed firmware cannot support the functions of the specified function version of the firmware, and it becomes necessary to upload the specified firmware.
[0157] In response to the installation command from the installation request unit 524, the specified version response unit 204 of the application market server 20 transmits the specified function version of the firmware to the MFP 10 via the communication unit 205. The reservation unit 611 of the MFP 10 reserves the function version of the firmware specified (selected) by the user to enable the function of the function version after the firmware is updated. Information about the function of the function version reserved by the reservation unit 611 is temporarily stored, for example, in the RAM 823 or storage 824 shown in FIG. 2. The update unit 612 of the MFP 10 then downloads the specified firmware from the application market server 20 via the communication unit 113 and updates and stores the firmware in a non-operational area of the ROM 822.
[0158] <Steps S45 and S46> After the firmware in the non-operating area is updated by the update unit 612, the startup processing unit 613 of the MFP 10 restarts the MFP 10. Then, at the time of restart, the startup processing unit 613 copies the firmware that was updated in the non-operating area of the ROM 822 by the update unit 612 to the operating area, and performs processing to execute the firmware.
[0159] <Step S47> The determination unit 615 of the MFP 10 determines whether the function version reserved by the reservation unit 611 (activation reserved version) is equal to or less than the maximum function version. If the activation reserved version is equal to or less than the maximum function version, the activation processing unit 614 of the MFP 10 activates the function of the function version of firmware specified by the user for the firmware installed in the ROM 822 (firmware copied to the active area and executed). As a result, the firmware desired by the user to use is installed, and the desired function of the firmware is enabled and becomes available for use.
[0160] The above steps S41 to S47 are used to perform the firmware installation and activation operations when the automatic update setting and the automatic activation setting are both turned off.
[0161] Fig. 22 is a sequence diagram showing an example of the installation execution operation when the automatic update setting is enabled but the automatic activation setting is disabled. Next, with reference to Fig. 22, a detailed description will be given of the flow of firmware installation and activation operations when the automatic update setting is enabled and the automatic activation setting is disabled in the information processing system 1 according to this embodiment. Therefore, it is assumed that the latest firmware has been updated when the processing of the sequence diagram shown in Fig. 22 is started. It is assumed that the firmware selected (specified) in Fig. 22 is free.
[0162] <Steps S51 and S52> The user logs in to the application market site of the application market server 20 via the input unit 111 of the MFP 10 and performs an operation to display the list screen 1200. In response, the list request unit 522 of the MFP 10 transmits to the application market server 20 a list request for a list of applications and firmware that can be installed on the MFP 10, the user ID of the logged-in user, and the device ID of the MFP 10.
[0163] <Steps S53 to S55> When the list response unit 201 of the application market server 20 receives the list request from the MFP 10, the list response unit 201 generates a list of applications and firmware that can be installed on the MFP 10 and transmits the list to the MFP 10 via the communication unit 205. The UI unit 521 of the MFP 10 displays a list screen 1200 that reflects the list received from the application market server 20 on the display unit 112.
[0164] <Steps S56 and S57> When the user selects and presses the firmware button of the firmware that the user desires to install and activate on the list screen 1200 via the input unit 111, the screen request unit 523 of the MFP 10 sends a request to display the installation screen of the selected (specified) firmware to the application market server 20 via the communication unit 113.
[0165] <Step S58> In response to a screen display request from the MFP 10, the screen response unit 202 of the application market server 20 transmits installation screen information for the specified firmware to the MFP 10 via the communication unit 205. The UI unit 521 of the MFP 10 displays the installation screen for the specified firmware on the display unit 112 based on the installation screen information received from the application market server 20.
[0166] <Steps S59 and S60> When the user presses the install button on the installation screen via input unit 111, installation request unit 524 of MFP 10 transmits an installation command requesting installation of the specified firmware to application market server 20 via communication unit 113. In this way, by pressing the install button on the installation screen, it becomes clear that the user desires to use the functions of the functional version of the firmware selected by the user.
[0167] <Steps S61 to S63> The determination unit 615 of the MFP 10 determines whether the function version of the specified firmware is greater than or equal to the maximum function version. Here, we will explain the case where it is determined that the function version of the specified firmware is equal to or less than the maximum function version. In this case, the currently installed firmware supports the functions of the specified firmware function version, and there is no need to upload the specified firmware.
[0168] In response to the installation command from the installation request unit 524, the specified version response unit 204 of the application market server 20 transmits the specified function version of the firmware to the MFP 10 via the communication unit 205. Then, the activation processing unit 614 of the MFP 10 activates the function of the function version of the firmware specified by the user for the firmware installed in the ROM 822 (the firmware copied to the active area and executed). This enables the function of the firmware that the user wishes to use, making it available for use. Then, the startup processing unit 613 restarts the MFP 10 as necessary.
[0169] The above steps S51 to S63 are used to perform the firmware installation and activation operations when the automatic update setting is on and the automatic activation setting is off.
[0170] Fig. 23 is a sequence diagram showing an example of the operation when automatic activation is set. Next, with reference to Fig. 23, a detailed description will be given of the flow of operations for installing and activating firmware when automatic activation is set to ON in the information processing system 1 according to this embodiment. Note that the firmware selected (specified) in Fig. 23 is assumed to be free of charge.
[0171] <Steps S71 and S72> The update unit 612 of the MFP 10 downloads the specified firmware from the application market server 20 via the communication unit 113 and updates the firmware to the non-operational area of the ROM 822. Then, the startup processing unit 613 of the MFP 10 restarts the MFP 10 after the update unit 612 has updated the firmware to the non-operational area. This operation by the update unit 612 and the startup processing unit 613 may be performed automatically because the automatic update setting is on, or may be performed when the user presses the install button on the installation screen because the automatic update setting is off.
[0172] <Step S73> Then, at the time of rebooting, the startup processing unit 613 copies the firmware that has been updated in the non-operational area of the ROM 822 by the update unit 612 to the operation area, and executes the firmware.
[0173] <Step S74> The determination unit 615 of the MFP 10 determines whether the current function version is larger than the maximum function version. Here, it is assumed that the function version of the specified firmware is determined to be smaller than the maximum function version. If the activation reservation version is smaller than the maximum function version, the activation processing unit 614 of the MFP 10 activates the function of the function version of the firmware specified by the user for the firmware installed in ROM 822 (the firmware copied to the active area and executed). As a result, the firmware desired by the user is installed, and the desired function of the firmware is automatically enabled and available for use.
[0174] The above steps S71 to S74 are used to install and activate firmware when the automatic activation setting is on.
[0175] As described above, in the information processing system 1 according to the present embodiment, a user is prompted to display a list of firmware that can be installed on the electronic device (e.g., MFP 10) they are using. The desired firmware is installed and activated simply by selecting the desired firmware from the list and performing the installation operation. Furthermore, since firmware of the same series can be selected by function version, if the function version of the specified firmware is higher than the maximum function version, the firmware is downloaded and updated and the function of the firmware is activated. If the function version of the specified firmware is equal to or lower than the maximum function version, the function of the desired function version can be used simply by the activation process without updating the firmware. This allows for flexible firmware updates for electronic devices.
[0176] In addition, automatic update settings and automatic activation settings are possible, so that the firmware can be automatically updated according to the user's desired usage pattern, and when the firmware is updated, the function can be automatically activated, thereby improving user convenience.
[0177] Furthermore, if the firmware is for a fee, the contract management server 30 is queried as to whether it has been purchased, and the firmware is installed and activated only if it has been purchased, and if it has not been purchased, the user is notified of this. This allows firmware to be installed and activated using the same operating procedure regardless of whether the firmware is for a fee or free of charge, making it easy to update the firmware of electronic devices.
[0178] Each function of the above-described embodiments can be realized by one or more processing circuits. Here, the term "processing circuit" includes a processor programmed to execute each function by software, such as a processor implemented by an electronic circuit, as well as devices designed to execute each of the above-described functions, such as an ASIC (Application Specific Integrated Circuit), a DSP (Digital Signal Processor), an FPGA (Field-Programmable Gate Array), an SoC (System on a Chip), a GPU (Graphics Processing Unit), and conventional circuit modules.
[0179] In the above-described embodiments, when at least one of the functional units of the MFP 10, the application market server 20, the contract management server 30, and the PC 40 is realized by executing a program, the program is provided by being pre-installed in a ROM or the like. The programs executed by the MFP 10, the application market server 20, the contract management server 30, and the PC 40 according to the above-described embodiments may be provided by being recorded in an installable or executable file format on a computer-readable recording medium such as a CD-ROM (Compact Disc Read Only Memory), a flexible disk (FD), a CD-R (Compact Disk-Recordable), a DVD, or an SD (Secure Digital) card. The programs executed by the MFP 10, the application market server 20, the contract management server 30, and the PC 40 according to the above-described embodiments may be provided by being stored on a computer connected to a network such as the Internet and downloaded via the network. The programs executed by the MFP 10, the application market server 20, the contract management server 30, and the PC 40 according to the above-described embodiments may be provided or distributed via a network such as the Internet. In addition, the programs executed by the MFP 10, the application market server 20, the contract management server 30, and the PC 40 according to the above-described embodiments are modularly structured to include at least one of the functional units described above, and in terms of actual hardware, the CPU reads and executes the programs from the above-described storage device, thereby loading and generating the above-described functional units onto the main storage device. [Explanation of symbols]
[0180] 1. Information Processing Systems 10 MFP 11 Control section 12 Main body 13 Communication Channels 20 App Market Server 30 Contract Management Server 40 PC 51 App Market App 52 Browser 53 Operation System 61 Main System 62 Image formation engine 63 Imaging App 71 browsers 111 Input section 112 Display section 113 Communications Department 114 Storage section 201 List Response Section 202 Screen response section 203 Purchase Confirmation Request Section 204 Specified Version Response Section 205 Communications Department 206 Memory section 301 Purchase Information Registration Department 302 Purchase Information Response Section 303 Communications Department 304 Storage section 401 Input section 402 Communications Department 521 UI section 522 List Request Section 523 Screen request section 524 Installation Request Section 531 UI section 532 Settings 611 Reservation Department 612 Update Department 613 Startup processing section 614 Activation Processing Unit 615 Judgment section 711 Purchase Request Department 811 CPU 812 ROM 813 RAM 814 flash memory 815 Operation Panel 816 connection interface 817 Communication I / F 818 Bus 821 CPU 822 ROM 823 RAM 824 Storage 825 Scanner Engine 826 Printer Engine 827 Connection I / F 828 Communication I / F 829 Bus 901 CPU 902 ROM 903 RAM 905 Auxiliary storage device 906 Recording Media 907 Media Drive 908 Display 909 Network I / F 910 Bus Line 911 Keyboard 912 Mouse 913 DVD 914 DVD drive 1000 Home Screens 1001 Banner display unit 1002 Application Site Button 1003 Widgets 1004a Copy button 1004b Scanner button 1004c Fax button 1100 Banner Details Dialog Box 1101 Details button 1200 List screen 1201a~1201d Firmware buttons 1202a, 1202b App button 1203 Admin button 1300 installation screen 1301 Screenshot display section 1302 Explanation display section 1303 Detailed Links 1304 Install Button 1305 Paid / free display section 1310 Installation Screen 1311 Screenshot display section 1312 Explanation display section 1313 Detailed Links 1314 Install button 1315 Paid / free display section 1320 Installation Screen 1321 Screenshot display section 1322 Explanation display section 1323 Detailed Links 1324 Installed Display 1325 Paid / free display section 1400 Details screen 1500 Announcement Dialog Box 1501 Screenshot display section 1502 Explanation display section 1503 Details button 1600 Automatic update setting screen 1601 OK button 1610 Automatic activation setting screen 1611 OK button C Cloud N Network [Prior art documents] [Patent documents]
[0181] [Patent Document 1] Japanese Patent Application Laid-Open No. 2015-176502
Claims
1. An electronic device capable of acquiring software via a network, a display control unit that displays, on a display unit, identification information corresponding to at least the software to be activated among the software; for software whose identification information is displayed by the display control unit as software to be enabled, in response to a designation operation, enabling a function of the software for which the designation operation has been performed; an enabling unit that automatically enables a function of software for which identification information is not displayed by the display control unit as software to be enabled after the software is downloaded; An electronic device comprising:
2. The electronic device according to claim 1 , wherein the enabling unit enables download and functions of software displayed by the display control unit as a target for activation in response to a designation operation.
3. The electronic device according to claim 1, wherein the activation unit activates, in response to a designation operation, a function of the software that is displayed as a target for activation by the display control unit among the software downloaded to the electronic device.
4. The electronic device according to claim 1 , wherein the display control unit causes the display unit to display a list screen including identification information of software to be enabled and identification information of enabled software.
5. The electronic device according to claim 1 , wherein the identification information includes at least one of a name of the software, a version of the software, and information about functions of the software.
6. an update unit that downloads the software and updates the software installed in the electronic device; The electronic device according to claim 1 , wherein the enabling unit enables a function of the updated software.
7. The electronic device according to claim 6, wherein the activation unit automatically activates the functions of updated software for which identification information is not displayed by the display control unit as software to be activated after the software is updated.
8. The display control unit displaying, on the display unit, identification information of software that satisfies a predetermined condition among the software, as software to be enabled; The electronic device according to claim 1 , wherein identification information of software that does not satisfy a predetermined condition is not displayed on the display unit as software to be enabled.
9. The electronic device according to claim 8 , wherein the predetermined condition is that the version information of the software is a predetermined value.
10. 10. The electronic device according to claim 1, wherein the software is firmware.
11. The electronic device according to claim 10 , wherein the display control unit displays a list of applications and firmware that can be installed on the electronic device on the display unit.
12. An information processing system having a server that manages software and an electronic device that allows software to be downloaded from the server via a network, The electronic device includes: a display control unit that displays, on a display unit, identification information corresponding to at least the software to be activated among the software; for software whose identification information is displayed by the display control unit as software to be enabled, in response to a designation operation, enabling a function of the software for which the designation operation has been performed; an enabling unit that automatically enables a function of software for which identification information is not displayed by the display control unit as software to be enabled after the software is downloaded; Equipped with The server a storage unit that stores software to be provided to the electronic device; a transmission unit that transmits software information to the electronic device to be displayed on the display unit; An information processing system comprising:
13. An information processing method for an electronic device capable of acquiring software via a network, comprising: a display control step of displaying, on a display unit, identification information corresponding to at least the software to be activated among the software; For software whose identification information is displayed as software to be enabled, enable a function of the software for which the specified operation has been performed in response to the specified operation; an enabling step of automatically enabling a function of software whose identification information is not displayed as software to be enabled after downloading the software; An information processing method comprising:
14. In electronic devices that can acquire software via a network, a display control step of displaying, on a display unit, identification information corresponding to at least the software to be activated among the software; For software whose identification information is displayed as software to be enabled, enable a function of the software for which the specified operation has been performed in response to the specified operation; an enabling step of automatically enabling a function of software whose identification information is not displayed as software to be enabled after downloading the software; A program to execute.
Citation Information
Patent Citations
Component management platform
EP3438813A1
Image processing apparatus and method thereof
JP2007067940A
Information processing apparatus, installation method, program, and storage medium
JP2010113476A
Image processing apparatus, software distribution system, install processing method, and program
JP2010237840A
AV device
JP2012008824A