Program and control method

The program on an information processing device manages IP addresses by allowing image processing devices to obtain and return them as needed, addressing IP address shortages and ensuring all devices can connect, even when the number exceeds the available supply.

JP2026077078APending Publication Date: 2026-05-13BROTHER KOGYO KK
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
BROTHER KOGYO KK
Filing Date
2024-10-25
Publication Date
2026-05-13

AI Technical Summary

Technical Problem

The limited number of IP addresses available from DHCP servers can lead to a shortage when a large number of image processing devices connect to a network, preventing some devices from obtaining an IP address.

Method used

An executable program on an information processing device that manages IP addresses, allowing image processing devices to obtain and return IP addresses as needed, enabling efficient use of available IP addresses by sending control commands and return commands to devices that have completed their processes.

Benefits of technology

This approach reduces the likelihood of IP address shortages by allowing devices to efficiently share IP addresses, ensuring all devices can connect to the network even when the number of devices exceeds the available IP addresses.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026077078000001_ABST
    Figure 2026077078000001_ABST
Patent Text Reader

Abstract

To provide a technology that reduces the likelihood of a shortage of IP addresses allocated to image processing equipment. [Solution] The configuration application program 22 is executable on PC1, which is connected to network 200 where router 100 manages IP addresses, and at least one printer can be connected to network 200. When the configuration application program 22 receives a specification of the process to be executed by the printer and an instruction to apply the settings, it causes PC1 to send a control command to at least one printer connected to network 200 to execute the specified process, and after sending the control command, it causes the printer to send an IP address release command. When the printer receives the IP address release command, it performs a procedure to return the IP address leased from router 100 to router 100.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The technical field disclosed in this specification relates to a program and a control method capable of controlling an image processing apparatus.

Background Art

[0002] Conventionally, some image processing apparatuses automatically start a procedure to borrow an IP address from a DHCP (Dynamic Host Configuration Protocol) server when connected to a network. By acquiring an IP address from the DHCP server, various control commands can be sent to the image processing apparatus from an external device using that IP address.

[0003] As a document related to the technology using a DHCP server, for example, in Patent Document 1, a server having a function as a DHCP server lends an IP address to a printer that is the request destination of a print job when receiving the print job, and the printer returns the IP address to the server when finishing the print processing of the print job. A configuration is disclosed.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0005] The number of IP addresses that can be lent by a DHCP server is limited. Therefore, when a large number of image processing apparatuses are simultaneously connected to a network, there may be a shortage of IP addresses and some image processing apparatuses may not be able to be lent an IP address.

[0006] The technology disclosed in Patent Document 1 is a technology that suppresses the shortage of IP addresses, but it is configured in such a way that an IP address is leased to the printer only for the duration of processing the print job. Therefore, it does not support configurations in which an IP address is leased from the moment the printer is connected to the network, and there is room for improvement. [Means for solving the problem]

[0007] The program developed to solve this problem is an executable program by an information processing device, wherein the information processing device is connected to a network where a DHCP server manages IP addresses, and at least one image processing device can be connected to the network, the image processing device performs a procedure to obtain an IP address from the DHCP server when connecting to the network, and the image processing device further performs a procedure to return the leased IP address to the DHCP server when it receives a return command, which is a command to return the IP address, and the program is configured to cause the information processing device to perform an acceptance process that accepts a specification of a process to be executed by the image processing device and an execution instruction via the user interface of the information processing device, and when an execution instruction is received, the program is configured to cause the information processing device to perform a transmission process that sends a control command to at least one of the image processing devices connected to the network via the communication interface of the information processing device to execute the specified process, and a return process that sends the return command to the image processing device that was the recipient of the control command via the communication interface of the information processing device after sending the control command.

[0008] The program disclosed herein, when connecting to a network, causes an image processing device to receive an IP address from a DHCP server, to send a control command to an information processing device, followed by a return command, to execute a specified process. The image processing device that receives the control command then immediately returns its IP address upon receiving the return command. This returned IP address may be leased to an image processing device that was not initially assigned an IP address. This allows for efficient use of IP addresses, even when sending control commands to a large number of image processing devices that exceed the number of IP addresses available to the DHCP server.

[0009] The control methods for realizing the functions of the above program, the information processing device into which the program is incorporated, and the storage medium readable by the computer that stores the program are all novel and useful. [Effects of the Invention]

[0010] The technology disclosed herein provides a method for reducing the chances of a shortage of IP addresses available to image processing devices. [Brief explanation of the drawing]

