Programs, systems, and methods
The program and system simplify device connection setups by presenting a selection screen with direct and indirect connection options, addressing the complexity of existing methods and enhancing user convenience.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2022-04-28
- Publication Date
- 2026-06-19
AI Technical Summary
Existing methods for connecting devices, such as printers, require complex user interactions and confirmation processes on connection method selection screens, leading to inconvenience.
A program and system that includes a first acquisition unit to gather device information, an extraction unit to determine executable connection methods, and a display unit to present a selection screen with multiple connection options, including direct and indirect connection methods, thereby simplifying the setup process.
Improves the convenience of device connection setups by reducing user complexity and streamlining the selection process.
Smart Images

Figure 0007876332000001 
Figure 0007876332000002 
Figure 0007876332000003
Abstract
Description
Technical Field
[0001] The present invention relates to a program, a system, and a method for performing settings related to connections between devices.
Background Art
[0002] A technique is known in which an information processing device such as a PC (personal computer) transmits information regarding an access point to a communication device such as a printer and connects the communication device to an external device. Patent Document 1 describes displaying a connection method selection screen on the printer side.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] In Patent Document 1, after displaying a connection method selection screen on the printer side, the terminal side accepts confirmation of the user's intention regarding the connection method, and the user operations until the selection is determined are complicated.
[0005] An object of the present invention is to provide a program, a system, and a method for improving convenience in settings related to printer connection.
Means for Solving the Problems
[0006] To solve the above problems, a program according to the present invention includes a computer of an information processing device capable of wireless communication with a communication device, a first acquisition unit that acquires information of the communication device from the communication device, A second acquisition means for acquiring information of the information processing device; an extraction means for extracting connection methods that the communication device and the information processing device can execute based on the information of the communication device acquired by the first acquisition means and the information of the information processing device acquired by the second acquisition means; and the connection methods extracted by the extraction means.Based on this, the system functions as a display means for displaying a selection screen on the display unit for configuring the connection between the communication device and external equipment, and a processing means for performing processing according to the selection result on the selection screen, wherein the selection screen displays multiple connection methods for the configuration. The extracted connection method This is a screen where the options are displayed as selectable. The information of the communication device and the information processing device include whether or not each of the multiple connection methods can be executed. The aforementioned plurality of connection methods include a first connection method for connecting the communication device to an external access point, and a second connection method for connecting the information processing device and the communication device without going through the access point. fruit , The first connection method includes a method for performing communication between the information processing device and the communication device using a first protocol as communication for connecting the access point and the communication device, and a method for performing communication between the information processing device and the communication device using a second protocol different from the first protocol as communication for connecting the access point and the communication device. It is characterized by the following: [Effects of the Invention]
[0007] According to the present invention, the convenience of setting up printer connections can be improved. [Brief explanation of the drawing]
[0008] [Figure 1] This diagram shows the configuration of an information processing device, a communication device, and an access point. [Figure 2] This diagram shows the configuration of an NFC unit. [Figure 3] This is a sequence diagram showing the sequence of events that occur between an information processing device and a communication device. [Figure 4] This is a diagram showing the screen displayed in an information processing device. [Figure 5] This is a flowchart showing the processes performed in an information processing device. [Figure 6] This is a flowchart showing the processes performed in an information processing device. [Figure 7] This is a flowchart showing the processes performed in an information processing device. [Figure 8] This is a diagram showing the screen displayed in an information processing device. [Figure 9] This is a flowchart showing the processes performed in a communication device. [Figure 10]It is a sequence diagram executed between an information processing device and a communication device. [Figure 11] It is a diagram showing the WEC start screen. [Figure 12] It is a flowchart showing the DPP waiting mode start process. [Figure 13] It is a flowchart showing the execution process of WEC. [Figure 14] It is a diagram showing the screen displayed on the information processing device. [Figure 15] It is a diagram showing the screen displayed on the information processing device. [Figure 16] It is a diagram showing the screen displayed on the information processing device. [Figure 17] It is a diagram showing the screen displayed on the information processing device. [Figure 18] It is a diagram showing the screen displayed on the information processing device.
Embodiments for Carrying Out the Invention
[0009] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the invention according to the claims. Although a plurality of features are described in the embodiments, not all of these plurality of features are essential to the invention, and the plurality of features may be arbitrarily combined. Furthermore, in the accompanying drawings, the same or similar configurations are given the same reference numerals, and duplicate explanations are omitted.
[0010] This section describes the information processing device and communication device included in the communication system of this embodiment. While a smartphone is used as an example of the information processing device in this embodiment, it is not limited to this. For example, various devices such as mobile terminals, PCs (personal computers), tablet terminals, PDAs (personal digital assistants), and digital cameras can be used as information processing devices. Similarly, while a printer is used as an example of the communication device in this embodiment, it is not limited to this; various devices capable of wireless communication with the information processing device can be used. For example, inkjet printers, full-color laser beam printers, monochrome printers, etc., can be used. Furthermore, it can be applied not only to printers but also to copiers, facsimile machines, mobile terminals, smartphones, notebook PCs, tablet terminals, PDAs, digital cameras, music playback devices, televisions, smart speakers, etc. It can also be applied to multifunction devices equipped with multiple functions such as copying, faxing, and printing.
[0011] Furthermore, in this embodiment, if the information processing device supports a function called Wi-Fi Easy Connect (hereinafter referred to as WEC) (registered trademark), it can perform that function. WEC is a function that performs network setup of other devices using the Device Provisioning Protocol (hereinafter referred to as DPP) established by the Wi-Fi Alliance. Specifically, network setup of other devices is the process of connecting other devices to access points that form a network. In WEC, communication 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, identification information of the Enrollee device (MAC address, etc.) and public key information used to perform secure communication with the Enrollee device. In this embodiment, Bootstrapping information is described as "WEC-related information." Other information may also be treated 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. Then, it encrypts the symmetric key based on the encrypted protocol key and sends the information encrypted using that symmetric key to the Enrollee device. The information sent here is specifically, for example, connection information for connecting to an access point. The Enrollee device then establishes a wireless connection with the access point using the connection information received from the Configurator device. In this embodiment, the network setup process using WEC is described as operating as a Configurator device for information processing devices that support WEC, and as operating as an Enrollee device for communication devices that support WEC.
[0012] First, the configuration of the information processing apparatus of the present embodiment and the communication apparatus capable of communicating with the information processing apparatus of the present embodiment will be described with reference to the block diagram of FIG. 1. In the present embodiment, the following configuration is described as an example, but the present embodiment is applicable to an apparatus capable of communicating with a communication apparatus, and the functions are not particularly limited as shown in this figure.
[0013] The information processing apparatus 101 is the information processing apparatus of the present embodiment. 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, a short-range wireless communication unit 111, and the like. A computer of the information processing apparatus 101 is formed by the CPU 103, the ROM 104, the RAM 105, and the like.
[0014] 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. The operation unit may be a physical keyboard or physical buttons, etc., or may be a soft keyboard or soft buttons displayed on the display unit 108. That is, the input interface 102 may receive input from the user via the display unit 108.
[0015] The CPU 103 is a system control unit that controls the entire information processing apparatus 101.
[0016] The ROM 104 stores fixed data such as control programs executed by the CPU 103, data tables, and embedded operating system (hereinafter referred to as OS) programs. 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.
[0017] RAM 105 consists of SRAM (Static Random Access Memory) and other components that require a backup power supply. Since RAM 105'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 105 also includes a memory area for storing configuration information and management data for the information processing device 101. Furthermore, RAM 105 is used as both the main memory and work memory for the CPU 103.
[0018] 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 set in 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.
[0019] The output interface 107 is an interface that controls the display unit 108 to display data and notify the status of the information processing device 101.
[0020] The display unit 108 consists of LEDs (light-emitting diodes) and LCDs (liquid crystal displays), and is used to display data and notify the status of the information processing device 101.
[0021] The communication unit 110 is configured to connect to devices such as the communication device 151 and the access point 131 to perform data communication. For example, the communication unit 110 can connect to an access point (not shown) within the communication device 151. By connecting the communication unit 110 to the access point within the communication device 151, the information processing device 101 and the communication device 151 can communicate with each other. The communication unit 110 may communicate directly with the communication device 151 via wireless communication, or 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 includes a ROM 152, RAM 153, CPU 154, print engine 155, communication unit 156, short-range wireless communication unit 157, etc. The computer of the communication device 151 is formed by the ROM 152, RAM 153, CPU 154, etc.
[0025] The communication unit 156 has an access point within the communication device 151 for connecting to 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 a communication standard compliant with the IEEE 802.11 series. In the following description, Wi-Fi (WirelessFidelity) (registered trademark) refers to a communication standard compliant with the IEEE 802.11 series. If the communication device 151 supports WEC, the aforementioned WEC will be executed by communication via 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 that form a network (for example, the access point 131). 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 an infrastructure connection). In this embodiment, in an infrastructure connection, the communication device 151 operates as a slave station, and the external access point operates as a master station. In this embodiment, the master station is a device that determines the communication channel used in the network to which the master station belongs, and the slave station is a device that does not determine the communication channel used in the network to which the slave station belongs, but uses the communication channel determined by the master station.
[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 station is determined according to a sequence such as Group Owner Negotiation. The master station may be determined without performing Group Owner Negotiation. A device that is WFD-compatible and also acts as the master station 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 station, and the other devices operate as slave stations.
[0029] Furthermore, in this embodiment, the communication device 151 can operate in network setup mode, which is a mode for performing network setup of the communication device 151, by receiving a predetermined operation from the user. When the communication device 151 operates in network setup mode, it operates as a setup access point that is valid during operation 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 for connection. Furthermore, the communication device 151 operating in network setup mode shall use a predetermined communication protocol (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 after a predetermined time has elapsed. This is because, as mentioned above, the setup access point does not require a password, and if it is enabled for an extended period, it increases the likelihood of unauthorized devices requesting a connection. However, the setup access point may require a password. In that case, the password used to connect to the setup access point should be a fixed (user-unchangeable) password that the settings application has already determined.
[0030] Furthermore, in this embodiment, the communication device 151 can also operate in a mode to perform 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 is referred to as the DPP waiting mode. When the communication device 151 is operating in the DPP waiting mode and receives a DPP network setup request from the information processing device 101, it performs DPP network setup as described later. Therefore, the DPP waiting mode is, in other words, a mode that waits for a DPP network setup request. The DPP waiting mode will be described later in Figures 10 and 12.
[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 maintained 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 for the CPU 154, storing a receive buffer for temporarily saving print information received from the information processing device 101, and various other information.
[0033] ROM152 stores fixed data such as control programs, data tables, and OS programs executed by the CPU154. In this embodiment, each control program stored in ROM152 performs software execution control such as scheduling, task switching, and interrupt handling under the management of the embedded OS also stored in ROM152.
[0034] The CPU 154 is the system control unit and controls the entire communication device 151.
[0035] The print engine 155 forms an image on a recording medium such as paper by adding a recording agent such as ink to the recording medium based on the information stored in the RAM 153 and the print job received from the information processing device 101, etc., and outputs the print result. Generally, the amount of data for print jobs transmitted from the information processing device 101, etc. is large, so it is necessary to use a communication method that enables high-speed communication for the communication of print jobs. For this reason, the communication device 151 receives print jobs via the communication unit 156, which is capable of high-speed communication than the short-range wireless communication unit 157.
[0036] 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.
[0037] Figure 2 shows an example of the detailed configuration of the near-field wireless communication unit 111 and the near-field wireless communication unit 157. The configuration of the NFC unit 200 will be described as an example of the configuration of the near-field wireless communication unit 111 and the near-field wireless communication unit 157. The NFC unit 200 has an NFC controller unit 201, an antenna unit 202, an RF unit 203, a transmit / receive control unit 204, an NFC memory 205 (composed of rewritable non-volatile memory), a power supply 206, and a device connection unit 207. The antenna unit 202 receives radio waves and carriers from other NFC devices (e.g., the near-field wireless communication unit 111) and transmits radio waves and carriers to other NFC devices. The RF unit 203 has the function of converting and demodulating analog signals to digital signals. The RF unit 203 is equipped with a synthesizer that identifies the band and channel frequencies and controls the band and channel according to frequency allocation data. The transmit / receive control unit 204 performs transmit / receive control such as assembly and disassembly of transmit / receive frames, preamble addition and detection, and frame identification. The transmit / receive control unit 204 also controls the NFC memory 205, reading and writing various data and programs. When operating in active mode, it receives power via the power supply 206 (main power supply of smartphones and MFPs), communicates with devices via the device connection unit 207, and communicates with other NFC devices within communication range via carriers transmitted and received via the antenna unit 202. On the other hand, when operating in passive mode, it receives carriers from other NFC devices via the antenna unit 202, receives wireless power from those other NFC devices via electromagnetic induction, and communicates with those other NFC devices by modulating the carriers to transmit and receive data.
[0038] Figure 3 is a sequence diagram showing the WEC connection process performed by the information processing device 101 and the communication device 151. The sequence shown in Figure 3 is realized, for example, when the CPU of each device reads a program stored in the ROM or external storage device of each device into the RAM of each device and executes it.
[0039] When the sequence shown in Figure 3 is executed, the information processing device 101 is connected to the access point 131. The communication device 151 is in its factory default state (arrival state) and is being powered on for the first time by the user. Note that the factory default state corresponds to, for example, a state in which the communication device 151 has not completed its initial setup. For example, the communication device 151 is shipped from the factory without ink tanks, print heads, etc. installed. As part of the initial setup, the communication device 151 performs processes to enable its use, such as prompting the user to install the included ink tanks and print heads, register adjustments, and print head cleaning.
[0040] During initial setup, in S101, initial values are set for NFC memory 205, and in S202, the NFC unit is activated. At this time, the NFC unit operates as a target and is waiting for commands from the initiator.
[0041] Whether the communication device 151 is in its factory default state is controlled using a flag (initial startup flag) stored in RAM 153 or memory. The communication device 151 changes the state of the initial startup flag according to the completion of initial setup, and is configured so that initial setup is not initiated even if the power of the communication device 151 is turned on after the completion of initial setup. In order to use the communication device 151, it is preferable that the network setup of the communication device 151 be performed, so in this embodiment, the network setup process is performed during initial setup.
[0042] In S103, the CPU 154 initiates (enables) the communication device 151 to operate in network setup mode. Specifically, the CPU 154 enables the setup access point. Operation in network setup mode may also be initiated, for example, by pressing a predetermined button on the communication device 151. Furthermore, the CPU 154 starts a timeout timer for network setup mode and counts the elapsed time since operation in network setup mode began, in order to terminate network setup mode after a predetermined time has elapsed.
[0043] Meanwhile, in the information processing device 101, in S104, the CPU 103 reads a setting application stored in the ROM 104 or external storage device 106 into the RAM 105 and executes it in response to user operation. At this time, the CPU 103 starts operation with the NFC unit as the initiator. In S105, the CPU 103 displays the setting application screen on the display unit 108. On the setting application screen, items for connecting with the communication device 151 are displayed, for example, "Connect to printer". When the user selects an item, the CPU 103 displays a message on the display unit 108 prompting the user to bring the information processing device 101 close to the communication device 151, for example, "Touch the terminal to the printer". In S106, the user brings the NFC unit of the information processing device 101 close to the NFC unit of the communication device 151 (first touch).
[0044] When the NFC unit of the information processing device 101 and the NFC unit of the communication device 151 are in close proximity, data transmission occurs between the NFC units. Specifically, in S107, a Read request for information from the communication device 151 is sent from the information processing device 101 to the communication device 151, and in S108, the information from the communication device 151 is sent from the communication device 151 to the information processing device 101 as a Read response.
[0045] The information of the communication device 151 includes, for example, the printer name, identification information, WiFi connection information, information on whether settings are possible according to each setting method, status information of the communication device 151, timeout information, WEC-related information, and WFD connection information. The printer name is, for example, the name of the communication device 151. The identification information is, for example, the serial number and MAC address of the communication device 151. The WiFi connection information is, for example, information such as whether it is not connected to an external access point (e.g., access point 131) or is connected, and whether it is not connected to an external infrastructure network or is connected.
[0046] Here, the configuration methods for the network setup process in this embodiment will be described. The network setup process can be executed using multiple configuration methods, and these multiple configuration methods include the following four types: the first to fourth configuration methods. The first configuration method is network setup using a network setup protocol. The second configuration method is network setup using DPP. Note that the second configuration method is a method that uses a protocol to send connection information to the communication device 151 for connecting to the AP without requiring the user to input a password to the AP to the information processing device 101 after the information processing device 101 and the AP have connected. For example, it may be a method using Accessory Setup, which is an iOS function and uses HTTP (HyperText Transfer Protocol). The third configuration method is network setup using WiFi Direct. Note that the third configuration method is a configuration method for connecting the communication device 151 in P2P mode and the information processing device 101. Therefore, it may be a network setup using the normal WiFi standard and a configuration method for connecting the communication device 151 in AP mode and the information processing device 101. The fourth configuration method is network setup using WPS (WiFi Protected Setup). The configuration method performed between the information processing device 101 and the communication device 151 is not limited to the first to fourth configuration methods; network setup processing may be performed using other configuration methods. The configuration feasibility information for each configuration method included in the information of the communication device 151 indicates whether or not the communication device 151 has the capability to perform configuration using each of the first to fourth configuration methods. For example, the configuration feasibility information is based on whether or not the communication device 151 supports each protocol.
[0047] The status information of the communication device 151 indicates whether the current state of the communication device 151 allows each setting method to be executed. In the case shown in Figure 3, the communication device 151 is currently in network setup mode. In that case, the status information of the communication device 151 is, for example, "First setting method: Available, Second setting method: Available, Third setting method: Enabled, Fourth setting method: Available". The status information of the communication device 151 when it is currently in other states will be described later. The status information of the communication device 151 may also include information indicating whether the communication device 151 transitioned to its current state automatically or manually. For example, if the power ON operation is performed by the user for the first time in the factory default state, information indicating that it transitioned automatically will be included. Also, for example, if a predetermined button operation of the communication device 151 is performed, information indicating that it transitioned manually will be included.
[0048] The timeout information is the timeout period for the network setup process. In the case shown in Figure 3, when the information for communication device 151 is transmitted in S108, communication device 151 is in network setup mode. In network setup mode, as described above, the setup access point is an access point that does not require a password. Therefore, a timeout period is set for the network setup process to ensure security. For example, if the system automatically switches to network setup mode, it is set to 60 minutes from the start of network setup mode, and if the system switches manually, it is set to 10 minutes from the start of network setup mode. The remaining time calculated from these times is then transmitted as timeout information.
[0049] WEC-related information is, for example, the Bootstrapping information mentioned above. WEC-related information is transmitted when the communication device 151 is in network setup mode. Note that WEC-related information does not necessarily have to be transmitted in S108; it may be transmitted during the second touch, as described later. WFD connection information is, for example, the SSID and password of the access point of the communication device 151.
[0050] In S109, the CPU 103 generates display data to be displayed on the display unit 108 based on the information from the communication device 151 received in S108. In S110, the CPU 103 displays a selection screen on the display unit 108 that allows the user to select other setting methods based on the display data generated in S109.
[0051] Figure 4 shows an example of a selection screen displayed on S110. The selection screen in Figure 4 is displayed as the screen of the settings application. Area 401 is displayed based on the printer name, identification information, and WiFi connection information included in the information of the communication device 151. For example, area 401 displays the printer name "ABCPRINTER", serial number "ABCD1234", and MAC address "22:33:44:55:66:77". Also, since the current state of the communication device 151 is network setup mode, the connection status with the external access point "Not connected" is displayed. Area 402 displays information from the information processing device 101. For example, area 402 displays the current WiFi connection destination "AP1" and MAC address "11:22:33:44:55:66". Alternatively, area 402 may also display a message regarding the connection status with the internet.
[0052] Selection items 403, 404, 406, and 407 indicate user-selectable configuration methods, displayed based on information from the communication device 151 received in S108. In the case shown in Figure 3, the communication device 151 is in network setup mode, so the status information of the communication device 151 is "First configuration method: Available, Second configuration method: Available, Third configuration method: Enabled, Fourth configuration method: Available". Therefore, in Figure 4, selection items 403 and 404 corresponding to the second configuration method, selection item 407 corresponding to the third configuration method, and selection item 406 corresponding to the fourth configuration method are displayed so that other configuration methods other than the first configuration method can be selected. As will be described later, in this embodiment, if both the first and second configuration methods are executable, the second configuration method is preferentially displayed as a selection item.
[0053] Selection item 403 is pressed when setting the communication device 151 to connect to the current WiFi destination (external access point) of the information processing device 101 displayed in area 402. Selection item 404 is pressed when selecting an external access point other than the current WiFi destination of the information processing device 101 displayed in area 402. The timeout period 405 is displayed based on the timeout information contained in the information of the communication device 151. The display of the timeout period 405 allows the user to be aware of the remaining time available for network setup processing.
[0054] Option 406 is pressed when selecting the network setup process using WPS (fourth configuration method). Option 407 is pressed when the user selects the network setup process using WiFi Direct (third configuration method). Option 408 is pressed when no network setup process is performed.
[0055] In S111, the CPU 103 accepts the user's selection on the selection screen shown in Figure 4. Here, we will explain assuming that either selection item 403 or 404 in Figure 4 is selected. When selection item 403 is pressed, the CPU 103 obtains information about the external access point (hereinafter referred to as "connected AP") to which the information processing device 101 was wirelessly connected via WiFi at the time the setting operation was performed. This information includes information necessary for the information processing device 101 to connect to the access point via WiFi (SSID, information indicating the encryption method, etc.). The obtained information is stored in a predetermined storage area of the memory of the information processing device 101. When selection item 404 is pressed, the CPU 103 instructs the OS of the information processing device 101 to search for access points in the vicinity of the information processing device 101, and obtains the search results using the setting application. The CPU 103 then displays a screen on the display unit 108 that allows the user to select from the search results. The CPU 103 acquires information about the access point selected by the user (such as the SSID and information indicating the encryption method) and stores the acquired information in a predetermined storage area of the memory of the information processing device 101.
[0056] In S112, the CPU 103 displays a message on the display unit 108 prompting the user to bring the NFC unit of the information processing device 101 close to the NFC unit of the communication device 151, such as "Please touch the terminal to the printer again." Figure 8(a) shows an example of the screen displayed at that time. In S113, the user brings the NFC unit of the information processing device 101 close to the NFC unit of the communication device 151 (second touch).
[0057] When the NFC unit of the information processing device 101 and the NFC unit of the communication device 151 are in close proximity, data transmission occurs between the NFC units. Specifically, in S114, a Write request is sent from the information processing device 101 to the communication device 151, and in S115, a Write response is sent from the communication device 151 to the information processing device 101. The Write request sent in S114 contains information corresponding to the selection result in S111. That is, a value corresponding to the selected setting method is written to the NFC memory of the communication device 151.
[0058] The following explanation assumes that selection item 403 is selected on the screen shown in Figure 4. That is, in S114, the value corresponding to selection item 403 is sent as a Write request.
[0059] If WEC-related information has not been transmitted in S108, a request for WEC-related information is sent from the information processing device 101 to the communication device 151 as S116 during the second touch. WEC-related information is, for example, Bootstrapping information. Then, the WEC-related information is sent from the communication device 151 to the information processing device 101. If WEC-related information has already been transmitted in S108, S116 is not executed.
[0060] In S117, when a value is written to the NFC memory, the CPU 154 causes the communication device 151 to start operating in DPP standby mode. The DPP standby mode will be described later in Figure 12. The CPU 154 also starts a timeout timer for the DPP standby mode and counts the elapsed time since the start of operation in DPP standby mode. Subsequently, in S118, the communication device 151 enters DPP standby mode.
[0061] In steps S119 to S122, the CPU 103 executes WEC using the acquired WEC-related information. In this embodiment, the configuration application does not directly execute WEC, but rather launches the OS standard WEC application program (hereinafter referred to as the WEC application) as a process for executing WEC. The WEC application then executes the WEC API and requests the OS to execute WEC, causing the OS to execute WEC. Alternatively, the configuration application may execute the WEC API and request the OS to execute WEC, and the process for executing WEC may be this execution request. Details of the processes in steps S119 to S122 will be described later in Figure 10.
[0062] Figure 5 is a flowchart showing the processes executed in the information processing device 101. The processes in Figure 5 are realized, for example, by the CPU 103 reading a program stored in the ROM 104 or external storage device 106 into the RAM 105 and executing it. The processes in Figure 5 start when the setting application is executed at S104 in Figure 3.
[0063] In S201, the CPU 103 obtains the version information of the operating system program (OS) of the information processing device 101. In S202, the CPU 103 displays a message on the display unit 108 prompting the user to bring the NFC unit of the information processing device 101 close to the NFC unit of the communication device 151. S202 corresponds to S105 in Figure 3. In S203, the CPU 103 determines whether or not it has obtained information about the communication device 151 from the communication device 151. If it is determined that it has not obtained information about the communication device 151, the process in S203 is repeated. If it is determined that it has obtained information about the communication device 151, the process proceeds to S204. For example, if the Read response from the communication device 151 in S108 of Figure 3 contains information about the communication device 151, it is determined that it has obtained information about the communication device 151, and the process proceeds to S204.
[0064] In S204, the CPU 103 determines whether the communication device 151 supports network setup processing based on the acquired information about the communication device 151. The determination in S204 is made, for example, based on the printer name and identification information included in the information about the communication device 151. For example, if it is determined that the printer is not manufactured by the company, or if the information about the communication device 151 does not contain any information about the selection items on the selection screen in Figure 4, it is determined that the communication device 151 does not support network setup processing, and the process proceeds to S209. In S209, the CPU 103 displays a notification screen on the display unit 108 indicating that it is not possible to perform network setup processing on the communication device 151, and then terminates the processes in Figures 3 and 5. On the other hand, if it is determined in S204 that the communication device 151 supports network setup processing, the process proceeds to S205.
[0065] In S205, CPU103 extracts the items that should be displayed as selection items on the selection screen shown in Figure 4.
[0066] Figure 6 is a flowchart of the process in S205. In S301, the CPU 103 obtains the setting methods supported by the OS of the information processing device 101 based on the OS version information obtained in S201. For example, the ROM 104 and external storage device 106 store the OS version information and information indicating whether or not each of the first to fourth setting methods is supported, and the CPU 103 refers to this information to obtain the setting methods supported by the OS. In S302, the CPU 103 obtains the setting methods supported by the communication device 151 based on the setting feasibility information for each setting method included in the information of the communication device 151 obtained in S108 in Figure 3. In S303, the CPU 103 extracts the matching setting methods from the setting methods obtained in S301 and the setting methods obtained in S302. That is, S301 to S303 obtain the setting methods that both the information processing device 101 and the communication device 151 have in common capability.
[0067] In S304, the CPU 103 obtains a configuration method that can be executed in the current state of the communication device 151, based on the state information of the communication device 151 included in the information of the communication device 151 obtained in S108 in Figure 3.
[0068] In S305, the CPU 103 identifies the setting method that matches the setting method extracted in S303 and the setting method acquired in S304 as a selectable item to be displayed in S110 of Figure 3. In this case, if both the first and second setting methods are extracted in S303 and acquired in S304, the CPU 103 identifies the second setting method as the selectable item to be displayed. That is, the first setting method is not identified as a selectable item to be displayed. After S305, the process in Figure 6 is terminated.
[0069] Steps S304-S305 identify a configuration method that is a common capability of both the information processing device 101 and the communication device 151, and that is executable in the current state of the communication device 151. This configuration prevents situations such as the information processing device 101 displaying a selection option for network setup via DPP even though the communication device 151 does not support WEC. Furthermore, if both network setup via a network setup protocol and network setup via DPP are possible, network setup via DPP will be displayed preferentially as a selection option. This configuration allows for a more convenient configuration method that does not require the user to enter information such as a password.
[0070] After S305, in S206 of Figure 5, the CPU 103 generates display data for display on the display unit 108 based on the information from the communication device 151 received in S108, and displays it on the display unit 108. The display data generated here is, for example, data for displaying the selection screen in Figure 4. S206 in Figure 5 corresponds to S109 and S110 in Figure 3.
[0071] In S207, the CPU 103 determines whether or not it has accepted the user's selection. The selection here refers to, for example, one of the selection items 403, 404, or 406-408 in Figure 4. The process in S207 is repeated until it is determined that the user's selection has been accepted. If it is determined that the user's selection has been accepted, the process proceeds to S208.
[0072] In S208, CPU103 performs processing according to the selection result received in S207. The processing in S208 will be explained with reference to Figure 7. After S208, the processing shown in Figure 5 is terminated.
[0073] Figure 7 is a flowchart of the process in S208. In S401, if the selection result received in S207 is one of the following, the CPU 103 proceeds to S402: network setup using DPP (second configuration method), network setup using WiFi Direct (third configuration method), or network setup using WPS (fourth configuration method). For example, if any of the selection items 403, 404, 406, or 407 in Figure 4 are selected, the process proceeds to S402. On the other hand, if the selection result received in S207 is an item that does not perform network setup, the process proceeds to S409. For example, if selection item 408 in Figure 4 is selected, the process proceeds to S409. In S409, the CPU 103 displays a message screen on the display unit 108 indicating that the network setup process will not be performed, and then terminates the process in Figure 7. Note that if selection item 408 is pressed, a screen for performing network setup using the network setup protocol (first configuration method) may be displayed. A screen used for network setup using a network setup protocol is, for example, a screen for selecting the access point to be connected to the communication device 151 and entering the access point's information (such as a password).
[0074] In S402, the CPU 103 sets a value corresponding to the selection result received in S207 as a Write request to be sent to the communication device 151 in S114. In S403, the CPU 103 displays a message screen on the display unit 108 prompting the user to bring the information processing device 101 closer to the communication device 151, such as "Please touch the terminal to the printer." The processing in S403 corresponds to S113 in Figure 3. Figure 8(a) shows an example of the screen displayed in S403.
[0075] In S404, the CPU 103 determines whether the Write request to the communication device 151 has been completed. The determination in S404 is made, for example, based on whether or not a Write response has been received from the communication device 151. The process in S404 is repeated until it is determined that the Write request to the communication device 151 has been completed. If it is determined that the Write request to the communication device 151 has been completed, the process proceeds to S405.
[0076] In S405, the CPU 103 switches control to execute processing according to the selection result received in S207. If the selection result received in S207 is the second setting method, the process proceeds to S406. In S406, the CPU 103 starts processing to execute WEC using the acquired WEC-related information. Specifically, for example, the process of launching the OS standard WEC application is performed. At that time, for example, Bootstrapping information acquired from the communication device 151 is passed to the OS as a URI parameter. After S406, the process shown in Figure 7 is terminated.
[0077] Furthermore, if the selection result received in S207 is the fourth setting method, the process proceeds to S407. In S407, the CPU 103 displays a message prompting the user to press the connect button on the access point to be configured. Figure 8(b) shows an example of the screen displayed in S407. After S407, the process shown in Figure 7 is terminated.
[0078] Furthermore, if the selection result received in S207 is the third setting method, the process proceeds to S408. In S408, the CPU 103 starts processing to connect with the communication device 151 via WiFi Direct. Specifically, for example, the information processing device 101 disconnects from the access point to which it is currently connected, and then connects with the communication device 151, which is operating in WFD mode, via WiFi Direct based on the WFD connection information received in S108 in Figure 3. Alternatively, the communication device 151 may be operating in AP mode and a WiFi connection may be made via P2P. After S408, the process shown in Figure 7 is terminated.
[0079] Figure 9 is a flowchart showing the process performed in the communication device 151. The process in Figure 9 is achieved, for example, by the CPU 154 reading a program stored in the ROM 152 or an external storage device into the RAM 153 and executing it. The process in Figure 9 starts after a Read response is sent to the information processing device 101 at S108 in Figure 3.
[0080] In S501, the CPU 154 determines whether the writing from the information processing device 101 has been completed based on the proximity of the NFC unit of the information processing device 101. For example, the CPU 154 determines that the writing from the information processing device 101 has been completed when a Write request is sent from the information processing device 101 and a Write response is sent to the information processing device 101. The process in S501 is repeated until it is determined that the writing from the information processing device 101 has been completed. If it is determined that the writing from the information processing device 101 has been completed, the process proceeds to S502.
[0081] In S502, the CPU 154 switches control to execute processing according to the value written from the information processing device 101 in S501. If the value written in S501 is a value indicating the second setting method, in S603, the CPU 154 switches the communication device 151 to a mode that waits for a DPP Authentication Request. After S503, the process shown in Figure 9 is terminated.
[0082] If the value written in S501 is a value indicating the fourth configuration method, in S504, CPU 154 starts the configuration using WPS. Specifically, for example, after the screen display in Figure 8(b), it searches for the external access point for which the WPS button was pressed. After S504, the process in Figure 9 is terminated.
[0083] If the value written in S501 is a value indicating the third configuration method, in S505, the CPU 154 puts the communication device 151 into WiFi Direct mode. Specifically, for example, it transmits a beacon signal to make the access point of the communication device 151 itself searchable by an external device (e.g., the information processing device 101). After S505, the process shown in Figure 9 is terminated.
[0084] Next, the processes executed by the information processing device 101 and the communication device 151 from S119 onwards in Figure 3 will be explained using Figure 10. The sequence shown in Figure 10 is realized, for example, by the CPU of each device reading programs stored in the ROM or external storage device of each device into the RAM of each device and executing them.
[0085] First, in S500, the information processing unit 101 starts WEC using DPP through the functions of the OS. Specifically, the information processing unit 101 starts 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 start 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 11 is an example of the WEC start screen displayed by the WEC application. The WEC start screen 1100 displays areas 1101, 1102, and 1103. Area 1101 is an area for changing the access point that is set as the target of WEC configuration. Before area 1101 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 1101 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 1102 is for canceling the execution of WEC, and area 1103 is for instructing the execution of WEC. When area 1102 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 1103 is pressed, the information processing device 101 proceeds to S501. S500 corresponds to S120 in Figure 3.
[0086] In S501, 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 the WEC-related information acquired by the information processing device 101. 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 waiting mode, receives the Request sent from the information processing device 101. 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.
[0087] Next, in S502, 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 via WEC to connect to the access point that has been configured as a target for WEC configuration. The connection information includes the SSID, password, and encryption method of the access point that has been 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 access point was established. It is also information that the OS has retained when the connection between the information processing device 101 and the access point was established. Furthermore, the password is information that the configuration application does not retain. Moreover, since the password sent at this time is information that the OS already retains, and DPP Configuration is a process executed by the OS, it does not need to be newly entered by the user on the screen displayed by the configuration application. As in this embodiment, by transmitting connection information via WEC, the password can be sent to the communication device 151 via secure communication without requiring the user to enter a password again on the screen displayed by the configuration application. In DPP Configuration, DPP is also used for communication.
[0088] In this embodiment, communication in DPP Authentication and DPP Configuration is performed by beacon transmission from each device. In this embodiment, the communication device 151 receives beacons transmitted from the information processing device 101 in DPP Authentication and DPP Configuration via a network interface for infrastructure connection.
[0089] In S503, the communication device 151 exits DPP waiting mode and transitions to infrastructure 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. Communication via the network formed by the connected access point is performed using a protocol different from DPP (specifically, for example, Port9100, SNMP, or a vendor-specific protocol of the communication device 151). The communication device 151 may also send information to the information processing device 101 indicating whether the connection to the access point corresponding to the connection information obtained by WEC was successful or not. Furthermore, if the connection to the access point corresponding to the connection information obtained by WEC fails, the communication device 151 may also send information indicating the cause of the failure to the information processing device 101. These information transmissions may be performed using DPP. The reasons why the connection to the access point corresponding to the connection information obtained by WEC fails include communication errors in WEC, the access point not being found, or the WEC-related information obtained from the communication device 151 not being appropriate. For example, the encryption method used for connecting to the access point set as a target for WEC configuration may be an encryption method not supported by the communication device 151. For example, the encryption method used for connecting to the access point set as a target for WEC configuration may be an encryption method not supported by WEC. The information processing device 101 may also display information on the display unit 108 indicating whether the connection to the access point corresponding to the connection information obtained by WEC was successful or not. Furthermore, if the connection to the access point corresponding to the connection information obtained by WEC fails, the display unit 108 may also display information indicating the reason for the failure.
[0090] In S504, 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 101. As a result, the information of the communication device 151 is registered in the configuration application, and thereafter, the configuration application can perform communication with the communication device 151. Specifically, for example, the configuration application can send print jobs 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 S504 is performed using a communication protocol different from both DPP and the setup communication protocol (specifically, for example, CHMP). After that, the information processing device 101 terminates the processing in this sequence diagram.
[0091] The above description assumes that a WEC application displays the WEC start screen and instructs the OS to run WEC by executing a WEC API. However, the system is not limited to this configuration. For example, a configuration application may display the WEC start screen. Alternatively, a configuration application may execute a WEC API to instruct the OS to run WEC.
[0092] Here, the process in S118 of Figure 3 will be explained using Figure 12.
[0093] Figure 12 is a flowchart showing the process for starting the DPP standby mode. The flowchart shown in Figure 12 is realized, for example, when the CPU 154 reads a setting application stored in ROM 152 or memory into RAM 153 and executes it. The process in Figure 12 starts when the value of the second setting method is written to the NFC memory in steps S114 and S117 of Figure 3.
[0094] In S601, the CPU 154 determines the listening channel for DPP communication. The listening channel for DPP communication is the channel that listens for network setup requests via DPP transmitted from the information processing device 101. The same channel is also used for DPP configuration processing. Note that the channel used for DPP communication listening may be set by the user, for example, from the operation screen of the communication device 151.
[0095] In S602, the CPU 154 generates public key information used to perform secure communication with the information processing device 101 as described above.
[0096] In S603, the CPU 154 generates the Bootstrapping information described above. The Bootstrapping information includes, for example, the identification information of the communication device 151 (such as its MAC address), information about the listening channel for DPP communication, and the public key information generated in S602.
[0097] Note that Figure 12 explains the process assuming that Bootstrapping information is sent in S116 in Figure 3. If Bootstrapping information is sent in S108, for example, the process from S601 to S603 may be executed as a trigger when the network setup mode is entered in S103 in Figure 3.
[0098] In S604, the CPU 154 starts DPP waiting mode. Once DPP waiting mode is started, communication for DPP Authentication becomes possible between the communication device 151 and the information processing device 101.
[0099] In S605, CPU154 starts the DPP waiting mode timeout timer. After a predetermined time has elapsed since CPU154 started operating in DPP waiting mode, it stops operating in DPP waiting mode.
[0100] Figure 13 is a flowchart showing the execution process of network setup (WEC) using DPP, and corresponds to the operation of the communication device 151 in the sequence in Figure 10. The flowchart shown in Figure 13 is realized, for example, when the CPU 154 reads a configuration application stored in ROM 152 or memory into RAM 153 and executes it. Furthermore, the flowchart in Figure 13 is initiated when the communication device 151 receives an execution request for WEC in the DPP Authentication process from the information processing device 101.
[0101] In S701, CPU 154 executes DPP Authentication processing. As described above, in DPP Authentication processing, authentication information and information used for information encryption are communicated between the information processing device 101 and the communication device 151, thereby authenticating communication between the devices. In DPP Authentication, DPP is used to perform the communication.
[0102] In S702, the CPU 154 determines whether the DPP Authentication process with the information processing device 101 was successful. As described above, the various information transmitted from the information processing device 101 during DPP Authentication communication is encrypted based on the WEC-related information acquired by the information processing device 101. If the CPU 154 successfully decrypts the information received from the information processing device 101 using a pre-held decryption key, it authenticates the communication with the information processing device 101. If the information processing device 101 has not acquired accurate WEC-related information and has not accurately encrypted the information, decryption in the communication device 151 will fail, and authentication will fail. Therefore, if the authentication of communication with the information processing device 101 is successful, the CPU 154 determines that the DPP Authentication process was successful, and if it fails, it determines that the DPP Authentication process was failed. If the CPU 154 determines NO in S702, it terminates this flowchart. On the other hand, if the CPU 154 determines YES in S702, it proceeds to S703.
[0103] In S703, CPU 154 performs DPP Configuration processing. During DPP Configuration processing, CPU 154 receives connection information via WEC from the information processing device 101 to connect to the access point configured as a WEC target. The connection information includes the SSID, password, and encryption method of the access point configured as a WEC target.
[0104] In S704, the CPU 154 determines whether the DPP Configuration process with the information processing device 101 was successful. Specifically, the CPU 154 determines that the process was successful if it receives connection information via WEC from the information processing device 101 to connect to the access point that has been configured as a target for WEC configuration, and that it failed if it does not receive the information. If the CPU 154 determines NO in S704, it terminates this flowchart. On the other hand, if the CPU 154 determines YES in S704, it proceeds to S705. If the DPP Configuration process is successful, the CPU 154 obtains the access point's SSID, encryption method, and password.
[0105] In S705, the CPU 154 determines whether the SSID is included in the access point information received from the information processing device 101 as a target for WEC configuration. If the CPU 154 determines NO in S705, it terminates this flowchart. On the other hand, if the CPU 154 determines YES in S705, it proceeds to S706.
[0106] In S706, the CPU 154 determines whether the access point information received from the information processing device 101, which is set as a target for WEC configuration, includes an encryption method. If the CPU 154 determines NO in S706, it terminates this flowchart. On the other hand, if the CPU 154 determines YES in S706, it proceeds to S707.
[0107] In S707, the CPU 154 determines whether the access point information received from the information processing device 101, which is configured as a target for WEC, contains a password. Note that if the CPU 154 connects to the access point using DPP communication, it may determine whether public key information is included instead of a password. If the CPU 154 determines NO in S707, it terminates this flowchart. On the other hand, if the CPU 154 determines YES in S707, it terminates the DPP waiting mode. Once the CPU 154 terminates the DPP waiting mode, it cannot respond to requests for DPP Authentication processing from the information processing device 101.
[0108] In S708, the CPU 154 connects to the access point based on the various information (SSID, password, encryption method) of the access point that has been set as a target for WEC configuration, received from the information processing device 101. Then the CPU 154 terminates this flowchart.
[0109] As described above, in this embodiment, when the communication device 151 is in network setup mode, if other setup methods other than the network setup protocol are available, a selection screen is displayed on the information processing device 101 allowing the user to select another setup method. Specifically, for example, a selection screen is displayed allowing the user to choose between network setup using DPP and network setup using WiFi Direct. When a selection is received on the selection screen, processing corresponding to the selected setup method is started. With such a configuration, the user does not need to perform any screen operations on the communication device 151, thus improving convenience.
[0110] In this embodiment, the configuration in the case where the communication device 151 is in network setup mode was described, as shown in Figure 3. The following describes cases where the communication device 151 is in other states.
[0111] First, we will describe the case where the information processing device 101 is already connected to access point 131 (let's call it access point A), and the communication device 151 is already connected to another access point (let's call it access point B).
[0112] In the information processing device 101, the processes S104 to S107 in Figure 3 are performed. Then, in S108, as a Read response, information from the communication device 151 is sent from the communication device 151 to the information processing device 101. Since the communication device 151 is currently connected to access point B, the status information of the communication device 151 is "First setting method: Not available, Second setting method: Not available, Third setting method: Enabled, Fourth setting method: Not available". In this case, in S110, the screen shown in Figure 14 is displayed on the information processing device 101. As shown in Figure 14, in this case, the connection status with the external access point in area 1401 of the selection screen is "Connected to AP2". Also, as shown in Figure 14, the selection item 1404 corresponding to the third setting method is displayed on the selection screen. On the other hand, since the communication device 151 is connected to access point B, the items corresponding to selection items 403, 404, and 406 in Figure 4 are not displayed. Additionally, a selection option 1403 is displayed for connecting the communication device 151 to access point A.
[0113] If selection item 1403 is selected, at S114 in Figure 3, information corresponding to selection item 1403 is sent to the communication device 151 as a Write request. Also, if selection item 1403 is selected, a screen prompting the user to perform a predetermined operation on the communication device 151 and to bring the NFC unit of the information processing device 101 close to the NFC unit of the communication device 151 is displayed on the information processing device 101. Figure 15 shows an example of the screen displayed at that time. When the screen in Figure 15 is displayed, a warning message such as "The connection between the printer and access point B will be disconnected." may also be displayed. Once the predetermined operation is performed by the user, the communication device 151 disconnects the connection with access point B and switches to network setup mode.
[0114] Subsequently, the NFC unit of the information processing device 101 approaches the NFC unit of the communication device 151, and data transmission occurs as shown in S107 and S108 of Figure 3. The status information of the communication device 151 transmitted from the communication device 151 to the information processing device 101 is "First setting method: OK, Second setting method: OK, Third setting method: Enabled, Fourth setting method: OK". Then, in S110, the selection screen shown in Figure 16 is displayed on the information processing device 101. As shown in Figure 16, the selection screen displays the same selection items as in Figure 4. Unlike the screen in Figure 14, the connection status of the area 1601 to the external access point is "Not connected".
[0115] Next, we will describe the case where the information processing device 101 is already connected to the communication device 151 via WiFi Direct.
[0116] In the information processing device 101, the processes S104 to S107 in Figure 3 are performed. Then, in S108, as a Read response, information from the communication device 151 is sent from the communication device 151 to the information processing device 101. Since the communication device 151 is currently connected to the information processing device 101 via WiFi Direct, the status information of the communication device 151 will be "First setting method: Not available, Second setting method: Not available, Third setting method: Enabled, Fourth setting method: Not available". In this case, in S110, the screen shown in Figure 17 is displayed on the information processing device 101. In this case, since the communication device 151 is already connected to the information processing device 101 via WiFi Direct, the items corresponding to selection items 403, 404, 406, and 407 in Figure 4 are not displayed, as shown in Figure 17. In addition, area 1701 displays information about the information processing device 101 that is connected via WiFi Direct, such as "WFD connection: SmartPhone1". Furthermore, area 1702 displays information about the communication device 151, which is currently connected via WiFi Direct, as the WiFi connection destination. In addition, selection options 1703 for connecting the communication device 151 to access point A are displayed.
[0117] If selection item 1703 is selected, in S114, information corresponding to the selection item is sent to the communication device 151 as a Write request. Also, if selection item 1703 is selected, the screen shown in Figure 15 prompting the communication device 151 to perform a predetermined operation is displayed on the information processing device 101. When the screen in Figure 15 is displayed, a warning message such as "The connection with the printer currently connected in direct mode will be disconnected." may be displayed. Once the predetermined operation is performed by the user, the communication device 151 disconnects the WiFi Direct connection with the information processing device 101 and switches to network setup mode.
[0118] Subsequently, the NFC unit of the information processing device 101 approaches the NFC unit of the communication device 151, and data transmission occurs as shown in S107 and S108 of Figure 3. The status information of the communication device 151 transmitted from the communication device 151 to the information processing device 101 is "First setting method: OK, Second setting method: OK, Third setting method: Enabled, Fourth setting method: OK". In this case, at S110, the screen shown in Figure 18 is displayed on the information processing device 101. As shown in Figure 18, the selection screen displays selection items similar to selection items 406 and 407 in Figure 4, but the item corresponding to selection item 403 in Figure 4 is not displayed. This is because there is no external access point that the information processing device 101 is currently connected to. Unlike the screen in Figure 17, the screen in Figure 18 shows "WFD connection: Not connected" in area 1801 and "WiFi: Not connected" in area 1802. When selection item 1803 is selected, the OS is requested to search for an external access point, and an AP search is performed. After the AP search, if the user selects an external access point, the same process as when selection item 404 in Figure 4 is selected will be performed.
[0119] In this way, even in other cases, a selection screen allowing users to choose from multiple configuration methods for the network setup process can be displayed on the information processing device 101. Furthermore, since the user does not need to perform any screen operations on the communication device 151, convenience can be improved.
[0120] 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.
[0121] This embodiment includes the following programs, systems, and methods. (Item 1) A computer for a communication device and an information processing device capable of wireless communication, A first acquisition means for acquiring information about the communication device from the aforementioned communication device, A display means that displays a selection screen on the display unit for configuring the connection between the communication device and external equipment based on the information of the communication device acquired by the first acquisition means. Processing means that perform processing according to the selection result on the selection screen, To make it function as, The aforementioned selection screen is a screen in which each of the multiple connection methods for the aforementioned settings is displayed for selection. The plurality of connection methods include a first connection method for connecting the access point as a device and the communication device, and a second connection method for connecting the information processing device as a device and the communication device. A program characterized by the following features. (Item 2) The computer is further configured as a second acquisition means for acquiring information from the information processing device. The program according to item 1, characterized in that the display means displays the selection screen based on the information of the communication device acquired by the first acquisition means and the information of the information processing device acquired by the second acquisition means. (Item 3) The program according to item 2, characterized in that the information of the communication device and the information processing device include whether or not each of the plurality of connection methods can be executed. (Item 4) The program according to item 2 or 3, characterized in that the information of the information processing device includes operating system version information. (Item 5) The program according to item 3 or 4, characterized in that the computer further functions as an extraction means for extracting connection methods that the communication device and the information processing device can execute, based on the information of the communication device acquired by the first acquisition means and the information processing device acquired by the second acquisition means. (Item 6) The program according to item 5, characterized in that the display means displays the connection method obtained by the extraction means on the selection screen in a selectable manner. (Item 7) The program according to item 5, characterized in that the first connection method includes a method of performing communication between the information processing device and the communication device using a first protocol as communication for connecting the access point and the communication device, and a method of performing communication between the information processing device and the communication device using a second protocol different from the first protocol as communication for connecting the access point and the communication device. (Item 8) The program described in item 7, characterized in that the second protocol is DPP (Device Provisioning Protocol). (Item 9) If the extraction means extracts both a method of communication between the information processing device and the communication device using the first protocol and a method of communication between the information processing device and the communication device using the second protocol as connection methods that the communication device and the information processing device can execute, The program according to item 7 or 8, characterized in that the display means does not display on the selection screen a method for performing communication between the information processing device and the communication device using the first protocol, and displays on the selection screen a method for performing communication between the information processing device and the communication device using the second protocol. (Item 10) The program according to any one of items 7 to 9, characterized in that when the first connection method is selected on the selection screen, the processing means initiates communication between the communication device and the information processing device using the second protocol. (Item 11) The program according to item 10, characterized in that, when the second connection method is selected on the selection screen, the processing means initiates communication between the communication device and the information processing device using a third protocol different from the first protocol and the second protocol. (Item 12) The program described in item 11, characterized in that the third protocol is WiFi Direct. (Item 13) The program according to any one of items 1 to 12, characterized in that the first acquisition means acquires information of the communication device from the communication device by short-range wireless communication. (Item 14) The program according to item 13, characterized in that the computer further functions as a transmission means for transmitting the selection result on the selection screen to the communication device via short-range wireless communication. (Item 15) The display means displays a screen on the display unit prompting the user to bring the information processing device closer to the communication device after a selection has been made on the selection screen. The program according to item 14, characterized in that the transmission means transmits the selection result on the selection screen to the communication device when the information processing device is in close proximity to the communication device. (Item 16) The program according to any one of items 13 to 15, characterized in that the aforementioned short-range wireless communication is NFC (Near Field Communication). (Item 17) A system including an information processing device and a communication device capable of wireless communication with the information processing device, The aforementioned information processing device is A first acquisition means for acquiring information about the communication device from the aforementioned communication device, A display means that displays a selection screen on the display unit for configuring the connection between the communication device and external equipment based on the information of the communication device acquired by the first acquisition means, A first transmission means for transmitting the selection result on the selection screen to the communication device, A first processing means that performs processing according to the selection result on the selection screen, Equipped with, The aforementioned communication device is A second transmission means for transmitting information from the communication device to the information processing device, Receiving means for receiving the selection result on the selection screen from the information processing device, A second processing means that performs processing according to the selection result on the selection screen, Equipped with, The aforementioned selection screen is a screen in which each of the multiple connection methods for the aforementioned settings is displayed for selection. The plurality of connection methods include a first connection method for connecting the access point as a device and the communication device, and a second connection method for connecting the information processing device as a device and the communication device. A system characterized by the following features. (Item 18) The system according to item 17, characterized in that the first connection method is a method of performing communication between the information processing device and the communication device using DPP as communication for connecting the access point and the communication device. (Item 19) The system according to item 17 or 18, characterized in that the first processing means and the second processing means initiate communication between the communication device and the information processing device using DPP. (Item 20) The system according to item 19, characterized in that the first processing means transmits a DPP Authentication request to the communication device. (Item 21) The system according to item 20, characterized in that the second processing means puts the communication device into a mode for waiting for the request. (Item 22) A method performed in an information processing device capable of wireless communication with a communication device, A first acquisition step of acquiring information about the communication device from the aforementioned communication device, A display step in which, based on the information of the communication device acquired in the first acquisition step, a selection screen for setting the connection between the communication device and an external device of the communication device is displayed on the display unit, A processing step which involves performing processing according to the selection result on the selection screen, It has, The aforementioned selection screen is a screen in which each of the multiple connection methods for the aforementioned settings is displayed for selection. The plurality of connection methods include a first connection method for connecting the access point as a device and the communication device, and a second connection method for connecting the information processing device as a device and the communication device. A method characterized by the following: (Item 23) A method performed in a system including an information processing device and a communication device capable of wireless communication with the information processing device, The aforementioned information processing device A first acquisition step of acquiring information about the communication device from the aforementioned communication device, A display step in which, based on the information of the communication device acquired in the first acquisition step, a selection screen for setting the connection between the communication device and an external device of the communication device is displayed on the display unit, A first transmission step of transmitting the selection result on the selection screen to the communication device, A first processing step which performs processing according to the selection result on the selection screen, The aforementioned communication device A second transmission step of transmitting information from the communication device to the information processing device, A receiving step of receiving the selection result from the selection screen from the information processing device, A second processing step which performs processing according to the selection result on the selection screen, It has, The aforementioned selection screen is a screen in which each of the multiple connection methods for the aforementioned settings is displayed for selection. The plurality of connection methods include a first connection method for connecting the access point as a device and the communication device, and a second connection method for connecting the information processing device as a device and the communication device. A method characterized by the following:
[0122] 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]
[0123] 101 Information Processing Equipment: 103 CPU: 151 Communication Equipment
Claims
1. A computer for a communication device and an information processing device capable of wireless communication, A first acquisition means for acquiring information about the communication device from the aforementioned communication device, A second acquisition means for acquiring information from the aforementioned information processing device, Based on the information of the communication device acquired by the first acquisition means and the information processing device acquired by the second acquisition means, an extraction means extracts connection methods that the communication device and the information processing device can execute. A display means that displays a selection screen on the display unit for configuring the connection between the communication device and an external device based on the connection method extracted by the extraction means. Processing means that perform processing according to the selection result on the selection screen, To make it function as, The selection screen is a screen in which the extracted connection methods from among the multiple connection methods for the above settings are displayed in a selectable format. The information of the communication device and the information processing device include whether or not each of the multiple connection methods can be executed. The plurality of connection methods include a first connection method for connecting the communication device to an access point outside the communication device, and a second connection method for connecting the information processing device and the communication device without going through the access point. The first connection method includes a method for performing communication between the information processing device and the communication device using a first protocol as communication for connecting the access point and the communication device, and a method for performing communication between the information processing device and the communication device using a second protocol different from the first protocol as communication for connecting the access point and the communication device. A program characterized by the following features.
2. The program according to claim 1, characterized in that the information of the information processing device includes operating system version information.
3. The program according to claim 1, characterized in that the second protocol is DPP (Device Provisioning Protocol).
4. If the extraction means extracts both a method of communication between the information processing device and the communication device using the first protocol and a method of communication between the information processing device and the communication device using the second protocol as connection methods that the communication device and the information processing device can execute, The program according to claim 1 or 3, characterized in that the display means does not display on the selection screen a method for performing communication between the information processing device and the communication device using the first protocol, but displays on the selection screen a method for performing communication between the information processing device and the communication device using the second protocol.
5. The program according to claim 1 or 3, characterized in that when the first connection method is selected on the selection screen, the processing means initiates communication between the communication device and the information processing device using the second protocol.
6. The program according to claim 5, characterized in that, when the second connection method is selected on the selection screen, the processing means initiates communication between the communication device and the information processing device using a third protocol different from the first protocol and the second protocol.
7. The program according to claim 6, characterized in that the third protocol is Wi-Fi Direct.
8. The program according to claim 1, characterized in that the first acquisition means acquires information of the communication device from the communication device by short-range wireless communication.
9. The program according to claim 8, characterized in that the computer further functions as a transmission means for transmitting the selection result on the selection screen to the communication device via short-range wireless communication.
10. The display means displays a screen on the display unit prompting the user to bring the information processing device closer to the communication device after a selection has been made on the selection screen. The program according to claim 9, characterized in that the transmission means transmits the selection result on the selection screen to the communication device when the information processing device is in close proximity to the communication device.
11. The program according to any one of claims 8 to 10, characterized in that the aforementioned short-range wireless communication is NFC (Near Field Communication).
12. A system including an information processing device and a communication device capable of wireless communication with the information processing device, The aforementioned information processing device is A first acquisition means for acquiring information about the communication device from the aforementioned communication device, A second acquisition means for acquiring information from the aforementioned information processing device, An extraction means for extracting connection methods that the communication device and the information processing device can execute, based on the information of the communication device acquired by the first acquisition means and the information processing device acquired by the second acquisition means, A display means that displays a selection screen on the display unit for configuring the connection between the communication device and an external device based on the connection method extracted by the extraction means, A first transmission means for transmitting the selection result on the selection screen to the communication device, A first processing means that performs processing according to the selection result on the selection screen, Equipped with, The aforementioned communication device is A second transmission means for transmitting information from the communication device to the information processing device, Receiving means for receiving the selection result on the selection screen from the information processing device, A second processing means that performs processing according to the selection result on the selection screen, Equipped with, The selection screen is a screen in which the extracted connection methods from among the multiple connection methods for the above settings are displayed in a selectable format. The information of the communication device and the information processing device include whether or not each of the multiple connection methods can be executed. The plurality of connection methods include a first connection method for connecting the communication device to an access point outside the communication device, and a second connection method for connecting the information processing device and the communication device without going through the access point. The first connection method includes a method for performing communication between the information processing device and the communication device using a first protocol as communication for connecting the access point and the communication device, and a method for performing communication between the information processing device and the communication device using a second protocol different from the first protocol as communication for connecting the access point and the communication device. A system characterized by the following features.
13. The system according to claim 12, characterized in that the first connection method is a method of performing communication between the information processing device and the communication device using DPP as communication for connecting the access point and the communication device.
14. The system according to claim 12 or 13, characterized in that the first processing means and the second processing means initiate communication between the communication device and the information processing device using DPP.
15. The system according to claim 14, characterized in that the first processing means transmits a DPP Authentication request to the communication device.
16. The system according to claim 15, characterized in that the second processing means puts the communication device into a mode for waiting for the request.
17. A method performed in an information processing device capable of wireless communication with a communication device, A first acquisition step of acquiring information about the communication device from the aforementioned communication device, A second acquisition step involves acquiring information from the aforementioned information processing device, An extraction step is performed to extract connection methods that the communication device and the information processing device can execute, based on the information of the communication device acquired in the first acquisition step and the information of the information processing device acquired in the second acquisition step. A display step in which a selection screen for configuring the connection between the communication device and an external device is displayed on the display unit based on the connection method extracted in the extraction step, A processing step which involves performing processing according to the selection result on the selection screen, It has, The selection screen is a screen in which the extracted connection methods from among the multiple connection methods for the above settings are displayed in a selectable format. The information of the communication device and the information processing device include whether or not each of the multiple connection methods can be executed. The plurality of connection methods include a first connection method for connecting the communication device to an access point outside the communication device, and a second connection method for connecting the information processing device and the communication device without going through the access point. The first connection method includes a method for performing communication between the information processing device and the communication device using a first protocol as communication for connecting the access point and the communication device, and a method for performing communication between the information processing device and the communication device using a second protocol different from the first protocol as communication for connecting the access point and the communication device. A method characterized by the following:
18. A method performed in a system including an information processing device and a communication device capable of wireless communication with the information processing device, The aforementioned information processing device A first acquisition step of acquiring information about the communication device from the aforementioned communication device, A second acquisition step involves acquiring information from the aforementioned information processing device, An extraction step is performed to extract connection methods that the communication device and the information processing device can execute, based on the information of the communication device acquired in the first acquisition step and the information of the information processing device acquired in the second acquisition step. A display step in which a selection screen for configuring the connection between the communication device and an external device is displayed on the display unit based on the connection method extracted in the extraction step, A first transmission step of transmitting the selection result on the selection screen to the communication device, A first processing step which performs processing according to the selection result on the selection screen, The aforementioned communication device A second transmission step of transmitting information from the communication device to the information processing device, A receiving step of receiving the selection result from the selection screen from the information processing device, A second processing step which performs processing according to the selection result on the selection screen, It has, The selection screen is a screen in which the extracted connection methods from among the multiple connection methods for the above settings are displayed in a selectable format. The information of the communication device and the information processing device include whether or not each of the multiple connection methods can be executed. The plurality of connection methods include a first connection method for connecting the communication device to an access point outside the communication device, and a second connection method for connecting the information processing device and the communication device without going through the access point. The first connection method includes a method for performing communication between the information processing device and the communication device using a first protocol as communication for connecting the access point and the communication device, and a method for performing communication between the information processing device and the communication device using a second protocol different from the first protocol as communication for connecting the access point and the communication device. A method characterized by the following: