Information processing device, control method thereof, and program
The communication device enhances network setup convenience by utilizing two-dimensional codes for secure and efficient connection to access points through DPP or SNMP protocols.
Patent Information
- Application Number
- JP2021140198
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-08-30
- Publication Date
- 2026-01-13
- Estimated Expiration
- 2041-08-30
AI Technical Summary
The existing methods for connecting communication devices to access points lack convenience and efficiency, particularly in network setup processes.
A communication device equipped with acceptance, output, determination, and control means to facilitate network setup using two-dimensional codes, enabling secure and efficient connection to external access points through DPP or SNMP protocols.
Improves the convenience and efficiency of connecting communication devices to access points by ensuring secure and reliable network setup using two-dimensional codes.
Smart Images

Figure 0007797142000001 
Figure 0007797142000002 
Figure 0007797142000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing device, a control method therefor, and a program. [Background technology]
[0002] BACKGROUND ART There is known a technique in which an information processing device such as a PC (personal computer) transmits information about an access point to a communication device such as a printer, thereby connecting the communication device to the external device. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2016-127545 Summary of the Invention [Problem to be solved by the invention]
[0004] However, as the function of transmitting connection information for connecting a communication device to an access point and connecting the communication device to the access point becomes more widespread, there is a demand for improving the convenience of this function.
[0005] The present invention has been made in view of the above-mentioned problems, and has an object to improve the convenience of the function of connecting a communication device to an access point. [Means for solving the problem]
[0006] In order to solve the above-mentioned problem, there is provided a communication device capable of communicating with an information processing device, Acceptance means for accepting a predetermined instruction; an output means for outputting a predetermined two-dimensional code based on the reception of the predetermined instruction; a determination means for determining whether the output of the predetermined two-dimensional code by the output means has been successful; a control means for causing the communication device to start operation in a predetermined mode for receiving, when the determination means determines that the output of the predetermined two-dimensional code has been successful, predetermined information for connecting to an external access point outside the information processing device and outside the communication device from the information processing device that read the predetermined two-dimensional code; a connection means for connecting the external access point and the communication device based on the predetermined information when the predetermined information is received from the information processing device that has read the predetermined two-dimensional code, When the determination means determines that the output of the predetermined two-dimensional code has failed, the control means An error notification screen indicating that the output of the predetermined two-dimensional code has failed is displayed on a display means. It is characterized by: [Effects of the Invention]
[0007] According to the present invention, it is possible to improve the convenience of the function of connecting a communication device to an access point. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 1 is a diagram illustrating the configuration of an information processing device and a communication device. [Figure 2] FIG. 10 is a sequence diagram showing a network setup process by DPP executed by an information processing device and a communication device. [Figure 3] FIG. 10 is a sequence diagram showing a network setup process by SNMP executed by an information processing device and a communication device. [Figure 4] 10 is a flowchart showing the flow of processing executed by the information processing device in a network setup process. [Figure 5] 10 is a flowchart illustrating a flow of processing executed by the communication device. [Figure 6] This is an example of the WEC start screen. [Figure 7] 1 is an example of a screen for capturing a QR code. DETAILED DESCRIPTION OF THE INVENTION
[0009] Preferred embodiments of the present invention will be described below by way of example with reference to the drawings. However, it should be understood that the scope of the present invention also includes appropriate modifications and improvements to the embodiments described below based on the ordinary knowledge of those skilled in the art, provided that the modifications and improvements do not deviate from the spirit of the present invention.
[0010] (First embodiment) An information processing device and a communication device included in the communication system of this embodiment will be described. In this embodiment, a smartphone is used as an example of the information processing device, but this is not a limitation. For example, various devices, such as a mobile terminal, a personal computer (PC), a tablet terminal, a personal digital assistant (PDA), and a digital camera, can be used as the information processing device. In this embodiment, a printer is used as an example of the communication device, but this is not a limitation. Various devices capable of wireless communication with the information processing device can be used. For example, printers can be inkjet printers, full-color laser beam printers, monochrome printers, and the like. Furthermore, the present invention can be applied not only to printers but also to copiers, facsimile machines, mobile terminals, smartphones, laptop PCs, tablet terminals, PDAs, digital cameras, music playback devices, televisions, smart speakers, and the like. It can also be applied to multifunction peripherals equipped with multiple functions, such as copying, faxing, and printing.
[0011] In this embodiment, the information processing device can execute a function called Wi-Fi Easy Connect (hereinafter, WEC) (registered trademark) if it supports this function. WEC is a function that performs network setup of other devices using the Device Provisioning Protocol (hereinafter, DPP) established by the Wi-Fi Alliance. Specifically, network setup of other devices refers to the process of connecting other devices to access points that form a network. In WEC, communication occurs between a device operating in the role of "Configurator" (hereinafter, Configurator device) and a device operating in the role of "Enrollee" (hereinafter, Enrollee device). The Configurator device obtains bootstrapping information from the Enrollee device. The bootstrapping information includes, for example, the Enrollee device's identification information (e.g., MAC address), public key information used for secure communication with the Enrollee device, and information indicating the channel (standby channel) used for DPP communication. In this embodiment, the bootstrapping information is described as "WEC-related information." Note that other information may also be treated as WEC-related information. The Configurator device then uses the acquired Bootstrapping information to communicate wirelessly with the Enrollee device. Specifically, for example, the Configurator device encrypts a protocol key using the public key included in the Bootstrapping information and transmits the encrypted protocol key to the Enrollee device. The Configurator device then encrypts a common key based on the encrypted protocol key and transmits information encrypted using the common key to the Enrollee device. Specific examples of the information transmitted here include a network setup request via DPP and connection information for connecting to an access point. The Enrollee device then establishes a wireless connection with the access point using the connection information received from the Configurator device.In the network setup process using WEC in this embodiment, an information processing device that supports WEC will be described as operating as a Configurator device, and a communication device that supports WEC will be described as operating as an Enrollee device.
[0012] First, the configuration of an information processing device of this embodiment and a communication device capable of communicating with the information processing device of this embodiment will be described with reference to the block diagram of Fig. 1. In addition, the following configuration will be described as an example in this embodiment, but this embodiment is applicable to devices capable of communicating with the communication device, and the functions are not particularly limited to those shown in this diagram.
[0013] The information processing device 101 is an information processing device of this embodiment. The information processing device 101 includes an input interface 102, a CPU 103, a ROM 104, a RAM 105, an external storage device 106, an output interface 107, a display unit 108, a communication unit 110, a short-range wireless communication unit 111, etc. The CPU 103, the ROM 104, the RAM 105, etc. form a computer of the information processing device 101.
[0014] The input interface 102 is an interface for receiving data input and operational instructions from a user by operating an operation unit such as a keyboard 109. The operation unit may be a physical keyboard, physical buttons, etc., or a soft keyboard, soft buttons, etc. displayed on the display unit 108. In other words, the input interface 102 may receive input from the user via the display unit 108.
[0015] The CPU 103 is a system control unit that controls the entire information processing device 101 .
[0016] The ROM 104 stores fixed data such as control programs and data tables executed by the CPU 103, and embedded operating system (hereinafter referred to as OS) programs. In this embodiment, each control program stored in the ROM 104 controls software execution such as scheduling, task switching, and interrupt processing under the management of the embedded OS stored in the ROM 104.
[0017] The RAM 105 is configured with an SRAM (Static Random Access Memory) or the like that requires a backup power source. Note that the RAM 105 holds data using a primary battery (not shown) for data backup, so that important data such as program control variables can be stored without volatilization. The RAM 105 also has a memory area for storing setting information for the information processing device 101, management data for the information processing device 101, and the like. The RAM 105 is also used as the main memory and work memory for the CPU 103.
[0018] The external storage device 106 stores an application program (hereinafter, a setting application) for executing network setup of the communication device 151, a print information generation program for generating print information that can be interpreted by the communication device 151, and the like. The setting application is an application program for configuring an access point to which the communication device 151 is connected using a WEC or the like. The setting application may have functions other than the network setup function. For example, the setting application may have a function for causing the communication device 151 to execute printing, a function for causing a document placed in the communication device 151 to be scanned, a function for checking the status of the communication device 151, and the like. The setting application is stored in the external storage device 106 by being installed from an external server, for example, via Internet communication via the communication unit 110. The external storage device 106 also stores various programs, such as an information transmission / reception control program, transmitted and received between the communication device 151 connected via the communication unit 110 and the communication device 151, as well as various information used by these programs.
[0019] The output interface 107 is an interface that controls the display unit 108 to display data and notify the status of the information processing device 101 .
[0020] The display unit 108 is configured with an LED (light emitting diode) and an LCD (liquid crystal display), and displays data and notifies the status of the information processing device 101.
[0021] The communication unit 110 is configured to connect to devices such as the communication device 151 and the access point 131 to perform data communication. For example, the communication unit 110 can connect to an access point (not shown) within the communication device 151. By connecting the communication unit 110 to the access point within the communication device 151, the information processing device 101 and the communication device 151 can communicate with each other. The communication unit 110 may communicate directly with the communication device 151 via wireless communication, or may communicate via an external device located outside the information processing device 101 or the communication device 151. The external device includes an external access point (such as the access point 131) located outside the information processing device 101 and the communication device 151, and a device other than an access point that can relay communication. In this embodiment, the wireless communication method used by the communication unit 110 is Wi-Fi (Wireless Fidelity) (registered trademark), which is a communication standard conforming to the IEEE 802.11 series. The above-mentioned WEC is performed through communication by the communication unit 110. The access point 131 may be, for example, a device such as a wireless LAN router. In this embodiment, a method in which the information processing device 101 and the communication device 151 are directly connected without going through an external access point is called a direct connection method. A method in which the information processing device 101 and the communication device 151 are connected through an external access point is called an infrastructure connection method.
[0022] The short-range wireless communication unit 111 is configured to perform data communication by wirelessly connecting to a device such as the communication device 151 at a short distance, and performs communication using a communication method different from that of the communication unit 110. The short-range wireless communication unit 111 can be connected to, for example, a short-range wireless communication unit 157 in the communication device 151. Examples of communication methods include Near Field Communication (NFC), Bluetooth (registered trademark) Classic, Bluetooth Low Energy (BLE), and Wi-Fi Aware.
[0023] The photographing unit 112 is a camera and acquires image data by photographing. In this embodiment, the photographing unit 112 acquires image data including a QR code by photographing a QR code (registered trademark), as will be described later.
[0024] In this embodiment, the information processing apparatus 101 executes the WEC using the OS functions of the information processing apparatus 101 based on an instruction to execute a network setup process by the setting application.
[0025] The communication device 151 is the communication device of this embodiment. The communication device 151 includes a ROM 152, a RAM 153, a CPU 154, a print engine 155, a communication unit 156, a short-range wireless communication unit 157, etc. The ROM 152, the RAM 153, the CPU 154, etc. form a computer of the communication device 151.
[0026] The communication unit 156 has an access point for connecting to devices such as the information processing device 101 as an access point within the communication device 151. The access point can be connected to the communication unit 110 of the information processing device 101. When the communication unit 156 enables the access point, the communication device 151 operates as an access point. The communication unit 156 may wirelessly connect to the information processing device 101 directly or via the access point 131. In this embodiment, the wireless communication method used by the communication unit 156 is a communication standard conforming to the IEEE 802.11 series. In the following description, Wi-Fi (Wireless Fidelity) (registered trademark) is a communication standard conforming to the IEEE 802.11 series. If the communication device 151 supports WEC, the WEC described above is executed through communication by the communication unit 156. The communication unit 156 may be provided with hardware that functions as an access point, or may operate as an access point using software that causes it to function as an access point.
[0027] The communication device 151 of this embodiment can operate in an infrastructure mode and a P2P (Peer to Peer) mode as modes (states) for performing communication using the communication unit 156.
[0028] The infrastructure mode is a mode in which the communication device 151 communicates with other devices, such as the information processing device 101, via an external device (e.g., the access point 131) that forms a network. A connection with an external access point established by the communication device 151 operating in the infrastructure mode is called an infrastructure connection (hereinafter, referred to as an infrastructure connection). In this embodiment, in the infrastructure connection, the communication device 151 operates as a slave station, and the external access point operates as a master station. In this embodiment, the master station is a device that determines a communication channel to be used in the network to which the master station belongs, and the slave station is a device that does not determine a communication channel to be used in the network to which the slave station belongs, but uses the communication channel determined by the master station.
[0029] The P2P mode is a mode in which the communication device 151 communicates directly with other devices, such as the information processing device 101, without going through an external device that forms a network. In this embodiment, the P2P mode includes an AP mode in which the communication device 151 operates as an access point. The connection information (SSID and password) of the access point enabled in the communication device 151 in the AP mode can be arbitrarily set by the user. The P2P mode may also include, for example, a WFD mode in which the communication device 151 communicates via Wi-Fi Direct (WFD). Which of multiple WFD-compatible devices operates as a master station is determined, for example, according to a sequence called Group Owner Negotiation. The master station may also be determined without executing Group Owner Negotiation. A WFD-compatible device that also serves as a master station is particularly referred to as a Group Owner. A direct connection with another device established by the communication device 151 operating in P2P mode is referred to as a direct connection. In this embodiment, in a direct connection, the communication device 151 operates as a master station, and the other devices operate as slave stations.
[0030] Furthermore, in this embodiment, the communication device 151 can operate in a network setup mode, which is a mode for executing network setup of the communication device 151 using a predetermined communication protocol (setup communication protocol), by receiving a predetermined operation from a user. When operating in the network setup mode, the communication device 151 operates as a setup access point that is valid while operating in the network setup mode, by using the communication unit 156. The setup access point is an access point that is different from the access point that is valid in the AP mode described above. The SSID of the setup access point includes a predetermined character string that can be recognized by the setting application of the information processing device 101. The setup access point is an access point that does not require a password for connection. The communication device 151 operating in the network setup mode uses the setup communication protocol to communicate with the information processing device 101 connected to the setup access point. Specifically, the setup communication protocol is, for example, Simple Network Management Protocol (SNMP). After starting operation in the network setup mode, the communication device 151 stops operation in the network setup mode and disables the setup access point when the timeout period for the network setup mode has elapsed. This is because, as described above, the setup access point is an access point that does not require a password, and if it is enabled for a long period of time, there is a high possibility that an inappropriate device will request connection. Note that the setup access point may be an access point that requires a password. In this case, the password used to connect to the setup access point is a fixed password (that cannot be changed by the user) that is known in advance by the setting application.
[0031] Furthermore, in this embodiment, by receiving a predetermined operation from the user, the communication device 151 can also operate in a mode for executing the network setup of the communication device 151 using a communication protocol different from the setup communication protocol. In this embodiment, the communication protocol different from the setup communication protocol is the above-mentioned DPP, and this mode is referred to as DPP mode. When the communication device 151 receives a DPP network setup request from the information processing device 101 while operating in DPP mode, the communication device 151 executes DPP network setup as described below. Therefore, in other words, DPP mode is a mode in which the communication device 151 waits for a DPP network setup request. After starting operation in DPP mode, the communication device 151 stops operation in DPP mode and stops waiting for a DPP network setup request when a DPP mode timeout period has elapsed. Note that the DPP mode timeout period may be the same as the network setup mode timeout period, or may be longer or shorter than the network setup mode timeout period. Furthermore, in this embodiment, the communication device 151 starts operation in DPP mode based on an operation to display a two-dimensional code that causes the information processing device 101 to acquire WEC-related information, which will be described later. However, the timing and conditions for starting operation in DPP mode are not limited to this. For example, operation in DPP mode may be started by starting operation in network setup mode, or based on an operation to start operation in network setup mode.
[0032] The short-range wireless communication unit 157 is configured to establish a short-range wireless connection with a device such as the information processing device 101, and can be connected to, for example, the short-range wireless communication unit 111 in the information processing device 101. Examples of communication methods include NFC, Bluetooth Classic, BLE, and Wi-Fi Aware.
[0033] The RAM 153 is composed of an SRAM or the like that requires a backup power source. Since the RAM 153 holds data using a primary battery (not shown) for data backup, it can store important data such as program control variables without volatilizing it. The RAM 153 also has a memory area for storing setting information for the communication device 151, management data for the communication device 151, and the like. The RAM 153 is also used as the main memory and work memory for the CPU 154, and stores a receive buffer for temporarily storing print information received from the information processing device 101, etc., as well as various other information.
[0034] The ROM 152 stores fixed data such as control programs, data tables, and OS programs executed by the CPU 154. In this embodiment, each control program stored in the ROM 152 controls software execution such as scheduling, task switching, and interrupt processing under the management of the embedded OS stored in the ROM 152.
[0035] The CPU 154 is a system control unit that controls the entire communication device 151 .
[0036] Based on information stored in the print engine 155 and RAM 153 and a print job received from the information processing device 101 or the like, an image is formed on a recording medium such as paper by applying a recording material such as ink to the recording medium, and the print result is output. Generally, since the amount of data for a print job transmitted from the information processing device 101 or the like is large, a communication method capable of high-speed communication is required for communicating the print job. Therefore, the communication device 151 receives the print job via a communication unit 156 capable of communication at higher speeds than the short-range wireless communication unit 157.
[0037] Note that the communication device 151 may be equipped with an optional memory such as an external HDD or SD card, and the information stored in the communication device 151 may be stored in the memory.
[0038] In this embodiment, it is assumed that network setup using DPP can be performed as described above. Note that the information processing device 101 needs to acquire WEC-related information in order to have the communication device 151 perform network setup using DPP. In this embodiment, when the communication device 151 receives a predetermined operation from a user, it outputs a two-dimensional code (in this embodiment, a QR code) that allows the information processing device 101 to acquire the WEC-related information. The information processing device 101 then acquires the WEC-related information by capturing the output QR code and analyzing the captured QR code. Furthermore, in order to perform network setup using DPP, the communication device 151 needs to operate in DPP mode. However, if the communication device 151 always operates in DPP mode, there is a high possibility that a DPP-based network setup request will be received from an information processing device operated by a user other than the user of the communication device 151. For this reason, it is desirable that operation in DPP mode be started at an appropriate time. Therefore, in this embodiment, an embodiment in which the communication device 151 starts operation in DPP mode at an appropriate time will be described. Specifically, communication device 151 starts operating in DPP mode at the timing when the QR code is output. This is because the timing when the QR code is output is the timing when the user of communication device 151 operates communication device 151, and is also the timing when there is a high probability that a setup request by DPP will be received from the information processing device operated by the user of communication device 151.
[0039] The network setup process using DPP, which is executed by the information processing device 101 and the communication device 151, will be described using Figure 2. The sequence shown in Figure 2 is realized, for example, by the CPU of each device reading a program stored in the ROM or external storage device of each device into the RAM of each device and executing it. Note that this sequence is assumed to start with the communication device 151 operating in DPP mode.
[0040] First, in step S200, the information processing device 101 starts WEC using DPP through a function of the OS. Specifically, the information processing device 101 starts the WEC application program (hereinafter, the WEC application) by issuing an instruction from the setting application to the OS to start the WEC application. As a result, the WEC application runs in the foreground, and the setting application runs in the background. Note that, for example, execution of this instruction corresponds to an instruction to run WEC. As a result, the information processing device 101 displays a WEC start screen using the WEC application. Note that the WEC application is a program pre-installed in the information processing device 101 and is provided by the OS vendor of the information processing device 101. Furthermore, when the WEC application is started, WEC-related information acquired by the setting application is provided to the WEC application. FIG. 6 shows an example of a WEC start screen displayed by the WEC application. A WEC start screen 600 displays areas 601, 602, and 603. Area 501 is an area for changing the access point set as the target for WEC configuration. Before area 601 is operated, the access point set as the target for WEC configuration is the access point to which the information processing device 101 is currently connected. When area 601 is selected, the information processing device 101 displays a list of access points and newly sets the access point selected by the user from the list as the target for WEC configuration. The access point list may include, for example, access points discovered by the information processing device 101 through an AP search and access points to which the information processing device 101 has previously connected. Area 602 is an area for canceling the execution of WEC, and area 603 is an area for instructing the execution of WEC. When area 602 is operated, the information processing device 101 ends the processing in this sequence diagram and proceeds to S217. In this case, WEC is considered to have failed. When area 603 is pressed, the information processing device 101 proceeds to S201.
[0041] In S201, the WEC application executes a WEC API using WEC-related information and information about an access point set as a target for WEC configuration, thereby instructing the OS to execute WEC. Then, a process called DPP Authentication is executed between the information processing device 101 and the communication device 151 by a function of the OS. In DPP Authentication, authentication information, information used for encrypting information, and the like are communicated between the information processing device 101 and the communication device 151, thereby authenticating communication between the devices. Note that various information transmitted from the information processing device 101 during communication in DPP Authentication is encrypted based on WEC-related information previously acquired by the information processing device 101 through processing described below. Specifically, in DPP Authentication, the information processing device 101 first transmits an Authentication Request as a network setup request according to DPP. Next, the communication device 151, operating in DPP mode, which is a mode that waits for an Authentication Request, receives the Request transmitted from the information processing device 101. Upon receiving the Authentication Request, the communication device 151 attempts to decrypt the received Request using the decryption key that it currently possesses. If the decryption is successful, the communication device 151 transmits an Authentication response to the information processing device 101 and authenticates communication with the information processing device 101. Note that if the information processing device 101 is unable to acquire accurate WEC-related information and is unable to encrypt the information correctly, decryption in the communication device 151 fails, authentication fails, and an Authentication response is not transmitted. DPP Authentication is completed when the information processing device 101 receives the Authentication response. Furthermore, in DPP Authentication, communication is performed using DPP.
[0042] Next, in S202, a process called DPP Configuration is executed between the information processing device 101 and the communication device 151 by a function of the OS. In DPP Configuration, the information processing device 101 transmits connection information for connecting to an access point set as a configuration target by WEC to the communication device 151 using WEC. The connection information includes the SSID, password, and encryption method of the access point set as a configuration target by WEC. The password transmitted at this time is information entered by the user on a screen displayed by an application compatible with the OS when a connection between the information processing device 101 and the access point is established. The password is information held by the OS when a connection between the information processing device 101 and the access point is established. The password is information not held by the setting application. The password transmitted at this time is information already held by the OS, and DPP Configuration is a process executed by the OS, so there is no need for the user to newly input the password on a screen displayed by the setting application. By transmitting connection information by WEC as in this embodiment, it is possible to transmit the password to communication device 151 through secure communication without receiving a new password input from the user on the screen displayed by the setting application. Note that DPP is also used to execute communication in DPP Configuration.
[0043] In this embodiment, communication in DPP Authentication and DPP Configuration is performed by each device transmitting a beacon. In this embodiment, the communication device 151 receives a beacon transmitted from the information processing device 101 in DPP Authentication and DPP Configuration via a network interface for infrastructure connection.
[0044] In S203, the communication device 151 ends the network setup mode and transitions to infrastructure mode. Using the connection information acquired by WEC, the communication device 151 attempts to connect to an access point corresponding to the connection information. If the connection is successful, the communication device 151 can then communicate via the network formed by the connected access point. Note that communication via the network formed by the connected access point is performed using a protocol different from DPP (specifically, for example, Port9100, SNMP, or a protocol unique to the vendor of the communication device 151). Note that the communication device 151 may transmit information indicating whether or not the connection to the access point corresponding to the connection information acquired by WEC was successful to the information processing device 101. Furthermore, if the connection to the access point corresponding to the connection information acquired by WEC fails, the communication device 151 may transmit information indicating the cause of the failure to the information processing device 101. These pieces of information may be transmitted using DPP. The reasons for failure to connect to the access point corresponding to the connection information acquired by the WEC include a communication error in the WEC, the access point not being found, or the WEC-related information acquired from the communication device 151 being inappropriate. Another example is that the encryption method used to connect to the access point set as the setting target by the WEC is an encryption method that is not supported by the communication device 151. Another example is that the encryption method used to connect to the access point set as the setting target by the WEC is an encryption method that is not supported by the WEC.
[0045] In step S204, the information processing device 101 switches the application running in the foreground from the WEC application to the setting application based on the completion of the WEC execution. The information processing device 101 then searches for the communication device 151 on the network to which the information processing device 101 belongs. This process is implemented by the setting application, which receives a notification from the OS that the WEC execution has completed. When the information processing device 101 finds the communication device 151, the information processing device 101 requests capability information from the communication device 151, and the communication device 151 transmits the capability information to the information processing device 101. This registers information about the communication device 151 in the setting application, enabling subsequent communication with the communication device 151 via the setting application. Specifically, for example, the setting application enables transmission of a print job to the communication device 151. At this time, if the information processing device 101 belongs to a network formed by an access point to which the communication device 151 is connected via the WEC, communication with the communication device 151 becomes possible via the access point. Furthermore, if communication between the information processing device 101 and the communication device 151 cannot be executed, such as when the access point to which the communication device 151 is connected is not the access point to which the information processing device 101 is connected, the request for and acquisition of capability information is omitted. Note that the communication in S204 is executed using, for example, a communication protocol different from the DPP and the setup communication protocol (specifically, for example, CHMP).
[0046] In the above description, the WEC start screen is displayed by the WEC app, and the WEC app executes the WEC API to instruct the OS to run WEC. However, this is not a limitation. For example, the WEC start screen may be displayed by a settings app. Alternatively, the settings app may execute the WEC API to instruct the OS to run WEC.
[0047] As described above, in this embodiment, the communication device 151 can also perform network setup using SNMP instead of DPP. Therefore, next, a network setup process using SNMP executed by the information processing device 101 and the communication device 151 will be described with reference to FIG. 3. The sequence shown in FIG. 3 is realized, for example, by the CPU of each device reading a program stored in the ROM or external storage device of each device into the RAM of each device and executing the program. Note that, as described above, a setup communication protocol is used in communication via a Wi-Fi connection between the communication device 151 operating in network setup mode and the information processing device 101.
[0048] In S300, the information processing device 101 requests a list of access points from the communication device 151 via a Wi-Fi connection between the information processing device 101 and the communication device 151 operating in a network setup mode, using the setting application.
[0049] Next, in S301, the communication device 151 transmits a list of access points to the information processing device 101 via the Wi-Fi connection between the communication device 151 operating in network setup mode and the information processing device 101. Note that the list transmitted here is a list indicating one or more access points to which the communication device 151 can connect, which have been discovered by the communication device 151 performing an AP search.
[0050] Next, in S302, the information processing device 101 transmits connection information of any of the access points included in the received list to the communication device 151 via a Wi-Fi connection between the communication device 151 operating in network setup mode and the information processing device 101. Note that this process is realized by the setting application controlling the information processing device 101 to transmit connection information of any of the access points included in the received list. Specifically, in this process, if the received list includes a connected AP, the information processing device 101 transmits the connection information of the connected AP. In this embodiment, the list includes only access points to which the communication device 151 can connect. Therefore, if the received list includes a connected AP, that means that the communication device 151 can connect to the connected AP. Furthermore, if the received list does not include a connected AP, the information processing device 101 displays the received list and accepts selection of an access point from the list from the user. Then, the information processing device 101 transmits the connection information of the selected access point. In this embodiment, the list includes only access points to which the communication device 151 can connect. Therefore, if the connected AP is not included in the received list, that means the communication device 151 cannot connect to the connected AP. Furthermore, access points that can be connected using an encryption method that the communication device 151 does not support are not included in the list because the communication device 151 cannot connect to them. Furthermore, access points that can be connected using a frequency band that the communication device 151 does not support are not included in the list because the communication device 151 cannot connect to them. Therefore, in S224, which is executed when S211-NO or S213-NO, connection information for an access point other than the connected AP is transmitted. Note that, in S212-NO, the connected AP and the communication device 151 may be connectable, so it is possible that connection information for the connected AP or connection information for an access point other than the connected AP is transmitted. Note that the present invention is not limited to this configuration, and the list may be displayed and the user may select an access point each time.Before transmitting the connection information, the information processing device 101 receives from the user a password for connecting to the access point on a screen displayed by the setting application, and then transmits the connection information together with the received password.
[0051] In S303, the communication device 151 notifies the information processing device 101 that connection information has been received via the Wi-Fi connection between the communication device 151 operating in the network setup mode and the information processing device 101.
[0052] In S304, the communication device 151 ends the network setup mode and transitions to the infrastructure mode. Then, using the connection information acquired in S302, the communication device 151 attempts to connect to the access point corresponding to the connection information. If the connection is successful, the communication device 151 can then perform communication via the network formed by the connected access point.
[0053] In S305, the information processing device 101 uses the saved connection information through the setting app to reconnect to the access point to which the information processing device 101 was connected when the setting operation was performed. Note that this is not limited to this configuration. For example, if the information processing device 101 has transmitted to the communication device 151 connection information of an access point other than the access point to which the information processing device 101 was connected via Wi-Fi when the setting operation was performed, the information processing device 101 may connect to the other access point.
[0054] In S306, the information processing device 101 searches for the communication device 151 on the network to which the information processing device 101 belongs, using the setting application. When the information processing device 101 finds the communication device 151, the information processing device 101 requests capability information from the communication device 151, and the communication device 151 transmits the capability information to the information processing device 101. As a result, information about the communication device 151 is registered in the setting application, and communication with the communication device 151 can be performed using the setting application thereafter. Specifically, for example, the setting application can send a print job to the communication device 151. At this time, if the information processing device 101 belongs to a network formed by an access point to which the communication device 151 is connected by network setup, communication with the communication device 151 can be performed via the access point. If communication between the information processing device 101 and the communication device 151 cannot be performed, for example, if the access point to which the communication device 151 is connected is not the access point to which the information processing device 101 is connected, the request for and acquisition of capability information is omitted. The communication in S306 is executed using, for example, a communication protocol (specifically, for example, CHMP) different from both the DPP and the setup communication protocol. After that, the information processing apparatus 101 ends the processing in this sequence diagram.
[0055] Note that the content of the processing in the sequence diagram above is not limited to the above. For example, it is possible not to transmit connection information for the access point and not to attempt to establish a connection between the communication device 151 and the access point. Instead, it is possible to receive connection information for an access point that is enabled in the communication device 151 in AP mode from the communication device 151 and attempt to establish a connection between the communication device 151 operating in AP mode and the information processing device 101. In this case, the communication device 151 transmits connection information for the access point that is enabled in the communication device 151 in AP mode, then ends the network setup mode and transitions to AP mode. Note that this processing may be executed, for example, when the received list does not include the access point to which the information processing device 101 was connected via Wi-Fi when the setting operation was performed.
[0056] Fig. 4 is a flowchart showing the flow of processing executed by the information processing device 101 in the network setup processing of this embodiment. The flowchart shown in Fig. 4 is realized, for example, by the CPU 103 reading out a setting application stored in the ROM 104, the external storage device 106, etc. into the RAM 105 and executing it. The flowchart shown in Fig. 4 is started in response to a predetermined operation for network setup (hereinafter referred to as a setting operation) being performed on a screen displayed by the setting application.
[0057] First, in S400, the CPU 103 acquires information about the access point (hereinafter, connected AP) to which the information processing device 101 was wirelessly connected via Wi-Fi when at least the setting operation was performed. In this embodiment, since the information processing device 101 does not switch the access point to which it is connected after the setting operation is performed, the access point is also the access point to which the information processing device 101 is currently connected in S400. The information includes information (such as the SSID and information indicating the encryption method) for connecting to the access point to which the information processing device 101 is wirelessly connected via Wi-Fi. The acquired information is saved in a predetermined storage area of the memory of the information processing device 101. If the information processing device 101 is not connected to any access point via Wi-Fi when the setting operation is performed, this process is omitted.
[0058] Next, in S401, the CPU 103 instructs the OS of the information processing device 101 to search for access points around the information processing device 101, and obtains the search results using the setting application.
[0059] Next, in S402, CPU 103 determines whether or not the search results acquired in S401 include an access point that is enabled by communication device 151 operating in network setup mode. As described above, in this embodiment, the SSID of an access point that is enabled by communication device 151 operating in network setup mode includes a predetermined character string that is recognized in advance by the setting application. Therefore, in this determination, specifically, CPU 103 determines whether or not the search results acquired in S401 include an access point that has an SSID that includes the predetermined character string. If the determination is YES, CPU 103 proceeds to S403, and if the determination is NO, proceeds to S419.
[0060] In S403, the CPU 103 attempts to establish a Wi-Fi connection between the information processing device 101 and an access point included in the search result and enabled by the communication device 151 operating in the network setup mode. Note that this Wi-Fi connection corresponds to the Wi-Fi connection between the communication device 151 operating in the network setup mode and the information processing device 101.
[0061] Next, in S404, the CPU 103 determines whether or not the establishment of the Wi-Fi connection in S403 has been successful. If the determination is YES, the CPU 103 proceeds to S405, and if the determination is NO, the CPU 103 proceeds to S419.
[0062] In S405, the CPU 103 acquires capability information of the information processing device 101 from the OS. In this embodiment, the capability information includes information indicating whether the information processing device 101 supports WEC. Note that the content of the capability information differs depending on the model, model number, etc. of the information processing device 101.
[0063] Next, in S406, the CPU 103 determines whether the information processing device 101 was connected to an access point via Wi-Fi when the setting operation was performed and whether the information processing device 101 supports WEC. Here, for example, if the information processing device 101 was not connected to an access point via Wi-Fi when the setting operation was performed, the determination is NO. Also, for example, if the information processing device 101 was connected to an access point via Wi-Fi when the setting operation was performed but the information processing device 101 does not support WEC, the determination is NO. Note that whether the information processing device 101 was connected to an access point via Wi-Fi when the setting operation was performed is determined based on whether information about the connected AP is stored in the predetermined storage area. Also, whether the information processing device 101 supports WEC is determined based on the content of the capability information acquired in S405. If the determination is YES, the CPU 103 proceeds to S407, and if the determination is NO, the CPU 103 proceeds to S424.
[0064] In S407, the CPU 103 attempts to acquire various information from the communication device 151 via a Wi-Fi connection between the information processing device 101 and an access point enabled by the communication device 151 operating in network setup mode. As described above, a setup communication protocol is used for communication via a Wi-Fi connection between the information processing device 101 and an access point enabled by the communication device 151 operating in network setup mode. The acquired information includes, for example, the WEC-related information described above and information indicating whether the communication device 151 supports WEC. If the communication device 151 does not support WEC, information indicating that the communication device 151 does not support WEC is acquired, and the WEC-related information is not acquired. If the communication device 151 does not support WEC, both the WEC-related information and the information indicating whether the communication device 151 supports WEC may not be acquired. Generally, the WEC-related information can be acquired by the communication device 151 displaying a QR code corresponding to the WEC-related information on a display unit and the information processing device 101 reading the QR code with a camera unit or the like. However, in this embodiment, in S407, the WEC-related information is acquired via a Wi-Fi connection between the information processing device 101 and an access point that is enabled by the communication device 151 operating in network setup mode. This configuration allows the information processing device 101 to acquire the WEC-related information even if the communication device 151 does not have a display unit for displaying a QR code or the information processing device 101 does not have a camera unit for reading a QR code.
[0065] Next, in S408, CPU 103 determines whether communication device 151 supports WEC based on the information acquired in S407. If information indicating that communication device 151 supports WEC is acquired, the determination is YES, and if information indicating that communication device 151 supports WEC is not acquired, the determination is NO. If the determination is YES, CPU 103 proceeds to S409, and if the determination is NO, proceeds to S424. Note that if information could not be acquired in S407, the result of this determination is NO.
[0066] Next, in S409, CPU 103 determines whether or not WEC-related information was acquired from communication device 151 in S407. If the determination is YES, CPU 103 proceeds to S410, and if the determination is NO, CPU 103 proceeds to S422. Note that a NO determination would be, for example, a case where information indicating that communication device 151 supports WEC was acquired, but the WEC-related information was not acquired due to a communication error or the like.
[0067] In S410, the CPU 103 acquires capability information of the communication device 151 via a Wi-Fi connection between the information processing device 101 and an access point enabled by the communication device 151 operating in network setup mode. In this embodiment, the capability information of the communication device 151 includes information indicating an encryption method supported by the communication device 151 and information indicating a frequency band supported by the communication device 151. Examples of encryption methods supported by the communication device 151 include Wi-Fi Protected Access (WPA), WPA2, and WPA3. The information indicating the frequency band supported by the communication device 151 may be information indicating a communication channel corresponding to the frequency band supported by the communication device 151. Note that this process may be omitted in a configuration in which determination of the encryption method supported by the communication device 151 and determination of the frequency band supported by the communication device 151, which will be described later, are not performed. Note that the capability information may be included in advance in the setting app. That is, the CPU 103 may identify capability information corresponding to the communication device 151 from among multiple pieces of capability information prepared for each type and model number of each communication device that are pre-included in the setting application, and obtain the identified capability information from the setting application.
[0068] Next, in S411, the CPU 103 determines, based on the capability information acquired in S410, whether the encryption method used for connecting to the connected AP is an encryption method supported by the communication device 151. In this embodiment, the encryption methods supported by the communication device 151 are WPA, WPA2, and WPA3, and the encryption method not supported by the communication device 151 is WEP (Wired Equivalent Privacy). If the determination is YES, the CPU 103 proceeds to S412, and if the determination is NO, the CPU 103 proceeds to S424. This determination may be made at another timing. Specifically, for example, this determination may be made after S404-YES, and if the determination is YES, the CPU 103 proceeds to S405, and if the determination is NO, the CPU 103 proceeds to S424.
[0069] Next, in S412, CPU 103 determines whether the encryption method used for connection with the connected AP is compatible with WEC (compatible with DPP). Examples of encryption methods compatible with WEC include WPA2 and WPA3, and examples of encryption methods incompatible with WEC include WPA and WEP. CPU 103 may determine which encryption method is compatible with WEC from information previously stored in the setting application, or from information acquired from communication device 151. If the determination is YES, CPU 103 proceeds to S413, and if the determination is NO, proceeds to S424.
[0070] Next, in S413, the CPU 103 determines, based on the capability information acquired in S410, whether the frequency band used for connection with the connected AP is a frequency band supported by the communication device 151. In this embodiment, the communication device 151 is assumed to be of a type that supports both the 2.4 GHz frequency band and the 5 GHz frequency band, and of a type that supports the 2.4 GHz frequency band but not the 5 GHz frequency band. The communication device 151 cannot connect to an access point using an incompatible frequency band. Therefore, for example, if the frequency band used for connection with the connected AP is the 5 GHz frequency band and the communication device 151 does not support the 5 GHz frequency band, the result of this determination is NO. If the determination is YES, the CPU 103 proceeds to S414; if the determination is NO, the CPU 103 proceeds to S424.
[0071] In S414, the CPU 103 disconnects the Wi-Fi connection between the information processing device 101 and the access point that is enabled by the communication device 151 operating in the network setup mode.
[0072] Next, in S415, the CPU 103 re-establishes a connection between the information processing device 101 and the access point to which the information processing device 101 was connected via Wi-Fi when the setting operation was performed. Note that in WEC, information about the access point to which the information processing device 101 is connected is transmitted when WEC is executed. Therefore, this process is executed in preparation for the execution of WEC in S416.
[0073] Next, in S416, the CPU 103 executes processing to execute the WEC using the acquired WEC-related information. Note that in this embodiment, the setting application does not directly execute the WEC, but executes processing to launch a WEC application as processing to execute the WEC. The WEC application then executes an API for the WEC, which requests the OS to execute the WEC, causing the OS to execute the WEC. Note that the setting application may execute an API for the WEC, which requests the OS to execute the WEC, and the processing to execute the WEC may be the execution request. Details of the processing executed by the information processing device 101 in this processing are as described in FIG. 2.
[0074] In S417, CPU 103 determines whether or not the executed WEC has successfully established a connection between the access point and communication device 151. This determination is made based on whether or not the execution of WEC has been canceled and on information indicating whether or not the connection with the access point has been established, which is acquired from communication device 151. If the determination is YES, CPU 103 ends the process, and if the determination is NO, the process proceeds to S418.
[0075] In S418, the CPU 103 determines whether the reason why the connection between the access point and the communication device 151 was not successfully established by the executed WEC is due to a specific cause. In this embodiment, it is assumed that information regarding the reason why the connection between the access point and the communication device 151 was not successfully established by the executed WEC is acquired from the communication device 151, and this determination is made based on this information. In this embodiment, the specific cause is, for example, an error in communication in the WEC (Cause 1), or an encryption method used in the connection between the information processing device 101 and the access point that is not supported by the communication device 151 (Cause 2). Another example is an encryption method used in the connection between the information processing device 101 and the access point that is not supported by the WEC (Cause 3). It is noted that a connection failure due to Cause 2 or Cause 3 may occur when the WEC is executed after S421-YES. This is because, unlike when WEC is executed after S415, when WEC is executed after S421-YES, capability information of communication device 151 has not been acquired and a determination such as S411 or S412 has not been executed. If the determination is YES, CPU 103 proceeds to S424, and if the determination is NO, the process ends.
[0076] Note that the processes of S417 and S418 may be omitted. Specifically, for example, after S416, the process may end without executing S417 or S418. Furthermore, if S417-NO, the process may end without executing S418.
[0077] Next, S419, which is executed when S402-NO or S404-NO, will be described. In S419, CPU 103 determines whether or not information processing device 101 was connected to an access point via Wi-Fi when the setting operation was performed. This determination is made based on whether or not information about the access point is stored in the above-mentioned predetermined storage area. If the determination is YES, CPU 103 proceeds to S420, and if the determination is NO, CPU 103 ends the process.
[0078] In S420, an attempt is made to acquire WEC-related information using a method different from the method used to acquire WEC-related information in S407. Specifically, for example, an attempt is made to acquire WEC-related information by capturing and reading a QR code, as described above. FIG. 7 shows an example of a screen for capturing a QR code displayed by the setting app. A frame 701 is displayed on a screen 700 for capturing a QR code, and an image captured by a camera unit included in the information processing device 101 is also displayed on the screen 700. The user operates the information processing device 101 so that the QR code captured by the camera unit and displayed by the communication device 151 fits within the frame 701. When it is detected that the QR code fits within the frame 701, the CPU 103 analyzes the QR code and acquires WEC-related information. Note that acquisition of WEC-related information is not limited to this method; for example, WEC-related information may be acquired from the communication device 151 via NFC or BLE. Note that if the communication device 151 does not support WEC, the communication device 151 cannot display a QR code or transmit WEC-related information via NFC or BLE. In this case, CPU 103 ends the process by accepting a cancel operation from the user on the setting application. Note that QR code image capture screen 700 may be displayed by an application program other than the setting application (for example, a WEC application or another image capture application program).
[0079] Next, in S421, CPU 103 determines whether or not WEC-related information was acquired in S420. If the determination is YES, CPU 103 proceeds to S416; if the determination is NO, CPU 103 terminates the process. Note that, for example, if the QR code read in S420 is not the QR code for acquiring WEC-related information or if reading of the QR code fails, the determination is NO. If the determination is NO, CPU 103 may proceed to S424 without terminating the process. If the determination is YES in S421, CPU 103 may determine whether the encryption method used for connecting to the connected AP is compatible with WEC (compatible with DPP). If the determination is YES, CPU 103 proceeds to S416; if the determination is NO, CPU 103 may terminate the process or proceed to S424. Note that in this case, CPU 103 is assumed to know which encryption method is compatible with WEC from information previously stored in the setting application.
[0080] Next, S422, which is executed if S409-NO, will be described. In S422, the CPU 103 disconnects the Wi-Fi connection between the information processing device 101 and the access point that is enabled by the communication device 151 operating in the network setup mode.
[0081] Next, in S423, the CPU 103 re-establishes a connection between the information processing device 101 and the access point to which the information processing device 101 was connected via Wi-Fi when the setting operation was performed. After that, the CPU 103 proceeds to S420 described above.
[0082] As described above, in this embodiment, if WEC-related information cannot be acquired through a Wi-Fi connection between the communication device 151 operating in the network setup mode and the information processing device 101, an attempt is made to acquire the WEC-related information by another method. Specifically, for example, an attempt is made to acquire the WEC-related information by reading a QR code. This makes it possible to perform WEC even if WEC-related information cannot be acquired through a Wi-Fi connection between the communication device 151 operating in the network setup mode and the information processing device 101.
[0083] Next, S424, which is executed in the cases of NO in S406, NO in S408, NO in S412, and YES in S418, will be described. In S424, the CPU 103 executes network setup of the communication device 151 using a method different from WEC. In this embodiment, the method different from WEC is a method of executing network setup of the communication device 151 using a setup communication protocol that is a protocol different from the protocol for WEC (DPP). Details of the process executed by the information processing device 101 in this process are as described in FIG. 3. Thereafter, the process ends.
[0084] Note that the content of the processing in the above flowchart is not limited to the above. For example, if the CPU 103 cannot acquire WEC-related information through a Wi-Fi connection between the communication device 151 operating in network setup mode and the information processing device 101, the CPU 103 may end the processing without attempting to acquire WEC-related information by another method. Specific examples of cases in which the CPU 103 cannot acquire WEC-related information through a Wi-Fi connection between the communication device 151 operating in network setup mode and the information processing device 101 include cases where the result of S402 is NO, where the result of S404 is NO, and where the result of S409 is NO. That is, if the result of S402 is NO, where the result of S404 is NO, or where the result of S409 is NO, the processing may end without executing the subsequent processing (S419 to S423).
[0085] Furthermore, for example, in the above description, two determinations, S408 and S409, are made after S407, but this is not limiting. For example, after S407, instead of the two determinations, S408 and S409, a determination as to whether WEC-related information has been acquired may be made. If the determination result is YES, the process may proceed to S410, and if the determination result is NO, the process may proceed to S424, without executing the processes of S420 to S422.
[0086] In this embodiment, the encryption methods supported by the communication device 151 include encryption methods that support WEC. Therefore, the determination in S411 may not be performed. Specifically, for example, after S410, the determination in S412 may be performed without performing the determination in S411.
[0087] Furthermore, for example, the encryption method supported by communication device 151 may be included in the encryption methods supported by WEC, such as when communication device 151 supports only WPA3 and WPA2 and WPA3 are supported by WEC. In this case, the determination in S412 may not be executed. Specifically, for example, after S411-YES, the determination in S412 may not be executed and the process in S414 may be executed.
[0088] Fig. 5 is a flowchart showing the process in which communication device 151 starts operation in DPP mode and executes network setup using DPP. The flowchart shown in Fig. 5 is realized, for example, by CPU 154 reading a program stored in ROM 152 or the like into RAM 153 and executing it. The flowchart shown in Fig. 5 starts when a predetermined instruction to output a QR code is accepted by communication device 151. Note that this instruction may be an instruction accepted when a predetermined operation is performed by the user on communication device 151, or may be an instruction accepted when predetermined communication is performed from information processing device 101 or the like to communication device 151.
[0089] In S501, CPU 154 determines a standby channel for communication by DPP.
[0090] In S502, the CPU 154 generates a public key. Note that the waiting channel determined in S501 and the public key generated in S502 are newly determined and generated each time a predetermined operation is performed.
[0091] In S503, the CPU 154 generates WEC-related information including information indicating the waiting channel determined in S501 and the public key information generated in S502.
[0092] In S504, CPU 154 generates a QR code for acquiring WEC-related information.
[0093] In S505, CPU 154 outputs the QR code generated in S504. In this embodiment, outputting the QR code means printing the QR code. However, this is not limited to this, and outputting the QR code may also be displaying the QR code on a display unit (not shown) included in communication device 151. Furthermore, both printing and displaying the QR code may be executed.
[0094] In S506, CPU 154 determines whether the output of the QR code was successful. Note that a case in which the output of the QR code failed is, for example, a case in which the recording medium (paper) or recording material (ink or toner) used for printing provided in communication device 151 is insufficient. If CPU 154 determines NO (the output of the QR code failed), it proceeds to S507, and if it determines YES (the output of the QR code was successful), it proceeds to S508.
[0095] In S507, CPU 154 displays a first error notification screen indicating that output of the QR code has failed. Note that the first error notification screen may be, for example, a screen notifying communication device 151 to replenish recording media or recording materials used for printing. CPU 154 then proceeds to S514.
[0096] In S508, CPU 154 starts operation of communication device 151 in DPP mode. That is, CPU 154 starts waiting for a DPP setup request using the communication channel determined in S501. In this way, in this embodiment, DPP mode is started based on successful (completion) output of the QR code. Note that this is not limited to this mode, and any mode may be used as long as DPP mode is started at a timing close to the timing of QR code output. Therefore, for example, DPP mode may be started while the QR code is being output based on the start of QR code output, or DPP mode may be started before the QR code is output based on the execution of a predetermined operation. Furthermore, when communication device 151 starts operation in DPP mode, CPU 154 starts counting the elapsed time of operation in DPP mode.
[0097] In S509, the CPU 154 determines whether or not a setup request by DPP has been received from the information processing device 101. If the CPU 154 determines NO, the process proceeds to S510, and if the CPU 154 determines YES, the process proceeds to S511.
[0098] In S510, the CPU 154 determines whether the counted elapsed time of operation in DPP mode has exceeded the timeout period. If the CPU 154 determines NO, it returns to S509 and waits for a setup request by the DPP, and if the CPU 154 determines YES, it proceeds to S512.
[0099] In S511, CPU 154 executes network setup using DPP. Note that the processing executed by CPU 154 in this process is the processing explained in S201 to S204 of Fig. 2 as being executed by communication device 151 after receiving a setup request using DPP from information processing device 101. CPU 154 then proceeds to S512.
[0100] In S512, the CPU 154 determines whether the network setup using the DPP was successful. For example, if the public key included in the WEC-related information received from the information processing device 101 in S511 is not the latest public key generated in S502, the network setup using the DPP fails, and the communication device 151 does not connect to the access point. This determination may also be a determination of whether the connection with the access point corresponding to the information received from the information processing device 101 was successful. If the CPU 154 determines NO, the process proceeds to S513; if the CPU 154 determines YES, the process proceeds to S514.
[0101] In S513, the CPU 154 displays a second error notification screen indicating that the network setup using the DPP has failed. Note that the second error notification screen may be, for example, a screen informing the user to perform network setup using the network setup mode. The CPU 154 then proceeds to S514.
[0102] In S514, the CPU 154 ends the operation in the DPP mode of the communication device 151. That is, the CPU 154 stops waiting for a setup request by the DPP.
[0103] In S515, the CPU 154 invalidates (deletes) the WEC-related information generated in S503.
[0104] In this manner, in this embodiment, DPP mode is started at a timing close to the timing at which the QR code is output. This allows communication device 151 to start operation in DPP mode at a timing when the user is likely to instruct network setup using DPP. As a result, network setup using DPP is performed quickly, improving the usability of network setup using DPP.
[0105] (Other embodiments) In the above-described embodiment, the WEC transmits connection information for the connected AP, and various determinations such as S411 to S413 are performed with respect to the connected AP. However, this is not limited to this. Connection information for an AP other than the connected AP may be transmitted, or a determination may be performed with respect to an AP other than the connected AP. Specifically, an AP other than the connected AP may be, for example, an access point to which the information processing device 101 was not connected when the setting operation was performed, but to which the information processing device 101 had connected at some point before the setting operation. Alternatively, it may be an access point selected by the user from a list of access points to which the information processing device 101 had connected. This is because the WEC can transmit connection information for an access point to which the information processing device 101 had connected at some point, as long as the connection information is stored by the OS.
[0106] Although the network setup in S424 has been described as being in a form in which connection information is transmitted via a Wi-Fi connection between the information processing device 101 and the communication device 151, the present invention is not limited to this form. For example, the network setup may be performed by transmitting connection information via a connection between the information processing device 101 and the communication device 151 using a communication method other than Wi-Fi, such as BLE. In this form, the information processing device 101 can connect to the communication device 151 via BLE while maintaining the Wi-Fi connection with the currently connected AP. In other words, the information processing device 101 can transmit connection information of the currently connected access point as connection information of the currently connected AP. In this form, a communication protocol different from DPP is also used.
[0107] In the above embodiment, in S407, various pieces of information are acquired via a Wi-Fi connection between the information processing device 101 and an access point enabled by the communication device 151 operating in the network setup mode. However, this is not limiting. The information may be acquired by reading a QR code as in S420, or may be acquired via communication using another communication method such as NFC or BLE.
[0108] The above-described embodiments can also be realized by executing the following process. That is, software (programs) that realize the functions of the above-described embodiments are shared with a system or device via a network or various storage media, and a computer (CPU, MPU, etc.) of the system or device reads and executes the program. The program may be executed by a single computer, or may be executed by multiple computers in cooperation with each other. Furthermore, it is not necessary to realize all of the above-described processes using software; some or all of the processes may be realized using hardware such as an ASIC. Furthermore, the CPU is not limited to one that performs all processes using a single CPU; multiple CPUs may perform processes in cooperation with each other as appropriate.
[0109] In the above-described embodiment, network setup is performed using DPP, but this is not limiting. For example, HTTP (Hyper Text Transfer Protocol) may be used instead of DPP. Furthermore, instead of the DPP mode, the communication device 151 may operate in a mode for performing network setup using a protocol other than DPP. In other words, the network setup may be performed using a function other than WEC, as long as the function is to perform network setup based on information obtained by reading a QR code. [Explanation of symbols]
[0110] 101 Information processing equipment 103 CPU 151 Communication equipment
Claims
1. A communication device capable of communicating with an information processing device, Acceptance means for accepting a predetermined instruction; an output means for outputting a predetermined two-dimensional code based on the reception of the predetermined instruction; a determination means for determining whether the output of the predetermined two-dimensional code by the output means has been successful; a control means for causing the communication device to start operation in a predetermined mode for receiving, when the determination means determines that the output of the predetermined two-dimensional code has been successful, predetermined information for connecting to an external access point outside the information processing device and outside the communication device from the information processing device that read the predetermined two-dimensional code; a connection means for connecting the external access point and the communication device based on the predetermined information when the predetermined information is received from the information processing device that has read the predetermined two-dimensional code, The control means, when the determination means determines that the output of the specified two-dimensional code has failed, causes the display means to display an error notification screen indicating that the output of the specified two-dimensional code has failed.
2. 2. The communication device according to claim 1, wherein the predetermined mode is a mode for receiving the predetermined information from the information processing device that reads the predetermined two-dimensional code, according to a predetermined protocol.
3. 3. The communication device according to claim 2, wherein the predetermined protocol is a Device Provisioning Protocol.
4. 4. The communication device according to claim 1, wherein the two-dimensional code is a QR code.
5. 5. The communication device according to claim 4, wherein after the QR code is output, operation in the predetermined mode is started.
6. a first receiving means for receiving a print job via a connection between the external access point and the communication device; 6. The communication device according to claim 1, further comprising a printing unit that executes printing based on the received print job.
7. 6. The communication device according to claim 1, wherein the two-dimensional code is information for allowing the information processing device that reads the two-dimensional code to acquire specific information.
8. 8. The communication device according to claim 7, wherein the predetermined information is information encrypted based on the specific information.
9. the predetermined mode is a mode for receiving the predetermined information from the information processing device that reads the predetermined two-dimensional code, using a predetermined protocol; The communication device according to claim 7 or 8, characterized in that the communication device is capable of operating in a specific mode different from the predetermined mode in order to receive information for connecting to the external access point from the information processing device using a specific protocol different from the predetermined protocol.
10. The communication device according to claim 9, further comprising: a second receiving means for receiving the predetermined information via the predetermined connection when a predetermined connection is established between the communication device operating in the specific mode and the information processing device.
11. 11. The communication device according to claim 9, wherein the specific protocol is SNMP (Simple Network Management Protocol).
12. 12. The communication device according to claim 9, wherein the communication using the predetermined protocol and the communication using the specific protocol are performed according to a communication standard conforming to the IEEE 802.11 series.
13. 13. The communication device according to claim 9, wherein the timeout period for the predetermined mode is the same as the timeout period for the specific mode.
14. 14. The communication device according to claim 9, wherein the timeout period for the predetermined mode is different from the timeout period for the specific mode.
15. 15. The communication device according to claim 1, wherein the control means displays, as the error notification screen, a notification screen urging the user to replenish materials used to print the two-dimensional code.
16. A generating means for generating public key information for communication according to a Device Provisioning Protocol after receiving the predetermined instruction; a deletion unit that deletes the generated public key information after connecting the external access point and the communication device by the connection unit, 16. The communication device according to claim 1, wherein the predetermined two-dimensional code includes the generated public key information.
17. A method for controlling a communication device capable of communicating with an information processing device, comprising: a receiving step of receiving a predetermined instruction; an output step of outputting a predetermined two-dimensional code based on the reception of the predetermined instruction; a determination step of determining whether or not the output of the predetermined two-dimensional code in the output step has been successful; a control step of causing the communication device to start operation in a predetermined mode for receiving, from the information processing device that reads the predetermined two-dimensional code, predetermined information for connecting to an external access point outside the information processing device and outside the communication device, when it is determined in the determination step that the output of the predetermined two-dimensional code has been successful; a connection step of connecting the external access point and the communication device based on the predetermined information when the predetermined information is received from the information processing device that has read the predetermined two-dimensional code, A control method characterized in that, in the control step, if it is determined in the judgment step that the output of the specified two-dimensional code has failed, an error notification screen indicating that the output of the specified two-dimensional code has failed is displayed on a display means.
18. A computer of a communication device capable of communicating with the information processing device, a receiving step of receiving a predetermined instruction; an output step of outputting a predetermined two-dimensional code based on the reception of the predetermined instruction; a determination step of determining whether or not the output of the predetermined two-dimensional code in the output step has been successful; a control step of causing the communication device to start operation in a predetermined mode for receiving, from the information processing device that reads the predetermined two-dimensional code, predetermined information for connecting to an external access point outside the information processing device and outside the communication device, when it is determined in the determination step that the output of the predetermined two-dimensional code has been successful; a connection step of connecting the external access point and the communication device based on the predetermined information when the predetermined information is received from the information processing device that reads the predetermined two-dimensional code; In the control step, if it is determined in the judgment step that the output of the specified two-dimensional code has failed, the program displays an error notification screen on a display means indicating that the output of the specified two-dimensional code has failed.
Citation Information
Patent Citations
Information processing device, control method, and program
JP2016127545A
Information processing device, control method, and program
JP2018195886A
Communication device and computer program for communication device
JP2019180036A
Printer and computer program for printer
JP2019180039A