[0011] [Figure 1] This block diagram shows the general configuration of a PC. [Figure 2] This flowchart shows an example of the procedure for applying settings. [Figure 3] This is an explanatory diagram showing an example of address management information. [Figure 4] This flowchart shows an example of the command transmission process. [Figure 5] This flowchart shows an example of the procedure for address monitoring. [Figure 6] This is an explanatory diagram showing an example of address management information. [Figure 7] This flowchart shows an example of the command transmission process. [Figure 8]This flowchart shows an example of the command transmission process. [Figure 9] This flowchart shows an example of the command transmission process. [Modes for carrying out the invention]

[0012] The program of the embodiment and the control method by that program will be described in detail below with reference to the attached drawings. This specification discloses a program that is embedded in a personal computer (hereinafter referred to as "PC") connected to a network.

[0013] As shown in Figure 1, the PC1 of this embodiment includes a CPU 11 and a controller 10 which includes memory 12. The PC1 also includes a user interface (hereinafter referred to as "user IF") 13 and a communication interface (hereinafter referred to as "communication IF") 14, which are electrically connected to the controller 10. The PC1 is an example of an information processing device. Note that the controller 10 in Figure 1 is a general term for the hardware and software used to control the PC1, and does not necessarily represent a single piece of hardware actually present in the PC1.

[0014] The CPU 11 executes various processes according to the program read from memory 12 and based on user operations. Memory 12 stores various programs and data, including the operating system (hereinafter referred to as "OS") 21, a configuration application program 22, address management information 23, and return selection information 24. The configuration application program 22 is an example of a program. Details of the programs and data will be described later.

[0015] The memory 12 is also used as a work area when various processes are executed. The buffer included in the CPU 11 is also an example of a memory. Note that the CPU 11 may read programs and data such as the setting application program 22 from a storage medium readable by the CPU 11 and use them. As a storage medium readable by the CPU 11, for example, a CD-ROM, a DVD-ROM, a USB memory, etc. can be used.

[0016] The user IF 13 includes hardware for displaying a screen for notifying a user of information and hardware for receiving an operation by the user. The user IF 13 may include a combination of a display and a mouse, a keyboard, etc., or may include a touch panel.

[0017] The communication IF 14 includes hardware for communicating with an external device. The communication IF 14 includes functions corresponding to communication standards such as Wi-Fi (registered trademark), Ethernet (registered trademark), and USB. The PC 1 may be provided with a plurality of communication IFs 14 corresponding to a plurality of communication standards.

[0018] As shown in FIG. 1, the PC 1 is connected to the network 200 managed by the router 100 via the communication IF 14. The router 100 has the function of a DHCP (Dynamic Host Configuration Protocol) server and manages a predetermined number of IP addresses by the address pool 101. When the router 100 receives a new connection request from a device, it can lend an unused IP address in the address pool 101 to that device. That is, the router 100 can connect or separate various devices to / from the network 200 by lending IP addresses to various devices within the range of the predetermined number of IP addresses it manages by the function of the DHCP server.

[0019] In this embodiment, as shown in FIG. 1, a PC1 and a plurality of printers are connected to a network 200. The PC1 and each printer have the function of a DHCP client, and when connecting to the network 200, they receive the lease of an IP address from the router 100. Then, each printer can communicate with the PC1 by using the leased IP address.

[0020] In the example of FIG. 1, when the printer 301 becomes connectable to the network 200 at startup or by a user operation, if no IP address has been leased, it requests an IP address by broadcasting a <DHCP DISCOVER> signal. When the router 100 receives the <DHCP DISCOVER> signal, if there is an unused IP address in the address pool 101, it proposes the unused IP address 301A as a candidate for the IP address by sending a <DHCP OFFER> signal to the printer 301.

[0021] Upon receiving the proposal from the router 100, the printer 301 responds by broadcasting a <DHCP REQUEST> signal to accept the proposed IP address 301A. The router 100 approves the request of the printer 301 by sending a <DHCP ACK> signal to the printer 301. As a result, the printer 301 can connect to the network 200 by using the leased IP address 301A. The router 100 sets the IP address 301A leased to the printer 301 as being in use and does not provide this IP address 301A in requests received thereafter.

[0022] For example, if router 100 manages 100 IP addresses in address pool 101, and PC1 and 99 printers 301-399 each request an IP address, then all IP addresses managed by router 100 will be in use. In this state, if router 100 receives another request for an IP address from another printer 400, then, because there are no unused IP addresses,<DHCP OFFER> It does not send a signal and does not respond to requests. Therefore, printer 400,<DHCP DISCOVER> Although the signal was broadcast,<DHCP OFFER> The system times out without receiving a signal and cannot connect to network 200.

