Communication devices, information processing devices, methods, programs, and storage media

The communication device simplifies wireless connection setup by using 2D codes for direct or indirect connections, addressing user confusion and complexity in selecting connection methods, thereby enhancing convenience.

JP7857089B2Active Publication Date: 2026-05-12CANON KK
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
CANON KK
Filing Date
2021-10-01
Publication Date
2026-05-12

AI Technical Summary

Technical Problem

Users face difficulty in determining which displayed image to capture for setting communication parameters when multiple methods are available, and need to be aware of the appropriate setting method for wireless connections between devices.

Method used

A communication device that uses first and second connection methods, along with 2D codes, to establish wireless connections between an information processing device and an external access point, simplifying the process by displaying information for direct or indirect connection based on the device's current connection status.

Benefits of technology

Improves user convenience by reducing the complexity of setting communication parameters and selecting the appropriate connection method, allowing seamless wireless connections without user intervention.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007857089000001
    Figure 0007857089000001
  • Figure 0007857089000002
    Figure 0007857089000002
  • Figure 0007857089000003
    Figure 0007857089000003
Patent Text Reader

Abstract

To provide a communication device which improves user convenience when establishing radio connection between devices.SOLUTION: A communication device causes a display unit to display information including first information and second information to enable an information processing device to image. Here, the first information is used for communication to establish radio connection between the information processing device and an external access point using a first connection method, whereas the second information is used to establish radio connection between the information processing device and the communication device without intermediary of an external access point, using a second connection method. The communication device executes communication in order to establish the radio connection by the first connection method, according to a request transmitted on the basis of the first information, so as to establish radio connection by the first connection method, on the basis of the communication to establish the radio connection by the first connection method. Further, the communication device establishes radio connection by the second connection method, according to a request transmitted on the basis of the second information.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a communication device capable of establishing a wireless connection with an external device, Information processing device, method 、 program and storage media and relates thereto.

Background Art

[0002] In recent years, there has been an increasing number of cases where electronic devices such as digital cameras, printers, mobile phones, and smartphones are equipped with a wireless communication function and these devices are connected to a wireless network and used as a communication device. To connect an electronic device to a wireless network, it is necessary to set various communication parameters such as an encryption method, an encryption key, an authentication method, and an authentication key. Therefore, the setting of communication parameters is complicated and the hurdle is high for users of digital cameras and printers. Therefore, a mechanism for simplifying the setting of communication parameters is used, and a mechanism for notifying a user terminal by anonymizing communication parameters using a public key encryption method in order to prevent information leakage of communication parameters is also used.

[0003] In Patent Document 1, a technique for facilitating the setting of communication parameters in a communication terminal by mediating a QR code (registered trademark) image including information on communication parameters is described. In Patent Document 2, it is described that a QR code corresponding to the selection is displayed when a user selects a communication parameter setting method.

Prior Art Documents

Patent Documents

[0004]

Patent Document 1

Patent Document 2

Summary of the Invention

Problems to be Solved by the Invention

[0005] However, if there are multiple methods for setting communication parameters using the displayed images, the system will display images corresponding to the number of setting methods, making it difficult for the user to determine which displayed image to capture. Furthermore, even if the system displays images corresponding to the user's selection of a setting method, the user still needs to be aware of which setting method to choose.

[0006] The present invention relates to a communication device that improves user convenience when establishing wireless connections between devices. Information processing device, method 、 program and storage media The purpose is to provide. [Means for solving the problem]

[0007] To solve the above problems, the program according to the present invention provides a computer of a communication device that can communicate with an information processing device, and provides first information used for communication to establish a wireless connection between the communication device and an external access point different from the information processing device and the communication device using a first connection method, and second information for establishing a wireless connection between the information processing device and the communication device using a second connection method that does not go through the external access point. Both sides including First 2D code The system is characterized by comprising: display control means for displaying on a display unit so that the information processing device can capture the information; receiving means for receiving a request transmitted from the information processing device based on the first information or the second information; communication means for performing communication for establishing a wireless connection using the first connection method based on the request transmitted based on the first information; first connection means for establishing a wireless connection using the first connection method based on the communication for establishing a wireless connection using the first connection method; and second connection means for establishing a wireless connection using the second connection method based on the request transmitted based on the second information. [Effects of the Invention]

[0008] According to the present invention, it is possible to improve user convenience when establishing wireless connections between devices. [Brief explanation of the drawing]

[0009] [Figure 1] This diagram shows the configuration of an information processing device and a communication device. [Figure 2] This flowchart shows the connection process performed by the communication device. [Figure 3] This is a flowchart showing the connection process performed by the information processing device. [Figure 4] This diagram illustrates the connection process using WEC. [Figure 5] This flowchart shows the connection process performed by the communication device. [Figure 6] This flowchart shows the connection process performed by the communication device. [Figure 7] This flowchart shows the connection process performed by the communication device. [Figure 8] This is a flowchart showing the connection process performed by the information processing device. [Figure 9] This is a diagram showing the WEC start screen. [Modes for carrying out the invention]

[0010] The embodiments will be described in detail below with reference to the attached drawings. Note that the following embodiments do not limit the invention as defined in the claims. While the embodiments describe multiple features, not all of these features are essential to the invention, and the features may be combined in any way. Furthermore, in the attached drawings, identical or similar configurations are given the same reference numerals, and redundant descriptions are omitted.

[0011] [First Embodiment] The information processing apparatus 101 and the communication apparatus 151 included in the communication system of this embodiment will be described. In this embodiment, a smartphone is exemplified as the information processing apparatus 101, but it is not limited thereto. For example, various devices such as a mobile terminal, a PC (personal computer), a tablet terminal, a PDA (Personal Digital Assistant), a digital camera, etc. can be applied as the information processing apparatus 101. Also, a printer is exemplified as the communication apparatus 151, but it is not limited thereto, and various devices can be applied as long as they can perform wireless communication with the information processing apparatus 101. For example, if it is a printer, an inkjet printer, a full-color laser beam printer, a monochrome printer, etc. can be applied. Also, not only printers but also copiers, facsimile devices, mobile terminals, smartphones, notebook PCs, tablet terminals, PDAs, digital cameras, music playback devices, televisions, smart speakers, etc. can be applied. In addition, a multifunction device having a plurality of functions such as a copying function, a FAX function, a printing function, etc. can also be applied.

[0012] Also, in this embodiment, when the information processing apparatus 101 supports a function called Wi-Fi Easy Connect (hereinafter, WEC) (registered trademark), the apparatus can execute the function. WEC is a function that uses the Device Provisioning Protocol (hereinafter, DPP) formulated by the Wi-Fi Alliance to execute the network setup of other devices. Note that the network setup of other devices is specifically a process of connecting other devices to an access point that forms a network.

[0013] In WEC, communication takes place between a device operating in the role of "Configurator" (hereinafter referred to as the Configurator device) and a device operating in the role of "Enrollee" (hereinafter referred to as the Enrollee device). The Configurator device obtains Bootstrapping information from the Enrollee device. Bootstrapping information includes, for example, the identification information of the Enrollee device (such as its MAC address) and public key information used to perform secure communication with the Enrollee device. In this embodiment, Bootstrapping information is described as "WEC-related information." Note that other information may be used as WEC-related information. The Configurator device then performs wireless communication with the Enrollee device using the obtained Bootstrapping information. Specifically, for example, the Configurator device encrypts the protocol key using the public key included in the Bootstrapping information and sends the encrypted protocol key to the Enrollee device. The Configurator device then encrypts a common key based on the encrypted protocol key and sends the encrypted information using that common key (shared key) to the Enrollee device. The information sent here is, specifically, 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 this embodiment, the WEC-based network setup process is described as operating as a Configurator device, and the WEC-compatible communication device 151 is described as operating as an Enrollee device.

[0014] First, the configuration of the information processing apparatus 101 of the present embodiment and the communication apparatus 151 capable of communicating with the information processing apparatus 101 of the present embodiment will be described with reference to the block diagram of FIG. 1. Also, in the present embodiment, the following configuration is described as an example, but it is not limited to the illustrated functions. The configuration corresponding to the functions that can be implemented by an apparatus applicable as an apparatus capable of communicating with each other is appropriately provided.

