Printing apparatus
The printing device addresses firmware update disruptions by scheduling updates and providing user notifications, ensuring smooth operations and reduced user input during initial setup.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- BROTHER KOGYO KK
- Filing Date
- 2024-12-27
- Publication Date
- 2026-07-09
AI Technical Summary
Existing printing devices face issues during firmware updates that can disrupt user experience and functionality.
A printing apparatus equipped with a controller, memory, network interface, and user interface, allowing for scheduled firmware updates at predetermined times, automatic access to a firmware server, and notification of update times, with options for manual intervention and connection to an external computer for power-off updates.
This approach minimizes disruptions during firmware updates, enhancing user experience by ensuring seamless operations and reducing the burden on users during initial setup.
Smart Images

Figure 2026115463000001_ABST
Abstract
Description
Technical Field
[0001] This application relates to a printing device capable of downloading and updating firmware.
Background Art
[0002] Patent Document 1 describes an image forming apparatus that updates its own firmware with firmware acquired from a server.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] The inventor of this application came up with the idea of improving the user experience regarding firmware updates. In particular, by attracting the user's attention to the execution timing of firmware updates, it was considered to prevent troubles during firmware updates.
[0005] An object of this application is to provide a printing device that can further improve the user experience by preventing troubles during firmware updates as much as possible.
Means for Solving the Problems
[0006] To achieve the above objective, the printing apparatus described in the embodiment is a printing apparatus comprising memory, a network interface, a user interface, and a controller, wherein the controller is capable of operating the printing apparatus by executing firmware stored in memory, accessing a firmware server on the internet via the network interface, downloading update firmware from the firmware server, and updating the firmware stored in memory with the downloaded update firmware, is capable of accepting input to specify a time period via the user interface, is capable of determining the access time to the firmware server from a time period from the first time of the specified time period to a time predetermined before the last time of that time period, is capable of accessing the firmware server at the determined access time each time it is necessary to access the firmware server, is capable of setting a predetermined time period without accepting input to specify a time period via the user interface during the initial installation of the printing apparatus, and displays a notification screen on the user interface indicating that access to the firmware server will be performed at a predetermined time within the specified time period.
[0007] Furthermore, the printing apparatus described in the embodiment is a printing apparatus comprising memory, a network interface, a user interface, and a controller, wherein the controller is capable of operating the printing apparatus by executing firmware stored in memory, accessing a firmware server on the internet via the network interface, downloading update firmware from the firmware server, and updating the firmware stored in memory with the downloaded update firmware, is capable of accepting input to specify a time period via the user interface, is capable of determining the access time to the firmware server from a time period from the first time of the specified time period to a predetermined time before the last time of that time period, is capable of accessing the firmware server at the determined access time each time it is necessary to access the firmware server, is capable of setting a predetermined time period without accepting input to specify a time period via the user interface during the initial installation of the printing apparatus, and displays a notification screen on the user interface indicating that an attempt will be made to update the firmware at one of the predetermined time periods, and a method for specifying a time period by operation via the user interface.
[0008] Furthermore, the printing apparatus described in the embodiment is a printing apparatus comprising memory, a network interface, a user interface, and a controller, wherein the controller is capable of operating the printing apparatus by executing firmware stored in memory, accessing a firmware server on the internet via the network interface, downloading update firmware from the firmware server, and updating the firmware stored in memory with the downloaded update firmware, is capable of accepting input to specify a time period via the user interface, is capable of determining the access time to the firmware server from a time period from the first time of the specified time period to a predetermined time before the last time of that time period, is capable of accessing the firmware server at the determined access time each time it is necessary to access the firmware server, is capable of setting a predetermined time period without accepting input to specify a time period via the user interface during the initial installation of the printing apparatus, and displays a notification screen on the user interface indicating that an attempt will be made to update the firmware at one of the predetermined time periods, and that if the power of the printing apparatus is turned off during the firmware update and the firmware update fails, the printing apparatus will be connected to an external computer with a cable to complete the firmware update.
[0009] Furthermore, the printing apparatus described in the embodiment is a printing apparatus comprising memory, a network interface, a user interface, and a controller, wherein the controller can operate the printing apparatus by executing firmware stored in memory, can access a firmware server on the internet via the network interface, can download update firmware from the firmware server, and can update the firmware stored in memory with the downloaded update firmware, can accept input specifying a time period via the user interface, can determine the access time to the firmware server from the time period from the first time of the specified time period to a predetermined time before the last time of that time period, and each time it is time to access the firmware server, the determined access The system is characterized by the following features: it is possible to access the firmware server at a specified time; during the initial installation of the printer, it is possible to set a predetermined time period without accepting input to specify a time period via the user interface; it is possible to register a time period including the predetermined time period in memory; it is possible to display a standby screen containing multiple icons on the user interface; these icons may include copy and scan icons; when the copy icon is operated, a process for executing a copy is performed; when the scan icon is operated, a process for executing a scan is performed; and if a predetermined time period set during the initial installation of the printer is registered in memory, the system notifies the user interface via the standby screen that access to the firmware server will be performed at the time of the predetermined time period.
[0010] Furthermore, the printing apparatus described in the embodiment is a printing apparatus comprising memory, a network interface, a user interface, and a controller, wherein the controller can operate the printing apparatus by executing firmware stored in memory, can access a firmware server on the internet via the network interface, can download update firmware from the firmware server, and can update the firmware stored in memory with the downloaded update firmware, can accept input specifying a time period via the user interface, can determine the access time to the firmware server from a time period from the first time of the specified time period to a predetermined time before the last time of that time period, can access the firmware server at the determined access time each time it is time to access the firmware server, can set a predetermined time period without accepting input specifying a time period via the user interface during the initial installation of the printing apparatus, can register the time period in memory, and notifies the user interface that access to the firmware server will be performed at a time within the time period registered in memory when it is a predetermined time before the access time to the firmware server. [Effects of the Invention]
[0011] According to this invention, by preventing problems during firmware updates as much as possible, it will be possible to further improve the user experience. [Brief explanation of the drawing]
[0012] [Figure 1] This is a block diagram of an image forming system. [Figure 2] This figure shows an example of the progression of the user interface during initial setup. [Figure 3] This flowchart shows the procedure for the Auto Update process during initial setup. [Figure 4]It is a diagram showing an example of the transition of the display screen in the Auto Update process at the initial introduction and another example of the transition of the operation screen at the initial introduction. [Figure 5] It is a diagram for explaining the process of determining the access time to the firmware server. [Figure 6] It is a diagram showing an example of the transition of the operation screen when the settings are changed. [Figure 7] It is a diagram showing an example of each of the Firmware Update Settings screens when the update method is different. [Figure 8] It is a diagram showing an example of the transition of the operation screen starting from the Update Method setting screen. [Figure 9] It is a diagram showing an example of each of the Days Of Week setting screen and the Time Slot setting screen. [Figure 10] It is a flowchart showing the procedure of the Firmware Update process. [Figure 11] It is a flowchart showing the procedure of the Auto Update process. [Figure 12] It is a flowchart showing the procedure of the update monitoring timing setting process. [Figure 13] It is a flowchart showing the procedure of the updated firmware check process. [Figure 14] It is a flowchart showing the procedure of the pre-notification timing and immediate pre-notification timing setting process. [Figure 15] It is a flowchart showing the procedures of the pre-notification request form filling process and the immediate pre-notification request form filling process. [Figure 16] It is a flowchart showing the procedure of the update execution process. [Figure 17] It is a flowchart showing the procedure of the Auto Check process. [Figure 18] It is a diagram showing an example of the transition of the display screen in the Auto Update process. [Figure 19] It is a diagram showing another example of the transition of the display screen in the Auto Update process. [Figure 20] It is a diagram showing an example of the transition of an operation screen in the Auto Check process.
Mode for Carrying Out the Invention
[0013] Hereinafter, embodiments of the present application will be described in detail based on the drawings.
[0014] FIG. 1 is a block diagram of an image forming system 1 according to an embodiment. The image forming system 1 shown in FIG. 1 includes a printer (an example of a printing device) 10, a PC (an example of an external computer) 30, a firmware server 40, and an SNTP server 50. SNTP is an abbreviation for Simple Network Time Protocol. The printer 10 and the PC 30 are connected to each other communicably via a router 2 by wire or wirelessly (for example, by a LAN). LAN is an abbreviation for Local Area Network. Also, the printer 10, the firmware server 40, and the SNTP server 50 are connected to each other communicably via the router 2 and the Internet 3. Note that this network configuration is an example. For example, the firmware server 40 or the SNTP server 50 may be arranged within the LAN, or the PC 30 may be arranged on the Internet 3. Also, a plurality of printers 10 and PCs 30 connected to the firmware server 40 and the SNTP server 50 may be provided, a plurality of PCs 30 may be connected to one printer 10, or one PC 30 may select a plurality of printers 10 for printing.
[0015] The printer 10 is a device capable of executing various processes such as printing processes, and executes various processes according to a printing job output from the PC 30. The printer 10 mainly includes a controller 11, a user IF 12, a memory 13, a scanner 14, a printing engine 15, a communication IF 16, and a clock 17. IF is an abbreviation for interface. These components are communicable with each other via a bus 18.
[0016] Printer 10 can communicate with router 2 via communication IF16. Communication IF16 is an interface used for communication over LAN and WAN. WAN is an abbreviation for Wide Area Network.
[0017] The controller 11 consists of a CPU and an ASIC (Application Specific Integrated Circuit), and controls the operation of the user interface 12, scanner 14, print engine 15, communication interface 16, and clock 17. The controller 11 executes processing according to the firmware 13A in the memory 13. The memory 13 also stores configuration information 13B. The memory 13 is composed of a combination of RAM, NVRAM, ROM, SSD, HDD, etc. Buffers provided by the controller 11, used when executing various programs, can also be considered part of the memory 13.
[0018] Memory 13 may also be a computer-readable storage medium. A computer-readable storage medium is a non-transitory medium. In addition to the examples above, non-transitory media also include recording media such as CD-ROMs and DVD-ROMs. Furthermore, non-transitory media are also tangible media. On the other hand, electrical signals that carry programs downloaded from servers on the Internet are a type of computer-readable medium, which is a computer-readable signal medium, but they are not included in non-transitory computer-readable storage media.
[0019] User interface 12 is, for example, a touch panel integrated with the display, which displays various information on the display, such as the operation screen of the printer 10, and accepts user input on icons, buttons, etc., displayed on the display. In addition to a touch panel, user interface 12 may also consist of a display and separate hardware keys.
[0020] The scanner 14 is a component equipped with an image sensor that reads an image and performs scanning. The printing engine 15 is, for example, an electrophotographic printing mechanism. The printing engine 15 may also be an inkjet printing mechanism.
[0021] The clock 17 is responsible for timing and may be configured as hardware, software, or partially hardware with the remainder being software. Although the clock 17 and firmware 13A are shown separately for convenience, the controller 11 may also perform the necessary processing to function as the clock 17 according to firmware 13A. The time recorded by the clock 17 is used during the Firmware Update process described later, based on Figure 10.
[0022] The firmware server 40 is a server that provides the latest firmware to the printer 10.
[0023] The SNTP server 50 is a server that responds to a query from the printer 10 for the current time by returning the current time. The printer 10 can receive the current time from the SNTP server 50 and synchronize the current time on the clock 17 with it. A server other than the SNTP server 50, such as an NTP server, may also be used as the server that returns the current time.
[0024] In this specification, the processing of the controller 11 in accordance with the instructions written in the program is generally described. That is, the processes such as "judgment," "extraction," "selection," "calculation," "decision," "identification," "acquisition," "reception," and "control" in the following description represent the processing of the controller 11. The processing by the controller 11 also includes hardware control using the OS API. In this specification, the description of the OS is omitted when describing the operation of each program. That is, in the following description, a statement to the effect that "program B controls hardware C" may also mean "program B controls hardware C using the OS API." In addition, the processing of the controller 11 in accordance with the instructions written in the program may be described using abbreviated language. For example, it may be described as "performed by controller 11." In addition, the processing of the controller 11 in accordance with the instructions written in the program may be described using language that omits controller 11, such as "performed by program A."
[0025] Furthermore, the term "acquisition" is used in a sense that does not necessarily require a request. That is, the process of controller 11 receiving data without a request is also included in the concept of "controller 11 acquiring data." Also, "data" in this specification is represented by a bit sequence that can be read by a computer. Data with the same substantial meaning but different formats will be treated as the same data. The same applies to "information" in this specification. Also, "request" and "instruct" are concepts that indicate that information indicating a request or instruction is being output to the other party. Information indicating a request or instruction may also be simply referred to as "request" or "instruction."
[0026] Furthermore, the process by controller 11 to determine whether information A indicates event B may be conceptually described as "determining from information A whether it is event B or not." The process by controller 11 to determine whether information A indicates event B or event C may be conceptually described as "determining from information A whether it is event B or event C."
[0027] The printer 10 is configured to perform firmware updates using one of the following methods: Auto Update, Auto Check, or Manual. The Auto Update method automatically accesses the firmware server 40, downloads the firmware from the firmware server 40, and updates the firmware 13A with the downloaded firmware, without user instruction. The Auto Check method is similar to the Auto Update method in that it automatically accesses the firmware server 40, but only checks whether the latest firmware version registered in the firmware server 40 is newer than the firmware 13A version. The download of the firmware from the firmware server 40 and the update of the firmware 13A with the downloaded firmware are performed only after user instruction. The Manual method is a method in which access to the firmware server 40 is also performed according to user instruction. In this embodiment, the timing of the printer 10's automatic access to the firmware server 40 is based on a date and time specified by the user in the Auto Update method, whereas in the Auto Check method, it is a timing specific to the printer 10 and not specified by the user.
[0028] Here, we will explain the setting item Update Method. The Update Method setting can be set to one of the following values: Auto Update On, indicating that the Auto Update method is enabled; Auto Check On, indicating that the Auto Check method is enabled; or Off, indicating that neither is enabled. The Update Method setting can be changed during the initial installation of the printer 10 and when changing settings after the initial installation. Figure 2 shows an example of the progression of the operation screen displayed on the user interface 12 during the initial installation. Initial installation refers to the process performed when the user turns on the power of the printer 10 for the first time. In other words, initial installation can be described as the series of initial settings from when the user obtains the printer 10 from the vendor until the printer 10 can be used. In addition to setting the Update Method setting, these initial settings include, for example, setting the administrator password, filling the print engine 15 with toner or ink, setting the communication settings of the communication interface 16, and setting the time of the clock 17.
[0029] Figure 2(a) shows the Auto Update method setting enable / disable screen 100. The Auto Update method setting enable / disable screen 100 is displayed to the user IF 12 at a predetermined timing during initial installation, for example, after the communication settings of the communication IF 16 are completed. The Auto Update method setting enable / disable screen 100 is a screen that asks the user whether or not to enable the Auto Update method in order to update the firmware 13A of the printer 10. The Auto Update method setting enable / disable screen 100 displays a warning that the printer 10 will be connected to the Internet 3 and the firmware 13A will be automatically updated, that is, the Auto Update method will be enabled, and asks whether the user wants to continue with the setting. The Auto Update method setting enable / disable screen 100 also displays a warning that information about the printer 10 will be sent to the firmware server 40, and that the privacy policy can be found at https: / / ○○○. Furthermore, the Auto Update method setting enable / disable screen 100 includes a Yes icon 100A for selecting whether to enable the Auto Update method and a No icon 100B for selecting whether to disable the Auto Update method. When the Yes icon 100A is pressed, the controller 11 sets the Update Method setting to Auto Update On and sets the firmware 13A update time to between 19:00 and 20:00 every day from Monday to Friday, and stores this as setting information 13B. Then, it transitions the Auto Update method setting availability selection screen 100 to the warning display screen 101 shown in Figure 2(b). When the Auto Update method setting availability selection screen 100 switches to the warning display screen 101, the controller 11 executes the initial Auto Update process shown in Figure 3 once.
[0030] In this embodiment, the Update Method setting is off by default. However, the Update Method setting may also be set to Auto Check on by default. Furthermore, instead of the warning that information about the printer 10 will be sent to the firmware server 40, which is included in the Auto Update method setting availability selection screen 100, EURA permission may be displayed. EURA is an abbreviation for End-User License Agreement, which is a license agreement.
[0031] Figure 3 shows the procedure for the Auto Update process during initial deployment. In Figure 3, the controller 11 determines in step 200 (hereinafter referred to as step S) whether or not it can connect to the firmware server 40. A state where it cannot connect could be, for example, a state where the communication settings for the communication IF 16 are not correct, such as not being able to communicate with the router 2, or a state where the communication settings for the communication IF 16 are correct, but the user ID is not registered with the firmware server 40, and therefore it cannot connect to the firmware server 40.
[0032] In S200's determination, if it is possible to connect to the firmware server 40 (S200: YES), the controller 11 queries the firmware server 40 to determine whether or not firmware 13A needs to be updated (S201). Specifically, the printer 10 sends its model name and the current firmware 13A version to the firmware server 40 using the query URL. The firmware server 40 compares the latest firmware version with the firmware 13A version sent from the printer 10. The firmware server 40 stores the latest firmware, associating it with the model name and firmware version of the printer 10 to be updated. The model name can also be considered information indicating the printer model. If the latest firmware is newer, the firmware server 40 sends the latest firmware version and a URL for downloading the latest firmware to the printer 10. On the other hand, if the latest firmware is not newer, i.e., if firmware 13A is the latest version, the firmware server 40 sends information to the printer 10 indicating that firmware 13A is the latest firmware. When the printer 10 receives a URL for downloading, it can download the latest version of the firmware from the firmware server 40 by accessing that URL. The URL to be accessed may be stored in the printer 10 beforehand. For example, it may be stored from the time of manufacture of the printer 10. For example, it may be stored in the printer 10 by an operation performed by the printer 10's administrator. Alternatively, some information indicating the printer model may be used instead of the model name. At this time, the controller 11 displays the firmware verification screen 1071 shown in Figure 4(a) to the user interface 12.
[0033] Next, the controller 11 determines whether or not it has received a reply from the firmware server 40 indicating that firmware 13A needs to be updated (S202). Specifically, it determines whether it has received the latest firmware version and a URL for downloading the latest firmware from the firmware server 40. If it has received a reply indicating that firmware 13A needs to be updated (S202: YES), the controller 11 determines whether or not other functions that should not be executed simultaneously with the Auto Update process are running (S203). Other functions that should not be executed simultaneously with the Auto Update process include, for example, printing by the print engine 15, scanning by the scanner 14, copying by the scanner 14 and the print engine 15, and operations on the user interface 12.
[0034] In S203, if no other functions that should not be executed simultaneously with the Auto Update process are running (S203: NO), the controller 11 downloads the new version of the firmware from the firmware server 40 (S204). At this time, the controller 11 transitions the firmware confirmation screen 1071 on the user interface 12 to the download screen 1061 shown in Figure 4(b).
[0035] Then, once the download of the new firmware version is complete, the controller 11 rewrites firmware 13A with the new firmware version, that is, updates firmware 13A to the latest firmware (S205). At this time, the controller 11 may transition the display on the user IF 12 to the update screen 107 shown in Figure 19(b), which will be described later. Once the update to the latest firmware is complete, the controller 11 restarts the printer 10 (S206). That is, the Auto Update process ends. When the printer 10 restarts, the controller 11 executes the process according to the updated latest firmware 13A. As a result of this process, the user IF 12 displays the waiting screen 102 shown in Figure 2(e). The process according to the updated latest firmware 13A may include the Firmware Update process shown in Figure 10, which will be described later.
[0036] On the other hand, if any of the following conditions are met in S200 (S200: NO), in S202 (S202: NO), or in S203 (S203: YES), the controller 11 terminates the Auto Update process without updating the firmware 13A. At this time, if the firmware check screen 1071 is displayed on the user IF 12, the controller 11 transitions from the firmware check screen 1071 to the warning display screen 101 without going through the download screen 1061.
[0037] Thus, in this embodiment, when transitioning from the Auto Update method setting availability selection screen 100 to the warning display screen 101, the controller 11 executes the Auto Update process. However, this is not the only option; the controller 11 may also transition from the Auto Update method setting availability selection screen 100 to the warning display screen 101 without executing the Auto Update process.
[0038] The alert screen 101 displays that firmware 13A will be automatically updated every day from Monday to Friday between 19:00 and 20:00. The alert screen 101 also displays instructions for moving to a settings screen to change the update time. Here, the update time includes not only the time but also the day (every day from Monday to Friday in the above example). Furthermore, the alert screen 101 also displays that if the printer 10 is powered off during the firmware 13A update and firmware 13A is damaged, connect the printer 10 to the PC 30 with a USB cable to complete the firmware 13A update. The alert screen 101 also includes an OK icon 101A for acknowledging these alert messages. When the OK icon 101A is operated, the alert screen 101 transitions to the standby screen 1021 shown in Figure 2(c). The alert screen 101 is an example of a notification screen.
[0039] The standby screen 1021 is the so-called HOME screen, and it includes an info bar 102A, a Copy icon 102B, a Scan icon 102C, and an All Settings icon 102D. The info bar 102A is a display area for displaying various information. The Copy icon 102B is an icon corresponding to the copy process, which involves printing scanned data read by the scanner 14 using the print engine 15. When the Copy icon 102B is operated, the controller 11 may display a screen to instruct the execution of the copy process. The screen for instructing the execution of the copy process may also serve as a screen for changing the copy process settings. When the Copy icon 102B is operated, the controller 11 may execute the copy process. The Scan icon 102C is an icon corresponding to the scan process, which involves generating and outputting scanned data by having the scanner 14 read a document, for example, by saving the scanned data to a specified area in the memory 13. When the Scan icon 102C is operated, the controller 11 may display a screen to instruct the execution of the scan process. The screen for instructing the execution of the scan process may also serve as a screen for changing the settings of the scan process. When the Scan icon 102C is operated, the controller 11 may execute the scan process. The All Settings icon 102D is the icon corresponding to the All Settings screen 110 shown in Figure 6(b) below. When the All Settings icon 102D is operated, the controller 11 displays the All Settings screen 110 to the user interface 12.
[0040] As shown in Figure 2(c), the info bar 102A on the standby screen 1021 displays the information, “This machine is using the default…”. The “…” means that the string following “the default” has been omitted. The string omitted by “…” is “firmware update settings.”. In other words, the info bar 102A on the standby screen 1021 is intended to display the warning “This machine is using the default firmware update settings.”, but because the display area of the info bar 102A is too small to display the entire warning, only a portion of the warning is displayed. The omitted portion can be displayed on the info bar 102A by, for example, automatically scrolling. The reason for displaying information on the info bar 102A on the standby screen 1021 that firmware 13A will be updated at the default update time and using the Auto Update method is to inform the user of the firmware update settings status of the printer 10 after initial installation.
[0041] When the info bar 102A on the standby screen 1021 is operated, the standby screen 1021 transitions to the Auto Update method setting information confirmation screen 103 shown in Figure 2(d). The Auto Update method setting information confirmation screen 103 displays a notice stating that the firmware 13A will be updated at the default update time and using the Auto Update method. This notice is the same as the notice displayed on the info bar 102A on the standby screen 1021. The Auto Update method setting information confirmation screen 103 also displays that the default update time is between 19:00 and 20:00 every day from Monday to Friday. Furthermore, the Auto Update method setting information confirmation screen 103 displays a notice asking if you want to change these settings. In addition, the Auto Update method setting information confirmation screen 103 includes a Yes icon 103A for selecting to change these settings and a No icon 103B for selecting not to change these settings. When the Yes icon 103A is pressed, the Auto Update method setting information confirmation screen 103 transitions to the Firmware Update Settings screen 120 shown in Figure 7(a), which will be described later. On the other hand, when the No icon 103B is pressed, the Auto Update method setting information confirmation screen 103 transitions to the standby screen 102 shown in Figure 2(e).
[0042] Standby screen 102 differs from standby screen 1021 shown in Figure 2(c) in that the info bar 102A is blank. This is because the user already knows, via the Auto Update method setting information confirmation screen 103, that the firmware 13A will be updated at the default update time and using the Auto Update method, so there is no need to inform the user again.
[0043] Thus, the firmware 13A update time is initially set to the default update time, which in this embodiment is between 19:00 and 20:00 every day from Monday to Friday. If the user wishes to change the default update time, they can specify the days and times for Auto Update via the user IF 12 by operating the Yes icon 103A on the Auto Update method setting information confirmation screen 103, as will be described later based on Figure 9. In other words, during initial setup, the user does not need to specify the days and times for Auto Update via the user IF 12. This is because there are many input processes required from the user during initial setup, and the burden of specifying the days and times is not placed on the user. In this way, the input burden on the user and the load on the printer 10 that receives input from the user are not increased during initial setup, and even during initial setup, the user can specify their preferred days and times if they wish. The default days are, for example, Monday to Friday, and the default time is, for example, 19:00 to 20:00. Of course, the default days and times are not limited to these.
[0044] In this embodiment, the timing at which Auto Update is set to On during initial installation and the default days and times are set is when the Yes icon 100A on the Auto Update method setting availability selection screen 100 is operated. However, this timing is not limited to this, and may be, for example, when the No icon 103B on the Auto Update method setting information confirmation screen 103 is operated. Therefore, in this case, while the Auto Update method setting information confirmation screen 103 is displayed to user IF12 via the Auto Update method setting availability selection screen 100, warning display screen 101, and standby screen 1021, the Update Method setting value remains at the default Off.
[0045] Alternatively, instead of the Auto Update method setting enable / disable selection screen 1000 shown in Figure 2(a), the Auto Update method setting enable / disable selection screen 1000 shown in Figure 4(c) may be used. The Auto Update method setting enable / disable selection screen 1000 includes a Yes icon 1000A for selecting whether to enable the Auto Update method and a No icon 1000B for selecting whether to disable the Auto Update method. When the Yes icon 100A is operated, the controller 11 sets the Update Method setting to Auto Update On and sets the firmware 13A update time to between 19:00 and 20:00 every day from Monday to Friday, and stores this as setting information 13B. Then, the Auto Update method setting enable / disable selection screen 1000 is transitioned to the warning display screen 1001 shown in Figure 4(d).
[0046] The warning display screen 1001 includes a warning message that reads, "Do not turn off the printer's power during the Firmware Update. Please check the privacy policy at https: / / ○○○," and an OK icon 1001A for acknowledging the warning message. When the OK icon 1001A is clicked, the warning display screen 1001 transitions to the warning display screen 101 shown in Figure 2(b). Alternatively, the warning display screen 1001 may transition to the waiting screen 1021 shown in Figure 2(c) instead of the warning display screen 101 shown in Figure 2(b).
[0047] Alternatively, when the Yes icon 100A on the Auto Update method setting availability selection screen 1000 is operated, the controller 11 may transition to the warning display screen 101 shown in Figure 2(b) instead of transitioning to the warning display screen 1001. Alternatively, when the Yes icon 100A on the Auto Update method setting availability selection screen 1000 is operated, the controller 11 may transition to the standby screen 1021 shown in Figure 2(c).
[0048] As described above, once Auto Update is set to ON during initial installation and the default days and times are set, the controller 11 determines the access time for firmware updates. The access time for firmware updates is the time when the controller accesses the firmware server 40, downloads the firmware to be updated from the firmware server 40, and starts the firmware update process to update firmware 13A with that firmware. The determined access time for firmware updates is stored as configuration information 13B. Figure 5 is a diagram illustrating the process of determining the access time for firmware updates. "Auto Update execution time zone" indicates the time zone stored in configuration information 13B. If this time zone is, for example, 19:00 to 20:00, then the Auto Update start time T1 is 19:00 and the Auto Update end time T2 is 20:00. The controller 11 sets the end time T3 of the "Auto Update startable time zone" to a time earlier than the Auto Update end time T2 by the estimated time required to update the firmware (illustrated as "Firmware Update Estimated Time"). Here, the estimated Firm Update time is the estimated maximum time it takes from when the controller 11 accesses the firmware server 40, to when it downloads the firmware from the firmware server 40, and to when it updates the firmware 13A with the downloaded firmware. If the start time of the Auto Update start time is defined as the start time T1 of the Auto Update execution time, then the Auto Update start time is the period from time T1 to time T3. If the estimated Firm Update time is, for example, 10 minutes, then the end time T3 of the Auto Update start time will be 17:50.
[0049] If the controller 11 accesses the firmware server 40 during a time included in the Auto Update start time, the firmware 13A update will be completed by the end time T2 of the Auto Update execution time. Specifically, if the access time to the firmware server 40 is determined to be a time T4 included in the Auto Update start time, the firmware 13A update will be completed by the end time T2 of the Auto Update execution time. The controller 11 randomly determines the access time for firmware updates so that it falls within the Auto Update start time. The method of random determination may be to use random numbers. The method of random determination may be to use a random function. Access to the firmware server 40, which is located on the internet, will be made from a large number of printers 10. By randomly determining the access time for each of the many printers 10, it is possible to prevent a concentration of access at the same access time. In other words, it is possible to reduce problems such as delays in processing of the firmware server 40 caused by a concentration of access.
[0050] On the other hand, if the No icon 100B is selected on the Auto Update method setting availability selection screen 100 in Figure 2(a), the Auto Update method setting availability selection screen 100 transitions to the standby screen 102 shown in Figure 2(e) without going through the warning display screen 101. At this time, the Update Method setting value remains at the default value, Off. Alternatively, if the Yes icon 100A is selected on the Auto Update method setting availability selection screen 100, the system may transition from the Auto Update method setting availability selection screen 100 to the standby screen 1021 shown in Figure 2(c) without displaying the warning display screen 101, and set the Update Method setting value to Auto Update On.
[0051] When changing settings after the initial installation, the Update Method setting can be freely set to Auto Update On, Auto Check On, or Off, as described later based on Figure 6. However, during the initial installation, only Auto Update On can be set. This is also to avoid burdening the user with the task of choosing between the Auto Update method and the Auto Check method. In this way, the input burden on the user during the initial installation and the load on the printer 10 that receives input from the user are kept to a minimum, and after the initial installation, the user can set their desired Auto Update method, Auto Check method, or manual method.
[0052] Next, we will explain the settings for the Update Method and other settings that are made when changing settings after the initial installation. Figure 6 shows an example of the transition of the operation screen displayed on the user interface 12 when changing settings after the initial installation. Figure 6(a) shows the same standby screen 102 as the standby screen 102 in Figure 2(e). When the All Settings icon 102D is operated on this standby screen 102, the standby screen 102 transitions to the All Settings screen 110 shown in Figure 6(b).
[0053] The All Settings screen 110 displays multiple setting items. When the Machine Info. item 110A is operated from among these setting items, the All Settings screen 110 transitions to the Machine Info. screen 111 shown in Figure 6(c). When the Firmware Update Settings item 111A is operated from the Machine Info. screen 111, the Machine Info. screen 111 transitions to one of the Firmware Update Settings screens 120, 120', or 120'' shown in Figures 7(a) to 7(c), respectively.
[0054] The Firmware Update Settings screen 120 in Figure 7(a) is the screen that is accessed when the Update Method setting is set to Auto Update, the Firmware Update Settings screen 120' in Figure 7(b) is the screen that is accessed when the Update Method setting is set to Auto Check, and the Firmware Update Settings screen 120″ in Figure 7(c) is the screen that is accessed when the Update Method setting is set to Off. As described above, the Update Method setting is stored in memory 13 as setting information 13B, so the controller 11 transitions the display on the user IF 12 from the Machine Info. screen 111 to one of the Firmware Update Settings screens 120, 120', or 120″ based on the Update Method setting read from memory 13.
[0055] The Firmware Update Settings screen 120 in Figure 7(a) displays the Update Method item 120A, the Days Of Week item 120B, and the Time Slot item 120C. The Update Method item 120A is used to specify the firmware update method, and currently, the set update method, Auto Update, is displayed in Update Method item 120A. The Days Of Week item 120B is used to specify the days of the week on which Auto Update will be performed, and currently, the set days of the week, Monday through Friday, are displayed in Days Of Week item 120B. The Time Slot item 120C is used to specify the time period on which Auto Update will be performed, and currently, the set time period, 19:00 to 20:00, is displayed in Time Slot item 120C. Note that the days of the week displayed in Days Of Week item 120B and the time period displayed in Time Slot item 120C in Figure 7(a) are the default values. In other words, these days of the week and time period are automatically set when Auto Update is turned on during initial installation.
[0056] When the Update Method item 120A in the Firmware Update Settings screen 120 is operated, the Firmware Update Settings screen 120 transitions to the Update Method setting screen 130 shown in Figure 8(a). The Update Method setting screen 130 displays items 130A to 130C indicating multiple selectable update methods. When item 130A, which indicates the Auto Update method, is operated, the Update Method setting screen 130 transitions to the Auto Update method setting confirmation screen 140 shown in Figure 8(b). Note that when item 130A indicating the Auto Update method is operated, the controller 11 may maintain the current setting value of Update Method if it indicates Auto Update is on. In this case, the controller 11 does not need to display the Auto Update method setting confirmation screen 140 to the user interface 12.
[0057] The Auto Update method setting confirmation screen 140 displays a warning that if the Auto Update method is selected and enabled, the firmware will be updated automatically. This is to warn the user that enabling the Auto Update method will automatically update the firmware without any input.
[0058] When the Yes icon 140A included in the Auto Update method setting confirmation screen 140 is operated, the Auto Update method setting confirmation screen 140 transitions to the warning display screen 1011 shown in Figure 8(c). When the OK icon 1011A included in this warning display screen 1011 is operated, the controller 11 sets the Update Method setting to Auto Update On and stores it in the setting information 13B. The warning display screen 1011 transitions to the Firmware Update Settings screen 120 shown in Figure 7(a). At this time, the controller 11 determines the access time to the firmware server 40 and stores the determined access time in the setting information 13B. The details of the process for determining the access time have been described above based on Figure 5, so they will not be explained again here.
[0059] On the other hand, when the No icon 140B included in the Auto Update method setting confirmation screen 140 is operated, the Auto Update method setting confirmation screen 140 returns to one of the Firmware Update Settings screens 120, 120', or 120'' that was there before transitioning to the Update Method setting screen 130.
[0060] On the other hand, when item 130B, which indicates the Auto Check method, is operated on the Update Method setting screen 130, the Update Method setting screen 130 transitions to the Auto Check method setting confirmation screen 150 shown in Figure 8(d).
[0061] When the Yes icon 150A included in the Auto Check method setting confirmation screen 150 is operated, the controller 11 sets the Update Method setting to Auto Check On and stores it in the setting information 13B. Even if the Auto Check method is selected and enabled, the firmware will not be automatically updated, so the Auto Check method setting confirmation screen 150 does not display a warning like the one displayed on the Auto Update method setting confirmation screen 140. In this way, the system can appropriately display a warning about automatic updates depending on whether the Auto Update method, which does not require user input for firmware updates, or the Auto Check method, which requires user input, is enabled. The Auto Check method setting confirmation screen 150 transitions to the Firmware Update Settings screen 120' shown in Figure 7(b). Note that when the item 130B indicating the Auto Check method is operated, the controller 11 may maintain the current setting if the current Update Method setting indicates Auto Check On. In this case, the controller 11 does not need to display the Auto Check method setting confirmation screen 150 to the user IF 12. Here, on the Firmware Update Settings screen 120', the Update Method item 120'A is displayed, but the Days Of Week and Time Slot items are grayed out. This indicates that when the Update Method setting is Auto Check ON, the Days Of Week and Time Slot items cannot be manipulated. In other words, when updating the firmware using the Auto Check method, unlike when updating the firmware using the Auto Update method, the user cannot determine when the firmware is updated.
[0062] On the other hand, if the No icon 150B included in the Auto Check method setting confirmation screen 150 is selected, the Auto Check method setting confirmation screen 150 returns to one of the Firmware Update Settings screens 120, 120', or 120'' that was there before transitioning to the Update Method setting screen 130.
[0063] Furthermore, when item 130C, which indicates OFF, is operated on the Update Method setting screen 130, the controller 11 sets the Update Method setting to OFF and stores it in the setting information 13B. Then, the Update Method setting screen 130 transitions to the Firmware Update Settings screen 120″ shown in Figure 7(c). On the Firmware Update Settings screen 120″, although the Update Method item 120″A is displayed, the Days Of Week item and Time Slot item are grayed out. The Update Method item 120″A displays OFF, indicating that the Update Method setting is OFF. Thus, the grayed-out Days Of Week item and Time Slot item indicate that when the Update Method setting is OFF, that is, when updating the firmware manually, the Days Of Week item and Time Slot item cannot be operated.
[0064] On the other hand, when the Days Of Week item 120B is operated on the Firmware Update Settings screen 120, the Firmware Update Settings screen 120 transitions to the Days Of Week settings screen 160 shown in Figure 9(a). On the Days Of Week settings screen 160, the user can display each day of the week by operating the up icon 160A and the down icon 160B, and specify a day of the week by operating the checkbox 160C located next to each day of the week. On the Days Of Week settings screen 160, the checkbox 160C adjacent to the currently set day of the week, that is, the day of the week stored in the setting information 13B of memory 13, is checked. Therefore, the user can specify the day of the week to change the setting while referring to the currently set day of the week. Once the day of the week has been specified and the OK icon 160D is operated, the day of the week for accessing the firmware server 40 to update the firmware is confirmed, and the Days Of Week settings screen 160 returns to the Firmware Update Settings screen 120. At this time, the controller 11 stores the specified day of the week in the setting information 13B, associating it with Auto Update being turned on.
[0065] On the other hand, when the Time Slot item 120C is operated on the Firmware Update Settings screen 120, the Firmware Update Settings screen 120 transitions to the Time Slot setting screen 170 shown in Figure 9(b). On the Time Slot setting screen 170, the user specifies a time period by moving the cursor (not shown) displayed in the time period setting area 170A using the left move icon 170C and the right move icon 170D, and then entering the start and end times using the delete icon 170B and the numeric keypad 170E. On the Time Slot setting screen 170, as with the Days Of Week setting screen 160, the currently set time period, that is, the time period stored in the setting information 13B of memory 13, is displayed in the time period setting area 170A. Therefore, the user can specify the time period to be changed based on the currently set time period. In this embodiment, the time period can be specified in hours, not minutes, but it may be possible to specify it in minutes. The reason for specifying the time period during which the Firmware Update will be performed is to distribute the load caused by simultaneous access to the firmware server 40. On the Time Slot settings screen 170, although it is in hourly units, the user can specify a time period by entering any time they wish, so they can specify nighttime, daytime, early morning, or evening. Once the time period has been specified and the OK icon 170F is pressed, the time period for accessing the firmware server 40 to update the firmware is determined, and the Time Slot settings screen 170 returns to the Firmware Update Settings screen 120. At this time, the controller 11 stores the specified time period in the setting information 13B, associating it with Auto Update On.
[0066] Next, the Firmware Update process performed by the printer 10, particularly the controller 11, will be explained based on Figure 10. Figure 10 is a flowchart that shows the processes performed by the controller 11 after initial installation according to the firmware 13A, focusing on the Auto Update process, which updates the firmware 13A using the Auto Update method, and the Auto Check process, which updates the firmware 13A using the Auto Check method, while omitting other processes. Of course, the printer 10 performs the processes according to the firmware 13A each time it starts up.
[0067] In Figure 10, the controller 11 determines in S1 whether the Update Method setting indicates Auto Update On, Auto Check On, or Off. The setting indicating Auto Update On can also be said to indicate that the Auto Update method is enabled. Similarly, the setting indicating Auto Check On can also be said to indicate that the Auto Check method is enabled. The setting indicating Off can also be said to indicate that both the Auto Update method and the Auto Check method are disabled. Furthermore, the setting indicating Off can also be said to indicate that the manual method is enabled. As described above, the Update Method setting is stored in memory 13 as setting information 13B, so in S1, the controller 11 determines whether the Update Method setting indicates Auto Update On, Auto Check On, or Off based on the Update Method setting read from memory 13.
[0068] In the determination of S1, if the Update Method setting indicates Auto Update is on (S1: Auto Update on), the controller 11 determines whether the clock 17 is set or not (S2). There are various possible states for the clock 17 to be set. For example, in a situation where the printer 10 can access the SNTP server 50, such as in the image forming system 1, it is possible that the clock 17 is manually set without choosing to access the SNTP server 50. Alternatively, in such a situation, it is possible that the printer chooses to access the SNTP server 50 and synchronizes the clock 17's time using the SNTP server 50. Furthermore, it is possible that the clock 17 is operating internally in the printer 10, but the time it has measured is not displayed on the user IF 12. Even in this state, the clock 17's time can be set manually or using the SNTP server 50.
[0069] In the S2 decision, if the clock 17 is already set (S2:YES), the controller 11 executes the Auto Update process (S3) and then returns the process to S1.
[0070] Figure 11 shows the detailed procedure of the Auto Update process. Before explaining the details of the Auto Update process, an overview of the Auto Update process will be given. The Auto Update process primarily updates the firmware 13A using the Auto Update method, but before actually updating the firmware 13A, it provides both a pre-notification and a last-minute notification. Figure 18 shows an example of the transition of display screens in the Auto Update process. The standby screen 102 shown in Figure 18(a) is the same screen as the standby screen 102 shown in Figure 2(e). In this standby screen 102, it is assumed that the firmware 13A will be updated at the default update time and using the Auto Update method. In this embodiment, the default update time is, as mentioned above, between 19:00 and 20:00 every day from Monday to Friday. If, for example, 19:30 is set as the access time for the firmware update, a pre-notification will be displayed to the user IF 12 from 7:30, 12 hours prior to that time. Figure 18(b) shows a pre-notification screen 104 as an example of a pre-notification screen. Then, starting at 19:20, 10 minutes before 19:30, a last-minute notification is displayed on user IF12. Figure 18(c) shows a last-minute notification screen 105 as an example of a last-minute notification screen.
[0071] In this way, by displaying the pre-notification screen 104 and the immediate post-notification screen 105, the system informs the user that the firmware 13A update will be performed automatically before the actual firmware 13A update takes place, thereby preventing a situation where the firmware 13A is updated unexpectedly without the user's knowledge.
[0072] As shown in Figure 11, the Auto Update process consists of an update monitoring timing setting process (S10), an update firmware check process (S11), a pre-notification request writing process (S12), a last-minute notification request writing process (S13), and an update execution process (S14).
[0073] Figure 12 shows the detailed procedure for setting the update monitoring timing in S10. The update monitoring timing setting process sets the monitoring timing for querying the firmware server 40 to see if there is any firmware that needs to be updated.
[0074] In Figure 12, the controller 11 determines whether or not it is necessary to set a new update monitoring timing (S20). Situations where it is necessary to set a new update monitoring timing include, for example, when the printer 10 is powered on, or when the Update Method setting changes from a state other than Auto Update On to a state indicating Auto Update On. If the determination in S20 indicates that it is necessary to set a new update monitoring timing (S20: YES), the controller 11 sets the new update monitoring timing (S21) and then terminates the update monitoring timing setting process.
[0075] When the printer 10 is powered on and S20 determines "YES", the controller 11 sets a new update monitoring timing to a random time between 3 and 6 minutes after power-on. The method for obtaining a random time can be either using random numbers or using a random function. The reason for setting a new update monitoring timing to a random time in this way is to prevent a concentration of access to the firmware server 40 even if many printers 10 are powered on simultaneously.
[0076] On the other hand, if the Update Method setting switches from a state other than Auto Update On to a state indicating Auto Update On, and S20 determines "YES", the controller 11 sets the current time as the new update monitoring timing. The reason for setting the current time as the new update monitoring timing is that it is rare for the Update Method setting to switch simultaneously from a state other than Auto Update On to a state indicating Auto Update On, even if there are many printers 10.
[0077] On the other hand, if S20 determines that it is not necessary to set a new update monitoring timing (S20:NO), the controller 11 terminates the update monitoring timing setting process.
[0078] Figure 13 shows the detailed procedure for the firmware update check process in S11. The firmware update check process primarily involves querying the firmware server 40 to determine whether or not there is firmware to be updated when the update monitoring timing arrives.
[0079] In Figure 13, the controller 11 determines whether the current time is an update monitoring timing (S30). If the current time is an update monitoring timing (S30: YES), the controller 11 updates the update monitoring timing to the next update monitoring timing (S31). The next update monitoring timing is, for example, 24 hours after the previous update monitoring timing. Therefore, once the initial update monitoring timing is set in the update monitoring timing setting process, the next update monitoring timing will be 24 hours after the initial update monitoring timing. Thereafter, the update monitoring timing is updated every 24 hours. Note that the update monitoring timing is unrelated to the access time for firmware updates, and the firmware server 40 is accessed at different times.
[0080] Next, the controller 11 determines whether or not it can connect to the firmware server 40 (S32). A state where it cannot connect could be, for example, a state where the communication settings for the communication IF 16 are not correct, such as not being able to communicate with the router 2, or a state where the communication settings for the communication IF 16 are correct, but the user ID is not registered with the firmware server 40, so it cannot connect to the firmware server 40.
[0081] In the determination made in S32, if it is possible to connect to the firmware server 40 (S32: YES), the controller 11 queries the firmware server 40 to see if there is any firmware to update firmware 13A (S33). The specific method of querying is the same as the method described in the query in S201 (see Figure 3), so the explanation is omitted.
[0082] Next, the controller 11 determines whether there is any firmware to be updated on the firmware server 40 based on the response from the firmware server 40 to the query (S34). If, in this determination, there is firmware to be updated (S34: YES), the controller 11 performs the pre-notification timing and immediate pre-notification timing setting process (S35), and then terminates the firmware update check process.
[0083] On the other hand, if S30 determines that the current time is not an update monitoring time (S30:NO), or if S32 determines that it is not possible to connect to the firmware server 40 (S32:NO), or if S34 determines that there is no firmware to update (S34:NO), the controller 11 terminates the firmware update check process.
[0084] Figure 14 shows the detailed procedure for setting the pre-notification timing and immediate-notification timing in S35. In the pre-notification timing and immediate-notification timing setting process, the controller 11 sets or does not set the pre-notification timing and immediate-notification timing depending on the following cases. That is, (Case 1) If the current time is before the prior notification time (S40:YES): Set the prior notification time to the prior notification timing (S41), and set the immediate prior notification time to the immediate prior notification timing (S46); (Case 2) If the current time is after the prior notification time and before the update avoidance time (S40: NO, and S42: YES): Set the current time to the prior notification timing (S45), and set the previous notification time to the previous notification timing (S46); (Case 3) If the current time is after the update avoidance time (S42:NO): Do not set either the pre-notification timing or the immediate pre-notification timing, and set the next access time for firmware update (S47); That is the case.
[0085] Here, the current time is the time when the judgment in S33 was determined to be "YES". The advance notification time is 12 hours before the access time for the firmware update. The immediate notification time is 10 minutes before the access time for the firmware update. The update avoidance time is 1 hour before the access time for the firmware update. The update avoidance time is set because even if the firmware server 40 is found to have firmware that needs updating through the firmware update check process (S34: YES), if this is found too close to the access time for the firmware update (for example, 1 hour before), the user may be surprised when the firmware 13A is updated. Therefore, if it is determined that the time when it is found that the firmware server 40 has firmware that needs updating is too close to the access time for the firmware update, the firmware update at the current access time will be avoided and the firmware update will be performed at the next access time. Note that the specific times such as 12 hours, 10 minutes, and 1 hour are just examples, and other times may be used. However, it is preferable that the following order of importance exists: time from the access time for firmware update to the prior notification time (12 hours) > time until the update avoidance time (1 hour) > time until the immediate notification time (10 minutes).
[0086] Figure 15(a) shows the detailed procedure for the pre-notification request writing process in S12. In Figure 15(a), the controller 11 determines whether the current time is a pre-notification timing (S50). If the current time is a pre-notification timing (S50: YES), the controller 11 writes the pre-notification request to a predetermined area of the memory 13 (S51) and then terminates the pre-notification request writing process. On the other hand, if the current time is not a pre-notification timing (S50: NO), the controller 11 terminates the pre-notification request writing process.
[0087] Figure 15(b) shows the detailed procedure for the S13 pre-notification request writing process. In Figure 15(b), the controller 11 determines whether the current time is a pre-notification timing (S60). If the current time is a pre-notification timing (S60: YES), the controller 11 writes the pre-notification request to a predetermined area of the memory 13 (S61) and then terminates the pre-notification request writing process. On the other hand, if the current time is not a pre-notification timing (S60: NO), the controller 11 terminates the pre-notification request writing process.
[0088] The predetermined area of memory 13 where the advance notification request and the immediate notification request are written is the same area and is also the area referenced by the user IF 12. When an advance notification request is written to the predetermined area of memory 13, the advance notification screen 104 shown in Figure 18(b) is displayed on the user IF 12. On the other hand, when an immediate notification request is written to the same area, the immediate notification screen 105 shown in Figure 18(c) is displayed on the user IF 12. The area transitions from a state where neither an advance notification request nor an immediate notification request has been written to a state where an advance notification request has been written, and then transitions to a state where an immediate notification request has been written. Therefore, from the advance notification timing until the immediate notification timing, the advance notification screen 104 is continuously displayed on the user IF 12, and from the immediate notification timing until the access time for firmware update, the immediate notification screen 105 is continuously displayed.
[0089] Conversely, if neither the advance notification request nor the immediate notification request is written to the predetermined area of memory 13, neither the advance notification screen 104 nor the immediate notification screen 105 will be displayed on the user interface 12. For this reason, if the current time is after the update avoidance time, neither the advance notification timing nor the immediate notification timing is set, so neither the advance notification screen 104 nor the immediate notification screen 105 will be displayed on the user interface 12. Similarly, if the advance notification timing and immediate notification timing setting process is not executed, neither the advance notification timing nor the immediate notification timing is set, so neither the advance notification screen 104 nor the immediate notification screen 105 will be displayed on the user interface 12. Therefore, if "NO" is determined in S34 of Figure 13, that is, if there is no firmware to be updated on the firmware server 40, the advance notification timing and immediate notification timing setting process is not executed, so neither the advance notification timing nor the immediate notification timing is set, and neither the advance notification screen 104 nor the immediate notification screen 105 will be displayed on the user interface 12.
[0090] Figure 16 shows the detailed procedure for the update execution process in S14. In Figure 16, the controller 11 determines whether the current time is the access time for firmware update (S70). If the current time is the access time for firmware update (S70: YES), the controller 11 determines whether there is a written previous notification request in a predetermined area of memory 13 (S71). If there is a written previous notification request, it corresponds to the firmware server 40 having firmware to be updated. Therefore, the determination in S71 corresponds to the determination of whether there is firmware to be updated in the firmware server 40.
[0091] In the determination in S71, if there is a written record of the previous notification request in a predetermined area of memory 13 (S71: YES), the controller 11 determines whether or not print data for storage printing is stored in the volatile memory (S72). In this determination, if print data for storage printing is stored in the volatile memory (S72: YES), the controller 11 terminates the update execution process. On the other hand, if print data for storage printing is not stored in the volatile memory (S72: NO), the controller 11 proceeds to the next step, S73.
[0092] Stored printing is a printing method in which unprinted print data based on print jobs received from external devices such as PC30 or smartphones is stored in memory 13, and when a user instruction is received via user IF12, the stored print data is printed. Memory 13 includes rewritable volatile memory such as RAM and rewritable non-volatile memory such as NVRAM. Firmware 13A and configuration information 13B are stored in the rewritable non-volatile memory. Print data for stored printing is stored in the rewritable volatile memory. When the process proceeds from S75 to S76, described later, and the printer 10 restarts, the volatile memory does not contain any data stored before the restart. In the Auto Update process, when it is time to access for firmware updates, the process may automatically proceed from S75 to S76 without the user noticing. In other words, there is a possibility that the print data may disappear from memory 13 without being printed, without the user noticing. Therefore, by adding a step in S72 to determine whether print data for stored printing is stored in the volatile memory, the possibility of such a situation occurring can be reduced.
[0093] Furthermore, the system may also be configured to store print data for storage in non-volatile memory. Non-volatile memory may be external memory such as a USB memory attached to the printer 10. In this configuration, even if print data for storage is stored in non-volatile memory, if print data for storage is not stored in volatile memory, S72 may determine "NO". Also, the system may be configured such that after a restart, print data for storage that was stored in non-volatile memory before the restart cannot be printed. In this configuration, if print data for storage is stored in non-volatile memory, S72 may determine "YES".
[0094] In S73, the controller 11 determines whether other functions that should not be executed simultaneously with the update execution process are in operation. Examples of other functions that should not be executed simultaneously with the update execution process include printing by the print engine 15, scanning by the scanner 14, copying by the scanner 14 and the print engine 15, and operations on the user interface 12.
[0095] In the judgment of S73, if no other functions that should not be executed simultaneously with the update execution process are running (S73:NO), the controller 11 downloads the new version of the firmware to be updated from the firmware server 40 (S74). At this time, the controller 11 transitions the previous notification screen 105 displayed on the user interface 12 to the download screen 106 shown in Figure 19(a). Note that a process similar to S200 in Figure 3 may be added before the download process in S74. That is, the controller 11 may determine whether it is possible to connect to the firmware server 40, and if it is not possible to connect to the firmware server 40, proceed to S78. A similar judgment to S200 is made in the update firmware check process S32 (see Figure 13) before executing the update execution process, but it is conceivable that the controller 11 may not be able to connect to the firmware server 40 between the time it makes the judgment in S32 and the time it executes the download process in S74. Alternatively, a process similar to S203 in Figure 3 may be added before the download process in S74. In other words, the controller 11 could determine whether there are other functions running that should not be executed simultaneously with the Auto Update process, and if so, proceed to S78. Alternatively, in S71, the determination of whether the firmware to be updated is on the server is made based on "whether a previous notification request has been written," but this determination could be omitted, and a process similar to S203 in Figure 3 could be added before the download process in S74. In other words, the controller 11 could determine whether or not the firmware needs to be updated, and if not, proceed to S78.
[0096] Then, once the download of the new firmware version is complete, the controller 11 rewrites firmware 13A with the new firmware version, that is, updates firmware 13A to the latest firmware (S75). At this time, the controller 11 transitions the display on the user interface 12 to the update screen 107 shown in Figure 19(b). Once the update to the latest firmware is complete, the controller 11 restarts the printer 10 (S76). After the printer 10 restarts, the controller 11 executes processing according to the updated latest firmware 13A.
[0097] Once the restart of S76 is complete, the controller 11 executes the process of S77 and displays on the info bar 102A of the standby screen 1022 that the firmware has been updated, as shown in Figure 19(c). When the info bar 102A, which is displaying the message indicating that the firmware has been updated, is operated, the controller 11 displays the update completion confirmation screen 180 shown in Figure 19(d). Then, when the OK icon 180A included in the update completion confirmation screen 180 is operated, the controller 11 displays the standby screen 102 shown in Figure 18(a).
[0098] Next, the controller 11 determines the next access time for firmware updates (S78). The determined time is stored in the configuration information 13B. The details of the process for determining the access time have been described above based on Figure 5, so they will not be explained again here.
[0099] Next, the controller 11 erases the previous notification request written to a predetermined area of memory 13 (S79), and then terminates the update execution process.
[0100] On the other hand, if S70 determines that the current time is not the access time for firmware updates (S70: NO), if S71 determines that a previous notification request has not been written (S71: NO), or if S73 determines that another function that should not be executed simultaneously with the update execution process is running (S73: YES), then the controller 11 proceeds to S78, executes S78 and S79, and then terminates the update execution process. Once the update execution process is completed, the Auto Update process in S3 (see Figure 10) is completed.
[0101] Furthermore, the process from when the controller 11 determines "YES" in S34 and detects that there is firmware to be updated on the firmware server 40, to when it actually completes the update of firmware 13A with the firmware to be updated, will be explained for each of the above cases (Case 1) to (Case 3).
[0102] If (Case 1) is met, the waiting screen 102 shown in Figure 18(a) will be displayed on the user IF12 until the current time becomes the pre-notification time. Then, when the current time becomes the pre-notification time, the waiting screen 102 on the user IF12 will transition to the pre-notification screen 104 shown in Figure 18(b).
[0103] The pre-notification screen 104 displays that new firmware is available and that it will be automatically updated between 19:00 and 20:00. It also instructs users not to turn off the printer 10 and to use the "Cancel Update" option if they do not wish to update the firmware. Furthermore, the pre-notification screen 104 displays both an OK icon 104A and a Cancel Update icon 104B.
[0104] When the OK icon 104A is pressed, the pre-notification screen 104 of the user IF 12 transitions to the standby screen 102. At this time, the automatic firmware update for the current access time for the firmware update is not canceled. Therefore, when the current time becomes the previous notification time, the standby screen 102 of the user IF 12 transitions to the previous notification screen 105 in Figure 18(c).
[0105] On the other hand, when the Cancel Update icon 104B is operated, the user IF12's pre-notification screen 104 similarly transitions to the standby screen 102. However, in this case, the automatic firmware update scheduled for the current access time for the firmware update is canceled, and the automatic firmware update scheduled for the next access time for the firmware update is rescheduled.
[0106] Furthermore, if neither the OK icon 104A nor the Cancel Update icon 104B is operated after the pre-notification screen 104 is displayed, the pre-notification screen 104 of user IF12 will continue to be displayed, and when the current time becomes the time of the previous notification, the pre-notification screen 104 of user IF12 will transition to the previous notification screen 105.
[0107] The pre-update notification screen 105 displays that new firmware is available and that the firmware will be automatically updated soon. Similar to the advance notification screen 104, the pre-update notification screen 105 also displays a message instructing viewers not to turn off the printer 10 and to use the "Cancel Update" function if they do not wish to update the firmware. Furthermore, the pre-update notification screen 105 also displays an OK icon 105A and a Cancel Update icon 105B.
[0108] When the OK icon 105A is pressed, the user IF12's previous notification screen 105 transitions to the standby screen 102. At this time, the automatic firmware update for the current access time for the firmware update is not canceled. Therefore, when the current time becomes the current access time for the firmware update, the automatic firmware update is performed. As a result, the user IF12's standby screen 102 transitions to the downloading screen 106 in Figure 19(a), then to the updating screen 107 in Figure 19(b), and finally to the standby screen 1022 in Figure 19(c).
[0109] On the other hand, when the Cancel Update icon 105B is operated, the user IF12's previous notification screen 105 similarly transitions to the standby screen 102. However, in this case, the automatic firmware update scheduled for the current access time for the firmware update is canceled, and the automatic firmware update scheduled for the next access time for the firmware update is rescheduled.
[0110] If neither the OK icon 105A nor the Cancel Update icon 105B is operated after the previous notification screen 105 is displayed, the previous notification screen 105 on the user IF12 will continue to be displayed, and when the current time becomes the access time for the firmware update, the firmware will be automatically updated. As a result, the previous notification screen 105 on the user IF12 will transition to the downloading screen 106 in Figure 19(a), then to the updating screen 107 in Figure 19(b), and finally to the waiting screen 1022 in Figure 19(c).
[0111] If (Case 2) is true, the pre-notification screen 104 shown in Figure 18(b) will be displayed on User IF12. The subsequent screen transitions on User IF12 are the same as when (Case 1) is true, so their explanation will be omitted.
[0112] If (Case 3) is met, even if the current time is the time of the previous notification or the time of the current access for firmware update, the standby screen 102 of the user IF12 will continue to be displayed, the automatic firmware update for the current access for firmware update will be canceled, and the automatic firmware update for the next access for firmware update will be scheduled.
[0113] Returning to Figure 10, in the determination of S1, if the Update Method setting indicates Auto Check is on (S1: Auto Check On), the controller 11 determines whether or not it is time to start Auto Check (S5). The timing of Auto Check's start is, for example, A. When the printer 10 is turned on, B. With the printer 10 powered on, more than 24 hours have passed since the last time the firmware server 40 was accessed and no new firmware was registered, and the controller 11 is not in a power-saving state. C. With the printer 10 powered on, if the last time the firmware server 40 was accessed and new firmware was registered, but more than 30 days have passed since the user refused the firmware update, and the controller 11 is not in a power-saving state, These are some possibilities. Note that the controller 11 may be configured not to perform the Firmware Update process shown in Figure 10 when in power-saving mode. Alternatively, the controller 11 may be configured not to perform the processing according to firmware 13A when in power-saving mode. In either case, S5 will never be YES.
[0114] In the judgment of S5, if it is the start time for Auto Check (S5:YES), the controller 11 executes the Auto Check process (S6) and then returns the process to S1. On the other hand, in the judgment of S5, if it is not the start time for Auto Check (S5:NO), the controller 11 returns the process to S1. Also, in the judgment of S1, if the setting value of Update Method indicates off (S1:Off), the controller 11 returns the process to S1.
[0115] Figure 17 shows the detailed procedure of the Auto Check process. In Figure 17, processes similar to the update execution process in Figure 16 are denoted by the same reference numerals, and explanations of those processes are omitted as appropriate. In Figure 17, if the controller 11 can connect to the firmware server 40 (S100: YES), it queries the firmware server 40 to see if it is necessary to update the firmware 13A (S101). If the firmware server 40 replies indicating that it is necessary to update the firmware 13A (S102: YES), the controller 11 displays on the info bar of the standby screen that a new version of the firmware is available (S103). Figure 20(b) shows this standby screen 1023. The info bar 102A on the standby screen 1023 shows that a new version of the firmware is available. In other words, before the process proceeds to S103, the standby screen 102 shown in Figure 20(a) is displayed on the user IF 12, but when the process proceeds to S103, the standby screen 102 transitions to the standby screen 1023.
[0116] Next, the controller 11 waits until the info bar 102A on the standby screen 1023 is operated (S104: NO). When the info bar 102A is operated (S104: YES), the controller 11 displays the Firmware Update execution / failure selection screen to the user IF 12 (S105). Figure 20(c) shows the Firmware Update execution / failure selection screen 190. When the Yes icon 190A included in the Firmware Update execution / failure selection screen 190 is operated (S106: YES), the controller 11 displays the warning display screen 200 shown in Figure 20(d) to the user IF 12.
[0117] Then, when the OK icon 200A included in the warning display screen 200 is operated (S107:YES), the controller 11 downloads the latest firmware from the firmware server 40 (S74), updates firmware 13A with the latest firmware (S75), restarts the printer 10 (S76), and then terminates the Auto Check process without displaying a message on the info bar 102A of the standby screen 102 indicating that the firmware has been updated. Figure 20(e) shows the downloading screen 106 displayed on the user IF12 during the process of S102, and Figure 20(f) shows the updating screen 107 displayed on the user IF12 during the process of S75.
[0118] As described above, with the printer 10 of this embodiment, when the printer 10 is first installed, it is possible to set a default time zone without accepting input to specify a time zone via the user interface 12, and a warning display screen 101 indicating that access to the firmware server 40 will be performed at the default time zone is displayed on the user interface 12, thereby further improving user convenience.
[0119] Furthermore, the warning display screen 101 shows that the firmware update will be attempted at the default time zone and also shows how to specify the time zone via the user IF12. Therefore, the user can know the time zone during which the firmware update will be performed and how to change that time zone by specifying it.
[0120] Furthermore, the default time zone registered in memory 13 can be changed using the Time Slot setting screen 170. After the change, access to the firmware server 40 will be made at the time of the changed time zone registered in memory 13. This allows the user to access the firmware server 40 at the time of their choice.
[0121] Furthermore, the warning display screen 101 shows that if the printer 10 is powered off during the firmware update and the firmware update fails, the printer 10 and PC 30 should be connected with a USB cable to complete the firmware update. This allows the user to know that even if the firmware update fails, it can be completed by another method.
[0122] Furthermore, if the default time zone set during the initial installation of the printer 10 is registered in memory 13, the user IF 12 will be notified, for example by the info bar 102A, that access to the firmware server 40 will be performed at the default time zone when the standby screen 1021 is displayed to the user IF 12. This prevents the firmware 13A from being updated unexpectedly without the user's knowledge.
[0123] Furthermore, in response to the current time reaching the pre-notification time, the system displays a pre-notification screen 104 to inform the user IF 12 that access to the firmware server 40 will be performed at a time within the time period registered in memory 13. This prevents situations where the firmware 13A is updated unexpectedly without the user's knowledge.
[0124] Furthermore, since the system now displays a pre-notification screen 105 on the user IF 12 to inform it that access to the firmware server 40 will occur soon in response to the current time being the pre-notification time, the situation in which the firmware 13A is updated unexpectedly without the user's knowledge is further avoided.
[0125] Furthermore, after the pre-notification screen 104 is displayed on the user IF 12, if the user accepts an operation on the Cancel Update icon 104B included in the pre-notification screen 104, access to the firmware server 40 will not be performed at that access time. Instead, when it is a predetermined time before the next access time, access to the firmware server 40 will be performed at a time within the time period registered in memory 13. This is notified via the pre-notification screen 104 displayed on the user IF 12. This allows the user to access the firmware server 40 at a time convenient for them.
[0126] (Variation 1) In the printer 10 of this embodiment, as described above based on Figure 15, the firmware update is configured to be completed within the "Auto Update execution time" by setting the access time in the "Auto Update start time period". However, it is also possible to configure the system to allow the firmware update to be completed a little later than the Auto Update execution time period. Specifically, the controller 11 may be configured to determine the access time from among the times included in the "Auto Update execution time period", not limited to the times included in the "Auto Update start time period". In this case, depending on the start time of the automatic firmware update, it may not be possible to complete the automatic firmware update within the Auto Update execution time period, but this does not deviate from the spirit of the present invention. In other words, even in this modified example 1, even if the days and times when the printer of this modified example 1 and other printers access the firmware server 40 overlap, the access times of the printer of this modified example 1 and other printers accessing the firmware server 40 are distributed, so the effect of reducing the concentration of load on the firmware server 40 can be obtained. And although there is a slight possibility that the firmware update may not be completed within a time period convenient for the user, the firmware can be updated on a day and time convenient for the user.
[0127] (Modification 2) In the printer 10 of this embodiment, the firmware update method is configured to be one of the following: Auto Update method, Auto Check method, or manual method. However, the specific method for updating the firmware using the manual method was not described. Specifically, in the manual method, when the controller 11 receives a command to display an input screen via the user interface 12, it displays an input screen on the user interface 12 to receive input instructing access to the firmware server 40. When the controller 11 receives input instructing access via the input screen, it accesses the firmware server 40. With the printer of this modified example 2, the user can enable the Auto Update method to have the printer attempt to update the firmware at a time and day convenient for the user, enable the manual method to display an input screen on the user interface 12 at a time convenient for the user and attempt to update the firmware, or enable the Auto Check method to have the printer attempt to update the firmware each time it is started.
[0128] (Variation 3) In the printer 10 of this embodiment, the day of the week is set as the day to access the firmware server 40, but it is not limited to this, and other day-related settings such as the date, the number of days that have passed since the last access, the day of the month, or every month may be set. With the printer of this modified example 3, if the Auto Update method is enabled, even if the user sets the days on which they will not use the printer of this modified example 3, the user is not prompted to input a firmware update instruction to the user IF12 before the firmware is updated, so the firmware update is not hindered, and an indication that the firmware has been updated is displayed, so the user can find out that the firmware has been updated when they use the printer of this modified example 3 after the firmware update.
[0129] (Modification 4) In this embodiment, the firmware update method and the days and times for accessing the firmware server 40 are set via the user interface 12, but this is not limited to this, and may also be done using the PC 30. Specifically, the firmware 13A includes a program that functions as a web server for the EWS (Embedded Web Server) when executed by the controller 11. When the administrator of the printer 10 launches a browser on the PC 30 and enters a predetermined URL for the EWS in the browser's URL input field, a browser screen for configuring the printer 10 is displayed on the PC 30's display (not shown). The administrator can then perform predetermined operations on the configuration browser screen and proceed with the configuration change process to set the firmware update method and the days and times for accessing the firmware server 40.
[0130] It should be noted that the present invention is not limited to the embodiments described above, and various modifications are possible without departing from the spirit of the invention.
[0131] (1) In the above embodiment, the printer 10 was described as an example of a printing device, but the printing device may be a multifunction device equipped with FAXIF.
[0132] (2) In the above embodiment, the PC30 was used as an example of an external device, but this is just one example; a mobile device such as a smartphone may also be used as an external device.
[0133] (3) In the above embodiment, the SNTP server 50 was included as a component of the image forming system 1, but the SNTP server 50 may be excluded from the components of the image forming system 1.
Claims
1. Memory and Network interface and User interface and Controller and A printing apparatus comprising, The aforementioned controller, The printing device can be operated by executing the firmware stored in the memory. It is possible to access a firmware server on the internet via the aforementioned network interface, download update firmware from the firmware server, and update the firmware stored in the memory with the downloaded update firmware. The user interface can accept input specifying a time period. The access time to the firmware server can be determined from the time period from the first time of the specified time period to a predetermined time before the last time of that time period. Each time it is necessary to access the firmware server, it is possible to access the firmware server at the predetermined access time. During the initial installation of the printing device, it is possible to set a predetermined time period without accepting input specifying the time period via the user interface. The user interface displays a notification screen indicating that access to the firmware server will occur during the predetermined time period. A printing apparatus characterized by the following features.
2. The aforementioned controller, The notification screen displays on the user interface a screen indicating that an attempt will be made to update the firmware at one of the predetermined time periods, and a method for specifying the time period through the user interface. The printing apparatus according to feature 1.
3. The aforementioned controller, The predetermined time period set during the initial installation of the printing device can be registered in the memory. As the notification screen, it is possible to display on the user interface a screen indicating that an attempt will be made to update the firmware at any time within the predetermined time period, and a method for specifying the time period through operation via the user interface, and then display a standby screen containing multiple icons on the user interface. The aforementioned plurality of icons may include a copy icon and a scan icon. When the copy icon is operated, a process for performing a copy is performed, and when the scan icon is operated, a process for performing a scan is performed. After displaying the standby screen, in response to receiving an operation via the user interface in the manner shown on the notification screen, a settings screen for receiving input to specify the time period is displayed on the user interface. The predetermined time period registered in the memory can be changed to a time period specified by input via the settings screen, and after the change, access to the firmware server will be performed at the time of the changed time period registered in the memory. The printing apparatus according to feature 2.
4. Memory and Network interface and User interface and Controller and A printing apparatus comprising, The aforementioned controller, The printing device can be operated by executing the firmware stored in the memory. It is possible to access a firmware server on the internet via the aforementioned network interface, download update firmware from the firmware server, and update the firmware stored in the memory with the downloaded update firmware. The user interface can accept input specifying a time period. The access time to the firmware server can be determined from the time period from the first time of the specified time period to a predetermined time before the last time of that time period. Each time it is necessary to access the firmware server, it is possible to access the firmware server at the predetermined access time. During the initial installation of the printing device, it is possible to set a predetermined time period without accepting input specifying the time period via the user interface. The user interface displays a notification screen indicating that an attempt will be made to update the firmware at one of the predetermined time periods, and that a method for specifying the time period will be performed through the user interface. A printing apparatus characterized by the following features.
5. Memory and Network interface and User interface and Controller and A printing apparatus comprising, The aforementioned controller, The printing device can be operated by executing the firmware stored in the memory. It is possible to access a firmware server on the internet via the aforementioned network interface, download update firmware from the firmware server, and update the firmware stored in the memory with the downloaded update firmware. The user interface can accept input specifying a time period. The access time to the firmware server can be determined from the time period from the first time of the specified time period to a predetermined time before the last time of that time period. Each time it is necessary to access the firmware server, it is possible to access the firmware server at the predetermined access time. During the initial installation of the printing device, it is possible to set a predetermined time period without accepting input specifying the time period via the user interface. The user interface displays a notification screen indicating that an attempt will be made to update the firmware at any time within the predetermined time period, and that if the power to the printer is turned off during the firmware update and the firmware update fails, the printer will be connected to an external computer with a cable to complete the firmware update. A printing apparatus characterized by the following features.
6. Memory and Network interface and User interface and Controller and A printing apparatus comprising, The aforementioned controller, The printing device can be operated by executing the firmware stored in the memory. It is possible to access a firmware server on the internet via the aforementioned network interface, download update firmware from the firmware server, and update the firmware stored in the memory with the downloaded update firmware. The user interface can accept input specifying a time period. The access time to the firmware server can be determined from the time period from the first time of the specified time period to a predetermined time before the last time of that time period. Each time it is necessary to access the firmware server, it is possible to access the firmware server at the predetermined access time. During the initial installation of the printing device, it is possible to set a predetermined time period without accepting input specifying the time period via the user interface. It is possible to register the time period including the predetermined time period in the memory. It is possible to display a waiting screen containing multiple icons on the user interface. The aforementioned plurality of icons may include a copy icon and a scan icon. When the copy icon is operated, a process for performing a copy is performed, and when the scan icon is operated, a process for performing a scan is performed. If the predetermined time period set during the initial installation of the printing device is registered in the memory, the user interface will be notified at the time the standby screen is displayed on the user interface that access to the firmware server will occur during the predetermined time period. A printing apparatus characterized by the following features.
7. The aforementioned controller, If the predetermined time period set during the initial installation of the printing device is registered in the memory, at the time the standby screen is displayed on the user interface, a notification screen is displayed on the user interface that includes a notification that access to the firmware server will be performed at the time of the predetermined time period, and a selection corresponding to a setting screen for accepting input to specify the time period. After displaying the notification screen on the user interface, and in response to receiving an operation on the selection included in the notification screen, a settings screen for receiving input to specify the time period is displayed on the user interface. The time period registered in the memory can be changed to a time period specified by input via the settings screen, and after the change, access to the firmware server will be performed at the time of the changed time period registered in the memory. The printing apparatus according to feature 6.
8. The aforementioned controller, If the predetermined time period set during the initial installation of the printing device is registered in the memory, when the standby screen is displayed on the user interface, a string indicating that access to the firmware server will occur at the time within the predetermined time period will be displayed in the information display area of the standby screen. After displaying the string in the information display area, the notification screen is displayed on the user interface in response to an operation on the information display area. The printing apparatus according to feature 7.
9. Memory and Network interface and User interface and Controller and A printing apparatus comprising, The aforementioned controller, The printing device can be operated by executing the firmware stored in the memory. It is possible to access a firmware server on the internet via the aforementioned network interface, download update firmware from the firmware server, and update the firmware stored in the memory with the downloaded update firmware. The user interface can accept input specifying a time period. The access time to the firmware server can be determined from the time period from the first time of the specified time period to a predetermined time before the last time of that time period. Each time it is necessary to access the firmware server, it is possible to access the firmware server at the predetermined access time. During the initial installation of the printing device, it is possible to set a predetermined time period without accepting input specifying the time period via the user interface. It is possible to register the time period in the aforementioned memory, When a predetermined time has passed since the scheduled access time to the firmware server, the system notifies the user interface that the access to the firmware server will take place at a time within the time period registered in the memory. A printing apparatus characterized by the following features.
10. The aforementioned controller, In response to the fact that a first predetermined time has passed since the access time to the firmware server, the user interface is notified that the access to the firmware server will be performed at a time within the time period registered in the memory. When a second predetermined time has passed since the access time to the firmware server, the user interface is notified that access to the firmware server will occur soon. The second predetermined time is shorter than the first predetermined time. The printing apparatus according to feature 9.
11. The aforementioned controller, In response to a predetermined time being prior to the access time to the firmware server, the user interface displays a notification screen that includes a notification that the access to the firmware server will be performed at a time within the time period registered in the memory, and an option corresponding to canceling the access to the firmware server. After displaying the notification screen on the user interface, in response to an operation on the selection included in the notification screen, the system notifies the user interface that access to the firmware server will not be performed at the time of the access, and that access to the firmware server will be performed at a time within the time period registered in the memory when the predetermined time before the next access time has arrived. The printing apparatus according to feature 9.
12. The notification screen further includes an option corresponding to acknowledging the notification that access to the firmware server will occur at a time within the time period registered in the memory, The aforementioned controller, After displaying the notification screen on the user interface, it is possible to display a standby screen containing multiple icons on the user interface. The aforementioned plurality of icons may include a copy icon and a scan icon. When the copy icon is operated, a process for performing a copy is performed, and when the scan icon is operated, a process for performing a scan is performed. After displaying the notification screen on the user interface, in response to receiving an operation on either the option corresponding to cancellation or the option corresponding to approval of the notification included in the notification screen, the waiting screen is displayed on the user interface. If, after displaying the notification screen on the user interface, no operation is accepted on either the option corresponding to cancellation or the option corresponding to approval of the notification included on the notification screen, the standby screen will not be displayed on the user interface, and access to the firmware server will be performed at a time within the time period registered in the memory. The printing apparatus according to feature 11.
13. The aforementioned controller, At a time different from the time of access to the firmware server, access the firmware server to check whether there is any firmware to be updated. If there is no firmware to update, even if the predetermined time has passed since the time of access to the firmware server, the notification that access to the firmware server will be performed at a time within the time period registered in the memory will not be made. The printing apparatus according to feature 9.
14. The aforementioned timing, separate from the time of access to the firmware server, is within a predetermined time after the power of the printing device is turned on. The printing apparatus according to feature 13.
15. The aforementioned controller, When the power of the printing device is turned on, if the access time to the firmware server is less than the first predetermined time and longer than the second predetermined time, and is less than or equal to a third predetermined time, the user interface will notify the user that the access to the firmware server will not be performed at that time, and that the access to the firmware server will be performed at a time within the time period registered in the memory, in accordance with the fact that it is less than the first predetermined time before the next access time. The printing apparatus according to feature 10.