[0023] Next, the procedure for applying settings using the settings application program 22 will be explained with reference to the flowchart in Figure 2. This settings application process is executed by the CPU 11 of PC1 when it receives an instruction to start the execution of the settings application program 22. The settings application program 22 is a program that applies predetermined settings to printers by sending various commands, which are designated as the target of transmission, to the printers designated as the target of settings. In this configuration, the process when the address pool 101 of router 100 manages 100 IP addresses and the number of printers to be configured is 100 or more will be explained.

[0024] Prior to running the configuration application program 22, users must start each printer to be configured. This causes each printer to perform the aforementioned procedure for connecting to network 200. As a result, at the start of the configuration application process, PC1 and the 99 printers to be configured are connected to network 200 via router 100, and there is one or more printers that are to be configured but are not connected to network 200.

[0025] When the configuration application program 22 starts processing, the CPU 11 first searches for devices that are connected to the same network 200 as PC1 and are in a state where communication is possible. In other words, the CPU 11 searches for devices that can be configured by the configuration application program 22. Specifically, the CPU 11 sends a search signal to PC1 via the communication IF 14 to search for devices, and obtains information from each device that responds to the search signal (S101). S101 is an example of the search process and search step.

[0026] Based on the information obtained from each responding device, the CPU 11 extracts printers that may be processed by the setting application program 22, and stores address management information 23 (see Figure 1), which is information showing a list of the extracted printers, in memory 12 (S102). S102 is an example of the storage process and storage step.

[0027] The address management information 23 is a table that stores the IP address 231, MAC address 232, and setting application information 233 of each printer in association with each other, as shown in Figure 3, for example. For example, record R1 shown in the first row of Figure 3 indicates that IP address 301A, which is "192.168.1.101", is assigned as IP address 231 to printer 301 whose MAC address 232 is "00:00:00:00:00:01". The address management information 23 may also include the date and time the IP address was assigned, printer model information, etc.

[0028] Figure 3 shows an example of address management information 23 indicating that 99 printers, from the first printer 301 indicated by record R1 to printer 399 with the MAC address "00:00:00:00:00:99" indicated by record R99, are connected to network 200. Due to the limitation on the number of printers in address pool 101, only 99 printers can connect to network 200 at a time, so address management information 23 contains information for 99 printers.

[0029] The CPU 11 then receives the specification of the control command set, the specification of the printer to be configured, and the instruction to apply the settings via the user IF 13 (S105). The instruction to apply the settings in S105 is an example of an execution instruction, and S105 is an example of a reception process and reception step. The printer to be configured is an example of an image processing device.

[0030] A control command set is a combination of one or more control commands sent to each printer designated as a target for configuration. Each control command included in the control command set may include, for example, a configuration command that instructs the printer to perform a predetermined setting, or a firmware update command that instructs the printer to update its firmware. Configuration commands may include, for example, a parameter setting command that instructs the printer to set parameters for print and scan settings, a power saving setting command that instructs the printer to set a power saving mode, or an idle time setting command that sets the idle time before power-off. Each control command contains information indicating the process to be executed by each printer.

[0031] The printer to be configured is the printer to which the control command set will be sent. The CPU 11 can accept the designation of the printer to be configured from among the printers whose information is included in the address management information 23. The following describes the case where all printers whose information is included in the address management information 23 are designated as the printer to be configured. Each printer that receives the control command set can execute the processing corresponding to the control commands included in the received control command set. The processing corresponding to the control commands included in the control command set is an example of the processing to be executed by the image processing device.

[0032] The setting application information 233 in the address management information 23 indicates whether or not a control command set has been sent to each printer designated as a target for setting application based on the instruction to apply the settings in this instance. At the start of the setting application process, no control command set has been sent to any printer, so, for example, as shown in Figure 3(A), setting application information 233 indicating "not applied" is stored in association with the IP address 231 of each printer.

[0033] Furthermore, after the control command set has been sent, the CPU 11 asks the user whether or not to have the printer return the IP address, and accepts the user's selection via the user IF 13. The CPU 11 then determines whether or not it has accepted a selection indicating that the IP address should be returned (S107). S107 is an example of the return selection process and the return selection step.

[0034] CPU11 accepts the user's selection by displaying messages via user interface 13, such as "Do you want to continue configuring?" or "Do you want to turn off the printer after sending?". If CPU11 accepts the selection to continue configuring or not to turn off the printer, it determines that the user has selected not to return the IP address. On the other hand, if CPU11 accepts the selection not to continue configuring or to turn off the printer, it determines that the user has selected to return the IP address.

[0035] If the CPU 11 accepts a user's choice to have their IP address returned, it will later send a command to each printer to return the IP address assigned to it. If the CPU 11 accepts a user's choice not to have their IP address returned, it will not send a command to return the IP address. When a printer returns its IP address, the returned IP address becomes an unused IP address, and the router 100 can provide that IP address in response to requests from other printers. On the other hand, a printer that has returned its IP address becomes isolated from network 200.