[0015] The information processing apparatus 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, and a short-range wireless communication unit 111. A computer of the information processing apparatus 101 that executes programs is formed by the CPU 103, the ROM 104, the RAM 105, and the like.

[0016] The input interface 102 is an interface for receiving data input and operation instructions from a user when an operation unit such as a keyboard 109 is operated. Note that the operation unit may be a physical keyboard or physical buttons, or may be a soft keyboard or soft buttons displayed on the display unit 108. That is, the input interface 102 may receive an input from the user via the display unit 108.

[0017] The CPU 103 is a system control unit that controls the entire information processing apparatus 101. The ROM 104 stores fixed data such as control programs executed by the CPU 103, data tables, and an embedded operating system (hereinafter referred to as OS) program. In the present embodiment, each control program stored in the ROM 104 performs software execution control such as scheduling, task switching, and interrupt processing under the management of the embedded OS stored in the ROM 104.

[0018] RAM105 consists of SRAM (Static Random Access Memory) and other components that require a backup power supply. Since RAM105's data is held by a primary battery (not shown) for data backup, important data such as program control variables can be stored without being lost. RAM105 also includes a memory area for storing configuration information and management data for the information processing device 101. Furthermore, RAM105 is used as both the main memory and work memory for the CPU 103.

[0019] The external storage device 106 stores an application program (hereinafter referred to as the "configuration app") for performing network setup of the communication device 151, a print information generation program that generates print information that the communication device 151 can interpret, and the like. The configuration app is an application program for configuring the access point to which the communication device 151 is connected using WEC or the like. The configuration app may also have functions other than network setup. For example, the configuration app may have functions to cause the communication device 151 to print, functions to scan documents placed on the document glass of the communication device 151, and functions to check the status of the communication device 151. The configuration app is stored in the external storage device 106 after being installed from an external server, for example, via internet communication through the communication unit 110. The external storage device 106 also stores various programs, such as information transmission and reception control programs that are transmitted and received with the communication device 151 connected via the communication unit 110, and various information used by these programs.

[0020] The output interface 107 is an interface that controls the display unit 108 for displaying data and notifying the status of the information processing device 101. The display unit 108 is composed of LEDs (light-emitting diodes) and LCDs (liquid crystal displays), and displays data and notifies the status of the information processing device 101. The imaging unit 112 is, for example, a camera that captures images of the outside.

