Communication device, control method therefor, and program
The communication device enhances user interaction and security in wireless network settings by confirming and executing wireless settings based on user input, ensuring a convenient and secure network setup process.
Patent Information
- Application Number
- JP2025169799
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-10-07
- Publication Date
- 2025-12-11
- Estimated Expiration
- 2041-10-15
AI Technical Summary
The convenience of connecting communication devices to access points is limited by the need for improved user interaction and security in wireless network settings.
A communication device that includes a notification mechanism to confirm wireless settings based on user input and executes settings when allowed, ensuring secure and convenient network setup.
Facilitates a highly convenient and secure network setting operation by integrating user confirmation and secure execution of wireless settings.
Smart Images

Figure 2025182111000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a communication device, a control method thereof, 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 (external device) to a communication device such as a printer, thereby connecting the communication device and 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] A communication device that communicates with an information processing device, the communication device comprising: a first output means that, when a start condition for a predetermined state in which wireless communication with the information processing device is possible is a first condition, outputs a notification to a user to confirm whether or not to allow the execution of a predetermined wireless setting, which is a setting based on information received from the information processing device and is related to the wireless connection of the communication device; and, when a start condition for the predetermined state is a second condition different from the first condition, does not output the notification; and a setting means that executes the predetermined wireless setting when an input indicating that the execution of the predetermined wireless setting is allowed is made in response to the notification. [Effects of the Invention]
[0007] According to the present invention, it is possible to perform a highly convenient network setting operation while ensuring security. [Brief explanation of the drawings]
[0008] [Figure 1] FIG. 2 is a diagram illustrating the configuration of an information processing device, a communication device, and an access point. [Figure 2] 10 is a flowchart showing a flow of processes executed by an information processing device in a network setup process. [Figure 3] 10 is an example of a screen for capturing a QR code (registered trademark) displayed by a setting application. [Figure 4] FIG. 10 is a sequence diagram illustrating processing executed by an information processing device and a communication device. [Figure 5] This is an example of the WEC start screen. [Figure 6] FIG. 10 is a sequence diagram illustrating processing executed by an information processing device and a communication device. [Figure 7] 10 is a flowchart showing the flow of a first setup process executed by a communication device in the network setup process. [Figure 8] 10 is a flowchart showing the flow of a second setup process executed by a communication device in the network setup process. [Figure 9] FIG. 10 is a flowchart showing a DPP standby mode start process. [Figure 10] FIG. 10 is a flowchart showing the execution process of the WEC. [Figure 11] FIG. 10 is a flowchart showing the execution process of the WEC. [Figure 12] FIG. 10 is a diagram illustrating an example of a connection selection screen. [Figure 13] FIG. 10 is a flowchart showing the execution process of the WEC. 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 is the process of connecting other devices to access points that form a network. In WEC, communication occurs between a device that acts as a "configurator" (hereinafter, configurator device) and a device that acts as an "enrollee" (hereinafter, enrollee device). In this embodiment, the configurator device is the initiator in the DPP, and the enrollee device is the responder in the DPP. The configurator device acquires bootstrap information from the enrollee device. The bootstrap information includes, for example, the identification information of the enrollee device (e.g., MAC address) and public key information used for secure communication with the enrollee device. In this embodiment, the bootstrap 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 perform wireless communication with the Enrollee device. Specifically, for example, the Configurator device communicates with the Enrollee device using the public key included in the Bootstrapping information. Furthermore, the Configurator device generates a common key based on the information obtained in that communication, and then transmits information encrypted using that common key to the Enrollee device. Specifically, the information transmitted here is, for example, 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 operation 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 (operation) 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] In this embodiment, the information processing apparatus 101 executes the WEC using the OS of the information processing apparatus 101 based on an instruction to execute a network setup process by the setting application.
[0024] 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.
[0025] The communication unit 156 has an access point as an internal access point of the communication device 151 for connecting to devices such as the information processing device 101. 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) (Wi-Fi communication) is a communication standard conforming to the IEEE 802.11 series. If the communication device 151 supports WEC, the above-mentioned WEC is executed through communication by the communication unit 156. Furthermore, 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 the communication unit 156 to function as an access point.
[0026] The communication device 151 of this embodiment is operable in infrastructure mode and P2P (Peer to Peer) mode as modes for performing communication using the communication unit 156.
[0027] 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.
[0028] 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.
[0029] In this embodiment, the communication device 151 can operate in a network setup mode, which is a mode for performing network setup of the communication device 151, by receiving a predetermined operation from the 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 enabled in the AP mode. 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 a predetermined communication protocol (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 after a predetermined time has elapsed. This is because, as mentioned above, the setup access point 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. The setup access point may also be an access point that requires a password. In that case, the password used to connect to the setup access point is a fixed password (that the user cannot change) that is known in advance by the setting application.
[0030] 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 the DPP standby mode. When the communication device 151 operates in the DPP standby mode and receives a DPP network setup request from the information processing device 101, the communication device 151 executes the DPP network setup as described below. Therefore, the DPP standby mode is, in other words, a mode in which the communication device 151 waits for a DPP network setup request. The DPP standby mode will be described later with reference to FIG. 9.
[0031] 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.
[0032] 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.
[0033] 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.
[0034] The CPU 154 is a system control unit that controls the entire communication device 151 .
[0035] The print engine 155 forms an image on a recording medium such as paper by applying a recording agent such as ink to the recording medium based on information stored in the RAM 153 and a print job received from the information processing device 101 or the like, and outputs the print result. Generally, the amount of data in a print job transmitted from the information processing device 101 or the like is large, so 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 the communication unit 156, which is capable of communication at higher speeds than the short-range wireless communication unit 157.
[0036] 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.
[0037] The input interface 158 is an interface for receiving data inputs and operation instructions from a user by operating an operation unit 159 such as physical buttons. The operation unit may be a soft keyboard, soft buttons, or the like displayed on the display unit 161. In other words, the input interface 158 may receive inputs from the user via the display unit 161.
[0038] The output interface 160 is an interface that controls the display unit 161 to display data and notify the status of the communication device 151 .
[0039] The display unit 161 is configured with an LED (light emitting diode) or an LCD (liquid crystal display), and displays data and notifies the status of the communication device 151.
[0040] Fig. 2 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. 2 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. 2 is started in response to a predetermined operation for executing network setup (hereinafter referred to as a setting operation) being performed on a screen displayed by the setting application.
[0041] First, in S200, the CPU 103 acquires information about the access point to which the information processing device 101 was wirelessly connected via Wi-Fi when at least the setting operation was performed (hereinafter, referred to as the connected AP). Note that in this embodiment, the information processing device 101 does not switch the access point to which it is connected after the setting operation is performed, and therefore the access point is also the access point to which the information processing device 101 is currently connected in S200. 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. Note that the acquired information is saved in a predetermined storage area of the memory of the information processing device 101. Note that 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.
[0042] Next, in S201, 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.
[0043] Next, in S202, CPU 103 determines whether or not the search results acquired in S201 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 S201 include an access point that has an SSID that includes the predetermined character string. If the determination is YES, CPU 103 proceeds to S203, and if the determination is NO, proceeds to S219.
[0044] In S203, 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.
[0045] Next, in S204, the CPU 103 determines whether or not the establishment of the Wi-Fi connection in S203 has been successful. If the determination is YES, the CPU 103 proceeds to S205, and if the determination is NO, the CPU 103 proceeds to S219.
[0046] In S205, 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.
[0047] Next, in S206, 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 S205. If the determination is YES, the CPU 103 proceeds to S207, and if the determination is NO, the CPU 103 proceeds to S224.
[0048] In S207, 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 the 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 the 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. The information indicating whether the communication device 151 supports WEC is information indicating whether the communication device 151 supports DPP. 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, 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, 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 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.
[0049] Next, in S208, CPU 103 determines whether communication device 151 supports WEC based on the information acquired in S207. Communication device 151 supporting WEC means that it supports DPP as described above. 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 S209, and if the determination is NO, proceeds to S224. Note that if information could not be acquired in S207, the result of this determination is NO.
[0050] Next, in S209, CPU 103 determines whether or not WEC-related information was acquired from communication device 151 in S207. If the determination is YES, CPU 103 proceeds to S210, and if the determination is NO, CPU 103 proceeds to S222. 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.
[0051] In S210, 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 a network setup mode. In this embodiment, the capability information of the communication device 151 includes at least one of 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 WPA (Wi-Fi Protected Access), WPA2, and WPA3. The information indicating the frequency band supported by the communication device 151 may be information (channel 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 or the frequency band supported by the communication device 151, which will be described later, is 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.
[0052] Next, in S211, the CPU 103 determines, based on the capability information acquired in S210, 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 S212, and if the determination is NO, the CPU 103 proceeds to S224. This determination may be made at another timing. Specifically, for example, this determination may be made after S204-YES, and if the determination is YES, the CPU 103 proceeds to S205, and if the determination is NO, the CPU 103 proceeds to S224.
[0053] Next, in S212, 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 S213, and if the determination is NO, proceeds to S224.
[0054] Next, in S213, the CPU 103 determines, based on the capability information acquired in S210, 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 S214; if the determination is NO, the CPU 103 proceeds to S224.
[0055] In S214, the CPU 103 instructs the information processing device 101 to disconnect 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.
[0056] Next, in S215, 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 S216.
[0057] Next, in S216, 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 an OS-standard WEC application program (hereinafter, 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 itself. Details of this processing will be described later.
[0058] In S217, 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 information indicating whether or not the execution of WEC has been canceled and information indicating whether or not the connection with the access point has been successful, which is acquired from communication device 151. If the determination is YES, CPU 103 ends the process, and if the determination is NO, CPU 103 proceeds to S218.
[0059] In S218, 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 S221-YES. This is because when WEC is executed after S221-YES, unlike when WEC is executed after S215, capability information of the communication device 151 is not acquired and a determination such as S211 or S212 is not executed. If the determination is YES, the CPU 103 proceeds to S224, and if the determination is NO, the process ends.
[0060] Note that the processes of S217 and S218 may be omitted. Specifically, for example, after S216, the process may end without executing S217 or S218. Furthermore, if S217-NO, the process may end without executing S218.
[0061] Next, S219, which is executed when S202-NO or S204-NO, will be described. In S219, 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 S220, and if the determination is NO, CPU 103 ends the process.
[0062] In S220, an attempt is made to acquire WEC-related information using a method different from the method used to acquire WEC-related information in S207. Specifically, for example, an attempt is made to acquire WEC-related information by reading a QR code, as described above. FIG. 3 shows an example of a screen for capturing a QR code displayed by the setting app. A frame 301 is displayed on a screen 300 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 300. 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 301. When it is detected that the QR code fits within the frame 301, 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 300 may be displayed by an application program other than the setting application (for example, a WEC application or another image capture application program).
[0063] Next, in S221, CPU 103 determines whether or not WEC-related information was acquired in S220. If the determination is YES, CPU 103 proceeds to S216; if the determination is NO, CPU 103 terminates the process. Note that, for example, if the QR code read in S220 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 S224 without terminating the process. If the determination is YES in S221, 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 S216; if the determination is NO, CPU 103 may terminate the process or proceed to S224. 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.
[0064] Next, S222, which is executed if S209-NO, will be described. In S222, 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.
[0065] Next, in S223, 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 S220 described above.
[0066] 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.
[0067] Next, S224, which is executed in the case of NO in S206, NO in S208, NO in S211 to S213, or YES in S218, will be described. In S224, CPU 103 executes network setup of 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 communication device 151 using a setup communication protocol that is a protocol different from the protocol for WEC (DPP). Details of this process will be described later with reference to FIG. 6. CPU 103 then ends the process.
[0068] 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 S202 is NO, where the result of S204 is NO, and where the result of S209 is NO. That is, if the result of S202 is NO, where the result of S204 is NO, or where the result of S209 is NO, the processing may end without executing the subsequent processing (S220 to S221).
[0069] Furthermore, for example, in the above description, two determinations, S208 and S209, are made after S207, but this is not limiting. For example, after S207, instead of the two determinations, S208 and S209, 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 S210, and if the determination result is NO, the process may proceed to S224, without executing the processes of S220 to S223.
[0070] In this embodiment, the encryption methods supported by the communication device 151 include encryption methods that support WEC. Therefore, the determination in S211 may not be performed. Specifically, for example, after S210, the determination in S212 may be performed without performing the determination in S211.
[0071] 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 only supports WPA3 and WPA2 and WPA3 are supported by WEC. In this case, the determination in S212 may not be executed. Specifically, for example, after S211-YES, the determination in S212 may not be executed and the process in S213 may be executed.
[0072] The process executed by the information processing device 101 and the communication device 151 in S216 will be described with reference to Fig. 4. The sequence shown in Fig. 4 is realized, for example, by the CPU of each device reading out a program stored in the ROM of each device, an external storage device, or the like, into the RAM of each device and executing the program.
[0073] First, in S400, the information processing device 101 starts WEC using DPP through a function of the OS. Specifically, the information processing device 101 starts the WEC app by issuing a command from the settings app to the OS to start the WEC app. As a result, the WEC app runs in the foreground and the settings app runs in the background. Note that, for example, executing this command corresponds to an instruction to run WEC. As a result, the information processing device 101 displays a WEC start screen using the WEC app. Note that the WEC app is a program pre-installed in the information processing device 101 and provided by the OS vendor of the information processing device 101. Furthermore, when the WEC app is started, WEC-related information acquired by the settings app is provided to the WEC app. FIG. 5 shows an example of a WEC start screen displayed by the WEC app. Areas 501, 502, and 503 are displayed on a WEC start screen 500. Area 501 is an area for changing the access point set as the target for WEC configuration. Before area 501 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 501 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 502 is an area for canceling the execution of WEC, and area 503 is an area for instructing the execution of WEC. When area 502 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 503 is pressed, the information processing device 101 proceeds to S401.
[0074] In S401, 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 the WEC-related information acquired by the information processing device 101 in the process shown in FIG. 2. 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 standby mode, receives the Authentication Request transmitted from the information processing device 101 because it is operating in DPP standby mode, which is a mode for waiting for an Authentication Request. 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.
[0075] Next, in S402, 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 target for configuration by WEC to the communication device 151 using WEC. The connection information includes at least one of the SSID, password, encryption method, and the like of the access point set as a target for configuration 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.
[0076] In S403, 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. Note that causes of failure in connection with the access point corresponding to the connection information acquired by WEC include a communication error in WEC, the access point not being found, or inappropriate WEC-related information acquired from the communication device 151. Another example of the cause is that the encryption method used to connect to the access point set as the setting target by WEC is an encryption method that the communication device 151 does not support. Another example of the cause is that the encryption method used to connect to the access point set as the setting target by WEC is an encryption method that the WEC does not support. Note that the information processing device 101 may display information indicating whether or not the connection between the communication device 151 and the access point corresponding to the connection information acquired by WEC was successful on the display unit 108. Furthermore, if the connection between the communication device 151 and the access point corresponding to the connection information acquired by WEC fails, information indicating the cause of the failure may be displayed on the display unit 108.In the present invention, before attempting to connect to an access point using the connection information acquired by the WEC in step S403, the output of a notification regarding connection to the access point is switched based on the start conditions for operation in network setup mode, as will be described later with reference to FIG.
[0077] In step S404, the information processing apparatus 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 apparatus 101 then searches for the communication device 151 on the network to which the information processing apparatus 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 apparatus 101 finds the communication device 151, the information processing apparatus 101 requests capability information from the communication device 151, and the communication device 151 transmits the capability information to the information processing apparatus 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 apparatus 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, 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. Note that the communication in S404 is executed using, for example, a communication protocol different from the DPP and the setup communication protocol. Thereafter, the information processing device 101 ends the processing in this sequence diagram and proceeds to S217.
[0078] 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.
[0079] Next, the processing executed by the information processing device 101 and the communication device 151 in S224 will be described with reference to Fig. 6. The sequence shown in Fig. 6 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. 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.
[0080] In S600, 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.
[0081] Next, in S601, 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.
[0082] Next, in step S602, 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 on the display unit 108 and accepts selection of an access point from the user from the list. 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 is returned, connection information for an access point other than the connected AP is transmitted to the communication device 151. Note that, when S212-NO is returned, 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.
[0083] In S603, 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.
[0084] In S604, the communication device 151 ends the network setup mode and transitions to the infrastructure mode. Then, using the connection information acquired in S602, 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 will then be able to communicate via the network formed by the connected access point.
[0085] In S605, 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 a limitation. 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.
[0086] In S606, 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 S606 is executed using, for example, a communication protocol (specifically, for example, CHMP) different from the DPP and the setup communication protocol. After that, the information processing apparatus 101 ends the processing in this sequence diagram.
[0087] In S602, the information processing device 101 may transmit a connection request to the communication device 151 to establish a direct connection with 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. In this case, instead of the processes of S603 to S605 described above, the communication device 151 transmits to the information processing device 101 connection information of an access point that is enabled in the communication device 151 in P2P mode, ends the network setup mode, and transitions to P2P mode. The information processing device 101 then establishes a P2P connection with the communication device 151 using the received connection information. Thereafter, the process of S606 is executed. In this case, the network to which the information processing device 101 belongs is a network formed by the access point that is enabled in the communication device 151.
[0088] Note that the content of the processing in the sequence diagram above is not limited to the above. For example, if 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, the information processing device 101 does not need to transmit connection information for the access point. That is, the information processing device 101 does not need to attempt to establish a connection between the communication device 151 and the access point. Instead, the information processing device 101 may receive, from the communication device 151, connection information for an access point that is enabled in the communication device 151 in P2P mode, and attempt to establish a connection between the communication device 151 operating in P2P mode and the information processing device 101. In this case, the communication device 151 transmits the connection information for the access point that is enabled in the communication device 151 in P2P mode, and then ends the network setup mode and transitions to P2P mode. The P2P mode to which the device transitions at this time may be AP mode or WFD mode.
[0089] 7 and 8 are flowcharts showing the flow of processing executed by communication device 151 in the network setup processing of this embodiment. In this embodiment, the conditions for communication device 151 to start operation in the setup mode and the DPP standby mode include a first condition, a second condition, and a third condition. The first condition is that a power-on operation is performed on communication device 151 in a state where initial settings have not been completed, thereby powering on communication device 151. The second condition is that a predetermined operation for network setup is performed on communication device 151 in a power-on state. The third condition is that a user performs an operation on display unit 161 of communication device 151 to initialize multiple settings of communication device 151 all at once, thereby changing the connection mode of communication device 151 from a state in which the connection mode is set to a state in which the connection mode is not set. The multiple settings of communication device 151 include communication settings, print settings, power-saving settings, etc. The power ON operation here refers to an operation performed on a power button provided on the housing of communication device 151 in order to change a state in which power is supplied to only a part of communication device 151 (for example, CPU 154) to a state in which power is supplied to the entire communication device 151. At least one of the first condition and the third condition may exist. In other words, both the first condition and the third condition may coexist, or either the first condition or the third condition may exist. The content of the first condition is not limited to the above-mentioned form, and may be, for example, "a power ON operation is performed on communication device 151 in a network initial state in which each value in the network settings is the initial value, and power is turned on to communication device 151." The network initial state is a state in which a connection mode is not set.
[0090] The processing in the setup mode initiated based on the first condition and the processing in the setup mode initiated based on the third condition will be explained using FIG. 7, and the processing in the setup mode initiated based on the second condition will be explained using FIG. 8.
[0091] First, the process in the setup mode that is initiated based on the first and third conditions will be described. The communication device 151 performs initial configuration based on the first power-on operation by the user in the factory default state (shipped state) (i.e., the first condition). The factory default state corresponds to a state in which the communication device 151 has not yet completed initial configuration. For example, the communication device 151 is shipped from the factory without ink tanks, a print head, or the like installed. Therefore, the communication device 151 performs initial configuration, such as prompting the user to install the included ink tanks, print head, and the like into the communication device 151, adjusting registration, cleaning the print head, and other processes to make the communication device 151 usable. Whether the communication device 151 is in the factory default state is controlled using a flag (initial startup flag) stored in the ROM 152, memory, or the like. The communication device 151 changes the state of the initial startup flag when the initial configuration is completed, and is configured so that the initial configuration is not executed even if the communication device 151 is powered on after the initial configuration is completed. In order to use communication device 151, it is preferable to execute network setup of communication device 151, and therefore, in this embodiment, network setup processing is executed at the time of initialization. Furthermore, when a user executes an operation to collectively initialize multiple settings, including communication settings and print settings, of communication device 151 on display unit 161 of communication device 151, communication device 151 changes the connection mode of communication device 151 to an initial value. Here, the initial value is assumed to be a value indicating that the connection mode is not set. In other words, the state in which the connection mode of communication device 151 is set is changed to a state in which the connection mode is not set (network initial state) (i.e., the third condition) is satisfied. In order to use communication device 151, it is preferable to execute network setup of communication device 151, and therefore, in this embodiment, network setup processing is executed at the time of initialization.
[0092] Fig. 7 is a flowchart showing processing executed by communication device 151 when a power-on operation is performed on communication device 151 or when an operation to initialize all settings of communication device 151 is performed. The flowchart shown in Fig. 7 is realized, for example, by CPU 154 reading a setting application stored in ROM 152, a memory, or the like into RAM 153 and executing it. The flowchart shown in Fig. 7 is started when the above-mentioned power-on operation is performed or when an operation to initialize all settings of communication device 151 is performed.
[0093] When this flowchart is started by executing a power-on operation for the communication device 151, in S700, the CPU 154 references an initial startup flag stored in the ROM 152, memory, or the like, and determines whether the communication device 151 is in an initial startup state. For example, the initial startup flag is set to a specific value indicating that the communication device 151 is in an initial startup state when the communication device 151 is shipped from the factory. Note that if the first condition is "a power-on operation is executed for the communication device 151 in a network initial state, and the communication device 151 is powered on," the CPU 154 may determine in S700 whether the communication device 151 is in a network initial state. If the CPU 154 determines NO in S700, the process proceeds to S701. If the CPU 154 determines YES in S700, the process proceeds to S703. A YES determination in S700 corresponds to a case where the first condition is satisfied. Note that a NO determination in S700 refers to a case where the communication device 151 is powered on after initial configuration has already been completed. Furthermore, if this flowchart is started based on the execution of an operation to initialize the settings of the communication device 151 all at once, the processing of S700 in this flowchart is not executed, and the processing starts from S703.
[0094] In S701, the CPU 154 executes processing according to the set connection mode stored in the ROM 152, memory, etc. For example, if the communication device 151 is wirelessly connected to an access point via Wi-Fi when the user turns off the power and the infrastructure connection mode is set, the CPU 154 connects to the access point.
[0095] In S702, the CPU 154 displays the standby screen (home screen) and ends the processing of this flowchart. Note that the display of the home screen may be omitted in some cases.
[0096] In S703, which is executed if S700-YES, the CPU 154 causes the communication device 151 to start operation in the network setup mode. Specifically, the CPU 154 enables the setup access point. Furthermore, in order to end the network setup mode after a predetermined time has elapsed, the CPU 154 starts a timeout timer for the network setup mode and counts the elapsed time since operation in the network setup mode began.
[0097] In S704, CPU 154 causes communication device 151 to start operation in DPP standby mode. DPP standby mode will be described later with reference to Fig. 9. In addition, a timeout timer for DPP standby mode is started, and the time that has elapsed since operation in DPP standby mode began is counted.
[0098] In S705, the CPU 154 receives a connection request to the setup access point from the information processing device 101.
[0099] In S706, the CPU 154 attempts to establish a Wi-Fi connection with the information processing device 101. Note that this Wi-Fi connection corresponds to a Wi-Fi connection between the information processing device 101 and the communication device 151 operating in the network setup mode.
[0100] In S707, the CPU 154 receives a request for various information related to WEC from the information processing device 101 via the Wi-Fi connection established in S706. As described above, a setup communication protocol is used in communication via the 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.
[0101] In S708, the CPU 154 transmits various pieces of information related to the WEC of the communication device 151 to the information processing device 101. For example, the various pieces of information related to the WEC of the communication device 151 include the above-mentioned WEC-related information and information indicating whether the communication device 151 supports WEC. Note that the information indicating whether the communication device 151 supports WEC is information indicating whether the communication device 151 supports DPP. Note that if the communication device 151 does not support WEC, information indicating that the communication device 151 does not support WEC is transmitted, and the WEC-related information is not transmitted. Furthermore, if the communication device 151 does not support WEC, it is not necessary to transmit both the WEC-related information and the information indicating whether the communication device 151 supports WEC.
[0102] In S709, CPU 154 determines whether a request to execute network setup using a setup protocol has been received. Specifically, CPU 154 determines whether a request for a list of access points has been received from the information processing device. If the determination in S709 is YES, CPU 154 proceeds to S710, and if the determination in S709 is NO, CPU 154 proceeds to S712.
[0103] In S710, CPU 154 executes network setup using a setup protocol. Specifically, among the processes described in Fig. 6, CPU 154 executes the processes described as processes executed by communication device 151. Note that in S604 in Fig. 6, CPU 154 ends operation in the network setup mode and disables the setup access point.
[0104] In S711, CPU 154 ends DPP standby mode and ends this flowchart. Note that either the end of operation in network setup mode or the end of DPP standby mode may occur first, as long as it is after network setup is performed. In other words, CPU 154 may end operation in network setup mode after ending operation in DPP standby mode. Furthermore, the end of operation in network setup mode and the end of DPP standby mode may occur simultaneously. Furthermore, operation in DPP standby mode or operation in network setup mode may be ended based on communication device 151 connecting to an access point.
[0105] In S712, which is executed if the result of S709 is NO, the CPU 154 determines whether a request to execute network setup (WEC) using DPP has been received. Specifically, the CPU 154 determines whether an Authentication Request has been received from the information processing device 101 as a DPP network setup request in the above-mentioned DPP Authentication. If the determination in S712 is YES, the CPU 154 proceeds to S713; if the determination in S712 is NO, the CPU 154 proceeds to S717. The CPU 154 may start a timer for waiting for a DPP network setup request to time out. In this case, the CPU 154 may change the channel used in DPP communication if the count value of the timer for waiting for a WEC execution request exceeds a threshold. Furthermore, if the CPU 154 has not received a DPP network setup request even after changing the channel used in DPP communication a predetermined number of times, the CPU 154 may proceed to S718 and end the DPP standby mode. The CPU 154 may then wait for a request to execute the network setup mode.
[0106] In S713, CPU 154 executes network setup using DPP. Specifically, among the processes described in Fig. 4, the process described as the process executed by communication device 151 is executed, and this flowchart ends. Network setup using DPP (WEC) will be described later with reference to Fig. 10.
[0107] In S714, the CPU 154 determines whether the connection between the communication device 151 and the access point to which the information processing device 101 is connected has been successfully established by the executed WEC. This determination is made as successful if the connection between the communication device 151 and the information processing device 101 is successful, i.e., if the communication device 151 connects to the access point to which the information processing device 101 is connected. Furthermore, if any of the determinations in FIG. 10 in S713 is NO and processing to terminate the DPP standby mode is executed in S1003 without connecting to the access point to which the information processing device 101 is connected, a determination of failure is also made if the connected access point is an access point other than the access point to which the information processing device 101 is connected. Note that as long as the communication device 151 is connected to an access point, a determination of success may be made even if the access point is not the access point to which the information processing device 101 is connected. If the CPU 154 determines YES in S714, it terminates the processing of this flowchart. If the CPU 154 determines NO in S714, it proceeds to S715. Note that if the determinations in S713 of FIG. 10 are YES, the CPU 154 determines that the WEC was successful and may connect to the access point before exiting the DPP standby mode or network setup mode; the order of processing does not matter. The CPU 154 then re-establishes the connection between the communication device 151 and the information processing device 101 and executes network setup using a network setup protocol in S720. In other words, if the WEC fails to establish a connection between the access point and the communication device 151, network setup using a setup protocol is executed. This ensures that the connection between the access point and the communication device 151 is established more reliably. Note that even if the determinations in S713 of FIG. 10 are not NO, if the communication device 151 fails to connect to the access point in S1013, the determination in S714 is NO.Therefore, in this case, since the network setup mode was terminated in S1010, the network setup mode is started again to execute the network setup using the setup protocol. Note that if the establishment of the connection between the access point in the WEC and the communication device 151 fails, the network setup mode is terminated and the network setup does not have to be executed.
[0108] S715 and S716 are the same processes as S705 and S706, respectively, and therefore their explanation will be omitted.
[0109] In S717, CPU 154 determines whether the value counted by the DPP standby mode timeout timer exceeds the threshold and the DPP standby mode has timed out. If the determination in S717 is YES, CPU 154 proceeds to S718, and if the determination in S717 is NO, CPU 154 returns to S709.
[0110] In S718, the CPU 154 ends the DPP standby mode, and proceeds to S719.
[0111] Steps S719 and S720 are similar to steps S709 and S710, and therefore description thereof will be omitted. If the CPU 154 determines YES in step S719, the process proceeds to step S720, and if the CPU 154 determines NO in step S719, the process proceeds to step S721.
[0112] In S721, the CPU 154 determines whether the value counted by the network setup mode timeout timer exceeds the threshold and the network setup mode has timed out. If the determination in S721 is YES, the CPU 154 proceeds to S722, and if the determination in S721 is NO, the CPU 154 returns to S719.
[0113] In S722, the CPU 154 ends operation in the network setup mode and disables the setup access point. This is because, as described above, the setup access point does not require a password, and if it is left enabled for a long period of time, there is a high possibility that an inappropriate device will request connection. The setup access point may also require 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. The CPU 154 then ends this flowchart.
[0114] After the initial settings are complete, CPU 154 changes the value of the initial startup flag stored in ROM 152, memory, etc. from a value indicating an initial startup state to a value indicating a non-initial startup state. The non-initial startup state corresponds to a state in which the initial settings are complete. This completes the initial settings, and the flowchart in FIG. 7 is not executed the next time the user turns on communication device 151.
[0115] Next, the setup process in the operation in the setup mode that is started based on the second condition described above will be described.
[0116] Fig. 8 is a flowchart showing the setup process executed by communication device 151. The flowchart shown in Fig. 8 is realized, for example, by CPU 154 reading out a setting application stored in ROM 152, a memory, or the like into RAM 153 and executing it. The flowchart in Fig. 8 is executed when a second condition is satisfied.
[0117] In S800, the communication device 151 determines whether or not the connection mode is set in the communication device 151 at least when the setting operation is performed. If the determination in S800 is YES, the communication device 151 proceeds to S801, and if the determination in S800 is NO, the communication device 151 proceeds to S802.
[0118] In S801, the communication device 151 disables the connection mode in which the communication device 151 was set at least when the setting operation was performed. For example, if the infrastructure connection mode was set in the communication device 151 at least when the setting operation was performed and the communication device 151 was wirelessly connected to an access point via Wi-Fi, the communication device 151 disables the infrastructure connection mode and disconnects the connection with the access point. The communication device 151 also acquires information about the connection mode in which the communication device 151 was set at least when the setting operation was performed and stores the information in the ROM 152, memory, etc. This is because the information is necessary for reconnecting to the connection mode in which the communication device 151 was set at least when the setting operation was performed in S822, which will be described later. For example, the communication device 151 acquires information about the access point to which the communication device 151 was wirelessly connected via Wi-Fi at least when the setting operation was performed and stores the information in the ROM 152, memory, etc. The information includes information for connecting to the access point to which the communication device 151 was wirelessly connected via Wi-Fi (such as the SSID and information indicating the encryption method). Note that if the connection mode was not set at least when the setting operation was performed, acquisition of the information about the connection mode is omitted.
[0119] Steps S802 to S821 are the same as steps S703 to S722, and therefore the description thereof will be omitted. Note that the execution of WEC in step S812 will be described with reference to FIG.
[0120] In S822, the communication device 151 reconnects in the connection mode that was set when at least the setting operation was performed, based on the information acquired in S801 regarding the connection mode that the communication device 151 was set to when at least the setting operation was performed. For example, the communication device 151 reconnects to the access point to which the communication device 151 was wirelessly connected via Wi-Fi when at least the setting operation was performed. Note that the communication device 151 may reconnect in the connection mode that was set when at least the setting operation was performed, even if the WEC was successful in S812 or if the DPP standby mode or the network setup mode was terminated in S810.
[0121] Here, the processing in S704 in FIG. 7 and S803 in FIG. 8 will be described with reference to FIG.
[0122] Fig. 9 is a flowchart showing the contents of the DPP standby mode start process. The flowchart shown in Fig. 9 is realized, for example, by CPU 154 reading a setting application stored in ROM 152, memory, or the like into RAM 153 and executing it. The flowchart shown in Fig. 9 starts, for example, when communication device 151 starts the network setup mode. As described above, since the network setup mode starts when the first condition, the second condition, or the third condition is satisfied, this flowchart may also be considered to start when, for example, the first condition, the second condition, or the third condition is satisfied.
[0123] In S901, the CPU 154 determines a standby channel for DPP communication. The standby channel for DPP communication is a channel that waits for a DPP network setup request transmitted from the information processing device 101. The same channel is also used for DPP configuration processing. Note that the channel to be used as the standby channel for DPP communication may be set by the user, for example, via the operation unit 159 of the communication device 151.
[0124] In S902, the CPU 154 generates the public key information used for secure communication with the information processing device 101, as described above.
[0125] In S903, CPU 154 generates the above-mentioned Bootstrapping information. The Bootstrapping information includes, for example, identification information (such as a MAC address) of communication device 151, information related to a standby channel for DPP communication, and the public key information generated in S902.
[0126] In S904, the CPU 154 starts the DPP standby mode. When the DPP standby mode starts, communication between the communication device 151 and the information processing device 101 becomes possible using DPP authentication.
[0127] In S905, CPU 154 starts a DPP standby mode timeout timer. After starting operation in DPP standby mode, CPU 154 ends operation in DPP standby mode when a predetermined time has elapsed. This is because ending operation in DPP standby mode causes a transition to network setup processing using a network setup protocol. Specifically, when the value counted by the DPP standby mode timeout timer in S717 or S816 exceeds the threshold value and a timeout occurs in DPP standby mode, CPU 154 ends DPP standby mode.
[0128] 9, CPU 154 may determine whether communication device 151 has started the network setup mode. If communication device 151 has started the network setup mode, CPU 154 may proceed to S901, and if communication device 151 has not started the network setup mode, CPU 154 may end this flowchart without starting the DPP standby mode.
[0129] Then, the CPU 154 proceeds to the process of S705 in FIG. 7 or S804 in FIG.
[0130] The processes in S713 in FIG. 7 and S812 in FIG. 8 will now be described with reference to FIGS. 10 and 11, respectively.
[0131] 10 is a flowchart showing the execution process of the WEC in FIG. 7 (i.e., the process in S713 in FIG. 7) that is started based on the first condition or the third condition, and corresponds to the operation of the communication device 151 in the sequence in FIG. 4. The flowchart shown in FIG. 10 is realized, for example, by the CPU 154 reading out a setting application stored in the ROM 152, memory, or the like into the RAM 153 and executing it. The flowchart in FIG. 10 is started when the communication device 151 receives a request to execute the WEC in the DPP Authentication process from the information processing device 101.
[0132] In S1001, the CPU 154 executes DPP authentication processing. As described above, in the DPP authentication processing, 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 in the DPP authentication, communication is executed using the DPP.
[0133] In S1002, the CPU 154 determines whether the DPP authentication process with the information processing device 101 was successful. As described above, various pieces of information transmitted from the information processing device 101 during communication in DPP authentication are encrypted based on the WEC-related information acquired by the information processing device 101 in the process shown in FIG. 2. If the CPU 154 successfully decrypts the information received from the information processing device 101 using a decryption key stored in advance, the CPU 154 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 therefore is unable to accurately encrypt the information, decryption in the communication device 151 fails, and authentication therefore fails. Therefore, if authentication of communication with the information processing device 101 is successful, the CPU 154 determines that the DPP authentication process was successful; if it is unsuccessful, the CPU 154 determines that the DPP authentication process was unsuccessful. If the determination in S1002 is NO, the CPU 154 ends the DPP standby mode (S1003) and terminates this flowchart. On the other hand, if the determination in S1002 is YES, the communication device 151 proceeds to S1004.
[0134] In S1004, the CPU 154 executes DPP Configuration processing. In the DPP Configuration processing, the CPU 154 receives, via the WEC, connection information for connecting to an access point that has been set as a configuration target by the WEC from the information processing device 101. The connection information includes the SSID, password, encryption method, and other information for the access point that has been set as a configuration target by the WEC.
[0135] In S1005, the CPU 154 determines whether the DPP Configuration process with the information processing device 101 was successful. Specifically, if the CPU 154 receives, via WEC, connection information for connecting to an access point set as a configuration target by WEC from the information processing device 101, it determines that the process was successful; if the connection information is not received, it determines that the process was unsuccessful. If the determination in S1005 is NO, the CPU 154 ends the DPP standby mode (S1003) and ends this flowchart. On the other hand, if the determination in S1005 is YES, the CPU 154 proceeds to S1006. If the DPP Configuration process is successful, the communication device 151 acquires the SSID, encryption method, and password of the access point.
[0136] In S1006, the CPU 154 determines whether an SSID is included in the information about the access point that is set as a setting target by WEC and that is received from the information processing device 101. If the determination in S1006 is NO, the CPU 154 ends the DPP standby mode (S1003) and ends this flowchart. On the other hand, if the determination in S1006 is YES, the CPU 154 proceeds to S1007.
[0137] In S1007, the CPU 154 determines whether or not an encryption method is included in the information about the access point that is set as a setting target by WEC and that is received from the information processing device 101. If the determination in S1007 is NO, the CPU 154 ends the DPP standby mode (S1003) and ends this flowchart. On the other hand, if the determination in S1007 is YES, the CPU 154 proceeds to S1008.
[0138] In S1008, the CPU 154 determines whether or not a password is included in the information about the access point that is set as the setting target by the WEC, which is received from the information processing device 101. Note that when connecting to an access point using DPP communication, the CPU 154 may determine whether or not public key information is included instead of a password. Also, if the security setting of the access point that is set as the setting target is disabled, a password may not be included. If the determination in S1008 is NO, the CPU 154 ends the DPP standby mode (S1003) and ends this flowchart. On the other hand, if the determination in S1008 is YES, the CPU 154 proceeds to S1009 and ends the DPP standby mode. Note that once the CPU 154 ends the DPP standby mode, it will be unable to respond to a DPP Authentication processing request from the information processing device 101.
[0139] In S1010, CPU 154 ends network setup mode and disables the setup access point. Note that it does not matter whether the end of operation in network setup mode in S1010 or the end of operation in DPP standby mode in S1009 occurs first. That is, CPU 154 may end operation in DPP standby mode after ending operation in network setup mode. Furthermore, the end of operation in network setup mode and the end of operation in DPP standby mode may occur simultaneously. Furthermore, the order of the end process of operation in network setup mode or the end process of operation in DPP standby mode and the process for connecting to an access point does not matter.
[0140] In S1011, the CPU 154 outputs a notification to confirm (allow the user to select) whether or not to permit the execution of settings (wireless settings) related to the wireless connection of the communication device 151. The settings related to the wireless connection of the communication device 151 are settings for establishing a connection with an access point corresponding to the information received from the information processing device 101. That is, the CPU 154 displays on the display unit 161 a screen (hereinafter referred to as a connection selection screen) for prompting the user to select whether or not to establish a connection with an access point set as a setting target by the WEC, corresponding to the information received from the information processing device 101. FIG. 12 is a diagram showing an example of the connection selection screen. Areas 1201 and 1202 are displayed on the connection selection screen 1200. Area 1201 is an area for inputting information for permitting the execution of settings related to the wireless connection of the communication device 151. Area 1202 is an area for inputting information for not permitting the execution of settings related to the wireless connection of the communication device 151. For example, area 1201 is an area for inputting information for permitting a connection with an access point set as a setting target by the WEC. An area 1202 is an area for inputting information for not permitting connection to an access point that is set as a setting target by WEC.
[0141] In S1012, the CPU 154 determines whether an input has been made to permit execution of settings related to the wireless connection of the communication device 151. For example, the CPU 154 determines whether connection to the access point set as the setting target for WEC is permitted. Specifically, if the user operates area 1201, the CPU 154 determines that connection to the access point set as the setting target for WEC is permitted. If the user operates area 1202, the CPU 154 determines that connection to the access point is not permitted. If the determination in S1012 is YES, the CPU 154 proceeds to S1013. If the determination in S1012 is NO, the CPU 154 terminates the processing of this flowchart. Note that the CPU 154 may start a timer for timeout of the connection selection screen in S1012. Then, if the count value of the timer for timeout of the connection selection screen exceeds a threshold value but no user operation is performed, the CPU 154 may terminate this flowchart. Note that the determination in S1012 may be repeated until a user operation is performed on the connection selection screen.
[0142] In S1013, the CPU 154 connects to the access point set as the setting target by WEC using the various information (SSID, password, encryption method) of the access point received from the information processing device 101. Then, the CPU 154 ends this flowchart.
[0143] 11 is a flowchart showing the WEC execution process in FIG. 8 (i.e., the process in S812 in FIG. 8) that is started based on the second condition, and corresponds to the operation of communication device 151 in the sequence in FIG. 4. The flowchart shown in FIG. 11 is realized, for example, by CPU 154 reading a setting application stored in ROM 152, memory, or the like into RAM 153 and executing it. The flowchart in FIG. 11 is started when communication device 151 receives a WEC execution request in DPP Authentication processing from information processing device 101.
[0144] Steps S1101 to S1110 are the same as steps S1001 to S1010, and therefore their explanations will be omitted. Step S1111 is the same as step S1013, and therefore its explanation will be omitted. Note that in this flowchart, there is no step of displaying a connection selection screen between steps S1110 and S1111, and the processing of step S1111 is executed without communication device 151 accepting any operation by the user after the DPP Configuration processing.
[0145] As described above, in this embodiment, if the start condition for operation of communication device 151 in network setup mode or DPP standby mode is the first condition or the third condition, a notification is output to confirm to the user whether to permit execution of wireless connection configuration for communication device 151. Specifically, a screen is displayed on display unit 161 to prompt the user to select whether to establish a connection with an access point set as a target for configuration by WEC received from information processing device 101. Then, if a user operation inputs permission for connection to the access point set as a target for configuration by WEC, a connection with the access point is established. This prevents a third party from executing network setup of communication device 151 if the user is unaware that communication device 151 is in a state where network setup is possible. Furthermore, if the start condition for operation of communication device 151 in network setup mode or DPP standby mode is the second condition, a notification is not output to prompt the user to select whether to permit connection to the access point set as a target for configuration by WEC. Then, communication device 151 establishes a connection with the access point without displaying a connection selection screen. This is because, when the start condition is the second condition described above, it is highly likely that the user is aware of the execution of network setup of the communication device 151. This reduces the number of user operation steps and improves usability. As a result, a highly convenient network setup is executed while ensuring security.
[0146] As a result, if a connection between a predetermined access point and communication device 151 can be established by WEC, setting up by WEC can achieve a simple setup that omits the user from inputting a password, etc. Also, if a connection between a predetermined access point and communication device 151 cannot be established by WEC, setting up by a function other than WEC can be performed, thereby more reliably establishing a connection between the access point and communication device 151.
[0147] Additionally, in this embodiment, when the communication device 151 can connect to the predetermined access point to be set, the information processing device 101 is controlled to transmit connection information of the predetermined access point to the communication device 151 by WEC. Furthermore, when the communication device 151 cannot connect to the predetermined access point to be set, the information processing device 101 is controlled to transmit connection information of an access point other than the predetermined access point to the communication device 151 by network setup using a setup protocol. The case where the communication device 151 can connect to the predetermined access point refers to, for example, when the communication device 151 supports the encryption method used to connect to the predetermined access point, or when the communication device 151 supports the frequency band used to connect to the predetermined access point. The case where the communication device 151 cannot connect to the predetermined access point refers to, for example, when the communication device 151 does not support the encryption method used to connect to the predetermined access point, or when the communication device 151 does not support the frequency band used to connect to the predetermined access point. In this embodiment, even if the communication device 151 can connect to a specified access point, if the WEC does not support the encryption method used to connect to the specified access point, the information processing device 101 is controlled to send connection information for an access point other than the specified access point to the communication device 151 by network setup using a setup protocol.
[0148] The input for permitting execution of the settings related to the wireless connection of the communication device 151 may be made by a physical button or the like outside the screen. The input for permitting execution of the settings related to the wireless connection of the communication device 151 may be made by voice via a voice output unit (not shown) rather than by a screen display. Of the connection selection screen shown in FIG. 12 , only areas 1201 and 1202 may be displayed on the display unit 161, and whether or not to permit execution of the settings related to the wireless connection of the communication device 151 may be input by a user operation. The input for permitting execution of the settings related to the wireless connection of the communication device 151 may also be made by voice by the user. Furthermore, there may be cases where the connection selection screen cannot be displayed due to reasons such as the absence of the display unit 161 in the communication device 151. In this case, the settings related to the wireless connection of the communication device 151 and an input method for permitting execution of the settings related to the wireless connection of the communication device 151 may be notified to the display unit 108 of the information processing device 101. For example, the display unit 108 of the information processing device 101 may be notified that it is necessary to select whether or not to permit connection to an access point, and a method for selecting whether or not to permit connection to the access point. The information processing device 101 may have a configuration in which the user can select whether or not to permit connection to the access point by using a method for selecting whether or not to permit connection to the access point displayed on the display unit 108. In this case, the input method for permitting execution of settings related to wireless connection of the communication device 151 is some kind of operation on the communication device 151, and may be, for example, a predetermined operation on the operation unit 159 (such as a physical button).
[0149] In the above-described embodiment, the setting related to the wireless connection of the communication device 151 may be a setting for starting communication between the information processing device 101 and the communication device 151 to connect the communication device 151 to an access point. That is, the CPU 154 may output a notification prompting the user to select whether to start communication with the information processing device 101 to connect the communication device 151 to a network. Specifically, when the CPU 154 receives a request to execute WEC in step S712, the CPU 154 may execute a notification prompting the user to select whether to start execution of WEC based on whether the start condition for operation in the network setup mode or the DPP standby mode is the first condition or the third condition before execution of WEC between the information processing device 101 and the communication device 151 is started. Then, the CPU 154 may start execution of WEC when the user inputs an instruction to start execution of WEC between the information processing device 101 and the communication device 151. In this case, the CPU 154 may consider that establishment of a connection with the access point set as the target for WEC configuration is permitted and connect to the access point without executing a notification prompting the user to select whether to permit connection to the access point. In addition to the notification prompting the user to select whether to start WEC execution, a notification prompting the user to select whether to permit connection to the access point may be issued. Furthermore, if the start condition for operation in network setup mode or DPP standby mode is the second condition, WEC execution may be started without issuing a notification prompting the user to select whether to start WEC execution. In this case, CPU 154 may connect to an access point set as a target for WEC configuration without issuing a notification prompting the user to select whether to permit connection to the access point.
[0150] In the present embodiment, when the first, second, or third condition is satisfied, the network setup mode is initiated, and then the DPP standby mode is initiated. However, this is not a limitation. For example, when the first, second, or third condition is satisfied, the network setup mode may be initiated, and then the DPP standby mode is initiated. That is, if the start conditions for the network setup mode and the DPP standby mode are the same, both modes may be initiated simultaneously, regardless of the start order. Furthermore, the network setup mode or the DPP standby mode may be initiated only after the other mode has been initiated. Furthermore, the network setup mode may be initiated when the first, second, or third condition is satisfied, and after a connection between the information processing device 101 and the communication device 151 is established, the DPP standby mode of the communication device 151 may be initiated based on the acquisition of a request from the information processing device 101 to initiate operation in the DPP standby mode.
[0151] In this embodiment, communication device 151 terminates the DPP standby mode if the execution of WEC fails, but it may not terminate the DPP standby mode. This makes it possible to execute network setup again in response to a request to execute network setup or a request to execute WEC from the information processing device.
[0152] Furthermore, in this embodiment, when the communication device 151 receives either a network setup execution request or a WEC execution request, the mode related to the other execution request remains enabled. In other words, even when a network setup execution request is received, the DPP standby mode remains enabled. However, when the communication device 151 receives either a network setup execution request or a WEC execution request, the mode related to the other execution request may be disabled. For example, when a WEC execution request is received, the network setup mode may be terminated. In this way, when either a network setup execution request or a WEC execution request is received, the mode related to the other execution request may be disabled, thereby preventing unintended network setup from being executed. Note that if a WEC execution request is received and the network setup mode is terminated, if the execution of WEC fails, the network setup mode is restarted based on the failure of the WEC execution. This makes it possible to execute network setup again in response to a network setup execution request from the information processing device.
[0153] (Other embodiments) The above-described embodiment may also be applied when network setup is performed using a network setup protocol. Specifically, when network setup is performed using the network setup protocol shown in FIG. 6 at S710 (S720) of FIG. 7 or S809 (S819) of FIG. 8, CPU 154 may output a notification before connecting to an access point at S604 based on the first or third condition being the start condition for operation in network setup mode or DPP standby mode. Then, when permission to connect to the access point is input by a user operation, connection with the access point is established. Furthermore, when network setup is performed using the network setup protocol shown in FIG. 6 at S710 (S720) of FIG. 7 or S809 (S819) of FIG. 8, CPU 154 may not output a notification before connecting to an access point at S604 based on the second condition being the start condition for operation in network setup mode or DPP standby mode. Furthermore, the settings related to the wireless connection of the communication device 151 may be settings for establishing a connection between the information processing device 101 and the communication device 151 in order to connect the communication device to an access point. That is, when the start condition for operation in the network setup mode or the DPP standby mode is the first condition or the third condition, the CPU 154 may output a notification for prompting the user to select whether or not to establish a connection with the information processing device 101 in order to connect the communication device 151 to an access point. Specifically, before the network setup using the network setup protocol is started, a notification for prompting the user to select whether or not to start execution of the network setup using the network setup protocol may be output. Then, the CPU 154 may start execution of the network setup when the user inputs an instruction to start execution of the network setup between the information processing device 101 and the communication device 151.In this case, CPU 154 may assume that establishment of connection with the access point is permitted and connect to the access point without issuing a notification for prompting the user to select whether to permit connection with the access point. CPU 154 may issue a notification for prompting the user to select whether to permit connection with the access point, in addition to issuing a notification for prompting the user to select whether to start network setup execution. Furthermore, CPU 154 may start network setup execution without issuing a notification for prompting the user to select whether to start network setup execution, based on the second condition being the start condition for operation in network setup mode or DPP standby mode. In this case, CPU 154 may connect to information processing device 101 or the access point without issuing a notification for prompting the user to select whether to permit connection with the access point.
[0154] 6, the CPU 154 may issue a connection request for establishing a direct connection to the communication device 151. In this case, the communication device 151 ends the network setup mode and transitions the connection mode to the P2P mode. Therefore, when the CPU 154 receives a connection request for establishing a direct connection, the setting related to the wireless connection of the communication device 151 is a setting for establishing a direct connection between the information processing device 101 and the communication device 151 based on the connection request received from the information processing device 101. In other words, the CPU 154 may output a notification that prompts the user to select whether or not to permit the establishment of a direct connection with the information processing device 101.
[0155] Note that the above-described embodiment may be applied only to the case of network setup using either the setup protocol or the DPP. For example, when network setup is performed using DPP, a notification is output to prompt the user to select whether to permit connection to an access point based on whether the start condition for operation in network setup mode or DPP standby mode is the first condition or the third condition. However, when network setup is performed using the network setup protocol, even if the start condition for operation in network setup mode or DPP standby mode is the first condition or the third condition, a notification to prompt the user to select whether to permit connection to an access point may not be output.
[0156] In the above-described embodiment, if the start condition for operation in network setup mode or DPP standby mode is the first condition or the third condition, the flowchart of FIG. 10 is executed. Furthermore, if the start condition for operation in network setup mode or DPP standby mode is the second condition, the flowchart of FIG. 11 is executed. However, a common flowchart (common flowchart) may be started regardless of whether the start condition is the first condition, the third condition, or the second condition. In this case, CPU 154 of communication device 151 stores (saves) in memory or the like information (start condition information) indicating whether operation in network setup mode of communication device 151 was started based on the first condition, the third condition, or the second condition. Then, when executing WEC in the common flowchart, CPU 154 may execute, for example, a flowchart as shown in FIG. 13. Steps S1301 to S1310 are similar to steps S1001 to S1010 of FIG. 10, and therefore description thereof will be omitted. In S1311, CPU 154 references start condition information stored in memory or the like, and determines whether the start processing of operation in network setup mode or DPP standby mode of communication device 151 was started based on the first condition, the third condition, or the second condition. If CPU 154 determines in S1311 that the start condition is the first condition or the third condition, it proceeds to S1313, and if it determines that the start condition is the second condition, it proceeds to S1312. S1312 is the same process as S1013, and S1313 to S1315 are the same process as S1011 to S1013, so description thereof will be omitted.
[0157] In the above-described embodiment, the WEC transmits connection information for the connected AP, and various determinations such as S211 to S213 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.
[0158] In the above-described embodiment, setup is performed using WEC, thereby enabling simple setup without requiring the user to enter a password, etc. However, the setup performed by WEC in the above-described embodiment may instead be performed by another function using another protocol. For example, the setup performed by WEC may instead be performed by a function using HyperText Transfer Protocol. Similar to WEC, a function using HyperText Transfer Protocol can also enable simple setup without requiring the user to enter a password, etc. Furthermore, in the above-described embodiment, setup is performed using a setup communication protocol (e.g., Simple Network Management Protocol (SNMP)). However, the setup performed by the setup communication protocol in the above-described embodiment may instead be performed by another function using another protocol. For example, the setup performed by the setup communication protocol may instead be performed by a function using HyperText Transfer Protocol. Furthermore, in addition to setup by WEC and setup by the setup communication protocol, setup by a third protocol may be performed. The third protocol is, for example, HyperText Transfer Protocol. In setup using the third protocol, a notification may be output to prompt the user to select whether or not to permit connection to the access point, based on whether the start condition for operation in network setup mode or DPP standby mode is condition 1 or condition 3. Furthermore, in setup using the third protocol, even if the start condition for operation in network setup mode or DPP standby mode is condition 1 or condition 3, a notification may not be output to prompt the user to select whether or not to permit connection to the access point.
[0159] Furthermore, in the above embodiment, the network setup in S224 is described as being performed 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, but this form is not limiting. For example, the network setup may be performed in a form in which connection information is transmitted 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. Note that in this form, the information processing device 101 can connect to the communication device 151 via BLE while maintaining a 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. Note that even in this form, a communication protocol different from DPP is used.
[0160] Additionally, in the above embodiment, in S207, 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 S220, or may be acquired via communication using another communication method such as NFC or BLE.
[0161] Furthermore, 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 by software; some or all of the processes may be realized by hardware such as an ASIC. Furthermore, the CPU is not limited to one that performs all processes by a single CPU, and multiple CPUs may perform processes in cooperation with each other as appropriate. [Explanation of symbols]
[0162] 101 Information processing equipment 151 Communication equipment 154 CPU
Claims
[Claim 1] A communication device that communicates with an information processing device, a first output means for outputting a notification to a user to confirm whether or not to permit execution of a predetermined wireless setting, which is a setting based on information received from the information processing device and is related to a wireless connection of the communication device, when a start condition for a predetermined state in which wireless communication with the information processing device is executable is a first condition, and not outputting the notification when a start condition for the predetermined state is a second condition different from the first condition; a setting means for executing the predetermined wireless setting based on an input indicating that execution of the predetermined wireless setting is permitted in response to the notification; A communication device comprising:
Citation Information
Patent Citations
Computer program for terminal device
JP2017183928A
Communication device, control method, and program
JP2017212504A
Communication device, control of the same, and program
JP2018046435A
Display device, display system, display method, and program
JP2019125855A
Communication device and computer program for communication device
JP2019180037A