[0036] If the CPU determines that it has received a selection indicating that the IP address should be returned (S107: YES), the CPU 11 stores information indicating "ON" as return selection information 24 (see Figure 1) in memory 12 (S108). If the CPU determines that it has received a selection indicating that the IP address should not be returned (S107: NO), the CPU 11 stores information indicating "OFF" as return selection information 24 in memory 12 (S109). Note that the CPU 11 may query whether or not to return the IP address, or perform steps S107 to S109, before receiving the instruction in S105.

[0037] After S108 or S109, the CPU 11 determines whether the control command set specified in S105 includes a command that requires a reboot (S111). A command that requires a reboot is, for example, a firmware update command, while various setting commands are commands that do not require a reboot.

[0038] If the CPU determines that the command set includes commands that require a reboot (S111:YES), it generates all commands that do not require a reboot in a buffer (S113) and generates the commands that require a reboot in a subbuffer (S114). In other words, the CPU generates commands that require a reboot and commands that do not require a reboot in separate buffers. If the CPU determines that the command set does not include commands that require a reboot (S111:NO), it generates all commands in the specified control command set in a single buffer (S116).

[0039] Once all the commands in the specified control command set have been generated in the buffer and subbuffer, the CPU 11 sequentially sends the generated commands to each printer specified in S105. To do this, the CPU 11 first determines which printer to send the commands to (S121). Then, the CPU 11 executes the command transmission process (S122).

[0040] The procedure for sending commands will be explained with reference to the flowchart in Figure 4. First, the CPU 11 sends all the commands generated in the buffer to the printer determined as the destination via the communication IF 14 (S201). S201 is an example of the transmission process and transmission step. Since all the commands generated in the buffer do not require a restart, the printer can execute the processing of each received command even if it receives multiple commands.

[0041] The CPU 11 determines whether or not there is a command generated in the subbuffer (S202). If it determines that there is a command in the subbuffer (S202: YES), the CPU 11 sends one of the commands generated in the subbuffer to the destination printer via the communication IF 14 (S203). S203 is an example of the transmission process and transmission step.

[0042] The printer restarts after processing one command that requires a restart. Since the command generated in the subbuffer is a command that requires a restart, CPU 11 sends one command in S203, then determines whether the destination printer has restarted (S204), and waits until it restarts. By proceeding to the next step only after confirming that the restart is complete, CPU 11 can ensure that the printer completes the processing of each command.

[0043] CPU11, using S204, repeatedly sends a PING signal to the destination printer, for example, and determines that a restart has occurred if it receives a response from the printer. Note that the printer and router 100 remember the IP address information they were assigned before the restart, and the restarted printer uses the same IP address as before the restart.

[0044] If the CPU determines that the destination printer has restarted (S204:YES), it determines whether there are any more commands in the subbuffer (S202). If the control command set does not include any commands that would cause a restart and no commands are generated in the subbuffer, or if all commands generated in the subbuffer have been sent and there are no more commands left in the subbuffer (S202:NO), the CPU changes the setting application information 233 stored in the address management information 23, which is associated with the IP address 231 of the destination printer, from "not applied" to "applied" (S215). For example, as shown in Figure 3(B), when the transmission of the control command set to the printer in record R1 of the address management information 23 is completed, the setting application information 233 of record R1 is changed to "applied".

[0045] The CPU 11 then determines whether the return selection information 24 is ON or OFF (S221). The return selection information 24 is information stored in memory 12 in S108 or S109, according to the user's selection received in S107 of the setting application process shown in Figure 2. If it is determined that the return selection information 24 is ON (S221: YES), the CPU 11 generates an IP address release command in the buffer (S222) and sends the command in the buffer to the destination printer (S223). S223 is an example of the return process and return step. The IP address release command is an example of a return command.

[0046] The IP address release command is a command that causes the printer to return the IP address it is currently using. Upon receiving the IP address release command, printer 301 will perform the necessary processing according to the command.<DHCP RELEASE> By sending a signal to router 100, the procedure for returning the leased IP address is initiated. Router 100 then returns the designated IP address from the leased printer 301.<DHCP RELEASE> When a signal is received, the IP address previously assigned to printer 301 is changed to an unused IP address, and printer 301 is isolated from network 200.

[0047] On the other hand, as shown in Figure 1, even if the 100th printer 400 is started, for example, at the start of the configuration application process by the configuration application program 22, it will not be assigned an IP address. Therefore, for example, periodically,<DHCP DISCOVER> The signal is broadcast. Router 100,<DHCP DISCOVER> If there is an unused IP address when the signal is received, the IP address can be lent, as mentioned above. In other words, because printer 301 is separated from network 200, printer 400 can connect to network 200.