[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 it may communicate via an external device located outside the information processing device 101 and the communication device 151. External devices include external access points (such as access point 131) located outside the information processing device 101 and the communication device 151, as well as devices other than access points that can relay communication. In this embodiment, the wireless communication method used by the communication unit 110 is assumed to be Wi-Fi (WirelessFidelity) (registered trademark), a communication standard compliant with the IEEE 802.11 series. The aforementioned WEC is performed by communication via the communication unit 110. Furthermore, the access point 131 can be, for example, a wireless LAN router or other device. In this embodiment, the method by which the information processing device 101 and the communication device 151 are directly connected without going through an external access point is called the direct connection method. The method by which the information processing device 101 and the communication device 151 are connected via an external access point is called the infrastructure connection method.

[0022] The short-range wireless communication unit 111 is configured to wirelessly connect to devices such as the communication device 151 at short range and perform data communication, and communicates using a different communication method than the communication unit 110. The short-range wireless communication unit 111 can connect to, for example, the short-range wireless communication unit 157 within the communication device 151. Examples of communication methods include Near Field Communication (NFC), Bluetooth® Classic, Bluetooth Low Energy (BLE), and Wi-Fi Aware.

[0023] In this embodiment, the information processing device 101 executes WEC using its OS based on an instruction to execute network setup processing by the configuration application.

[0024] The communication device 151 is the communication device of this embodiment. The communication device 151 has a ROM 152, RAM 153, CPU 154, print engine 155, communication unit 156, and short-range wireless communication unit 157. The ROM 152, RAM 153, CPU 154, etc. form the computer of the communication device 151 that executes programs.

[0025] The communication unit 156 has an access point within the communication device 151 for connecting to external devices such as the information processing device 101. This access point can be connected to the communication unit 110 of the information processing device 101. When the communication unit 156 activates this access point, the communication device 151 operates as an access point. The communication unit 156 may connect wirelessly to the information processing device 101 directly, or it may connect wirelessly via the access point 131. In this embodiment, the wireless communication method used by the communication unit 156 is assumed to be a communication standard compliant with the IEEE 802.11 series. Furthermore, if the communication device 151 supports WEC, the aforementioned WEC will be executed by communication by the communication unit 156. The communication unit 156 may have hardware that functions as an access point, or it may operate as an access point through software that enables it to function as an access point.

[0026] The communication device 151 of this embodiment can operate in infrastructure mode and P2P (Peer to Peer) mode as modes for performing communication using the communication unit 156.

[0027] Infrastructure mode is a configuration in which the communication device 151 communicates with other devices such as the information processing device 101 via external devices (e.g., access point 131) that form a network. The connection with the external access point established by the communication device 151 operating in infrastructure mode is called an infrastructure connection (hereinafter referred to as infrastructure connection). In this embodiment, in an infrastructure connection, the communication device 151 operates as a slave device, and the external access point operates as a master device. In this embodiment, the master device is a device that determines the communication channel used in the network to which the master device belongs, and the slave device is a device that does not determine the communication channel used in the network to which the slave device belongs, but uses the communication channel determined by the master device.

[0028] P2P mode is a configuration in which the communication device 151 communicates directly with other devices such as the information processing device 101 without going through external devices that form a network. In this embodiment, P2P mode includes AP mode in which the communication device 151 operates as an access point. The access point connection information (SSID and password) enabled within the communication device 151 in AP mode can be arbitrarily set by the user. P2P mode may also include, for example, a WFD mode for the communication device 151 to communicate using Wi-Fi Direct (WFD). Which of the multiple WFD-compatible devices will operate as the master unit is determined according to a sequence such as Group Owner Negotiation. The master unit may be determined without performing Group Owner Negotiation (hereinafter abbreviated as GO Negotiation). A device that is WFD-compatible and also acts as the master unit is specifically called the Group Owner. A direct connection with other devices established by the communication device 151 operating in P2P mode is called a direct connection. In this embodiment, in a direct connection, the communication device 151 operates as the master unit, and the other devices operate as slave units. In this embodiment, the communication device 151 starts operating in P2P mode when an operation is performed to display a two-dimensional code for the information processing device 101 to acquire WEC-related information, which will be described later. However, the timing and conditions for starting operation in DPP mode are not limited to this. For example, operation in P2P mode may start when the communication device 151 is operating in the network setup mode, which will be described later, and receives a P2P mode transition instruction from the information processing device 101, or when a predetermined operation other than the operation for displaying the two-dimensional code is performed.

[0029] Furthermore, in this embodiment, the communication device 151 can operate in network setup mode, which is a mode for executing network setup of the communication device 151 using a predetermined communication protocol (setup communication protocol) by receiving a predetermined operation from the user. When the communication device 151 operates in network setup mode, it operates as a setup access point that is valid while operating in network setup mode by using the communication unit 156. This setup access point is a different access point from the access point that is enabled in AP mode as described above. The SSID of this setup access point shall contain a predetermined string that can be recognized by the setting application of the information processing device 101. Also, this setup access point shall be an access point that does not require a password to connect. In addition, the communication device 151 operating in network setup mode shall use the setup communication protocol in communication with the information processing device 101 connected to the setup access point. Specifically, the setup communication protocol is, for example, SNMP (Simple Network Management Protocol). After the communication device 151 starts operating in network setup mode, it stops operating in network setup mode and disables the setup access point once the timeout period for network setup mode 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 time, the likelihood of unauthorized devices requesting a connection increases. However, the setup access point may be an access point that requires a password. In that case, the password used to connect to the setup access point shall be a fixed (user-unchangeable) password that the configuration application has known in advance.

[0030] Furthermore, in this embodiment, the communication device 151 can also operate in a mode for performing network setup using a communication protocol different from the setup communication protocol, upon receiving a predetermined operation from the user. In this embodiment, the communication protocol different from the setup communication protocol is assumed to be the DPP described above, and this mode will be referred to as DPP mode. When the communication device 151 is operating in DPP mode and receives a DPP network setup request from the information processing device 101, it performs DPP network setup as described later. In other words, DPP mode is a mode that waits for DPP network setup requests. Also, after the communication device 151 starts operating in DPP mode, once the timeout period for DPP mode has elapsed, it stops operating in DPP mode and stops waiting for DPP network setup requests. The timeout period for DPP mode may be the same as the timeout period for network setup mode, or it may be longer or shorter than the timeout period for network setup mode. Furthermore, in this embodiment, the communication device 151 starts operating in DPP mode based on the operation to display a two-dimensional code for the information processing device 101 to acquire WEC-related information, which will be described later. In this embodiment, the operation to display the two-dimensional code is specifically, for example, pressing the start button, which will be described later. However, the timing and conditions for starting operation in DPP mode are not limited to this. For example, operation in DPP mode may start based on starting operation as network setup mode, or on the operation to start operation as network setup mode being performed.

[0031] The short-range wireless communication unit 157 is configured to wirelessly connect to devices such as the information processing device 101 at short range, and can, for example, connect to the short-range wireless communication unit 111 within the information processing device 101. Examples of communication methods include NFC, Bluetooth Classic, BLE, and Wi-Fi Aware.

[0032] RAM 153 is composed of SRAM and other components that require a backup power supply. Since RAM 153's data is held by a primary battery (not shown) for data backup, important data such as program control variables can be stored without being lost. RAM 153 also includes a memory area for storing setting information and management data for the communication device 151. Furthermore, RAM 153 is used as the main memory and work memory of the CPU 154, storing a receive buffer for temporarily saving print information received from the information processing device 101, and various other information.

[0033] ROM 152 stores fixed data such as control programs, data tables, and OS programs executed by CPU 154. In this embodiment, each control program stored in ROM 152 performs software execution control such as scheduling, task switching, and interrupt handling under the management of the embedded OS stored in ROM 152. CPU 154 is the system control unit and controls the entire communication device 151.

[0034] Based on information stored in the print engine 155 and RAM 153, and print jobs received from the information processing device 101, etc., an image is formed on the recording medium by applying a recording material such as ink to paper, and the print result is output. Generally, the amount of data for print jobs transmitted from the information processing device 101, etc. is large, so a communication method capable of high-speed communication is required for the communication of print jobs. For this reason, the communication device 151 receives print jobs via a communication unit 156 that is capable of high-speed communication than the short-range wireless communication unit 157. The display unit 158 ​​is, for example, a panel, and displays data and notifies the status of the communication device 151.

[0035] Furthermore, the communication device 151 may be equipped with an external HDD or SD card as an optional memory device, and the information stored in the communication device 151 may be stored in such memory.

[0036] In this embodiment, communication units 110 and 156 perform communication parameter sharing processing to share communication parameters between devices. Communication parameter sharing processing is the process by which the providing device provides communication parameters for wireless communication to the receiving device, and can be performed in both infrastructure mode and P2P mode. Here, communication parameters include, for example, wireless communication parameters necessary for wireless LAN communication, such as SSID (Service Set Identifier) ​​as a network identifier, encryption method, encryption key, authentication method, and authentication key. They also include identification information such as MAC address, password, IP address for communication at the IP layer, and information necessary for higher-level services. The communication parameter sharing processing performed by communication units 110 and 156 may be, for example, WPS (Wi-Fi Protected Setup) as defined by the Wi-Fi Alliance. Furthermore, the communication parameter sharing processing performed by communication units 110 and 156 may use a method that securely transfers communication parameters using public-key cryptography.

[0037] In this embodiment, the information processing device 101 further includes a barcode reading control unit and an imaging unit 112, which are not shown. The barcode reading control unit analyzes an image captured by the imaging unit 112, which is, for example, a camera, and obtains encoded code information. The barcode reading control unit performs analysis processing of code information such as barcodes, two-dimensional codes, and QR codes (registered trademarks).

[0038] Furthermore, the communication device 151 includes a barcode generation control unit. Although not shown in Figure 1, the barcode generation control unit is implemented, for example, by the CPU 154 executing a program. The barcode generation control unit generates code information such as barcodes, two-dimensional codes, and QR codes, and controls the display unit 158 ​​to display the generated code information. In this embodiment, the code information generated here is a two-dimensional code for obtaining WEC-related information to the information processing device 101. The barcode generation control unit displays a QR code or the like, which encodes the information necessary for setting communication parameters, on the display unit 158. The display unit 158 ​​may also be configured to display soft buttons or the like as an input interface for the user.

[0039] The operation of the communication system having the above configuration will be explained. In the following explanation, as an example, a configuration will be described in which a communication device 151 displays a QR code on a display unit 158, an information processing device 101 captures the QR code with an imaging unit 112, and wireless connections are made between the devices using the information of the captured QR code.

[0040] Figure 2 is a flowchart showing the display control and connection processes of the communication device 151. The processes in Figure 2 are realized, for example, when the CPU 154 reads a program stored in the ROM 152 into the RAM 153 and executes it.

[0041] In S200, when the user presses the start button displayed on the display unit 158 ​​of the communication device 151, the CPU 154 of the communication device 151 detects that the start button has been pressed, and in S201, displays a QR code on the display unit 158 ​​as imageable display information. The start button is displayed, for example, as a selectable menu item for displaying a QR code on the main menu. The QR code may also be displayed at a timing other than when the start button is pressed. For example, the QR code may be displayed when an instruction to display a QR code is received from an external device.

[0042] In this embodiment, the QR code includes at least the information necessary for communication in P2P mode and the information necessary for WEC. The information necessary for communication in P2P mode and the information necessary for WEC include, for example, information used for encryption when communicating communication parameters and device identification information, as information necessary for setting communication parameters. The information used for encryption when communicating communication parameters may be, for example, a public key or a certificate. The device identification information may be, for example, a MAC address or UUID (Universally Unique Identifier) ​​that uniquely identifies the device. The information necessary for setting communication parameters may also include other information, for example, an identifier indicating the communication parameter sharing process and identification information such as a one-time password method using a QR code. Specifically, the information necessary for WEC is, for example, WEC-related information. The information necessary for communication in P2P mode may include, for example, an Intent value used in the negotiation process to determine the group owner between devices. It may also include, for example, connection information (SSID and password) for connecting to the communication device 151 operating in P2P mode.

[0043] Next, in S202, the CPU 154 enables both the DPP mode and the P2P mode described above. Enabling the DPP mode allows the CPU 154 to wait for network setup requests via DPP from the information processing device 101. Enabling the P2P mode allows the CPU 154 to wait for connection requests from the information processing device 101. Note that S201 and S202 can be performed in any order, and may be processed in the reverse order shown in Figure 2.

[0044] In S203, the CPU 154 waits for a request to be sent from the information processing device 101, which read the QR code displayed in S201. This request is either a network setup request or a connection request via DPP as described above. This request is information based on the QR code displayed in S201. In other words, in S203, the CPU 154 waits for information based on the QR code displayed in S201. Then, in S204, the communication device 151 determines whether the received request is a network setup request via DPP or a connection request.

[0045] If it is determined in S204 that this is a connection request, the process to establish a Wi-Fi connection between the communication device 151 and the information processing device 101, which are operating in P2P mode, is initiated. Specifically, for example, in S205, the CPU 154 first performs GO Negotiation, which is a negotiation to determine whether to become the Wi-Fi Direct group owner or the client, which is the role of providing communication parameters. In GO Negotiation, for example, intent values ​​are exchanged between the devices as defined in Wi-Fi Direct, with the device with the larger value becoming the group owner and the device with the smaller value becoming the Wi-Fi Direct client. Also, as mentioned above, if the communication device 151 is operating in Autonamous GO mode, Group Owner Negotiation may be omitted. Furthermore, if the P2P mode is AP mode instead of WFD mode, Group Owner Negotiation may also be omitted.

[0046] In S207, the CPU 154 executes the communication parameter sharing process described above for sharing communication parameters between devices. In the communication parameter sharing process performed in S207, the communication parameters may be encrypted using a public-key cryptography scheme. In this case, the encrypted communication parameters may be communicated based on the information contained in the QR code displayed on the communication device 151. The communication parameters include, for example, connection information for connecting to the communication device 151 operating in P2P mode. After S207, the process proceeds to S208. On the other hand, if it is determined in S204 that the request from the information processing device 101 is a DPP network setup request, then in S206, a DPP network setup is performed between the communication device 151 and the information processing device 101, and communication parameters are shared between the devices. This process corresponds to the process executed by the communication device 151 in S401 and S402 described later. After S206, the process proceeds to S208.

[0047] In S208, the CPU 154 performs connection processing using the shared communication parameters. If a network setup request via DPP has been received, the connection processing performed here is the process of establishing a connection between the communication device 151 and the access point. This process corresponds to the process performed by the communication device 151 in S403, which will be described later. If a connection request has been received, the connection processing performed here is the process of establishing a connection between the communication device 151 and the information processing device 101, without going through an external access point.

[0048] Figure 3 is a flowchart of the processing of the information processing device 101. The processing in Figure 3 is achieved, for example, by the CPU 103 reading a program stored in the ROM 104 into the RAM 105 and executing it.

[0049] In S300, when the user presses the start button displayed on the display unit 108 of the information processing device 101, the CPU 103 of the information processing device 101 detects that the start button has been pressed. Then, in S301, the CPU 103 uses the imaging unit 112 to read the QR code for setting communication parameters displayed by the communication device 151. The start button is displayed, for example, on the connection settings screen of the settings application. The reading of the QR code may be triggered by a timing other than pressing the start button. For example, it may be set up so that reading is performed automatically when another user operation or when the presence of a QR code within the field of view of the imaging unit 112 is detected. Furthermore, if the captured QR code does not contain the information necessary to set communication parameters, the CPU 103 may notify an error and terminate the process in Figure 3. For example, if the captured QR code does not contain identification information, the device search process cannot be performed, so the CPU 103 may notify an error and terminate the process in Figure 3.

[0050] In S302, the CPU 103 determines whether the information processing device 101 is currently connected to an external access point. If it is determined in S302 that the information processing device 101 is not currently connected to an external access point, the CPU 103 starts the connection process to establish a direct connection with the communication device 151. The access point to which the information processing device 101 is currently connected is, in other words, the access point to which the information processing device 101 was connected at least when the start button was pressed (the setup operation was performed). In S303, the CPU 103 performs a device search process to search for the device indicated by the information contained in the QR code. If the device indicated by the information contained in the QR code is detected, in S304, the CPU 103 performs the device search process and the role determination process using GO Negotiation as defined by Wi-Fi Direct. As mentioned above, GO Negotiation may be omitted. Next, in S307, the CPU 103 performs a communication parameter sharing process to share communication parameters between devices.

[0051] On the other hand, if it is determined in S302 that the system is currently connected to an access point, in S305 the CPU 103 sends a DPP network setup request to the device indicated by the information contained in the QR code. Then, in S306, the CPU 103 performs DPP network setup processing with the device indicated by the information contained in the QR code. In this embodiment, the device indicated by the information contained in the QR code is assumed to be the communication device 151. The processing in S305 and S306 will be described later in Figure 4.

[0052] In this embodiment, as explained in Figure 2, the QR code read by S301 contains the information required for Wi-Fi Direct and the information required for WEC. Furthermore, in S302, the information processing device 101 decides whether to perform a Wi-Fi Direct connection or network setup using DPP depending on whether it is connected to an external access point. Therefore, the user does not need to choose between Wi-Fi Direct and WEC as the configuration method. Thus, the user does not need to know which configuration method to select. In addition, since the displayed QR code contains the information required for Wi-Fi Direct and the information required for WEC, the user does not need to set communication parameters corresponding to each configuration method. Therefore, the complexity of user operations such as setting communication parameters and selecting a configuration method can be reduced, and convenience can be improved.

[0053] In S308, the CPU 103 connects to the device indicated by the information contained in the QR code using the communication parameters shared between the devices via the DPP network setup process in S306 or the communication parameter sharing process in S307. After that, the process shown in Figure 3 is terminated.

[0054] In this embodiment, if it is determined in S302 that the system is connected to an external access point, then in S308, the communication device 151 and the information processing device 101 will be connected via the external access point. On the other hand, if it is determined in S302 that the system is not connected to an external access point, then in S308, the communication device 151 and the information processing device 101 will be connected directly without going through the external access point.

[0055] Next, using Figure 4, the process by which the WEC connection is executed by the information processing device 101 and the communication device 151 will be explained in S206, S208, S305, S306, and S308. The processing of the information processing device 101 shown in Figure 4 is realized, for example, by the CPU 103 reading a program stored in ROM 104 into RAM 105 and executing it. Similarly, the processing of the communication device 151 shown in Figure 4 is realized, for example, by the CPU 154 reading a program stored in ROM 152 into RAM 153 and executing it.

[0056] In S400, the information processing unit 101 starts WEC using DPP through the functions of the OS. Specifically, the information processing unit 101 first starts the WEC application program (hereinafter referred to as the WEC application) by instructing the OS from the configuration application to start the WEC application. As a result, the WEC application runs in the foreground and the configuration application runs in the background. For example, the execution of this instruction corresponds to the instruction to execute WEC. As a result, the information processing unit 101 displays the WEC start screen by the WEC application. The WEC application is a program that is pre-installed on the information processing unit 101 and is provided by the OS vendor of the information processing unit 101. When the WEC application is started, WEC-related information acquired by the configuration application is provided to the WEC application. Figure 9 is an example of the WEC start screen displayed by the WEC application. The WEC start screen 900 displays areas 901, 902, and 903. Area 901 is for changing the access point set as the target for WEC configuration. Before area 901 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 901 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 list of access points may include, for example, access points discovered by the information processing device 101 through AP search or access points to which the information processing device 101 has previously connected. Area 902 is for canceling the execution of WEC, and area 903 is for instructing the execution of WEC. When area 902 is operated, the information processing device 101 terminates the processing in this sequence diagram. In this case, WEC is considered to have failed. Also, when area 903 is pressed, the information processing device 101 proceeds to S401.

[0057] In S401, the WEC application executes a WEC API using WEC-related information and information about access points configured as targets for WEC configuration, thereby instructing the OS to execute WEC. Then, the OS performs a process called DPP Authentication between the information processing device 101 and the communication device 151. In DPP Authentication, authentication information and information used for information encryption are communicated between the information processing device 101 and the communication device 151 to authenticate communication between the devices. In DPP Authentication, various information transmitted from the information processing device 101 is encrypted based on WEC-related information obtained by the information processing device 101 by reading the QR code displayed by the communication device 151. Specifically, in DPP Authentication, the information processing device 101 first sends an Authentication Request as a DPP network setup request. Next, the communication device 151, which is operating in DPP mode, receives the Request sent from the information processing device 101 because it is operating in DPP mode, which is a mode that listens for Authentication Requests. Upon receiving an Authentication Request, the communication device 151 attempts to decrypt the received Request using the decryption key it currently possesses. If the decryption is successful, the communication device 151 sends an Authentication response to the information processing device 101, thereby authenticating communication with the information processing device 101. However, if the information processing device 101 has not been able to obtain accurate WEC-related information and has not been able to encrypt the information accurately, the decryption by the communication device 151 will fail, authentication will fail, and no Authentication response will be sent. DPP Authentication is completed when the information processing device 101 receives the Authentication response. Furthermore, DPP is used to execute communication during DPP Authentication.

[0058] Next, in S402, the OS performs a process called DPP Configuration between the information processing device 101 and the communication device 151. In DPP Configuration, the information processing device 101 sends connection information to the communication device 151 for connecting to the access point configured as a target for WEC configuration. The connection information includes the SSID, password, and encryption method of the access point configured as a target for WEC configuration. The password sent at this time is the information that the user entered on the screen displayed by the OS-compatible application when the connection between the information processing device 101 and the external access point was established. The entered password is information that the OS has held since the connection between the information processing device 101 and the external access point was established, and is not information that the configuration application holds. Therefore, since the password sent in S402 is information that the OS already holds, it does not need to be entered again by the user on the screen displayed by the configuration application.

[0059] According to this embodiment, as shown in Figure 4, by transmitting connection information via WEC, the password can be sent to the communication device via secure communication without requiring the user to enter a password again on the screen displayed by the configuration application. In addition, communication is performed via DPP in DPP Configuration.

[0060] In S403, the communication device 151 switches to infrastructure mode. At this time, the communication device 151 may also exit DPP mode. The communication device 151 then attempts to connect to the access point corresponding to the connection information obtained by WEC. If the connection is successful, the communication device 151 can then perform communication via the network formed by the connected access point.

[0061] Communication via the network formed by the connected access points is performed using a protocol different from DPP (specifically, for example, Port9100, SNMP, or a communication device vendor's proprietary protocol). The communication device 151 may also transmit information to the information processing device 101 indicating whether the connection with the access point corresponding to the connection information obtained by WEC was successful or not. Furthermore, if the connection with the access point corresponding to the connection information obtained by WEC fails, information indicating the cause of the failure may also be transmitted to the information processing device 101. These information transmissions may also be performed using DPP. Reasons for connection failure with the access point corresponding to the connection information obtained by WEC include, for example, a communication error in WEC, or the access point not being found. Also, for example, the information contained in the QR code obtained from the communication device 151 may not be appropriate. Also, for example, the encryption method used for connecting to the access point configured as a target for WEC may not be supported by the communication device 151. Also, for example, the encryption method used for connecting to the access point configured as a target for WEC may not be supported by WEC.

[0062] In S404, the information processing device 101 switches the application running in the foreground from the WEC application to the configuration application based on the completion of WEC execution. The information processing device 101 then searches for the communication device 151 on the network to which it belongs. This process is carried out by the configuration application, which has received notification from the OS that WEC execution has finished. When the information processing device 101 finds the communication device 151, it requests capability information from the communication device 151, and the communication device 151 sends the capability information to the information processing device 151. As a result, the information of the communication device 151 is registered in the configuration application, and thereafter, communication with the communication device 151 can be performed by the configuration application. Specifically, for example, the configuration application can send a print job to the communication device 151. At this time, if the information processing device 101 belongs to the network formed by the access point to which the communication device 151 is connected via WEC, communication with the communication device 151 can be performed via that access point. Furthermore, if communication between the information processing device 101 and the communication device 151 is not possible, for example, if the access point to which the communication device 151 is connected is not the same access point to which the information processing device 101 is connected, the request and acquisition of capability information are omitted. Note that the communication in S404 is performed using a communication protocol different from DPP, for example. After that, the information processing device 101 terminates the process shown in Figure 4. In the above description, the WEC start screen is displayed by the WEC application, and the WEC application instructs the OS to execute WEC by executing the WEC API, but the system is not limited to this configuration. For example, the WEC start screen may be displayed by a configuration application. Alternatively, the configuration application may instruct the OS to execute WEC by executing the WEC API.

[0063] As described above, according to this embodiment, the communication device 151 displays a QR code containing communication parameters necessary for multiple connection methods as imageable display information, and the communication parameters necessary for each of the multiple connection methods are shared when the information processing device 101 captures an image. When a connection is made between devices using one of the multiple connection methods, the information processing device 101 determines the connection method depending on whether or not it is connected to an external access point. Then, by notifying the communication device 151 of the connection method, a connection is made between the information processing device 101 and the communication device 151. With such a configuration, the user does not need to select a connection method or an access point to connect to. Therefore, it is possible to prevent the user from selecting an incorrect connection method or an incorrect access point, which would result in the connection method being executed by the device displaying the QR code and the device it is connecting to being different, making it impossible to connect correctly.

[0064] According to this embodiment, for example, even if the user does not understand the difference between connection methods, the connection method is determined according to the connection status of the information processing device 101 to the external access point, thus preventing unintended connection states. For example, consider a case where the information processing device 101 is a smartphone and the communication device 151 is a printer, and the user has connected their smartphone to their home router, which is an access point, and tries to connect the printer to the smartphone. In this case, if the user does not understand the difference between network setup by WEC and establishing a direct connection by Wi-Fi, and unintentionally selects the process to perform the latter, the smartphone will no longer be connected to the router and will connect to the printer without going through the router. In this case, if the user does not understand that the smartphone will no longer be connected to the router, it is conceivable that the smartphone will not be able to communicate with the internet via the router, and the user may incur unintended internet charges via mobile communication. However, according to this embodiment, if the smartphone is connected to the router, the user does not need to select a connection method, so it is not necessary for the user to understand the connection method. In other words, by scanning the QR code displayed on the printer with the smartphone, the printer is connected to the router, and the smartphone remains connected to the router. Therefore, it is possible to prevent situations where the user is connected in an unintended state, resulting in the incurring of internet charges via mobile data.

[0065] [Second Embodiment] The second embodiment will now be described in terms of its differences from the first embodiment. In the first embodiment, it was explained that the information processing device decides whether to perform network setup by WEC or establish a direct connection by Wi-Fi depending on whether or not it is connected to an external access point. In this embodiment, the information contained in the QR code to be displayed is varied depending on the device status of the communication device 151.

[0066] Figure 5 is a flowchart showing the display control processing and connection processing of the communication device 151 in this embodiment. The processing in Figure 5 is realized, for example, by the CPU 154 reading a program stored in ROM 152 into RAM 153 and executing it. In the processing in Figure 5, if the number of information processing devices 101 that can be connected to the communication device 151 via Wi-Fi Direct is limited, the information contained in the QR code to be displayed is changed according to the device status of the communication device 151.

[0067] In S500, when the user presses the start button displayed on the display unit 158 ​​of the communication device 151, the CPU 154 of the communication device 151 detects that the start button has been pressed. In S501, the CPU 154 determines whether the number of devices that can connect via Wi-Fi Direct has reached its limit. If it is determined in S501 that the limit has been reached, in S502, the CPU 154 displays a QR code for DPP network setup on the display unit 158 ​​to prevent Wi-Fi Direct connections. The displayed QR code contains the information necessary for WEC, but not the information necessary for Wi-Fi Direct. Then, in S503, the CPU 154 enables DPP mode. In S504, request waiting processing is performed as in S203, and the CPU 154 waits for a DPP network setup request from the information processing device 101. Note that S503 and S504 are not in any order and may be processed in the reverse order.

[0068] On the other hand, if S501 determines that the number of connected devices has not reached the limit, it is possible to connect via Wi-Fi Direct. Therefore, the same processing as S201 to S208 in Figure 2 is performed in S505 to S512.

[0069] As described above, according to this embodiment, a QR code corresponding to the Wi-Fi Direct connection status of the communication device 151 is displayed. With such a configuration, the user does not need to consider the status of the communication device 151 when deciding on the connection method, thereby improving convenience.

[0070] Furthermore, in S501, it was explained that the QR code is determined using the number of Wi-Fi Direct connections. However, if the information used to determine whether or not the communication device 151 can connect via Wi-Fi Direct is other information than the number of Wi-Fi Direct connections, then that information may be used for the determination.

[0071] [Third Embodiment] The third embodiment will now be described in terms of its differences from the first and second embodiments. In this embodiment, the information contained in the QR code to be displayed is varied according to the radio wave strength of the access point detected by the communication device 151.

[0072] Figure 6 is a flowchart showing the display control processing and connection processing of the communication device 151 in this embodiment. The processing in Figure 6 is realized, for example, by the CPU 154 reading a program stored in the ROM 152 into the RAM 153 and executing it.

[0073] In S600, when the user presses the start button displayed on the display unit 158 ​​of the communication device 151, the CPU 154 of the communication device 151 detects that the start button has been pressed. In S601, the CPU 154 performs access point discovery processing. In S602, the CPU 154 determines whether the radio wave strength of the access point detected as a result of the discovery is above a certain value. Specifically, radio wave strength can be expressed as SNR (Signal Noise Ratio) as an example.

[0074] If S602 determines that the signal strength is not above a certain value, in S603 the CPU 154 displays a QR code for Wi-Fi Direct on the display unit 158 ​​to prevent network setup via DPP. In other words, in WEC, if the signal strength between the communication device 151 and the access point is low, there is a possibility that the communication device 151 may fail to connect to the access point after WEC starts. Therefore, in S602, a QR code for Wi-Fi Direct is displayed on the display unit 158 ​​to enable Wi-Fi Direct connection. Note that the QR code displayed here contains the information necessary for Wi-Fi Direct, but not the information necessary for WEC. Then, in S604, the CPU 154 enables P2P mode. In S605, request waiting processing is performed as in S203, and the CPU 154 waits for a Wi-Fi Direct connection request from the information processing device 101. Note that S604 and S605 are not in any order and may be processed in the reverse order.

[0075] If multiple access points are detected in S601, the process may proceed to S606 if the signal strength of at least one access point is above a certain value in S602. In this case, the identification information of the access point that satisfies the determination condition should be included in the QR code. For example, if the QR code is scanned and analyzed by the information processing device 101, and as a result, information of the access point to which the information processing device 101 is connected is detected, the information processing device 101 will send a DPP network setup request.

[0076] On the other hand, if S602 determines that the signal strength is above a certain value, it is possible to perform network setup using DPP. Therefore, the same process as S201 to S208 in Figure 2 is executed in S606 to S613. After that, the process in Figure 6 is terminated.

[0077] As described above, according to this embodiment, a QR code corresponding to the status of the communication device 151's connection to the access point is displayed. With such a configuration, the user does not need to consider the status of the communication device 151 when deciding on the connection method, thereby improving convenience.

[0078] In addition, it was explained that in S602, the QR code is determined by determining whether or not the radio wave strength is below a certain value. However, if the information is to determine whether or not the communication device 151 can perform network setup using DPP, then other information may be used instead of radio wave strength for the determination.

[0079] [Fourth Embodiment] The third embodiment will now be described in terms of its differences from the first to third embodiments. In this embodiment, if a connection via Wi-Fi Direct is not possible and network setup via DPP is not possible, a QR code containing specific information will be displayed.

[0080] Figure 7 is a flowchart showing the display control processing and connection processing of the communication device 151 in this embodiment. The processing in Figure 7 is realized, for example, by the CPU 154 reading a program stored in the ROM 152 into the RAM 153 and executing it.

[0081] In S700, when the user presses the start button displayed on the display unit 158 ​​of the communication device 151, the CPU 154 of the communication device 151 detects that the start button has been pressed. In S701, the CPU 154 determines whether the maximum number of devices that can connect via Wi-Fi Direct has been reached. If it is determined in S701 that the maximum number of connections has been reached, Wi-Fi Direct connection is not possible, so in S702, the CPU 154 performs an access point discovery process.

[0082] In S703, the CPU 154 determines whether the signal strength of the access point detected as a result of the search is above a certain value. If it is determined in S703 that the signal strength of the access point searched is not above a certain value, in S704, the CPU 154 displays a QR code containing URL information. Here, the URL information is information that indicates a URL to which manuals for the communication device 151 or the information processing device 101 can be accessed, for example.

[0083] The information processing device 101 reads the QR code displayed on the communication device 151, analyzes the URL information contained in the QR code, and displays the manual on the display unit 108 of the information processing device 101 using a browser or the like. For example, the manual may notify the user of the current status of the communication device 151 and display the procedure for setting up the device to enable network setup via Wi-Fi Direct or DPP. This allows the user to be notified that connection is not possible and to be presented with information on how to set up the device to enable network setup via Wi-Fi Direct or DPP.

[0084] While S704 uses a QR code as an example, the information displayed on the communication device 151 does not have to be a QR code; it could be a message such as a warning, or a 2D code, etc. Here, as an example of displaying a QR code containing URL information for manuals, etc., we have explained an example where the number of Wi-Fi Direct connected devices and the signal strength of the discovered access points are used as the criteria for determination. However, other device statuses may also be used as criteria for determining whether to display a QR code containing URL information for manuals, etc. For example, if it is determined that the communication device 151 has been locked by a user managing the communication device 151 to prevent network setup via Wi-Fi Direct or DPP, a QR code containing URL information for manuals, etc. may be displayed. Also, if the communication device 151 is in a preparation state, for example, if it is determined that the hardware has not been initialized, a QR code containing URL information for manuals, etc. may be displayed.

[0085] If S701 determines that the number of Wi-Fi Direct connections has not reached the maximum limit, the same process as S201-S208 in Figure 2 is executed in S708-S715. Also, if S703 determines that the access point's signal strength is above a certain value, the same process as S502-S504 in Figure 5 is executed in S705-S707. After the process in S707, S713 is executed.

[0086] The QR code displayed by the communication device 151 may include URL information for manuals, etc., not only in S704 but also in S705 and S708. With such a configuration, when the information processing device 101 fails to connect using any of the methods, the display unit 158 ​​of the information processing device 101 can display manuals, etc.

[0087] As described above, according to this embodiment, if the communication device 151 is in a state where it cannot perform any connection method, it can display a QR code that allows access to information that can resolve that state.

[0088] Furthermore, although the determination process in S701 is performed before the determination process in S703 in Figure 7, the configuration is not limited to this. Below, another example of Figure 7 is described. For example, when the process in Figure 7 starts, first, an access point discovery process is performed to determine whether the signal strength of the access point is above a certain value. If it is determined that the signal strength of the access point is above a certain value, it is determined whether the number of Wi-Fi Direct connections has reached the upper limit. If it is determined that the upper limit has been reached, the processes S502~S504, S510, and S512 for network setup by DPP are performed. On the other hand, if it is determined that the upper limit has not been reached, the processes S201~S208 are performed.

[0089] On the other hand, if the access point's signal strength is determined to be below a certain level, the system determines whether the number of Wi-Fi Direct connections has reached the maximum limit. If it is determined that the maximum limit has not been reached, the S205, S207, and S208 processes for Wi-Fi Direct connection are performed. On the other hand, if it is determined that the maximum limit has been reached, a QR code containing URL information such as manuals is displayed, similar to S704.

[0090] [Fifth Embodiment] The fifth embodiment will now be described in terms of its differences from the first to fourth embodiments. In the configuration of the communication device 151 in the first embodiment, the QR code read by the information processing device 101 contains the information required for Wi-Fi Direct and the information required for WEC. In the configurations of the communication device 151 in the second to fourth embodiments, there are cases in which the QR code contains only one of the above information, cases in which the QR code contains both of the above information, and cases in which it contains error information. In this embodiment, in the case of the configuration of the communication device 151 in the second to fourth embodiments, the information processing device 101 appropriately establishes a wireless connection with the communication device 151 using Wi-Fi Direct or WEC depending on which of the above cases the QR code corresponds to.

[0091] In this embodiment, the information processing device 101 is configured to identify which of the above cases the read QR code corresponds to. For example, the communication device 151 may add identification information indicating the type of QR code in addition to the connection method information to a predetermined area of ​​the QR code, depending on the type of QR code to be displayed. Alternatively, the communication device 151 may add identification information corresponding to each connection method information and error information to a predetermined area of ​​the QR code. By referring to a predetermined area of ​​the read QR code, the information processing device 101 can identify which of the above cases the QR code corresponds to.

[0092] Figure 8 is a flowchart of the processing of the information processing device 101 in this embodiment. The processing in Figure 8 is achieved, for example, by the CPU 103 reading a program stored in the ROM 104 into the RAM 105 and executing it.

[0093] In S800, when the user presses the start button displayed on the display unit 108 of the information processing device 101, the CPU 103 of the information processing device 101 detects that the start button has been pressed, and in S801, the imaging unit 112 reads the QR code for setting communication parameters displayed by the communication device 151. Here, the reading of the QR code may be triggered by a timing other than pressing the start button. For example, it may be set up so that reading is performed automatically when another user operation or the detection of a QR code within the field of view of the imaging unit 112 is triggered. Also, if the captured QR code does not contain the information necessary to set the communication parameters, the CPU 103 may notify an error information and terminate the process shown in Figure 8.

[0094] In S802, the CPU 103 determines whether the scanned QR code is a QR code for network setup using DPP. If it is determined in S801 that it is a QR code for network setup using DPP, the process proceeds to S803. If the QR code is determined to be a QR code for network setup using DPP, it indicates that the communication device 151 is unable to establish a Wi-Fi Direct connection for some reason, such as a limit on the number of connected devices. Therefore, the information processing device 101 executes the process for network setup using DPP.

[0095] In S803, the CPU 103 determines whether or not it is currently connected to an external access point. If S803 determines that it is not currently connected to an external access point, in S804, the CPU 103 connects to an external access point. For example, an access point that has been previously connected to through access point discovery, that is, an access point corresponding to the access point information (SSID, password, etc.) held in the information processing device 101, may be determined as the access point to connect to here. Such a configuration eliminates the need for the user to select an access point and enter a password, thereby improving convenience. The access point to connect to may also be determined by other methods. For example, the communication device 151 may include information (SSID, password, etc.) of an access point whose radio signal strength is determined to be above a certain value in S703 of Figure 7 in a QR code displayed on the display unit of the communication device 151. Furthermore, the access point corresponding to the information included in the QR code may be determined based on other conditions. For example, it may be determined based on whether or not the communication device 151 has previously connected to that access point. The CPU 103 of the information processing device 101 then analyzes the access point information in S804 from the read QR code. At this time, the CPU 103 may determine the access point that satisfies the conditions based on the analysis results as the destination access point. For example, the CPU 103 may determine the access point to be connected to as the destination access point, which corresponds to the access point information (SSID, password, etc.) held in the information processing device 101. The above configuration does not require user selection or password input, but the user may be allowed to select the destination access point. For example, the CPU 103 may search for external access points, display the searched access points on the display unit 108 of the information processing device 101, and allow the user to select one. Alternatively, the access point with the strongest radio signal strength when an access point search is performed may be determined as the destination access point.In this case, it may be required that information about the access point is stored within the information processing device 101.

[0096] If S803 determines that a connection to an external access point is being made, the DPP network setup process is performed. That is, the same processes as S305, S306, and S308 in Figure 3 are executed in S805-S807. After that, the process shown in Figure 8 is terminated.

[0097] If S802 determines that the QR code is not a QR code for network setup via DPP, then in S808, the CPU 103 determines whether the QR code is a QR code for Wi-Fi Direct connection. If it is determined to be a QR code for Wi-Fi Direct connection, the process proceeds to S809. If the QR code is determined to be a QR code for Wi-Fi Direct connection, it indicates that the communication device 151 is unable to perform network setup via DPP for some reason, such as radio wave conditions.

[0098] In S809, the CPU 103 determines whether the information processing device 101 is in a state where it can perform Wi-Fi Direct connection processing. For example, it may determine that the information processing device 101 is in a state where it can perform Wi-Fi Direct connection processing if it is not connected to an external access point. If it is connected to an external access point, the CPU 103 may display a message on the display unit 108 of the information processing device 101 prompting it to perform a Wi-Fi Direct connection. Such a configuration can prevent the user from entering an unintended connection state.

[0099] If S809 determines that the information processing device 101 is ready to perform Wi-Fi Direct connection processing, the process for Wi-Fi Direct connection is performed. That is, the same processes as S304, S304, S307, and S308 in Figure 3 are performed in S810 to S813. After that, the process shown in Figure 8 is terminated.

[0100] On the other hand, if S809 determines that the information processing device 101 is not in a state to perform Wi-Fi Direct connection processing, in S815 the CPU 103 displays a message on the display unit 108 notifying that Wi-Fi Direct connection and DPP network setup could not be performed. In this case, for example, if the information processing device 101 is connected to an external access point, the display unit 108 of the information processing device 101 may display a message prompting the user to perform a Wi-Fi Direct connection and the procedure for doing so. The procedure may be displayed as a manual via a browser or the like. With such a configuration, it is possible to prevent the user from entering an unintended connection state and to perform a connection according to the status of the communication device 151. After S815, the process shown in Figure 8 is terminated.

[0101] If S808 determines that the QR code is not a QR code for Wi-Fi Direct connection, then in S814, the CPU 103 determines whether the QR code is an error display QR code. If it is determined to be an error display QR code, in S815, the CPU 103 analyzes the URL contained in the QR code and displays a manual on the display unit 108 of the information processing device 101 using a browser or the like. The manual is, for example, a manual that shows the operating procedures for setting up the communication device 151 to the necessary state for network setup using Wi-Fi Direct or DPP.

[0102] On the other hand, if S814 determines that the QR code is not an error code, it means that the QR code contains the information required for Wi-Fi Direct and the information required for WEC. In other words, the communication device 151 is in a state where network setup by DPP and Wi-Fi Direct can be executed. Therefore, the same processing as that from S302 onwards in Figure 3 of the first embodiment is performed in S816.

[0103] In Figure 8, the determination of whether or not a QR code is for DPP network setup is performed first, followed by the determination of whether or not it is a QR code for Wi-Fi Direct connection. However, the configuration is not limited to this. For example, the determination of whether or not it is a QR code for Wi-Fi Direct connection may be performed first. In that case, if it is determined that it is not a QR code for Wi-Fi Direct connection, the determination of whether or not it is a QR code for DPP network setup is performed. If it is determined that it is not a QR code for DPP network setup, the processing from S814 onwards is performed.

[0104] As described above, according to this embodiment, the communication device 151 displays a QR code containing the communication parameters necessary for multiple connection methods, and the communication parameters are shared when the information processing device 101 captures an image. Then, a connection is made between the devices using one of the multiple connection methods. At that time, even if the communication device 151 is in a state where it cannot connect using any of the multiple connection methods, a connection is made between the devices using a connection method corresponding to the state of the communication device 151, triggered by the information processing device 101 capturing an image.

[0105] Therefore, even if the communication device 151 is unable to connect using any of the multiple connection methods, the user does not need to select a connection method or access point to connect to. In other words, it is possible to prevent the user from selecting the wrong connection method or access point, which would result in a different connection method being used with the device being connected to, and thus prevent a proper connection from being established. Furthermore, even if the user does not understand the differences between connection methods, the connection method is determined according to the state of the communication device 151 and the information processing device 101, thus preventing the user from entering an unintended connection state.

[0106] Furthermore, even if the communication device 151 is unable to connect using any of the multiple connection methods, the information processing device 101 will display that status of the communication device 151. Also, if a connection cannot be performed due to the status of the information processing device 101, the information processing device 101 will display that status. In addition, a manual will be displayed in a browser or similar interface during these displays. This will, for example, show the method for restoring the device status necessary for connection, depending on the status of the communication device 151 and the information processing device 101. Therefore, it is possible to prevent situations where the user is unable to restore the device because they do not understand how to restore it, and thus cannot connect correctly.

[0107] The embodiments described above describe a configuration in which information for setting communication parameters is shared between devices using a QR code image. However, wireless communication such as NFC or Bluetooth® may be used instead of scanning a QR code. Wireless communication such as IEEE 802.11ad or TransferJet® may also be used. Furthermore, barcodes or two-dimensional codes may be used instead of QR codes. In addition, information in a user-readable format, such as text information, may be used instead of machine-readable information such as QR codes. Furthermore, although the embodiments described the case in which communication between devices is performed by IEEE 802.11 compliant wireless LAN communication, the invention is not limited to this. For example, it may be implemented using wireless communication media such as Wireless USB, MBOA, Bluetooth®, UWB (Ultra Wide Band), ZigBee, or NFC. Here, MBOA is an abbreviation for Multi Band OFDM Alliance. Note that UWB includes Wireless USB, Wireless 1394, WiNET, etc.

[0108] Furthermore, in the above-described embodiment, WEC was used to transmit connection information for connected APs, but the system is not limited to this configuration. Connection information for APs other than connected APs may be transmitted, or a determination may be made regarding APs other than connected APs. Specifically, an AP other than a connected AP may be, for example, an access point to which the information processing device 101 was not connected at the time the configuration operation was performed, but which the information processing device 101 had connected to at some point before the configuration operation was performed. Alternatively, it may be an access point selected by the user from a list of access points to which the information processing device 101 has connected at some point. This is because any connection information for an access point to which the information processing device 101 has connected at some point, and which is stored in the OS, can be transmitted by WEC.

[0109] Furthermore, although the above-described embodiment performed network setup using DPP, it is not limited to this form. For example, HTTP (Hyper Text Transfer Protocol) may be used instead of DPP. Also, the communication device 151 may operate in a mode for performing network setup using a protocol other than DPP, instead of DPP mode. In other words, any function that performs network setup based on information obtained by reading a QR code may be used to perform network setup using a function other than WEC.

[0110] The present invention can also be realized by supplying a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC) that implements one or more functions.

[0111] The invention is not limited to the embodiments described above, and various modifications and variations are possible without departing from the spirit and scope of the invention. Accordingly, claims are attached to disclose the scope of the invention. [Explanation of Symbols]

[0112] 101 Information Processing Unit: 103, 154 CPU: 104, 152 ROM: 105, 153 RAM: 151 Communication Device

Claims

1. A computer in a communication device that can communicate with an information processing device, Display control means for displaying a first two-dimensional code on a display unit so that the information processing device can capture it, which includes both first information used for communication to establish a wireless connection between the information processing device and the communication device using a first connection method and an external access point different from the communication device, and second information for establishing a wireless connection between the information processing device and the communication device using a second connection method that does not go through the external access point. Receiving means for receiving a transmission request from the information processing device based on the first information or the second information, A communication means that performs communication for establishing a wireless connection using the first connection method based on the request transmitted based on the first information, A first connection means for establishing a wireless connection according to the first connection method, based on communication for establishing a wireless connection according to the first connection method, A second connection means for establishing a wireless connection using the second connection method based on the request transmitted based on the second information, A program characterized by being designed to function as such.

2. The program according to claim 1, characterized in that the display control means causes the first two-dimensional code to be displayed on the display unit when the communication device is in a first state, and causes the second two-dimensional code, which includes either the first information or the second information but does not include the other, to be displayed on the display unit when the communication device is in a second state.

3. The program according to claim 2, characterized in that the first state is a state in which both communication for establishing a wireless connection using the first connection method and wireless connection using the second connection method are possible.

4. The program according to claim 2 or 3, characterized in that the second state is a state in which neither communication for establishing a wireless connection by the first connection method nor wireless connection by the second connection method is possible.

5. The communication device is further configured to function as a determination means for determining whether it is in the first state or the second state. The display control means causes the display unit to display the first two-dimensional code or the second two-dimensional code based on the result of the determination by the determination means. The program according to any one of claims 2 to 4.

6. The program according to claim 5, characterized in that the determination means determines whether the communication device is in the first state or the second state based on at least one of the radio wave intensity and the number of devices already connected by the second connection method.

7. To further enhance its functionality as a search method for finding external access points, If the radio wave intensity detected from the access point searched by the search means is not above a certain value, the determination means determines that the communication device is in the second state, and the display control means causes the display unit to display the second two-dimensional code which includes the second information but does not include the first information. L according to feature 6.

8. The program according to claim 6 or 7, characterized in that, if the number of devices already connected by the second connection method reaches the upper limit, the determination means determines that the communication device is in the second state, and the display control means causes the display unit to display the second two-dimensional code which includes the first information but does not include the second information.

9. The program according to any one of claims 1 to 8, characterized in that, if the communication device is in a state where neither wireless connection by the first connection method nor wireless connection by the second connection method is possible, the display control means causes a two-dimensional code containing error information to be displayed on the display unit.

10. The program according to any one of claims 1 to 9, characterized in that the first information and the second information include identification information of the communication device.

11. In establishing a wireless connection using the first connection means and the second connection means, communication parameters are communicated between the communication device and the information processing device. The first information and the second information are information used for encrypting the communication parameters. The program according to any one of claims 1 to 10.

12. The program according to claim 11, characterized in that the information used for encrypting the aforementioned communication parameters includes at least one of a public key and a shared key.

13. The program according to claim 11 or 12, characterized in that the communication parameters include at least one of a network identifier and information for authentication.

14. The program according to any one of claims 11 to 13, characterized in that the communication for establishing a wireless connection by the first connection method is communication performed by DPP (Device Provisioning Protocol).

15. The program according to claim 14, characterized in that the communication performed by DPP (Device Provisioning Protocol) is the communication of the communication parameters.

16. The program according to any one of claims 11 to 15, characterized in that the second connection method is a WFD (Wi-Fi Direct) connection method.

17. The program according to any one of claims 1 to 16, characterized in that the communication device is a printer.

18. A method performed in a communication device capable of communicating with an information processing device, A display control step in which the information processing device displays a first two-dimensional code on a display unit so that the information processing device can capture it, which includes both first information used for communication to establish a wireless connection between the information processing device and the communication device using a first connection method and an external access point different from the information processing device and the communication device, and second information for establishing a wireless connection between the information processing device and the communication device using a second connection method that does not go through the external access point. A receiving step of receiving a transmission request from the information processing device based on the first information or the second information, A communication step in which communication for establishing a wireless connection using the first connection method is performed based on the request transmitted based on the first information, A first connection step of establishing a wireless connection using the first connection method based on communication for establishing a wireless connection using the first connection method, A second connection step, which establishes a wireless connection using the second connection method based on the request transmitted based on the second information, A method characterized by having the following:

19. A communication device capable of communicating with an information processing device, A display control means causes the information processing device to display a first two-dimensional code on a display unit so that the information processing device can capture it, which includes both first information used for communication to establish a wireless connection between the information processing device and the communication device using a first connection method and a second information for establishing a wireless connection between the information processing device and the communication device using a second connection method that does not go through the external access point. Receiving means for receiving a transmission request from the information processing device based on the first information or the second information, A communication means that performs communication for establishing a wireless connection using the first connection method based on the request transmitted based on the first information, A first connection means for establishing a wireless connection according to the first connection method, based on communication for establishing a wireless connection according to the first connection method, A second connection means for establishing a wireless connection using the second connection method based on the request transmitted based on the second information, A communication device characterized by comprising:

20. A computer of a communication device and an information processing device capable of communication, Acquisition means for capturing an image of a two-dimensional code displayed on the display unit of the communication device and acquiring information contained in the two-dimensional code. When the acquisition means has acquired both first information used for communication to establish a wireless connection between the communication device and an external access point different from the information processing device and the communication device using a first connection method, and second information for establishing a wireless connection between the information processing device and the communication device using a second connection method that does not go through the external access point, the decision means determines, based on the connection status between the information processing device and the external access point, whether to make a first request to the communication device, which is a request for communication using the first information to establish a wireless connection between the communication device and the external access point using the first connection method, or to make a second request to the communication device, which is a request for establishing a wireless connection between the communication device and the information processing device using the second information and the second connection method. Request means for making the first request or the second request to the communication device based on the decision made by the decision means, A program designed to function as such.

21. The program according to claim 20, characterized in that, if both the first information and the second information are acquired by the acquisition means, the request means makes the first request to the communication device if there is an external access point connected to the information processing device, and makes the second request to the information processing device if there is no external access point connected to the information processing device.

22. The program according to claim 20, wherein if the two-dimensional code includes information indicating that the communication device is capable of performing either a wireless connection using the first connection method or a wireless connection using the second connection method, the decision by the decision means is made based on that information.

23. The program according to claim 22, further characterized in that, if the two-dimensional code contains information indicating that the communication device is unable to perform either the first connection method or the second connection method, it functions as a display control means that causes the display unit of the information processing device to display information indicating an error based on said information.

24. An information processing device capable of communicating with a communication device, An acquisition means for capturing an image of a two-dimensional code displayed on the display unit of the communication device and acquiring information contained in the two-dimensional code, When the acquisition means has acquired both first information used for communication to establish a wireless connection between the communication device and an external access point different from the information processing device and the communication device using a first connection method, and second information for establishing a wireless connection between the information processing device and the communication device using a second connection method that does not go through the external access point, the decision means determines, based on the connection status between the information processing device and the external access point, whether to make a first request to the communication device, which is a request for communication using the first information to establish a wireless connection between the communication device and the external access point using the first connection method, or to make a second request to the communication device, which is a request for establishing a wireless connection between the communication device and the information processing device using the second information and the second connection method, even without a user selection of a connection method. A request means that makes the first request or the second request to the communication device based on the decision made by the determination means, An information processing device characterized by comprising:

25. A method to be performed in an information processing device that can communicate with a communication device, An acquisition step of capturing an image of a two-dimensional code displayed on the display unit of the communication device and acquiring information contained in the two-dimensional code, In the acquisition step, if both first information used for communication to establish a wireless connection between the communication device and an external access point different from the information processing device and the communication device using a first connection method, and second information for establishing a wireless connection between the information processing device and the communication device using a second connection method that does not go through the external access point, a decision step is made to determine, based on the connection status between the information processing device and the external access point, whether to make a first request to the communication device, which is a request for communication using the first information to establish a wireless connection between the communication device and the external access point using the first connection method, or to make a second request to the communication device, which is a request for establishing a wireless connection between the communication device and the information processing device using the second information and the second connection method, even without a user selection of a connection method. A request step in which the first request or the second request is made to the communication device based on the decision in the aforementioned decision step, A method characterized by having the following:

26. A computer-readable storage medium storing a program according to any one of claims 1 to 17 or 20 to 23.