[0048] Many printers do not return their IP address upon shutdown because it is more convenient to continue using the same IP address. If the leased IP address is not returned, a printer that was unable to connect due to insufficient IP addresses will remain unable to connect. In this configuration, after sending the control command set, the CPU 11 sends an IP address release command instead of a shutdown command, thereby forcing the printer to return its IP address. The CPU 11 may also send a shutdown command immediately following the IP address release command.

[0049] After sending an IP address release command to the printer that has finished sending commands, CPU 11 performs address monitoring (S225). Address monitoring is the process of setting the newly connected printer as the destination for the control command set if another printer is connected to network 200 after the IP address has been returned. CPU 11 may ask the user whether or not to perform address monitoring before S225.

[0050] The procedure for address monitoring will be explained with reference to the flowchart in Figure 5. The CPU 11 searches for printers connected to network 200 via the communication IF 14 (S301). S301 is the same process as S101 in the setting application process shown in Figure 2, and is an example of a search process and search step. For each printer found in S301, the CPU 11 sequentially focuses on it one by one and performs the following processing for that printer of interest. A printer of interest is an example of a specific image processing device.

[0051] The CPU 11 obtains information about the IP address currently in use from the printer of interest (S311). Furthermore, the CPU 11 determines whether the IP address 231 obtained in S311 is already stored in the address management information 23 stored in memory (S312). If it determines that it is already stored (S312: YES), the CPU 11 further determines whether the setting application information 233 stored in association with that IP address 231 is "applied" (S313).

[0052] If the configuration application information 233 is determined to be "applied" (S313:YES), the CPU 11 obtains MAC address information from the printer of interest (S314). Furthermore, the CPU 11 determines whether the MAC address obtained in S314 matches the MAC address 232 stored in the address management information 23, which is associated with the IP address 231 obtained in S311 (S315).

[0053] Printers for which the setting application information 233 is set to "Applied" are printers for which the command transmission process described above has been completed. If the return selection information 24 is on, an IP address release command is sent to the printer for which transmission has been completed, so the IP address that was leased to that printer may have been returned and leased to another printer. In that case, the printer using the same IP address will be different from the one at the time the address management information 23 was stored. In other words, if the MAC address of the printer using the IP address is different from the MAC address 232 stored in the address management information 23, it means that a new printer has been connected to network 200.

[0054] If the CPU determines that the MAC addresses do not match (S315: NO), it updates the MAC address 232 stored in the address management information 23 with the MAC address information of the printer of interest obtained in S314 (S316). Furthermore, the CPU changes the setting application information 233 associated with the IP address 231 to "not applied" (S317), and selects the printer of interest as the printer to be configured (S318). S317 and S318 are examples of the transmission selection process and transmission selection step.

[0055] For example, as shown in Figure 6(A), when the command to printer 301 for record R1 of address management information 23 is sent and the IP address is returned from printer 301, and this IP address is leased to the 100th printer 400, the CPU 11 changes the MAC address 232 for record R1 of address management information 23 to the MAC address of printer 400, and sets the setting application information 233 to "not applied", as shown in Figure 6(B).

[0056] If the IP address of the printer under consideration is the same as IP address 231 stored in address management information 23, and the MAC address of the printer under consideration is different from MAC address 232 stored in address management information 23, it can be inferred that the IP address of the printer with MAC address 232 stored in address management information 23 was returned and that IP address was leased to the printer under consideration. In this case, the setting application program 22 automatically selects the printer under consideration as the printer to be configured, thus saving the user the trouble of making a selection.

[0057] On the other hand, if the CPU determines that the IP address of the printer of interest is not stored in the address management information 23 (S312: NO), the CPU 11 adds the information of the printer of interest to the address management information 23 (S325). For example, if, during the search in S101 of the setting application process, there is a printer that is not powered on and has since been connected to network 200, the CPU 11 adds the information of that printer to the address management information 23.

[0058] Furthermore, if the CPU 11 determines that the setting application information 233 stored in association with the IP address of the printer in question is "not applied" (S313: NO), or if it determines that the MAC address 232 matches the MAC address of the printer in question (S315: YES), the CPU 11 does not change the information stored in the address management information 23.

[0059] As shown in record R99 in Figure 6(A), if the setting application information 233 in the address management information 23 is "not applied", the printer 399 that has been assigned that IP address 231 has not completed sending the command. Also, if the MAC address obtained from the printer in question matches the MAC address 232 stored in the address management information 23, the printer using that IP address has not been changed, even if the setting application information 233 is "applied".

[0060] After S318, after S325, if the CPU determines NO in S313, or if the CPU determines YES in S315, the CPU 11 determines whether there are any printers among those found in the search in S301 whose address management information 23 has not been verified (S321). If the CPU 11 determines that there are unverified printers (S321: YES), the CPU 11 designates that unverified printer as a new printer of interest and proceeds to S311 to perform the same process. On the other hand, if the CPU 11 determines that there are no unverified printers (S321: NO), the CPU 11 terminates the address monitoring process and returns to the command transmission process.

[0061] Let's return to the explanation of the command transmission process in Figure 4. In the command transmission process, after the address monitoring process in S225 is completed, or if it is determined that the return selection information 24 is off (S221: NO), the CPU 11 terminates the command transmission process and returns to the setting application process. If the return selection information 24 is off, the CPU 11 does not send an IP address release command, so the possibility of a printer using the same IP address being changed is low.

[0062] The configuration application program 22 accepts a request in S107 to choose whether or not to return the IP address after sending the control command set. Therefore, it is possible to choose whether or not to return the IP address, according to the user's preference. For example, a user who wants to apply the same settings to more printers than the number of IP addresses managed by router 100 should choose to return the IP address. As a result, printers that have already sent the control command set will return their IP address, allowing printers that could not connect due to IP address exhaustion to immediately connect to network 200.

[0063] On the other hand, if it is necessary to maintain a connection with the printer even after sending a control command set, or if the number of printers to be configured is less than the number of IP addresses managed by the router 100's address pool 101, the user should choose not to have the IP address returned. This allows the CPU 11 to complete the process for sending the control command set in a shorter time, as it does not send an IP address release command or perform address monitoring. In this case, each printer will not return its IP address and will remain connected to network 200.

[0064] Returning to the explanation of the setting application process in Figure 2, once the command transmission process in S122 has completed sending to one printer, the CPU 11 determines whether there are any printers to which the control command set has not yet been sent (S123). Printers to which the control command set has not yet been sent are those for which the setting application information 233 in the address management information 23 is set to "not applied". If the CPU 11 determines that there are printers to which the control command set has not yet been sent (S123: YES), it decides that printer to be the next destination printer (S121) and executes the command transmission process (S122).

[0065] If the CPU determines that there are no printers to which the control command set has not been sent, that is, that the control command set has been sent to all printers designated as targets for configuration in S105 (S123: NO), the CPU 11 notifies the user IF 13 that the application of the settings to all printers is complete (S125), and terminates the configuration application process.

[0066] Furthermore, if the control command set to be configured, as specified by the user in the setting application process S105, consists only of commands that do not require a restart, and the return selection information 24 is turned on, the CPU 11 may, in S116, generate each command of the control command set in a buffer, then generate an IP address release command in a buffer and send it immediately. In this case, the CPU 11 executes the command transmission process shown in the flowchart of Figure 7 instead of the command transmission process shown in Figure 4. Note that in Figure 7, the same reference numerals are used for the same processes as in Figure 4.

[0067] In this command transmission process, the CPU 11 sequentially sends all the commands generated in the buffer (S201). As a result, each command in the control command set and the IP address release command are sent to the destination printer. Then, the CPU 11 changes the setting application information 233 of the address management information 23 from "not applied" to information indicating "applied" (S215), and executes the address monitoring process (S225).

[0068] Even in this manner, since an IP address release command is sent immediately after each command, the printer will return the IP address after receiving all commands. In particular, since the IP address release command is sent immediately after the last command in the control command set, there is a high probability that the printer will return the IP address immediately after processing each command in the control command set.

[0069] Furthermore, if the set of control commands to be configured specified by the user in S105 of the configuration application process consists only of commands that do not require a restart, the procedure for sending commands by the configuration application program 22 may be, for example, the procedure shown in the flowchart of Figure 8. In Figure 8, the same reference numerals are used for the same processes as in Figure 4.

[0070] In the command transmission process shown in Figure 8, CPU 11 sends each command of the control command set generated in the buffer in S116 (S201), and then changes the setting application information 233 of the address management information 23 from "not applied" to "applied" (S215). Then, if the return selection information 24 is ON (S221: YES), CPU 11 waits for a predetermined time to elapse (S401), generates an IP address release command in the buffer (S222), and sends the command in the buffer to the destination printer (S223). Then, CPU 11 executes the address monitoring process (S225). CPU 11 may execute S401 after S222 but before S223.

[0071] It may take some time for the printer to finish processing the received commands. Also, if there is a possibility that the printer may send information to PC1, for example, due to an error occurring during command processing, the printer must remain connected to network 200. If CPU 11 waits for a sufficient amount of time for command processing to finish before sending the IP address release command, it is highly likely that the IP address will be returned from the printer after all command processing is complete. Note that if a command requiring a restart is generated in the subbuffer, the printer restart is confirmed at 204 in Figure 4, so it is certain that the command processing is complete, and there is no need to wait for a predetermined time at S401.

[0072] Furthermore, the command transmission process of the setting application program 22 may be, for example, the procedure shown in the flowchart of Figure 9. In Figure 9, the same reference numerals are used for the same processes as in Figure 4.

[0073] In the procedure shown in Figure 9, CPU 11 sends all the commands generated in the buffer and the commands generated in the subbuffer to the destination printer (S201-S204), then generates a response request command in the buffer (S501), and sends the command in the buffer to the destination printer (S502). The response request command is a command that requests PC1, the source of this command, to send a response signal. The response request command is an example of a control command.

[0074] After S502, CPU11 waits for the reception of a response signal corresponding to the response request command (S503). By sending the response request command after sending all the commands included in the control command set, the printer sends a response signal after it has finished processing all the commands sent from PC1. If it determines that a response signal has been received (S503: YES), CPU11 changes the setting application information 233 of the address management information 23 from "not applied" to "applied" (S215). Thereafter, CPU11 sends an IP address release command and executes address monitoring processing according to the user's selection, similar to the process in Figure 4.

[0075] If the CPU 11 sends an IP address release command in response to receiving a response signal from the printer to which the command is sent, the CPU 11 can confirm that the printer has finished processing all the commands included in the control command set and then have it return the IP address. In other words, by following the procedure in Figure 9, each printer can be reliably made to return its IP address.

[0076] As explained in detail above, the configuration application program 22 instructs PC1 to send each command from the control command set to each printer to be configured, and then sends an IP address release command. Each printer can connect to the network 200 by being leased an IP address from the router 100. However, if the number of printers to be configured exceeds the number of IP addresses managed by the router 100's address pool 101, it is not possible to connect all the printers to the network 200 simultaneously. With the control method of the configuration application program 22 in this form, an IP address release command is sent to the printer after each command from the control command set has been sent, so there is a high probability that the printer will return its IP address. If the IP address is returned, other printers can use that returned IP address. Therefore, there is a high probability that IP addresses can be used efficiently.

[0077] This embodiment is merely illustrative and does not limit the present invention in any way. Therefore, the technology disclosed herein can naturally be improved and modified in various ways without departing from its essence. For example, instead of PC1, the information processing device may be, for example, a tablet computer or a smartphone. Furthermore, there may be two or more information processing devices. Also, the image processing device is not limited to a printer, but may be a scanner, copier, multifunction device, or facsimile machine.

[0078] Furthermore, the configuration application program 22 may have a monitoring function to monitor the printer status and an update function to update the firmware, in addition to the configuration function to send commands from the control command set. Also, the configuration application program 22 may perform a printer search periodically, for example, every 30 seconds or every minute, not just in S101 after execution starts or in S301 of the address monitoring process.

[0079] Furthermore, for example, if a printer is configured to return its IP address when shutting down, the configuration application program 22 may send a shutdown command to each printer instead of sending an IP address release command.

[0080] Furthermore, while this configuration involves prompting the user whether or not to return an IP address, it is not limited to this. For example, CPU 11 may return an IP address if all IP addresses managed in router 100's address pool 101 are in use, and not return an IP address if there are unused IP addresses. In this case, the return selection information 24 (see Figure 1) may be omitted.

[0081] Furthermore, in any flowchart disclosed in the embodiments, the execution order of any multiple processes in any multiple steps can be arbitrarily changed or executed in parallel, as long as no inconsistencies arise in the processing content.

[0082] Furthermore, the processes disclosed in the embodiments may be executed by a single CPU, multiple CPUs, hardware such as an ASIC, or a combination thereof. Also, the processes disclosed in the embodiments can be implemented in various forms, such as a recording medium or method that stores a program for executing the process. [Explanation of Symbols]

[0083] 1 PC 12 memory 13 User Interface 14 Communication IF 100 routers 200 Networks 301-400 Printers

Claims

1. A program that can be executed by an information processing device, The aforementioned information processing device is connected to a network where a DHCP server manages IP addresses. The aforementioned network can be connected to at least one image processing device. The image processing device, when connecting to the network, performs a procedure to obtain an IP address from the DHCP server, and further, when the image processing device receives a return command, which is a command to return the IP address, it performs a procedure to return the leased IP address to the DHCP server. The program is configured on the information processing device. It is possible to perform a receiving process that accepts the specification of a process to be executed by the image processing device and an execution instruction via the user interface of the information processing device. When the aforementioned execution instruction is received, A transmission process that transmits a control command to at least one of the image processing devices connected to the network via the communication interface of the information processing device to cause it to perform a specified process, A return process that, via the communication interface of the information processing device, sends the return command to the image processing device which is the destination of the control command after the control command has been sent, To execute A program that is structured in such a way.

2. A program according to claim 1, In the aforementioned return process, If the control command for executing the specified process includes a command that involves restarting the image processing device, the return command is sent to the image processing device that was the recipient of the control command after the control command has been sent and the image processing device that was the recipient of the control command has been restarted. A program configured in such a way.

3. A program according to claim 1, In the aforementioned return process, After all the control commands for executing the specified process have been sent to the image processing device that was the recipient of the control commands, the return command is sent consecutively to the last transmitted control command. A program configured in such a way.

4. A program according to claim 1, In the aforementioned return process, The return command is sent to the image processing device that is the recipient of the control command after a predetermined time has elapsed since the control command was sent to the image processing device that is the recipient of the control command, in order to execute the specified process. A program configured in such a way.

5. A program according to claim 1, The control command transmitted by the transmission process includes a command for sending a response signal to the source of the control command. In the aforementioned return process, The control command is sent to the image processing device that is the recipient of the control command, to cause it to execute the specified process, and after the response signal is received from the image processing device that is the recipient, the return command is sent. A program configured in such a way.

6. A program according to claim 1, The aforementioned information processing device, The user interface of the information processing device can be used to execute a return selection process that accepts a choice of whether or not to send the return command. The aforementioned information processing device further, When the aforementioned execution instruction is received, If the selection to send the return command is accepted, the return process is executed; if the selection not to send the return command is accepted, the return process is not executed. A program configured in such a way.

7. A program according to claim 1, The aforementioned information processing device, A search process for searching an image processing device via the communication interface of the information processing device, For each image processing device found by the search in the search process, a storage process is performed to associate the IP address and MAC address and store them in memory. Regarding a specific image processing device found by the search in the search process, if the IP address of the specific image processing device is already stored in the memory and its MAC address is different from the MAC address stored in the memory associated with that IP address, a transmission selection process is performed to automatically select the specific image processing device as the target for transmission of the control command by the transmission process. To execute A program configured in such a way.

8. A control method for controlling an image processing device from an information processing device, The aforementioned information processing device is connected to a network where a DHCP server manages IP addresses. The aforementioned network can be connected to at least one image processing device. The image processing device, when connecting to the network, performs a procedure to obtain an IP address from the DHCP server, and further, when the image processing device receives a return command, which is a command to return the IP address, it performs a procedure to return the leased IP address to the DHCP server. The control method includes: A reception step that receives a specification of a process to be executed by the image processing device and an execution instruction via the user interface of the information processing device, When the information processing device receives the execution instruction, the information processing device transmits a control command via its communication interface to at least one of the image processing devices connected to the network, causing it to perform the specified process; A return step in which, after the transmission of the control command, the information processing device transmits the return command to the image processing device that was the recipient of the control command via the communication interface of the information processing device, Includes, Control method.

9. A control method according to claim 8, In the aforementioned return step, If the control command for executing the specified process includes a command that restarts the image processing device, the information processing device sends the return command to the image processing device that was the recipient of the control command after the control command has been sent and the image processing device that was the recipient of the control command has been restarted. Control method.

10. A control method according to claim 8, In the aforementioned return step, After all the control commands for executing the specified process have been sent from the information processing device to the image processing device which is the recipient of the control commands, the return command is sent consecutively to the last transmitted control command. Control method.

11. A control method according to claim 8, In the aforementioned return step, After a predetermined time has elapsed since the control command was sent from the information processing device to the image processing device which was the recipient of the control command, the return command is sent. Control method.

12. A control method according to claim 8, The control command transmitted by the transmission step includes a command for sending a response signal to the source of the control command. In the aforementioned return step, The information processing device transmits the control command to the image processing device that is the recipient of the control command, causing it to perform the specified process, and after the image processing device that is the recipient of the control command sends the return command. Control method.

13. A control method according to claim 8, The control method includes: The process includes a return selection step of selecting whether or not to send the return command via the user interface of the information processing device, When the aforementioned execution instruction is received, If the selection to send the return command has been made, the return step is performed; if the selection not to send the return command has been made, the return step is not performed. Control method.

14. A control method according to claim 8, The control method includes: A search step of searching the image processing device via the communication interface of the information processing device, A storage step in which, for each image processing device found by the search in the search step, the IP address and MAC address are associated and stored in memory, A transmission selection step that, with respect to a specific image processing device found by the search in the search step, automatically selects the specific image processing device as the target for transmission of the control command in the transmission step if the IP address of the specific image processing device is already stored in the memory and the MAC address is different from the MAC address stored in the memory associated with that IP address, Includes, Control method.