Application program, information processing device, and control method for information processing device

The application program improves the convenience of connecting communication devices by ensuring wireless LAN connections are established only when an access point is available, addressing the challenge of unreliable connections in existing systems.

JP2026067286APending Publication Date: 2026-04-20CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
CANON KK
Filing Date
2024-10-08
Publication Date
2026-04-20

AI Technical Summary

Technical Problem

Existing information processing devices face challenges in improving convenience when connecting communication devices, particularly in determining the presence of an access point for wireless LAN connections.

Method used

An application program is implemented to display selection and confirmation screens for connecting communication devices, ensuring the connection process is executed only when an access point is present, and providing functions for determining the availability of an access point before initiating the connection.

Benefits of technology

Enhances the convenience of connecting information processing devices to communication devices by ensuring efficient and reliable wireless LAN connections based on the presence of an access point.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026067286000001_ABST
    Figure 2026067286000001_ABST
Patent Text Reader

Abstract

To improve the convenience of information processing equipment when connecting communication devices with other devices. [Solution] An application program that causes the computer of an information processing device to function as follows: a second display means that, on a selection screen for selecting how to connect a communication device to another device, when a selection is made to connect the communication device to another device using a first connection method via wireless LAN, displays a confirmation screen to ask the user whether or not there is a device that acts as an access point (AP) around the communication device; an execution means that, on the confirmation screen, if an operation is made corresponding to the presence of a device that acts as an AP around the communication device, executes a connection setting process to connect the communication device to another device using the first connection method, and does not execute the connection setting process if an operation is made on the confirmation screen corresponding to the absence of a device that acts as an AP around the communication device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to an application program, an information processing apparatus, and a control method for an information processing apparatus.

Background Art

[0002] A technique in which an information processing apparatus such as a smartphone connects a communication apparatus such as a printer to another apparatus is known. Patent Document 1 describes that an information processing apparatus sets a connection mode for determining a connection form between the information processing apparatus and the communication apparatus in the communication apparatus by transmitting information to the communication apparatus.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] By the way, as the technique in which an information processing apparatus connects a communication apparatus to another apparatus becomes widespread, it is desired to improve the convenience when an information processing apparatus connects a communication apparatus to another apparatus.

[0005] An exemplary object of the present invention is to improve the convenience when an information processing apparatus connects a communication apparatus to another apparatus.

Means for Solving the Problems

[0006] According to the present invention, an application program is provided which causes the computer of an information processing device to function as: a first display means for displaying a selection screen for selecting how to connect a communication device to another device; a second display means for displaying a confirmation screen for the user to confirm whether or not there is a device that acts as an access point around the communication device when a selection corresponding to connecting the communication device to another device using a first connection method via wireless LAN (Local Area Network) is made on the selection screen; and an execution means for executing a connection setting process to connect the communication device to another device using the first connection method when an operation corresponding to the presence of a device that acts as an access point around the communication device is performed on the confirmation screen, and not executing the connection setting process when an operation corresponding to the absence of a device that acts as an access point around the communication device is performed on the confirmation screen.

[0007] Furthermore, according to the present invention, an application program is provided which causes the computer of an information processing device to function as: a first display means for displaying a selection screen for selecting how to connect a communication device to another device; a determination means for determining, based on information about the network to which the information processing device is connected, whether or not there is a device that acts as an access point around the communication device when a selection corresponding to connecting the communication device to another device using a first connection method via a wireless LAN (Local Area Network) is made on the selection screen; and an execution means that, if it is determined that there is a device that acts as an access point around the communication device, executes a connection setting process to connect the communication device to another device using the first connection method, and does not execute the connection setting process if it is determined that there is no device that acts as an access point around the communication device. [Effects of the Invention]

[0008] According to the present invention, the convenience of connecting an information processing device to a communication device with other devices can be improved. [Brief explanation of the drawing]

[0009] [Figure 1] This is a diagram illustrating an example of a communication system configuration. [Figure 2] This is a diagram illustrating an example hardware configuration. [Figure 3] This flowchart shows an example of a process performed by a terminal device. [Figure 4] This flowchart shows an example of a process performed by a terminal device. [Figure 5] This flowchart shows an example of a process performed by a terminal device. [Figure 6] A diagram showing an example of a screen displayed on the terminal device's display unit. [Figure 7] This flowchart shows an example of a process performed by a terminal device. [Figure 8] This flowchart shows an example of the process performed by a communication device. [Figure 9] A diagram showing an example of a screen displayed on the terminal device's display unit. [Figure 10] A diagram showing an example of a screen displayed on the terminal device's display unit. [Figure 11] A diagram showing an example of a screen displayed on the terminal device's display unit. [Figure 12] A diagram showing an example of a screen displayed on the terminal device's display unit. [Figure 13] This flowchart shows an example of a process performed by a terminal device. [Figure 14] This flowchart shows an example of a process performed by a terminal device. [Figure 15] This flowchart shows an example of a process performed by a terminal device. [Figure 16] This flowchart shows an example of a process performed by a terminal device. [Figure 17] A diagram showing an example of a screen displayed on the terminal device's display unit. [Figure 18] It is a flowchart showing an example of the process executed by the terminal device. [Figure 19] It is a flowchart showing an example of the process executed by the communication device.

Mode for Carrying Out the Invention

[0010] 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. Further, in the accompanying drawings, the same or similar configurations are given the same reference numerals, and redundant explanations are omitted.

[0011] <First Embodiment> The system configuration in the present invention will be described using FIG. 1. The communication system of this embodiment includes an information processing device and a communication device. As the information processing device, a smartphone is exemplified in this embodiment, but it is not limited thereto, and various devices such as a terminal device, a notebook PC, a tablet terminal, a PDA (Personal Digital Assistant), a digital camera, etc. can be applied. Also, as the communication device, a printer is exemplified in this embodiment, but it is not limited thereto, and any device capable of performing wireless communication with the information processing device can be applied. For example, if it is a printer, it can be applied to an inkjet printer, a full-color laser beam printer, a monochrome printer, etc. Also, it can be applied not only to printers but also to copiers, facsimile devices, terminal devices, smartphones, notebook PCs, tablet terminals, PDAs, digital cameras, music playback devices, TVs, smart speakers, etc. In addition, it can also be applied to a multifunction device having a plurality of functions such as a copying function, a FAX function, a printing function, etc. In this embodiment, the communication device is assumed to be a multifunction printer having, as an example, a printing function, a scanner function, etc.

[0012] The terminal device 101 is the information processing device of this embodiment. The communication device 151 is the communication device of this embodiment. The access point 131 is an external device existing outside the terminal device 101 and outside the communication device 151. In the following description, the access point is referred to as AP. AP131 refers to a device that operates as an AP, specifically, for example, a device such as a wireless LAN router. Note that AP131 is not limited to a wireless LAN router and may be a device capable of relaying wireless communication. For example, AP131 may be a device that has an AP function that operates as an AP but does not have a router function. The LAN (Local Area Network) formed by AP131 includes AP131, the communication device 151, and the terminal device 101. On the other hand, the WAN (Wide Area Network) includes AP131 and the external server 171.

[0013] The external server 171 is a server that can provide services to a device connected to AP131 via the Internet. The modem 180 is a device that mutually converts an analog signal received via the Internet into a digital signal. Depending on the type of signal, for example, when receiving a signal via an optical fiber connection, an optical network termination device is used.

[0014] The router 181 is an external device existing outside the terminal device 101 and outside the communication device 151. The router 181 has a function of relaying a plurality of terminal devices 101 on the network, assigns an IP address (Internet Protocol Address) to the terminal devices 101 connected to the network, and performs packet exchanges between each network. The network hub 182 is an external device for connecting a plurality of terminal devices 101 to the Internet, that is, for connecting a plurality of terminal devices 101 to the router 181.

[0015] In this embodiment, terminal device 101 can communicate with communication device 151 via AP 131 if the infrastructure connection described later is established. Furthermore, terminal device 101 can communicate directly with communication device 151 without going through AP 131 if the direct connection described later is established. In the following, connection to AP refers to connection to the network formed by AP. Note that AP may form multiple networks simultaneously, in which case connection to AP may refer to connection to any of the multiple networks formed by AP.

[0016] In this embodiment, the connection 141 between the terminal device 101 and AP131, and the connection 142 between the communication device 151 and AP131, are connections based on the IEEE 802.11 series standard. Specifically, the communication method based on the IEEE 802.11 series standard is Wi-Fi (Wireless Fidelity) (registered trademark). The connection 143 between the terminal device 101 and the communication device 151 is either Wi-Fi or Bluetooth (registered trademark) Low Energy (BLE). Note that the communication method used for each connection is not limited to this form, and may be, for example, Bluetooth Classic, Wi-Fi Aware, Near Field Communication (NFC), etc. AP131 and the external server 171 can communicate via the internet, and when AP131 is connected to the internet, devices connected to AP131 (terminal device 101 and communication device 151) can also use the internet. The connection 141 between terminal device 101 and AP131, and the connection 142 between communication device 151 and AP131, may be a wired LAN connection.

[0017] Next, the configuration of the terminal device 101 of this embodiment and the communication device 151 capable of communicating with the terminal device 101 of this embodiment will be described with reference to the block diagram in Figure 2. In addition, the following configuration is described as an example in this embodiment, but this embodiment is applicable to devices that can communicate with the communication device 151 and does not particularly limit the functions as shown in this figure.

[0018] The terminal device 101 includes an input interface 102, a CPU 103, a ROM 104, a RAM 105, an external storage device 106, an output interface 107, a display unit 108, a wireless communication unit 109, a short-range wireless communication unit 110, a camera 111, a wired communication unit 112, etc. The CPU 103, ROM 104, RAM 105, etc. form the computer of the terminal device 101. The terminal device 101 is envisioned as a device like a smartphone, but is not limited to a smartphone.

[0019] The input interface 102 is an interface for receiving data input and operation instructions from the user, and is composed of a physical keyboard, buttons, touch panel, etc. Alternatively, the output interface 107 (described later) and the input interface 102 may have the same configuration, allowing for screen output and acceptance of user operations to be performed using the same configuration.

[0020] The CPU 103 is the system control unit and controls the entire terminal device 101.

[0021] ROM 104 stores fixed data such as control programs executed by CPU 103, data tables, and operating system (OS) programs. In this embodiment, each control program stored in ROM 104 performs software execution control such as scheduling, task switching, and interrupt handling under the management of the embedded OS stored in ROM 104. In this embodiment, ROM 104 stores a setup application program (hereinafter referred to as the setup app). The setup app is installed on the terminal device 101 from an external source, for example, by a store application program. The setup app is an application provided by the vendor of the communication device 151. Details of the setup app will be described later.

[0022] 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 terminal device 101. Furthermore, RAM 105 is used as both the main memory and work memory for the CPU 103.

[0023] The external storage device 106 contains various programs, such as a print information generation program that generates print information that can be interpreted by the communication device 151, and an information transmission and reception control program that transmits and receives information with the communication device 151 connected via the wireless communication unit 109. The external storage device 106 also stores various information used by these programs, as well as image data obtained from other information processing devices and the Internet.

[0024] The output interface 107 is an interface that controls the display unit 108 to display data and notify the status of the terminal device 101.

[0025] The display unit 108 consists of LEDs (light-emitting diodes) and LCDs (liquid crystal displays), and displays data and notifies the status of the terminal device 101. Alternatively, a soft keyboard with keys such as numerical input keys, mode setting keys, select keys, cancel keys, and power keys may be installed on the display unit 108 to accept user input via the display unit 108.

[0026] The wireless communication unit 109 is configured to wirelessly connect to devices such as the communication device 151 and AP131 to perform data communication. For example, the wireless communication unit 109 may communicate directly with the communication device 151 wirelessly, or it may communicate via AP131 located outside the terminal device 101 and the communication device 151. In this embodiment, the wireless communication method used by the wireless communication unit 109 is Wi-Fi, which is a communication method based on the IEEE 802.11 standard, but Bluetooth Classic or the like may also be used. In this embodiment, the wireless LAN is defined as a Wi-Fi network. AP131 can be, for example, a wireless LAN router or other device. In this embodiment, the method in which the terminal device 101 and the communication device 151 are connected directly without going through an external AP is called the direct connection method. The method in which the terminal device 101 and the communication device 151 are connected via an external AP is called the infrastructure connection method.

[0027] The short-range wireless communication unit 110 is configured to perform data communication with devices such as the communication device 151 using a short-range wireless communication method, and communicates using a different communication method than the wireless communication unit 109. The short-range wireless communication unit 110 can connect to the short-range wireless communication unit 157 within the communication device 151. Examples of communication methods for the short-range wireless communication unit 110 include BLE, Bluetooth Classic, Wi-Fi Aware, and NFC.

[0028] The imaging device 111 is a device that converts images captured by the image sensor into digital data. The digital data is first stored in the RAM 105. Then, a program executed by the CPU 103 converts it into a predetermined image format and saves it as image data to the external storage device 106.

[0029] The wired communication unit 112 is configured to connect via a wire to devices such as the communication device 151 and AP131 to perform data communication. For example, the wired communication unit 112 communicates via a wired LAN. In this embodiment, the wired LAN communicates according to the Ethernet standard. However, it is not limited to this configuration, and the wired communication unit 112 may communicate via, for example, a USB (Universal Serial Bus) cable.

[0030] The communication device 151 includes a ROM 152, RAM 153, CPU 154, print engine 155, wireless communication unit 156, short-range wireless communication unit 157, input interface 158, output interface 159, function control unit 160, display unit 161, wired communication unit 162, etc. The computer of the communication device 151 is formed by the ROM 152, RAM 153, CPU 154, etc.

[0031] The wireless communication unit 156 is configured to wirelessly connect to devices such as the terminal device 101 and AP131 to perform data communication. In this embodiment, Wi-Fi is used as the wireless communication method for the wireless communication unit 156, but Bluetooth Classic or the like may also be used. The wireless communication unit 156 has AP156-a as an AP inside the communication device 151 for connecting to devices such as the terminal device 101. This AP can be connected to the wireless communication unit 109 of the terminal device 101. The wireless communication unit 156 may communicate directly with the terminal device 101 via AP156-a, or it may communicate with the terminal device 101 via AP131. Furthermore, AP156-a may be hardware that functions as an AP, or the wireless communication unit 156 may operate as AP156-a through software that functions as an AP. In addition, the AP inside the communication device 151 may consist of multiple APs with different SSIDs and passwords. In this embodiment, the AP inside the communication device 151 includes at least the connection setting AP described later.

[0032] RAM153 consists of DRAM and other components that require a backup power supply. Since RAM153 retains data through a data backup power supply (not shown), it can store important data such as program control variables without losing them. RAM153 is also used as the main memory and work memory of the CPU154, storing a receive buffer for temporarily saving print information received from terminal devices such as the terminal device 101, as well as various other information.

[0033] ROM 152 stores fixed data such as control programs, data tables, and OS programs executed by the CPU 154. In this embodiment, each control program stored in ROM 152 performs software execution control such as scheduling, task switching, and interrupt handling under the management of the embedded OS stored in ROM 152. ROM 152 also includes a memory area for storing data that needs to be retained even when power is not supplied, such as configuration information and management data for the communication device 151.

[0034] The CPU 154 is the system control unit and controls the entire communication device 151.

[0035] Based on the information stored in the print engine 155 and RAM 153, and print jobs received from terminal devices 101, etc., an image is formed on a recording medium such as paper using a recording material such as ink, and the print result is output. At this time, since the amount of data transmitted from terminal devices 101, etc. is large and high-speed communication is required, the print jobs are received via the wireless communication unit 156, which can communicate at a higher speed than the short-range wireless communication unit 157.

[0036] The short-range wireless communication unit 157 is configured to communicate with devices such as the terminal device 101 using a short-range wireless communication method. Examples of communication methods for the short-range wireless communication unit 157 include BLE, Bluetooth Classic, and Wi-Fi Aware.

[0037] The input interface 158 is an interface for receiving data input and operation instructions from the user, and consists of a physical keyboard, buttons, touch panel, etc. Alternatively, the output interface 159 (described later) and the input interface 158 may have the same configuration, allowing for screen output and acceptance of user operations using the same configuration. The output interface 159 is an interface that controls the display unit 161 for displaying data and notifying the status of the communication device 151.

[0038] The function control unit 160 manages the operation of the functions of the communication device 151, determining whether or not to operate them simultaneously.

[0039] The display unit 161 consists of LEDs (light-emitting diodes) and LCDs (liquid crystal displays), and displays data and notifies the status of the communication device 151. Alternatively, a soft keyboard with keys such as numerical input keys, mode setting keys, confirm keys, cancel keys, and power keys may be installed on the display unit 161 to accept user input via the display unit 161.

[0040] The wired communication unit 162 is configured to connect via a wire to devices such as the terminal device 101 or AP131 and perform data communication. For example, the wired communication unit 162 communicates via a wired LAN. However, it is not limited to this configuration; for example, it may communicate via a USB cable.

[0041] <About the direct connection method> Direct connection refers to a configuration in which devices connect wirelessly directly (i.e., peer-to-peer) without the need for external devices such as AP131. Direct connection is also called peer-to-peer connection (P2P connection). The communication device 151 can operate in a mode for communication via direct connection (direct connection mode) as one of its connection modes. In Wi-Fi communication, there are multiple modes for communication via direct connection, such as software AP mode and Wi-Fi Direct (WFD) mode.

[0042] The mode in which a direct connection is performed using WFD is called WFD mode. WFD is a standard developed by the Wi-Fi Alliance and is included in the IEEE 802.11 series of communication standards. In WFD mode, after the device to be communicated with is discovered using a device discovery command, the roles of the P2P group owner (GO) and the P2P client are determined, and then the remaining wireless connection processing is performed. The group owner corresponds to the Wi-Fi base station (access point), and the client corresponds to the Wi-Fi slave station (slave device). This role determination corresponds to GO Negotiation in P2P, for example. In WFD mode, before the role determination is performed, the communication device 151 is neither a base station nor a slave station. Specifically, first, one device issues a device discovery command to the other device to search for a device to connect to in WFD mode. Once the other device to be communicated with is discovered, the two devices confirm information about the services and functions that can be supplied by each other. This confirmation of device supply information is optional and not mandatory. This equipment supply information confirmation phase corresponds, for example, to P2P Provision Discovery. Next, by confirming this equipment supply information with each other, it is determined which will be the P2P client and which will be the P2P group owner. Once the client and group owner are determined, they exchange parameters for communication using WFD. Based on the exchanged parameters, the remaining wireless connection processing and IP connection processing are carried out between the P2P client and group owner. In WFD mode, the communication device 151 may always operate as GO without performing the GO Negotiation described above. In other words, the communication device 151 may operate in WFD mode, which is Autonomous GO mode. Furthermore, the state in which the communication device 151 is operating in WFD mode means, for example, a state in which the WFD connection has not been established but the communication device 151 is operating as GO, or a state in which the WFD connection has been established and the communication device 151 is operating as GO.

[0043] In software AP mode, one device (e.g., terminal device 101) acts as the client, requesting various services between the communicating devices (e.g., terminal device 101 and communication device 151). The other device implements the functions of an AP in Wi-Fi through software configuration. The software AP corresponds to the Wi-Fi base station, and the client corresponds to the Wi-Fi slave station. In software AP mode, the client searches for a device that will become a software AP using a device discovery command. Once a software AP is found, the remaining wireless connection processing (such as establishing a wireless connection) takes place between the client and the software AP, followed by IP connection processing (such as assigning an IP address). The commands and parameters sent and received when establishing a wireless connection between the client and the software AP should be those specified in the Wi-Fi standard, and their explanation is omitted here.

[0044] In this embodiment, when the communication device 151 establishes and maintains a direct connection, it operates as a master station within the network to which it belongs. A master station is a device that constructs a wireless network and provides slave stations with parameters used to connect to the wireless network. Parameters used to connect to the wireless network include, for example, parameters related to the channel used by the master station. By receiving these parameters, the slave station connects to the wireless network constructed by the master station using the channel used by the master station. In direct connection mode, since the communication device 151 operates as a master station, it is possible for the communication device 151 to determine which frequency band and which channel to use for communication in direct connection mode. In this embodiment, the communication device 151 is capable of using channels corresponding to the 2.4 GHz frequency band and channels corresponding to the 5 GHz frequency band for communication in direct connection mode. However, in this embodiment, the communication device 151 does not use channels corresponding to the DFS (Dynamic Frequency Selection) band within the 5 GHz frequency band for communication in direct connection mode. In other words, the communication device 151 shall use only channels corresponding to frequency bands other than the DFS band within the 5GHz frequency band for communication in direct connection mode. If radar waves in the frequency band corresponding to a channel are detected while a channel corresponding to the DFS band is being used, the currently used channel must be changed. The frequency band in which such channel changes may occur due to the detection of radar waves is called the DFS band. However, if, for example, a wireless chip that supports the DFS function is being used, channels corresponding to the DFS band within the 5GHz frequency band may be available for communication in direct connection mode. The channel determined to be used for direct connection mode is used for communication via direct connection. Furthermore, this channel is also used for transmitting beacon signals as a master station and for transmitting responses to received commands.In other words, the channel is used not only for communication processing in direct connection mode when a direct connection is established, but also for communication processing in direct connection mode when a direct connection is not established.

[0045] Furthermore, the direct connection mode may be configured to allow the user to set whether to use a channel corresponding to the 2.4GHz frequency band or a channel corresponding to the 5GHz frequency band. Alternatively, the direct connection mode may be configured to allow the user to specify a channel number, thereby allowing the user to set which channel to use. In addition, the channel used for the direct connection mode may be pre-configured in the communication device 151 rather than being arbitrarily set by the user.

[0046] Although the above description explains that the communication device 151 can use the 2.4GHz and 5GHz frequency bands, it is not limited to this configuration. Other frequency bands may also be usable, and in the processing where the 2.4GHz and 5GHz frequency bands are used in this embodiment, other frequency bands may also be used. For example, since the IEEE 802.11ad standard allows the use of the 60GHz frequency band, 60GHz may be used as one of the other frequency bands mentioned above.

[0047] <Regarding infrastructure connection methods> Infrastructure connection is a connection configuration in which communication devices (e.g., terminal device 101 and communication device 151) are connected to an AP (e.g., AP131) that manages the network, allowing the devices to communicate with each other via the AP. The communication device 151 can also operate in an infrastructure connection mode (infrastructure connection mode) as one of its connection modes.

[0048] In infrastructure connectivity, each device searches for an access point (AP) using an AP discovery command. Once an AP is found, the remaining wireless connection processing (establishing the wireless connection, etc.) takes place between the device and the AP, followed by IP connection processing (assigning an IP address, etc.). The commands and parameters sent and received when establishing a wireless connection between the device and the AP should be those specified in the Wi-Fi standard, and will not be explained here.

[0049] In this embodiment, when the communication device 151 operates via an infrastructure connection, the AP 131 operates as the master station and the communication device 151 operates as the slave device. That is, in this embodiment, the infrastructure connection refers to the connection between the communication device 151 operating as a slave device and the device operating as the master station. If the communication device 151 has established an infrastructure connection and the terminal device 101 has also established an infrastructure connection with the AP 131, then communication between the communication device 151 and the terminal device 101 is possible via the AP 131. The channel used for communication in the infrastructure connection is determined by the AP 131, so the communication device 151 performs communication in the infrastructure connection using the channel determined by the AP 131. In this embodiment, the communication device 151 is capable of using channels corresponding to the 2.4 GHz frequency band and channels corresponding to the 5 GHz frequency band for communication in the infrastructure connection. The communication device 151 can also use channels corresponding to the DFS band within the 5 GHz frequency band for communication in the infrastructure connection. Furthermore, in order for terminal device 101 to communicate with communication device 151 via AP131, it needs to recognize that communication device 151 belongs to the network formed by AP131, to which terminal device 101 belongs.

[0050] <Regarding simultaneous operation> The communication device 151 of this embodiment is capable of simultaneously (in parallel) performing both infrastructure mode operation and direct connection mode operation. Therefore, the communication device 151 can simultaneously (in parallel) maintain a connection for communication in infrastructure mode and a connection for communication in direct connection mode. In other words, the communication device 151 can simultaneously establish a Wi-Fi connection in which it acts as a slave device and a Wi-Fi connection in which it acts as a master device. Hereafter, the simultaneous (in parallel) establishment of infrastructure connection and direct connection, and the operation that enables communication simultaneously (in parallel) via infrastructure connection and direct connection, is referred to as simultaneous operation. In other words, simultaneous operation is the operation in which the communication device 151 performs both the operation as a master device (Group Owner or AP) and the operation as a slave device in parallel.

[0051] Communication in infrastructure mode and communication in direct connection mode are performed using specific frequency bands (specific channels). Therefore, in both infrastructure mode and direct connection mode, the channel to be used for communication and connection between each device must be determined before communication begins. In a configuration where multiple channels are assigned to a single wireless IC chip for simultaneous communication, the configuration of each communicating device and the processing performed by each device become complex. Therefore, for example, when communication devices 151 are operating simultaneously, it is desirable that a common channel be used for communication in each mode. That is, it is desirable that communication devices 151 use only one channel even when operating simultaneously. For this reason, in this embodiment, the wireless communication unit 156 has only one wireless IC chip that realizes communication on a predetermined channel, and communication devices 151 do not communicate using multiple channels simultaneously.

[0052] <About connection settings mode> The communication device 151 can operate in connection setting mode. The trigger for the communication device 151 to start operating in connection setting mode may be, for example, the user pressing a button for connection setting mode, or the communication device 151 being started (powered on) for the first time after arrival. The button for connection setting mode may be a hard button on the communication device 151, or a soft button displayed on the display unit 161 by the communication device 151.

[0053] When the communication device 151 starts operating in connection setting mode, it enables both Wi-Fi communication and BLE communication. Specifically, as part of the Wi-Fi communication activation process, the communication device 151 activates an internal AP (connection setting AP) dedicated to connection setting mode. This allows the communication device 151 to establish a direct Wi-Fi connection with the terminal device 101. Connection information (SSID and password) for connecting to the connection setting AP is pre-stored in the setup application installed on the terminal device 101, and the terminal device 101 is assumed to be aware of this connection information in advance. It is also possible that the connection setting AP does not have an encryption method set and does not require a password to connect to it. Therefore, unlike the connection information of the AP enabled in direct connection mode, the connection information for connecting to the connection setting AP cannot be arbitrarily changed by the user. In connection setting mode, the communication device 151 may connect to the terminal device 101 using WFD instead of normal Wi-Fi. In other words, the communication device 151 may operate as a Group Owner and receive configuration commands from the terminal device 101 via WFD communication.

[0054] Furthermore, when communication is performed via a wireless connection between the terminal device 101 and the communication device 151 operating in connection setting mode, the terminal device 101 may use either IPv4 (Internet Protocol version 4) or IPv6 (Internet Protocol version 6) as the protocol used for communication. For example, if IPv6 is configured on the terminal device 101 and the communication device 151 can only use communication using IPv4, it may be the case that such communication cannot be performed. In other words, a predetermined process may be performed to determine whether the communication device 151 can use the protocol used by the terminal device 101 for communication before the communication is started. Note that when the terminal device 101 is configured to use IPv4 as the protocol used for communication, it means that communication by the wireless communication unit 109 using IPv4 is enabled on the terminal device 101. Similarly, when the terminal device 101 is configured to use IPv6 as the protocol used for communication, it means that communication by the wireless communication unit 109 using IPv6 is enabled on the terminal device 101.

[0055] <About connection setup process> In this embodiment, the terminal device 101 performs the settings (wireless settings) for operating the communication device 151 in infrastructure connection mode using wireless communication with the communication device 151. The connection setting process in this embodiment is performed by wireless communication and is therefore also called cableless setup (CLS). The connection setting process may be referred to as the first setup, as will be described later. The connection setting process may also be performed by wired communication. The communication device 151 performs the connection setting process while operating in wireless setting mode, which is the mode for performing the connection setting process. The terminal device 101 performs the connection setting process when the setup application is running. The setup application is an application program that configures the AP to which the communication device 151 is connected and also causes the communication device 151 to print image data, document data, etc. from within the terminal device 101.

[0056] The setup application may have functions other than those for executing connection setup processing, which is the process of setting the AP to which the communication device 151 is connected by sending a setting command to the communication device 151, and for instructing the communication device 151 to print. For example, if the communication device 151 has a scanning function, the setup application may also have functions for scanning documents placed in the communication device 151, functions for configuring other settings of the communication device 151, and functions for checking the status of the communication device 151. Furthermore, the setup application has a function for executing connection setup processing, but does not have to have other functions such as a function for instructing the communication device 151 to print. Specifically, the function for instructing the communication device 151 to print is a function that sends a print job to the communication device 151 to instruct it to print. Specifically, the function for scanning documents placed in the communication device 151 is a function that sends a scan job to the communication device 151 to instruct it to scan. Furthermore, the function for checking the status of the communication device 151 specifically refers to the function of acquiring and displaying information indicating the status of the communication device 151 from the communication device 151. The setup application is assumed to be an application program.

[0057] Furthermore, in the following, the processing performed by the setup application is actually realized by the CPU 103 reading the setup application stored in ROM 104 into RAM 105 and executing it. When terminal device 101 connects AP 131 and communication device 151 and operates communication device 151 in infrastructure connection mode, it wirelessly transmits an infrastructure setting command (connection setting instruction) to communication device 151 to operate communication device 151 in infrastructure connection mode. The infrastructure setting command includes, for example, information about AP 131. This information about AP 131 includes, for example, the SSID (Service Set Identifier) ​​of AP 131, the password for connecting to AP 131, and information about the frequency band used by AP 131. After the Wi-Fi infrastructure connection is established between terminal device 101 and communication device 151 through the connection setting process, communication becomes possible between terminal device 101 and communication device 151 via the established connection. Specifically, for example, terminal device 101 can send print jobs to communication device 151 to perform printing, or scan jobs to perform scanning, via the established connection. Furthermore, once the infrastructure connection is established, communication device 151 can communicate with the internet via AP 131. As an example, communication device 151 can receive device update notifications from a specific server, download print data, or upload information about itself.

[0058] <About Wireless Profiles> A wireless profile is information stored and managed by the operating system of terminal device 101, and includes connection information for APs that terminal device 101 has previously connected to. For example, wireless profiles are used in a reconnection function, which is a function that automatically re-establishes the connection between terminal device 101 and the AP when the connection is lost.

[0059] Figure 9(a) is a screen displayed by the OS, which is the connection screen 900 for terminal device 101 to connect to AP. The connection screen 900 is intended for connecting to AP131, which has the SSID displayed on screen 900. The connection screen 900 includes an area 901 for setting whether or not to enable the reconnection function when connecting to AP131, an area 902 for accepting input of a password for connecting to AP131, and an area 903 for attempting to establish a connection between AP131 and terminal device 101 using the entered password. If the reconnection function is enabled by area 901, the OS will automatically re-establish the connection when the connection between terminal device 101 and AP131 is disconnected. On the other hand, if the reconnection function is disabled by area 901, the OS will not automatically re-establish the connection when the connection between terminal device 101 and AP131 is disconnected. When area 903 is pressed, if the connection between AP131 and terminal device 101 is successfully established, the OS saves the AP131's connection information (SSID and password) as a wireless profile. However, certain types of OS or certain versions of the OS will not save the AP131's connection information as a wireless profile, even if the connection between AP131 and terminal device 101 is successfully established, if the reconnection function is disabled.

[0060] Figure 9(b) shows a screen displayed by the OS, which is the wireless profile screen 910 for showing stored wireless profiles. The wireless profile screen 910 is an example of a screen when the OS has stored two wireless profiles. In the wireless profile screen 910, the wireless profile with higher priority is displayed higher up. A wireless profile with higher priority is a wireless profile that is used with greater priority when a connection between the terminal device 101 and the AP has not been established. Area 911 is an area that represents the first wireless profile with higher priority by its SSID, and area 912 is an area that represents the second wireless profile with lower priority by its SSID. By performing a predetermined operation on area 911 or area 912, it is possible to delete the wireless profile corresponding to the area on which the predetermined operation was performed from the terminal device 101.

[0061] <MACアドレスについて> A MAC address (Media Access Control Address) is information used to uniquely identify a device on a network and is used to specify the destination for network communication. A MAC address is a 48-bit (6-byte) address. Generally, MAC addresses are written in hexadecimal, separated by byte units using dashes (-) or colons (:).

[0062] The top three bytes of a MAC address represent the vendor ID managed by the IEEE (Institute of Electrical and Electronics Engineers). Hereafter, the top three bytes of the MAC address will be referred to as the OUI (Organizationally Unique Identifier) ​​portion. The bottom three bytes of the MAC address are addresses managed by each vendor. Hereafter, the bottom three bytes of the MAC address will be referred to as the vendor management portion. The vendor management portion assigns addresses to each product by each vendor to avoid duplication. The combination of the OUI portion and the vendor management portion allows the MAC address to become a unique identifier assigned to each product.

[0063] The least significant bit in the first byte of a MAC address is called the I / G bit (Individual / Group bit), and it indicates the method of network communication. Specifically, setting the I / G bit of a MAC address indicates that data will be sent to multiple communication partners simultaneously. This method of communication is called multicast communication (a method of sending data to a specific group) or broadcast communication (a method of sending data to all terminals on a LAN). On the other hand, not setting the I / G bit of a MAC address indicates that the communication partner is a single individual terminal. This method of communication is called unicast communication.

[0064] The second least significant bit in the first byte of a MAC address is called the G / L bit (Global / Local bit), and it indicates the scope of use for network devices. Generally, the G / L bit of a MAC address is left blank for devices on a network, and set for devices used on a local network.

[0065] In the case of wireless communication devices, for example, an AP's SSID is assigned a unique MAC address to identify the destination for network communication. As mentioned above, each vendor sets a value within a 24-bit range in the vendor management unit as the area for MAC addresses uniquely assigned to each device. In this case, an AP that can use multiple SSIDs requires a large number of addresses to assign a unique MAC address to each SSID. Therefore, each vendor may save bits in the vendor management unit by setting the G / L bits in the OUI part of the MAC address for SSIDs of the same device.

[0066] <About wired profiles> A wired profile is information stored and managed by the OS of terminal device 101, and includes identifiers of networks that terminal device 101 has previously connected to via wired LAN. For example, a wired profile includes unique information of the connected device, such as its MAC address and network name. When terminal device 101 connects to a network via wired LAN, the OS checks the wired profile to determine if the currently connected network is the same as a previously connected network. For example, the OS obtains the MAC address of the device to which terminal device 101 is connected via wired LAN and determines whether the wired profile contains information with the same MAC address. If it is determined that the networks are the same, the OS displays the wired LAN network name obtained during the previous connection (hereinafter referred to as the wired profile name) on a designated screen of the OS.

[0067] If terminal device 101 has previously connected via wireless LAN, the SSID, which is the network name of the wireless LAN, will be displayed as the wired profile name. This is done by the OS, when it determines that the wireless LAN connected device and the wired LAN connected device are the same device, storing and managing the SSID obtained from the wireless profile as the network name within the wired profile.

[0068] One way to identify whether a wireless LAN-connected device and a wired LAN-connected device are the same device is, for example, by obtaining and determining the MAC address of the connected device. When terminal device 101 is connected via wireless LAN, it is possible to obtain the MAC address as unique information of the wireless LAN-connected device. That is, the MAC address is obtained as unique information of the network device to which terminal device 101 is connected via wireless LAN. In this case, if the MAC address obtained via wireless LAN and the MAC address included in the wired profile are identified as information indicating the same device, it is possible to identify that the network device to which terminal device 101 is connected is the same. When the OS connects to the network via wireless LAN, it obtains the MAC address and stores and manages it in a location separate from the wireless profile. If the MAC address obtained via wireless LAN and the MAC address obtained via wired LAN are determined to be information of the same device, the OS stores and manages the SSID obtained from the wireless profile as the network name in the wired profile.

[0069] While the OS has described a process for determining whether devices are the same based on their MAC addresses, this is not the only method. For example, the OS may obtain the IP addresses of the wireless LAN and wired LAN connections and determine if they are the same devices by checking if these IP addresses match.

[0070] Figure 9(c) shows a screen displayed by the OS, which is the wired profile screen 920 for showing stored wired profiles. The wired profile screen 920 is an example of a screen when the OS has stored two wired profiles. Note that the wired profile screen 920 may be specified to display only the information of the currently connected wired profile. Area 921 is an area that represents the first wired profile, which is not connected, by its network name, and area 922 is an area that represents the second wired profile, which is connected, by its network name. When connected only via wired LAN, the OS may assign a generic name as the network name. For example, the wired profile screen 920 displays the generic name "Ethernet" in area 921. Also, if the network device has been connected via wireless LAN before, the OS may assign the name of the wireless network as the network name. For example, the wired profile screen 920 displays the network name obtained from the wired profile in area 922. This is possible because the OS stores the SSID obtained from the aforementioned wireless profile as the network name in the wired profile.

[0071] <Regarding the processing performed by terminal device 101 and communication device 151> In this embodiment, the setup application can perform network setup of the communication device 151 (hereinafter referred to as "first setup") via a wireless connection between the terminal device 101 and the communication device 151 operating in connection setting mode. In other words, the first setup is a setup method that connects the communication device 151 and the AP by transmitting configuration information from the terminal device 101 to the communication device 151 via wireless communication using the setup application. The configuration information includes the password and SSID for connecting to the AP. That is, the first setup (connection setting process) is a process for transmitting configuration information for connecting to the AP, which is a wireless LAN router, to the communication device 151. If a wireless profile corresponding to a predetermined AP that the communication device 151 will connect to is already stored in the terminal device 101 before the setup application receives a predetermined operation (predetermined instruction) for network setup from the user, the setup application can perform the first setup without receiving a password from the user.

[0072] Furthermore, in this embodiment, the communication device 151 can connect to the AP by methods other than the first setup. The second and third setups, which are methods other than the first setup, are network setups that are performed without transmitting configuration information from the terminal device 101 to the communication device 151 via wireless communication using a setup application. Specifically, for example, the second setup is a network setup using push-button WPS (Wi-Fi Protected Setup). The second setup may also be a network setup using PIN code WPS. The second setup may also be a network setup other than WPS, such as AOSS or Rakuraku Wireless Start. The second setup may also be a network setup that is performed by establishing a connection between the communication device 151 and the AP selected by the user through an operation on the communication device 151 from among the APs that the communication device 151 has searched for, via wireless LAN.

[0073] Furthermore, the third setup method, which is a method other than the first setup, is a network setup performed by establishing a connection between the AP and the communication device 151 via a wired LAN. The third setup may also be a network setup achieved by sending configuration information from the terminal device 101 to the communication device 151 via USB communication using a setup application. The second and third setups are network setup methods that can be performed without the user entering a password for connecting to the AP into the setup application. If a wireless profile corresponding to a given AP is not already stored in the terminal device 101 before the setup application receives the given instructions from the user, it is preferable for the setup application to perform the prescribed processing for setups other than the first setup. This is because many users find the second and third setups more convenient than the first setup, which involves the input of a password. The prescribed processing specifically includes, for example, the process of displaying the selection screen described later, or the process of displaying the guide screen described later.

[0074] Furthermore, a fourth setup method, other than the first, second, and third setup methods, is a setup method performed by establishing communication between the terminal device 101 and the communication device 151 via USB. The fourth setup can be performed when there is no network nearby to which the communication device 151 can be connected. Note that the fourth setup may also be a setup performed by establishing a connection between the terminal device 101 and the communication device 151 via Bluetooth.

[0075] However, there are cases where a user does not have a wireless LAN router, and there are no AP131s around the communication device 151. For example, as shown in Figure 1, terminal device 101 is connected to network hub 182, but there are no AP131s around the communication device 151. In such cases, the communication device 151 cannot be connected to AP131. That is, it is not possible to establish an infrastructure connection between terminal device 101 and communication device 151 via AP131. In this case, the user needs to understand that AP131 must be present in the vicinity in order for terminal device 101 to perform any of the first to third setups. The user then needs to choose to establish a connection between terminal device 101 and communication device 151 by performing the fourth setup.

[0076] However, in environments where AP131 is not present around terminal device 101 or communication device 151, if infrastructure connectivity cannot be established, users may encounter difficulties operating terminal device 101 or communication device 151. Furthermore, for example, a user may interrupt the setup of communication device 151 without realizing the need to perform the fourth setup step. In other words, communication between terminal device 101 and communication device 151 becomes impossible. In such cases, the user may take actions such as returning communication device 151 to the manufacturer because they are unable to complete the setup on their own. Therefore, there is a need to improve user convenience when establishing a connection between terminal device 101 and communication device 151.

[0077] In this embodiment, when the setup application sets up the communication device 151 from the terminal device 101, it causes the CPU 103 of the terminal device 101 to operate as follows. The CPU 103 displays a selection screen for selecting how to connect the communication device 151 to another device. If the selection screen indicates that the communication device 151 is connected to AP 131 using a wireless LAN connection, the CPU 103 performs a predetermined process to check whether AP 131 is present in the vicinity. In this embodiment, as a predetermined process, the CPU 103 displays a confirmation screen for the user to confirm whether AP 131 is present in the vicinity of the communication device 151. If the confirmation screen indicates that AP 131 is present in the vicinity of the communication device 151, the CPU 103 executes a first setup to connect the communication device to AP 131 using a wireless LAN connection. On the other hand, if the confirmation screen indicates that AP 131 is not present in the vicinity of the communication device 151, the CPU 103 does not execute the first setup.

[0078] Thus, in this embodiment, before the first setup, the CPU 103 prompts the user to confirm whether AP131 is present around the communication device 151 via a confirmation screen. Based on the user's selection on the confirmation screen, the CPU 103 controls whether or not to execute the first setup. This prevents the CPU 103 from executing the first setup and failing in an environment where AP131 is not present around the communication device 151.

[0079] Figure 3 is a flowchart illustrating an example of network setup for the communication device 151 performed by the terminal device 101. This flowchart is realized when the CPU 103 reads a program stored in the ROM 104 into the RAM 105 and executes it. In this embodiment, the terminal device 101 performs the processing using a setup application. This flowchart is initiated based on the user giving the predetermined instructions on the screen displayed by the setup application.

[0080] In S301, CPU 103 searches for communication device 151 operating in connection setting mode (connection setting AP). Specifically, CPU 103 searches for beacons emitted by communication device 151 operating in connection setting mode, which contain an SSID corresponding to connection setting mode.

[0081] In S302, the CPU 103 determines whether it has found a communication device 151 operating in connection setting mode through the search in S301. Specifically, the CPU 103 determines whether there is a beacon among those detected in S301 that contains an SSID corresponding to connection setting mode. The SSID corresponding to connection setting mode is the same SSID as the connection information for connecting to the connection setting AP, which is pre-stored in the setup application. Therefore, the CPU 103 determines whether there is a beacon among the beacons emitted by devices surrounding the terminal device 101 that contains the same SSID as the connection information for connecting to the connection setting AP, which is pre-stored in the setup application. If the CPU 103 determines YES, it proceeds to S303; if it determines NO, it proceeds to S308. Also, if the CPU 103 determines YES, it identifies the discovered communication device 151 as the device to be set up for network setup (hereinafter referred to as the target device). If multiple communication devices 151 are discovered, the first communication device 151 discovered may be identified as the target device, or the communication device 151 selected by the user from among the multiple discovered communication devices 151 may be identified as the target device. Furthermore, in the following steps, network setup processing will be performed for the communication device 151 identified as the target device.

[0082] In S303, CPU103 executes a first determination process to determine whether to perform the first setup without executing a predetermined process for receiving password input from the user. Details of the first determination process will be described later with reference to Figure 4.

[0083] In S304, CPU 103 determines whether it has determined in the first determination process that the first setup should be performed without executing any predetermined processes. If CPU 103 determines it is YES, it proceeds to S305; if it determines it is NO, it proceeds to S308. If CPU 103 determines it is YES, it will perform the first setup without executing any setup-related processes other than the first setup, such as displaying the selection screen or guide screen as described later. On the other hand, if CPU 103 determines it is NO, it will execute setup-related processes other than the first setup, such as displaying the selection screen or guide screen as described later.

[0084] In S305, the CPU 103 displays a confirmation screen on the display unit 108 to confirm whether to perform the first setup. For example, the confirmation screen 600 shown in Figure 6(a) is displayed. For example, the confirmation screen 600 includes a button 601 for selecting whether to perform the first setup and a button 602 for selecting whether not to perform the first setup. For example, the confirmation screen 600 also includes an area 603 showing the name of the communication device 151 and an area 604 showing the SSID of the network to which the terminal device 101 is currently connected. The name of the communication device 151 is included in the beacon obtained from the communication device 151 through the search in S301. The SSID of the network to which the terminal device 101 is currently connected is obtained in the first determination process.

[0085] In S306, the CPU 103 determines whether or not the first setup was selected on the confirmation screen 600. Specifically, in this determination, the CPU 103 determines YES if button 601 is selected, and NO if button 602 is selected. If the CPU 103 determines YES, it proceeds to S307; if it determines NO, it proceeds to S308.

[0086] Note that the processes in S305 and S306 may be omitted. That is, if the result in S304 is YES, the process in S305 and S306 may be skipped, and the process may proceed to S307.

[0087] In S307, CPU103 performs the first setup. The details of this process will be described later using Figure 7. The process then proceeds to S314.

[0088] As described above, S308 is executed if NO is determined in S302, S304, or S306. In S308, the CPU 103 accepts the user's selection of the connection method between the terminal device 101 and the communication device 151. Here, for example, the selection screen 1010 shown in Figure 10(a) is displayed on the display unit 108. The selection screen 1010 is a screen for selecting which connection method the communication device 151 will use to connect to another device. For example, the selection screen 1010 includes an area 1011 for selecting a wireless LAN connection method, an area 1012 for selecting a wired LAN connection method, an area 1013 for selecting a USB connection method, and a button 1014 for displaying the next screen. In other words, the selection screen 1010 is a reception screen that can accept user selections corresponding to connecting the communication device 151 to the AP or terminal device 101 using one of these connection methods.

[0089] Network setup for establishing a connection between terminal device 101 and communication device 151 using a wireless LAN connection method includes a first setup and a second setup. Therefore, in this embodiment, the setup that can be performed when region 1011 is selected includes the first setup and the second setup. In other words, region 1011 is an option that corresponds to at least the second setup. Network setup for establishing a connection between terminal device 101 and communication device 151 using a wired LAN connection method includes a third setup. Therefore, in this embodiment, the setup that can be performed when region 1012 is selected includes the third setup. In other words, region 1012 is an option that corresponds to at least the third setup. Setup for establishing a connection between terminal device 101 and communication device 151 using a USB connection method includes a fourth setup. Therefore, in this embodiment, the setup that can be performed when region 1013 is selected includes the fourth setup. In other words, region 1013 is an option that corresponds to at least the fourth setup. The selection screen 1010 may also include an area for selecting the Bluetooth connection method, for example. If the area for selecting the USB connection method is selected, the USB connection setup will be performed as the fourth setup step. If the area for selecting the Bluetooth connection method is selected, the Bluetooth connection setup will be performed as the fourth setup step.

[0090] If the user selects one of the connection methods by selecting area 1011, area 1012, or area 1013, and then presses button 1014, the process proceeds to S309.

[0091] In S309, CPU 103 determines whether the wireless LAN connection method was selected on selection screen 1010. If CPU 103 determines it is YES, it proceeds to S310; otherwise, it proceeds to S319.

[0092] In S310, CPU103 executes a second determination process to determine whether to perform the first setup. Details of the second determination process will be described later using Figure 5.

[0093] In S311, the CPU 103 determines whether it has decided to perform the first setup in the second determination process. If the CPU 103 determines it is YES, it proceeds to S312; if it determines it is NO, it proceeds to S308. In other words, in this embodiment, if the CPU 103 does not perform the first setup (NO in S311), it displays the selection screen 1010 again in S308. By displaying the selection screen 1010 again in this way, the user can select another setup method.

[0094] In S312, CPU103 executes a first determination process to determine whether to perform the first setup. Details of the first determination process will be described later using Figure 4. Furthermore, CPU103 will execute the same process as the first determination process in S312 and S303.

[0095] In S313, CPU 103 determines whether it has determined in the first determination process whether to perform the first setup. If CPU 103 determines it is YES, it proceeds to S307; if it determines it is NO, it proceeds to S318.

[0096] In S318, the CPU 103 displays the first guide screen for the second setup on the display unit 108. Here, for example, the guide screen 1100 shown in Figure 11(a) is displayed on the display unit 108 as the first guide screen. For example, the guide screen 1100 includes a button 1102 for displaying a manual showing how the user can perform the second setup in the web browser of the terminal device 101, and a button 1101 for displaying the next screen. If area 1102 is selected, the CPU 103 launches the web browser of the terminal device 101 and displays the manual on the web browser. Alternatively, the manual may be displayed directly on the setup application instead of the web browser. If button 1101 is pressed by the user, the process proceeds to S314.

[0097] In S319, the CPU 103 displays a second guide screen for the third or fourth setup on the display unit 108. Here, for example, the guide screen 1110 shown in Figure 11(b) is displayed on the display unit 108 as the second guide screen. For example, the guide screen 1110 includes a button 1112 for displaying a manual showing how the user can perform the third or fourth setup in the web browser of the terminal device 101, and a button 1111 for displaying the next screen. The method for the user to perform the third or fourth setup may also be included in the guide screen 1110. Specifically, for example, the guide screen 1110 may include an area prompting the user to connect the AP 131 and the communication device 151 with a wired LAN (LAN cable). Also, if the third or fourth setup is a USB connection setup, the guide screen 1110 may be a screen prompting the user to connect the terminal device 101 and the communication device 151 with a USB cable. If the fourth setup is for setting up a Bluetooth connection, the guide screen 1110 may be a screen that prompts the user to connect the terminal device 101 and the communication device 151 via Bluetooth.

[0098] In S314, the CPU 103 searches for the communication device 151 according to one of the first to fourth setup methods that was executed. For example, if the CPU 103 executes the first, second, or third setup, it searches for the communication device 151 on the network to which the terminal device 101 belongs and which is formed by the AP 131. If the communication device 151 and the terminal device 101 are connected to the same AP 131 when the first, second, or third setup is executed, the communication device 151 will be found through this search. For example, if the CPU 103 executes the fourth setup, it searches for the communication device 151 that the terminal device 101 connects to via USB. Specifically, the CPU 103 uses the OS API (Application Program Interface) provided by the terminal device 101 to obtain information about devices around the terminal device 101. More specifically, the CPU 103 obtains information about the communication device 151 connected via USB by the wired communication unit 112.

[0099] In S315, the CPU 103 determines whether or not it found the communication device 151 through the search in S314. If the CPU 103 determines it is YES, it proceeds to S316; if it determines it is NO, it proceeds to S317. If this process is executed after the first setup, the CPU 103 identifies whether the communication device 151, which was the destination for the configuration information sent in the first setup, is included in the one or more devices found through the search in S314. If it is determined that the communication device 151 is included, the determination in this step is YES. That is, if no devices are found through the search in S314, or if the communication device 151, which was the destination for the configuration information sent in the first setup, is not included in the one or more devices found, the determination in this step is NO. If this process is executed after the second or third setup, the CPU 103 displays the one or more devices found through the search in S314 and accepts a selection from the user. If a selection is accepted from the user, the determination in this step is YES. In other words, if no devices are found in the search in S314 and no selection is accepted from the user, the result in this determination is NO. Also, if this process is executed after the fourth setup, the CPU 103 will determine YES in this determination if one or more devices are found in the search in S314. In other words, if no devices are found in the search in S314, the result in this determination is NO.

[0100] In S316, the CPU 103 displays a success screen on the display unit 108, which corresponds to the discovery of the communication device 151 through the search in S314. For example, the success screen 1020 shown in Figure 10(b) is displayed on the display unit 108. For example, the success screen 1020 includes a message indicating that the communication device 151 has been discovered and a message indicating that the connection with the communication device 151 was successful. If the exit button 1021 included in the success screen 1020 is pressed, the process in this flowchart ends.

[0101] Furthermore, if the CPU 103 finds the communication device 151 through the search in S314, it may obtain capability information regarding the capabilities of the communication device 151 from the communication device 151. This capability information may then be used in the print setting process for configuring print jobs to be sent to the communication device 151, and in the scan setting process for configuring scan jobs to be sent to the communication device 151. Capability information may include, for example, information indicating which paper types can be printed or information indicating whether scanning is possible.

[0102] Furthermore, if the CPU 103 finds the communication device 151 in the search in S314, it may, for example, execute a process to install a printer driver corresponding to the communication device 151. Specifically, for example, it may install an installer for installing a printer driver corresponding to the communication device 151, or install the printer driver using the installer.

[0103] In S317, the CPU 103 displays a failure screen on the display unit 108, which corresponds to the fact that the communication device 151 could not be found during the search in S314. For example, the failure screen 1030 shown in Figure 10(c) is displayed on the display unit 108. For example, the failure screen 1030 includes a message indicating that the communication device 151 could not be found, or a message indicating that the connection with the communication device 151 failed. If the exit button 1031 included in the failure screen 1030 is pressed, the process in this flowchart ends.

[0104] Figure 4 is a flowchart of the first decision process executed by the terminal device 101. This flowchart is realized when the CPU 103 reads a program stored in the ROM 104 into the RAM 105 and executes it. In this embodiment, the terminal device 101 executes the process using a setup application. This flowchart corresponds to the processes in S303 and S312.

[0105] In S401, the CPU 103 obtains information indicating the connection status of the terminal device 101 from the OS of the terminal device 101 using the OS API. Specifically, in S401, the CPU 103 obtains information indicating the connection status of the wireless communication unit 109 from the OS as information indicating the connection status of the terminal device 101. In other words, the connection status of the wireless communication unit 109 is the Wi-Fi connection status of the terminal device 101. In other words, the connection status of the wireless communication unit 109 is information indicating whether or not the terminal device 101 is connected to other devices via wireless LAN.

[0106] In S402, the CPU 103 determines whether terminal device 101 is connected to other devices via wireless LAN, based on the connection status information of terminal device 101 obtained in S401. If the CPU 103 determines it is YES, it proceeds to S403; otherwise, it proceeds to S409.

[0107] In S403, CPU 103 identifies the SSID of the AP to which terminal device 101 is connected and the encryption method used by the AP to which terminal device 101 is connected.

[0108] In S404, CPU 103 obtains a list of wireless profiles owned by terminal device 101 from the terminal device 101's OS. The wireless profiles owned by terminal device 101 are information about access points (APs) that terminal device 101 has connected to. Specifically, the wireless profiles owned by terminal device 101 include the SSIDs of APs that terminal device 101 has connected to and the passwords used to connect to those APs.

[0109] In S405, CPU 103 determines whether the list obtained in S404 includes the wireless profile corresponding to the AP to which terminal device 101 is connected. If CPU 103 determines it is YES, it proceeds to S407; otherwise, it proceeds to S406. A YES determination means that the wireless profile corresponding to the AP to which terminal device 101 is connected is pre-saved in terminal device 101 before the predetermined instructions are received from the user by the setup application. As mentioned above, depending on the type and version of the OS of terminal device 101, if the reconnection function is disabled, the OS will not save the wireless profile for the AP even if a new connection is made to the AP. Therefore, the case in which the list obtained in S404 does not include the wireless profile corresponding to the AP to which terminal device 101 is connected is the case in which the wireless profile was not saved because the setting was enabled.

[0110] In S406, CPU 103 determines whether a password is required to connect terminal device 101 to the AP, based on the encryption method identified in S403. A password is required to connect terminal device 101 to the AP if an encryption method such as WEP (Wired Equivalent Privacy), WPA (Wi-Fi Protected Access), WPA2, or WPA3 is identified in S403 as the encryption method set on the AP to which terminal device 101 is connected. On the other hand, a password is not required to connect terminal device 101 to the AP if no encryption method is set on the AP to which terminal device 101 is connected, and no encryption method is identified in S403. Also, the network formed by the AP to which terminal device 101 is connected is an open network. If CPU 103 determines YES, it proceeds to S409; if it determines NO, it proceeds to S407.

[0111] In S407, the CPU 103 determines, based on the information obtained in S401, whether or not communication using IPv4 via the wireless communication unit 109 is enabled in the terminal device 101. If the CPU 103 determines it is YES, it proceeds to S408; if it determines it is NO, it proceeds to S409.

[0112] At S408, CPU103 determines that the first setup will be performed without executing the specified process. This determination result is referenced in S304 and S313. After S408, CPU103 terminates the processing of this flowchart.

[0113] At S409, CPU103 determines that the first setup will not be performed without executing the predetermined process. This determination result is referenced in S304 and S313. After S409, CPU103 terminates the processing of this flowchart.

[0114] Figure 5 is a flowchart of the second decision process executed by the terminal device 101. This flowchart is realized when the CPU 103 reads the program stored in the ROM 104 into the RAM 105 and executes it. In this embodiment, the terminal device 101 executes the process using a setup application. This flowchart corresponds to the process at S310.

[0115] In S501, the CPU 103 obtains information indicating the connection status of the terminal device 101 from the OS of the terminal device 101 using the OS API. Specifically, in S501, the CPU 103 obtains from the OS information indicating the connection status of the terminal device 101, which includes information indicating the connection status of the wireless communication unit 109 and information indicating the connection status of the wired communication unit 112. The information indicating the connection status of the wireless communication unit 109, in other words, is information indicating whether or not the terminal device 101 is connected to other devices via a wireless LAN. Similarly, the information indicating the connection status of the wired communication unit 112, in other words, is information indicating whether or not the terminal device 101 is connected to other devices via a wired LAN. In this embodiment, the information obtained in S501 is not information that makes it possible to identify what kind of devices the other devices to which the terminal device 101 is connected are specifically. That is, the information obtained in S501 does not include identification information for identifying the other devices to which the terminal device 101 is connected.

[0116] In S502, the CPU 103 determines whether the terminal device 101 is connected to other devices via wireless LAN, based on the connection status information of the wireless communication unit 109 obtained in S501. If the CPU 103 determines that the connection is YES, it proceeds to S503; otherwise, it proceeds to S504.

[0117] In S503, CPU103 determines to perform the first setup. This determination result is referenced in S311. After S503, CPU103 terminates the processing of this flowchart.

[0118] If the CPU 103 determines in S502 that the terminal device 101 is connected to other devices via wireless LAN, then there is a possibility that AP131 is present around the communication device 151. Therefore, in this embodiment, if the CPU 103 determines YES in S502, it decides to proceed to S503 and execute the first setup without displaying the confirmation screen 610 described later.

[0119] In S504, the CPU 103 determines whether the terminal device 101 is connected to other devices via a wired LAN, based on the connection status information of the wired communication unit 112 obtained in S501. If the CPU 103 determines it is YES, it proceeds to S505; if it determines it is NO, it proceeds to S508.

[0120] In S505, the CPU 103 displays a confirmation screen on the display unit 108 to ask the user whether AP 131 is present around the communication device 151. Here, terminal device 101 is not connected to other devices via wireless LAN. Alternatively, terminal device 101 may be connected to other devices via wired LAN. Examples of terminal device 101 being in such a state include cases where terminal device 101 is connected to network hub 182 via wired LAN, or cases where terminal device 101 is connected to AP 131 via wired LAN. As described above, in this embodiment, the CPU 103 cannot identify what kind of other devices terminal device 101 is connected to based on the information obtained in S501. In other words, the CPU 103 cannot determine whether the current state of terminal device 101 is the former case or the latter case. In the former case, there is a possibility that AP 131 is not present around the communication device 151 or terminal device 101. If there is no AP131 around the communication device 101, even if the user selects wireless LAN 1011 on the selection screen 1010, an infrastructure connection via AP131 cannot be established between the terminal device 101 and the communication device 151. Therefore, in this embodiment, when a selection corresponding to connecting the communication device 151 to another device using a wireless LAN connection method (selection of wireless LAN 1011) is made on the selection screen 1010, the CPU 103 displays the following confirmation screen.

[0121] In S505, the CPU 103 specifically displays the confirmation screen 610 shown in Figure 6(b) on the display unit 108. For example, the confirmation screen 610 displays a button 611 that accepts user selection to continue processing and a button 612 that accepts user selection to select a different connection method.

[0122] Furthermore, the confirmation screen 610 displays a message prompting the user to confirm whether or not an AP131 is present around the terminal device 101. This message allows the user to confirm whether or not an AP131 is present around the terminal device 101. The confirmation screen 610 also displays a message indicating that an AP131 is required to connect the communication device 151 to the infrastructure. This message allows the user to recognize that an AP131 is required, for example, when selecting wireless LAN 1011 on the selection screen 1010, even if there is no AP131 present in the vicinity.

[0123] Furthermore, confirmation screen 610 displays a message prompting the user to press button 611 if there are AP131s around the terminal device 101. Confirmation screen 601 displays a message prompting the user to press button 612 if there are no AP131s around the terminal device 101. These messages allow the user to appropriately press either button 611 or button 612 depending on whether or not there are AP131s around the terminal device 101. In addition, confirmation screen 610 may display information to the user in other ways, such as icons or videos corresponding to these messages.

[0124] In S506, CPU 103 determines whether AP 131 is present in the vicinity and whether this was selected on confirmation screen 610. Specifically, in this determination, CPU 103 determines YES if button 611 is selected, and NO if button 612 is selected. If CPU 103 determines YES, proceeds to S503; if it determines NO, proceeds to S507.

[0125] In S507, CPU103 determines that it will not perform the first setup. This determination is referenced in S311. After S507, CPU103 terminates the processing of this flowchart.

[0126] Thus, in this embodiment, if an operation corresponding to the presence of AP131 around the communication device 151 is performed on the confirmation screen 610, the CPU 103 determines in S503 to execute the first setup. On the other hand, if an operation corresponding to the absence of AP131 around the communication device 151 is performed on the confirmation screen 610, the CPU 103 determines in S507 not to execute the first setup. In other words, before the first setup, the CPU 103 prompts the user to confirm whether AP131 is present around the communication device 151 via the confirmation screen 610. Then, the CPU 103 controls whether or not to execute the first setup based on the user's selection on the confirmation screen 610. This prevents the CPU 103 from executing the first setup in an environment where AP131 is not present around the communication device 151 and failing.

[0127] At S508, the CPU 103 notifies that the terminal device 101 is not connected to an external network. Specifically, the CPU 103 displays an error screen on the display unit 108. Here, for example, the error screen 620 shown in Figure 6(c) is displayed. For example, the error screen 620 includes a button 621 that can accept user instructions to close the error screen 620.

[0128] Furthermore, error screen 620 displays a message indicating that terminal device 101 is not connected to an external network. Here, in processing S308, CPU 103 accepted the user's selection of wireless LAN 1011 via selection screen 1010. However, through processing S502 and S504, CPU 103 determined that terminal device 101 was not connected to any other device via wireless or wired LAN. Therefore, in S508, CPU 103 notifies the user that terminal device 101 is not connected to an external network, thereby making the user aware that terminal device 101 is not in a state to establish an infrastructure connection.

[0129] Furthermore, the error screen 620 displays a message prompting the user to check whether the network settings of the terminal device 101 are enabled. The error screen 620 also displays a message prompting the user to check the connection status of AP131. Displaying these messages on the error screen 620 improves the convenience for the user when operating the terminal device 101 in an attempt to connect it to AP131. The error screen 620 may also display a message prompting the user to check whether AP131 is located near the terminal device 101.

[0130] In this way, if the CPU 103 determines in S504 that the terminal device 101 is not connected to other devices via a wired LAN, it proceeds to S508 and displays error screen 620. Subsequently, in S507, the CPU 103 determines that it should not perform the first setup. If the terminal device 101 is not connected to an external network, there is a possibility that AP 131 does not exist around the communication device 151. Therefore, if the CPU 103 determines NO in S504, it does not perform the first setup without displaying confirmation screen 601 in S505. This prevents the first setup from being performed when there is a possibility that AP 131 does not exist around the communication device 151.

[0131] In this embodiment, in the second determination process, the CPU 103 proceeds to S505 if it determines YES in S504, but it is not limited to this. The CPU 103 may also perform the following processing in the second determination process.

[0132] For example, in the second determination process, the CPU 103 may skip the processes S501 to S504 and execute the process S505. In other words, the CPU 103 may display the confirmation screen 610 regardless of the connection status of the terminal device 101 when the user selects the wireless LAN 1011 on the selection screen 1010 displayed in S308.

[0133] Furthermore, for example, in the second determination process, if the CPU 103 determines NO in S502, it may skip the process in S504 and execute the process in S505. In other words, the CPU 103 may display the confirmation screen 610 if the user selects the wireless LAN 1011 on the selection screen 1010 displayed in S308, and the terminal device 101 is not connected to any other device via the wireless LAN.

[0134] Even in these configurations, the CPU 103 can prompt the user to confirm on the confirmation screen 610 whether or not AP131 is present in the vicinity. Furthermore, even in these configurations, the CPU 103 can appropriately determine whether or not to execute the first setup based on the user's actions on the confirmation screen 610.

[0135] Figure 7 is a flowchart of the first setup performed by the terminal device 101. This flowchart is realized when the CPU 103 reads a program stored in the ROM 104 into the RAM 105 and executes it. In this embodiment, the terminal device 101 performs processing using a setup application. This flowchart corresponds to the processing in S307.

[0136] In S701, the CPU 103 searches for a communication device 151 operating in connection setting mode. It then determines whether or not it has found a communication device 151 operating in connection setting mode. This process is the same as that in S301-S302, so a detailed explanation is omitted. If the CPU 103 determines YES, it proceeds to S702; if it determines NO, it returns to S701 and repeats the search. Note that if a communication device 151 operating in connection setting mode has already been found in S302, this process may be omitted.

[0137] In S702, if the CPU 103 detects that the terminal device 101 is connected to an AP via the wireless communication unit 109, it disconnects the connection between the terminal device 101 and the AP. At this time, the CPU 103 stores the connection information for connecting to the AP in memory such as the ROM 104. This AP can be said to be the AP to which the terminal device 101 is connected when the predetermined operation for network setup of the communication device 151 is performed. Furthermore, this AP can be said to be the AP to which the terminal device 101 was connected until just before the wireless connection between the communication device 151 and the terminal device 101 is established in S703.

[0138] In step S703, the CPU 103 establishes a wireless connection between the communication device 151, which is operating in connection setting mode, and the terminal device 101. In other words, in step S703, a direct wireless connection is established between the terminal device 101 and the communication device, which is operating in connection setting mode.

[0139] In S704, CPU 103 sends an information retrieval request to communication device 151, thereby obtaining a list of APs discovered by communication device 151 through a search. In other words, the list of APs discovered by communication device 151 is a list of networks discovered by communication device 151 through a search. This list includes the SSIDs of the APs discovered by communication device 151 through a search.

[0140] In S705, CPU 103 determines whether the list obtained in S704 contains the SSID of the AP corresponding to the connection information stored in S702. If CPU 103 determines it is YES, it proceeds to S707; otherwise, it proceeds to S706. If CPU 103 determines it is YES, it identifies the AP corresponding to the connection information stored in S702 as the AP to be connected to the communication device 151.

[0141] In S706, CPU 103 displays the list obtained in S704 and accepts the user's selection of an AP from the list. In other words, AP selection is the selection of the network formed by the AP. CPU 103 identifies the AP selected by the user as the AP to connect to the communication device 151. In this process, for example, a screen like the one shown in Figure 12 is displayed as the input screen 1200 for accepting the user's selection of an AP. The input screen 1200 includes an area 1202 for accepting the user's selection of an AP, an area 1203 for accepting the input of a password to connect to the AP selected by the user, an area 1204 indicating the encryption method used by the AP selected by the user, and an area 1201 for identifying the AP corresponding to the input information as the AP to connect to the communication device 151. When area 1202 is selected, the list obtained in S704 is displayed in a dropdown format.

[0142] Furthermore, if the terminal device 101's OS already holds the password used for connecting to the AP selected by the user as a wireless profile, the CPU 103 does not need to accept input of that password from the user. Also, if the AP selected by the user does not have an encryption method set and no password is required to connect to that AP, the CPU 103 does not need to accept input of that password from the user. In addition, instead of accepting AP selection from the list obtained by S704, the CPU 103 may accept input of an arbitrary SSID and password from the user, and identify the AP corresponding to the input information as the AP to connect to the communication device 151. When area 1201 is selected, the CPU 103 saves the selected and entered information on the input screen 1201 in order to send it as configuration information. At this time, the CPU 103 may perform a process to verify whether the selected and entered information on the input screen 1201 is correct. Specifically, the CPU 103 may verify whether the entered password matches the format of the encryption method used by the selected AP.

[0143] In S707, CPU 103 transmits configuration information regarding the AP identified as the AP to be connected to communication device 151 to communication device 151. In other words, the configuration information is transmitted from terminal device 101 to communication device 151 via wireless LAN. By transmitting the configuration information to communication device 151 via wireless LAN in this way, user operation such as entering configuration information on communication device 151 is unnecessary, thereby improving convenience. The configuration information includes connection information (SSID and password) for connecting to the AP identified as the AP to be connected to communication device 151.

[0144] In S708, the CPU 103 disconnects the wireless connection between the communication device 151, which is operating in connection setting mode, and the terminal device 101. The CPU 103 then establishes a connection between the AP and the terminal device 101 corresponding to the connection information stored in S702, using the connection information stored in S702. At this time, the CPU 103 may also establish a connection between the AP and the terminal device 101 corresponding to the connection information transmitted in S707, using the connection information transmitted in S707.

[0145] In S709, if the CPU 103 has saved connection information for connecting to the communication device 151 operating in connection setting mode as a wireless profile by the OS, it deletes the wireless profile. This prevents the wireless connection between the communication device 151 operating in connection setting mode and the terminal device 101 from being re-established at a time unintended by the user. After that, the processing of this flowchart ends.

[0146] Figure 8 is a flowchart showing the first setup performed by the communication device 151. This flowchart is realized when the CPU 154 reads the program stored in the ROM 152 into the RAM 153 and executes it. This flowchart is also initiated when the communication device 151 receives user input to operate in connection setting mode.

[0147] In S801, CPU 154 searches for APs (Access Points) in the vicinity of communication device 151 and generates a list of found APs.

[0148] In S802, the CPU 154 determines whether or not it has received an information acquisition request from the terminal device 101. If the CPU 154 determines that it is YES, it proceeds to S803; if it determines that it is NO, it proceeds to S804.

[0149] Note that S801 may be executed after S802 has determined to be YES, rather than S801 being executed before S802.

[0150] In S803, CPU 154 sends the list generated in S801 to terminal device 101.

[0151] In S804, CPU 154 determines whether or not it has received configuration information from terminal device 101. If CPU 154 determines it is YES, it proceeds to S805; otherwise, it returns to S802.

[0152] In S805, CPU 154 performs network setup based on the received configuration information. Specifically, it establishes a connection between the AP and communication device 151 corresponding to the connection information contained in the received configuration information, using the connection information contained in the received configuration information. After that, the processing in this flowchart ends.

[0153] As described above, according to this embodiment, the setup application causes the CPU 103 of the terminal device 101 to operate as follows. The CPU 103 prompts the user via the confirmation screen 610 to confirm whether or not an AP 131 exists around the communication device 151. Then, based on the user's operation on the confirmation screen 610, the CPU 103 switches whether or not to execute the first setup. This configuration prevents the first setup from failing if an AP 131 does not exist around the communication device 151. On the other hand, if an AP 131 exists around the communication device 151, executing the first setup improves the convenience of the terminal device 101 when connecting the communication device 151 to the AP 131.

[0154] <Second Embodiment> The following describes the differences between the second embodiment and the first embodiment. In the first embodiment, if the CPU 103 determined, as a result of the second determination process, that the first setup should not be executed, it displayed the selection screen 610 again. In this embodiment, if the CPU 103 determined, as a result of the second determination process, that the first setup should not be executed, it checked whether to establish a direct connection between the terminal device 101 and the communication device 151. If the CPU 103 confirmed that a direct connection should be established, it executed the fifth setup, described later, to establish the direct connection. That is, in this embodiment, if there is no AP 131 around the communication device 151, the setup application causes the terminal device 101 to execute the fifth setup instead of the first setup, and establishes a connection via wireless LAN communication. This makes it possible for the setup application to guide the user to the appropriate setup method depending on whether or not there is an AP 131 around the communication device 151, when the user has selected a wireless LAN connection method as the connection method between the terminal device 101 and the communication device 151.

[0155] In this embodiment, the CPU 103 can perform a fifth setup, which sets the communication device 151 to direct connection mode via a wireless connection between the terminal device 101 and the communication device 151 operating in connection setting mode. In the fifth setup, the terminal device 101 sends an instruction to the communication device 151 via wireless communication to set it to direct connection mode, thereby operating the communication device 151 in direct connection mode. This is a setup method that directly connects the terminal device 101 and the communication device 151 operating in direct connection mode.

[0156] Figure 13 is a flowchart showing the network setup of the communication device 151 executed by the terminal device 101. This flowchart is realized when the CPU 103 reads a program stored in the ROM 104 into the RAM 105 and executes it. In this embodiment, the terminal device 101 executes the process using a setup application. This flowchart is started based on the user giving the predetermined instructions on the screen displayed by the setup application.

[0157] Since steps S1301 to S1310 are the same as steps S301 to S310, their explanation will be omitted.

[0158] In S1311, CPU 103 determines whether it has decided to perform the first setup in the second determination process. If CPU 103 determines it is YES, it proceeds to S1312; if it determines it is NO, it proceeds to S1320.

[0159] In the first embodiment, if the CPU 103 determines NO at S311, the process proceeds to S308, and the selection screen 1010 is displayed again on the display unit 108. In this embodiment, if the first setup is not performed (if NO is determined at S1311), the process proceeds to S1320, and a process for directly establishing a wireless LAN connection between the terminal device 101 and the communication device 151 is executed. The process when the CPU 103 determines NO at S1311 will now be described.

[0160] In S1320, the CPU 103 displays a direct connection confirmation screen on the display unit 108 to confirm whether to perform a direct connection. Here, for example, the direct connection confirmation screen 1700 shown in Figure 17(a) is displayed. For example, the direct connection confirmation screen 1700 includes a button 1701 for selecting whether to perform a direct connection and a button 1702 for selecting whether not to perform a direct connection. In other words, the direct connection confirmation screen 1700 can be said to be a reception screen that accepts user selection as to whether or not to perform a direct connection.

[0161] Furthermore, the direct confirmation screen 1700 displays a message indicating that there are no AP 131 nearby that the communication device 151 can connect to via wireless LAN. The direct confirmation screen 1700 also displays a message asking the user whether or not to establish a direct connection between the communication device 151 and the terminal device 101.

[0162] In S1321, the CPU 103 determines whether an operation corresponding to performing a direct connection was performed on the direct confirmation screen 1700. Specifically, in this determination, the CPU 103 determines YES if button 1701 is selected, and NO if button 1702 is selected. If the CPU 103 determines YES, it proceeds to S1322; if it determines NO, it proceeds to S1309.

[0163] In S1322, CPU103 performs the fifth setup. Details of this process will be described later using Figure 18. The process then proceeds to S1314.

[0164] Note that steps S1312 to S1314 are the same as steps S312 to S314, and steps S1316 to S1319 are the same as steps S316 to S319, so their explanations will be omitted.

[0165] In S1315, the CPU 103 determines whether or not it found the communication device 151 through the search in S1314. If the CPU 103 determines it is YES, it proceeds to S1316; if it determines it is NO, it proceeds to S1317. If this process is executed after the fifth setup, the CPU 103 identifies whether the communication device 151, whose connection was established through the fifth setup, is included in the one or more devices found through the search in S1314. The CPU 103 then determines it is YES in this determination if it identifies that the communication device 151 is included. That is, if no devices are found through the search in S1314, or if the communication device 151, whose connection was established through the fifth setup, is not included in the one or more devices found, the CPU 103 determines it is NO in this determination. The CPU 103 may also determine this based on whether or not the connection between the communication device 151 and the terminal device 101 was successfully established through the fifth setup. Specifically, if the connection between the communication device 151 and the terminal device 101 is successfully established by the fifth setup, this determination is judged as YES. Furthermore, if the connection between the communication device 151 and the terminal device 101 fails to be established by the fifth setup, this determination is judged as NO. The state in which the connection between the communication device 151 and the terminal device 101 is successfully established is the state in which the terminal device 101 is connected to the SSID for direct connection transmitted by the communication device 151.

[0166] Figure 18 is a flowchart of the fifth setup performed by the terminal device 101. This flowchart is realized when the CPU 103 reads the program stored in the ROM 104 into the RAM 105 and executes it. In this embodiment, the terminal device 101 performs the processing using a setup application. This flowchart corresponds to the processing in S1322.

[0167] In S1801, the CPU 103 searches for a communication device 151 operating in connection setting mode. It then determines whether or not it has found a communication device 151 operating in connection setting mode. This process is the same as that in S301-S302, so a detailed explanation is omitted. If the CPU 103 determines YES, it proceeds to S1802; if it determines NO, it returns to S1801 and repeats the search. Note that if a communication device 151 operating in connection setting mode has already been found in S1302, this process may be omitted.

[0168] In S1802, the CPU 103 establishes a wireless connection between the communication device 151, which is operating in connection setting mode, and the terminal device 101. In other words, in S1802, a direct wireless connection is established between the terminal device 101 and the communication device, which is operating in connection setting mode.

[0169] In S1803, the CPU 103 sends a request to the communication device 151 to obtain direct connection information. The CPU 103 then receives the direct connection information from the communication device 151 in response to the request and obtains the direct connection information. The direct connection information is the connection information (including the SSID and password) for directly connecting to the communication device 151 when the communication device 151 is operating in direct connection mode.

[0170] In S1804, the CPU 103 sends a direct setting instruction to the communication device 151, instructing it to set the communication device 151 to direct connection mode. In other words, the CPU 103 instructs the communication device 151 to operate in direct connection mode.

[0171] In S1805, CPU 103 establishes a direct connection with communication device 151, which is operating in direct connection mode, by connecting to the SSID included in the direct connection information obtained in S1803. After that, the processing of this flowchart ends.

[0172] Figure 19 is a flowchart showing the fifth setup performed by the communication device 151. This flowchart is realized when the CPU 154 reads the program stored in the ROM 152 into the RAM 153 and executes it. This flowchart is also initiated when the communication device 151 receives user input to operate in connection setting mode.

[0173] In S1901, the CPU 154 determines whether or not it has received a request from terminal device 101 to acquire direct connection information. If the CPU 154 determines that the request is YES, it proceeds to S1903; otherwise, it proceeds to S1902.

[0174] In S1903, CPU 154 transmits direct connection information (SSID and password) to terminal device 101.

[0175] In S1902, the CPU 154 determines whether or not it has received a direct setting instruction from the terminal device 101. If the CPU 154 determines that it has received the instruction, it proceeds to S1904; otherwise, it returns to S1901.

[0176] In S1904, CPU 154 sets the direct connection mode based on the received direct setting instruction. Specifically, communication device 151 changes from connection setting mode to direct connection mode and terminates the fifth setup process. More specifically, by terminating connection setting mode, communication device 151 disables AP156-a which has the SSID corresponding to connection setting mode. Then, by starting direct connection mode, it enables AP156-a which has the direct connection SSID. As a result, terminal device 101 can connect to the direct connection SSID transmitted by communication device 151. After that, the processing of this flowchart is terminated.

[0177] According to this embodiment, the setup application causes the CPU 103 to operate as follows: If no AP 131 is present around the communication device 151, the CPU 103 causes the terminal device 101 to perform the fifth setup instead of the first setup. The fifth setup establishes a direct connection between the terminal device 101 and the communication device 151 via wireless LAN communication. In this configuration, when the user selects a wireless LAN connection method as the connection method between the terminal device 101 and the communication device 151, the system can guide the user to the appropriate setup method depending on whether or not an AP 131 is present around the communication device 151.

[0178] <Third Embodiment> The third embodiment will now be described in terms of its differences from the first and second embodiments. In the embodiments described above, the CPU 103 operated as follows using the setup application. In the second determination process, the CPU 103 displayed a confirmation screen 610 as a predetermined process for confirming (identifying) whether or not AP 131 is present in the vicinity. The CPU 103 confirmed whether or not AP 131 was present in the vicinity by receiving a selection operation from the user via the confirmation screen 610 to determine whether or not a wireless LAN router is present in the vicinity of the terminal device 101. In this embodiment, in the second determination process, the CPU 103 executes a process that automatically determines whether or not AP 131 is present in the vicinity based on information about the network to which the terminal device 101 is connected, without receiving the above selection operation from the user via the confirmation screen 610. This configuration reduces the number of situations in which the user needs to determine whether or not AP 131 is present in the vicinity, and further improves the convenience of setting up the communication device 151.

[0179] Figure 14 is a flowchart of the second determination process executed by the terminal device 101 in this embodiment. This flowchart is realized when the CPU 103 reads the program stored in the ROM 104 into the RAM 105 and executes it. In this embodiment, the terminal device 101 executes the process using a setup application. In this embodiment, the setup application executes the second determination process in Figure 14 at S310. Alternatively, the setup application may execute the second determination process in Figure 14 at S1310.

[0180] Sections S1401 to S1403 are the same as sections S501 to S503, therefore their explanations will be omitted.

[0181] In S1404, the CPU 103 determines whether the terminal device 101 is connected to other devices via wireless LAN, based on the connection status information of the wired communication unit 112 obtained in S1401. If the CPU 103 determines that the connection is YES, it proceeds to S1405; otherwise, it proceeds to S1408.

[0182] In the first embodiment, if the CPU 103 determines in S504 that the terminal device 101 is connected to another device via a wired LAN, it proceeds to S505 and displays the confirmation screen 610. The second embodiment performed the same processing as the first embodiment. On the other hand, in this embodiment, if the CPU 103 determines YES, it proceeds to S1405 and executes the third determination process described later.

[0183] At S1405, CPU103 executes a third determination process to determine whether AP131 is present in the vicinity. Details of the third determination process will be described later using Figure 15.

[0184] In S1406, CPU103 determines whether or not AP131 is present in the vicinity in the third determination process. If CPU103 determines YES, proceeds to S1403; if it determines NO, proceeds to S1407.

[0185] Since steps S1407 to S1408 are the same as steps S507 to S508, their explanation will be omitted.

[0186] Figure 15 is a flowchart of the third decision process executed by the terminal device 101. This flowchart is realized when the CPU 103 reads the program stored in the ROM 104 into the RAM 105 and executes it. In this embodiment, the terminal device 101 executes the process using a setup application. This flowchart corresponds to the process in S1405.

[0187] In S1501, the CPU 103 obtains information indicating the connection status of the terminal device 101 from the OS of the terminal device 101 using the OS API. Specifically, in S1501, the CPU 103 obtains information indicating the connection status of the wireless communication unit 109 from the OS as information indicating the connection status of the terminal device 101.

[0188] In S1502, the CPU 103 determines whether the wireless communication unit 109 of the terminal device 101 is enabled, based on the information indicating the connection status of the wireless communication unit 109 obtained in S1501. The state in which the wireless communication unit 109 is enabled means, in other words, that the wireless communication unit 109 of the terminal device 101 is in a state where it can communicate. That is, the CPU 103 determines whether the wireless communication function for the terminal device 101 to communicate with other devices via wireless LAN is enabled. If the CPU 103 determines the answer is YES, it proceeds to S1503; otherwise, it proceeds to S1509.

[0189] In S1503, the CPU 103 executes a fourth determination process to determine whether the other device to which the terminal device 101 is connected is AP131. Details of the fourth determination process will be described later using Figure 16. In the following description, the other device to which the terminal device 101 is connected may be referred to as a network device.

[0190] In S1504, the CPU 103 determines in the fourth determination process whether the network device to which the terminal device 101 is connected is AP131. That is, if the CPU 103 determines in S1614 of the fourth determination process shown in Figure 16 later that the connected device is AP131, it determines YES. If the CPU 103 determines YES, it proceeds to S1505; if it determines NO, it proceeds to S1506.

[0191] At S1505, CPU103 determines that AP131 is present in the surrounding environment. This determination result is referenced in S1406. After S1505, CPU103 terminates the processing of this flowchart.

[0192] In S1506, the CPU 103 determines in the fourth determination process whether the network device to which the terminal device 101 is connected via wired LAN is likely to be AP131. That is, in S1616 of the fourth determination process shown in Figure 16 later, the CPU 103 determines that the connected network device is likely to be AP131, and determines YES. If the CPU 103 determines YES, it proceeds to S1507; if it determines NO, it proceeds to S1509.

[0193] In S1507, the CPU 103 performs a process to prompt the user to confirm whether the network device connected to the terminal device 101 via wired LAN is AP131, which is to be configured on the communication device 151. In S1507, the CPU 103 displays, for example, the confirmation screen 1710 shown in Figure 17(b) on the display unit 108.

[0194] The confirmation screen 1710 displays area 2003, which shows the SSID of the AP that the terminal device 101 is connected to, and which was determined in the fourth determination process to be possibly AP131. The confirmation screen 1710 also displays a button 1711 that accepts user selection corresponding to continuing the connection process with the AP displayed in area 2003, and a button 1712 that accepts user operation corresponding to not continuing the connection process with the AP displayed in area 2003. The confirmation screen 1710 also displays a message to the user asking whether or not to connect the communication device 151 to the AP in question. The confirmation screen 1710 also displays a message to the user asking whether or not to connect the communication device 151 to the wireless network that is presumed to be the same as the wireless network to which the terminal device 101 is connected. By displaying such a screen 1710, the user can be made to confirm whether or not the network device connected to the terminal device 101 via wired LAN is AP131 to be set for the communication device 151.

[0195] In S1508, CPU103 determines whether or not to continue the connection with AP as selected on confirmation screen 1710. Specifically, in this determination, CPU103 determines YES if button 1711 is selected, and NO if button 1712 is selected. If CPU103 determines YES, proceeds to S1505; if it determines NO, proceeds to S1509.

[0196] At S1509, the CPU 103 displays a confirmation screen on the display unit 108 to check whether AP131 is present in the vicinity. For example, the confirmation screen 610 shown in Figure 6(b) is displayed. In other words, this embodiment is configured to automatically determine the network to which the terminal device 101 is connected without accepting a selection operation from the user via the confirmation screen 610. However, in cases where the process has progressed to S1509, the confirmation screen 610 may be used to accept a selection operation from the user.

[0197] In S1510, the CPU 103 determines whether the presence of AP131 in the vicinity was selected on the confirmation screen 610. Specifically, in this determination, the CPU 103 determines YES if button 611 is selected, and NO if button 612 is selected. If the CPU 103 determines YES, it proceeds to S1505; if it determines NO, it proceeds to S1511.

[0198] At S1511, CPU103 determines that AP131 is not present in the surrounding environment. This determination result is referenced in S1406. After S1511, CPU103 terminates the processing of this flowchart.

[0199] Figure 16 is a flowchart of the fourth decision process executed by the terminal device 101. This flowchart is realized when the CPU 103 reads the program stored in the ROM 104 into the RAM 105 and executes it. In this embodiment, the terminal device 101 executes the process using a setup application. This flowchart corresponds to the process in S1503.

[0200] In S1601, the CPU 103 obtains information about the connection destination of the wired communication unit 112 from the OS of the terminal device 101 using the OS API. The information about the connection destination of the wired communication unit 112 corresponds to information about the network to which the terminal device 101 is connected. Specifically, the information about the connection destination of the wired communication unit 112 includes the MAC address (hereinafter referred to as the first MAC address) and IP address (hereinafter referred to as the first IP address) of the device to which the wired communication unit 112 is connected. In other words, the CPU 103 obtains information (the first MAC address and the first IP address) about the network devices to which the terminal device 101 is connected via a wired LAN.

[0201] In S1602, the CPU 103 obtains a list of wireless profiles owned by the terminal device 101 from the OS of the terminal device 101.

[0202] In S1603, CPU103 determines whether the list of wireless profiles obtained in S1602 contains one or more wireless profiles. In other words, CPU103 determines whether it was able to obtain one or more wireless profiles in S1602. If CPU103 determines it is YES, it proceeds to S1604; if it determines it is NO, it proceeds to S1607.

[0203] In S1604, the CPU 103 establishes a connection between the AP and the terminal device 101, which corresponds to the wireless profile acquired in S1602, using the wireless profile held by the OS.

[0204] In S1605, CPU103 compares the IP address of the AP to which the connection was established in S1604 with the first IP address obtained in S1601 to determine whether these IP addresses match. If CPU103 determines that the answer is YES, it proceeds to S1614; otherwise, it proceeds to S1606.

[0205] If multiple wireless profiles are obtained in S1602, the CPU 103 may execute processes S1604 and S1605 for each wireless profile. If the CPU 103 determines NO in S1605, it executes S1604 for any other wireless profiles included in the list of wireless profiles. Alternatively, if the CPU 103 determines YES in S1605, it may proceed to S1614 even if there are other wireless profiles included in the list of wireless profiles.

[0206] In S1606, CPU103 disconnects the connection between AP131 and terminal device 101, which was established in S1604.

[0207] In S1607, the CPU 103 obtains information about the connection destination of the wired communication unit 112 from the OS of the terminal device 101. More specifically, the CPU 103 obtains the wired profile name stored by the OS as connection information for the wired communication unit 112. As mentioned above, the wired profile name is the network name that the OS stores within the wired profile. For example, if the terminal device 101 has previously connected to AP 131 via wireless LAN, the OS stores the AP's SSID, which is the network name of the wireless LAN, as the wired profile name. Therefore, if the terminal device 101 has previously connected to AP via wireless LAN, the CPU 103 obtains a wired profile name that matches the SSID of AP 131.

[0208] In S1608, CPU 103 searches for APs (Access Points) in the vicinity of terminal device 101 and generates a list of discovered APs. The list of discovered APs includes information that can uniquely identify each AP (MAC address) and the AP's network name (SSID).

[0209] In S1609, CPU103 determines whether the list of APs obtained in S1608 contains the wired profile name obtained in S1607. If CPU103 determines it is YES, it proceeds to S1614; otherwise, it proceeds to S1610.

[0210] If there is an AP that matches the wired profile name, it can be inferred that the network device to which terminal device 101 is connected via wired LAN is AP131. Therefore, if CPU 103 determines YES in S1609, it proceeds to process S1614.

[0211] On the other hand, if there is no AP that matches the wired profile name, it is not possible to determine whether the network device to which terminal device 101 is connected via wired LAN is AP131. Therefore, if there is no AP that matches the wired profile name, CPU 103 determines whether the network device to which terminal device 101 is connected via wired LAN is likely AP131, based on the MAC address of the AP discovered in S1608. Different MAC addresses are assigned to wireless LAN and wired LAN, respectively. For example, each network device vendor may assign different MAC addresses by changing the vendor management part of the MAC address or by setting the G / L bit in the OUI part. In this embodiment, if the OUI part matches and the vendor management part is similar, and the AP list includes MAC addresses, it is considered that the network device to which terminal device 101 is connected via wired LAN is likely AP131.

[0212] In S1610, CPU 103 compares the MAC addresses included in the AP list obtained in S1608 with the first MAC address obtained in S1601. Then, CPU 103 determines whether the MAC addresses in the AP list obtained in S1608 include any that are similar in the lower three bytes. Specifically, CPU 103 compares the vendor management part of the AP MAC address obtained in S1608 with the vendor management part of the first MAC address. Then, CPU 103 determines whether the MAC addresses included in the AP list obtained in S1608 include any that match by at least two bytes. If there are any that match by at least two bytes, CPU 103 considers that an approximate match is included. If CPU 103 determines it is YES, it proceeds to S1611; if it determines it is NO, it proceeds to S1615.

[0213] In S1611, CPU 103 compares the OUI portion of the first MAC address obtained in S1601 with the OUI portion of the MAC address of the AP determined to be similar in S1610 from the list of APs obtained in S1608. The MAC address of the AP determined to be similar in S1610 from the list of APs obtained in S1608 is sometimes called the second MAC address. Then, CPU 103 determines whether these OUI portions match. In this way, CPU 103 checks whether the network device to which terminal device 101 is connected via wired LAN is possibly AP 131 by determining whether the OUI portions of the first MAC address and the second MAC address match. If CPU 103 determines it is YES, it proceeds to S1616; if it determines it is NO, it proceeds to S1612.

[0214] In S1612, CPU103 determines whether the G / L bit is set in at least one of the OUI portions of the first MAC address and the second MAC address. If the G / L bit is set in either OUI portion, CPU103 determines YES. If the G / L bit is not set in either OUI portion, CPU103 determines NO. If CPU103 determines YES, it proceeds to S1613; if it determines NO, it proceeds to S1615.

[0215] In S1613, CPU103 deactivates the G / L bit for MAC addresses that were determined to have the G / L bit set in S1612, and determines whether the OUI portion of the first MAC address matches the OUI portion of the second MAC address. If CPU103 determines the answer is YES, it proceeds to S1616; otherwise, it proceeds to S1615.

[0216] In S1614, CPU 103 determines that AP131 is another device to which terminal device 101 is connected via wired LAN. This determination result is referenced in S1504. After S1614, CPU 103 terminates the processing of this flowchart.

[0217] At S1615, CPU 103 determines that the other device connected to terminal device 101 via wired LAN is not AP131. This determination result is referenced in S1504 and S1506. After S1615, CPU 103 terminates the processing of this flowchart.

[0218] At S1616, CPU 103 determines that the network device to which terminal device 101 is connected may be AP131. This determination result is referenced in S1504 and S1506. After S1616, CPU 103 terminates the processing of this flowchart.

[0219] According to this embodiment, the CPU 103 operates as follows from the setup application. The CPU 103 determines whether or not an AP 131 to which the communication device 151 should be connected exists in the vicinity, based on information of network devices to which the terminal device 101 is connected via wired LAN. This configuration eliminates the need for the user to check whether or not an AP 131 exists in the vicinity, thereby improving user convenience compared to the second determination process in the first embodiment and the second implementation.

[0220] <Other Embodiments> As described above, if region 1011 is selected, whether the first setup is executed or a guide screen for the second setup is displayed is controlled depending on the results of the second and first determination processes. However, the system is not limited to this configuration, and if region 1011 is selected, the guide screen for the second setup may be displayed without executing the first determination process. That is, if the determination in S309 is YES and the determination in S311 is YES, S318 may be executed without executing S312 and S313.

[0221] Furthermore, although the first determination process included both the determination in S406 and the determination in S407 as described above, it is also acceptable to include only one of them. That is, for example, in a form that includes only the determination in S406, if the determination in S405 is YES or if the determination in S406 is NO, S407 may not be executed and S408 may be executed instead. Also, in a form that includes only the determination in S407, if the determination in S405 is NO, S406 may not be executed and S409 may be executed instead.

[0222] Furthermore, while the above description explains a configuration in which the process executed when the second determination process determines that the first setup should not be performed is a process that displays a selection screen 1010 containing options corresponding to the third setup, the system is not limited to this configuration. If the second determination process determines that the first setup should not be performed, the selection screen 1010 may not be displayed, and instead, a guide screen for the third setup may be displayed. Alternatively, options other than those corresponding to the third setup included in the selection screen 1010 may be hidden, or options other than those corresponding to the third setup included in the selection screen 1010 may be made unselectable.

[0223] Furthermore, as described above, in the first setup, the terminal device 101 transmitted configuration information to the communication device 151 using the wireless communication unit 109, but the configuration is not limited to this. The terminal device 101 may also transmit configuration information to the communication device 151 using the short-range wireless communication unit 110. In other words, the configuration information may be transmitted via short-range wireless communication using BLE or Bluetooth between the terminal device 101 and the communication device 151. In this configuration, it is not necessary for the wireless LAN connection between the terminal device 101 and the AP 131 to be disconnected in S702. In other words, the terminal device 101 may transmit configuration information to the communication device 151 using the short-range wireless communication unit 110 while the wireless LAN connection between the terminal device 101 and the AP 131 is maintained.

[0224] Furthermore, while the above description explains a configuration in which a failure screen 1030 is displayed when NO is determined in S315, and the process is terminated when the exit button 1031 is pressed, the configuration is not limited to this. A button (not shown) to restart from the beginning of the flowchart in Figure 3 may be placed on the failure screen 1030. Alternatively, a connection method re-selection button (not shown) to transition to S308 may be placed on the failure screen 1030. For example, by pressing the connection method re-selection button (not shown) on the failure screen 1030, the user can immediately select the fourth setup if the first, second, and third setups fail.

[0225] Furthermore, as an example of how the selection screen 1010 is displayed in S308, the following configurations were described. The CPU 103 displayed the selection screen 1010 when it could not find the communication device 151 (determined as NO in S302). The CPU 103 also displayed the selection screen 1010 when it found the communication device 151 (determined as YES in S302) and determined not to perform the first setup (determined as NO in S309). In addition, the CPU 103 displayed the selection screen 1010 when it determined that performing the first setup was not selected on the confirmation screen 600 (determined as NO in S306). However, the CPU 103 is not limited to these configurations, and may display the selection screen 1010 as follows. For example, the CPU 103 may proceed to S308 and display the selection screen 1010 when it determines in S302 that it has found the communication device 151. In this configuration, if the CPU 103 determines in S302 that it has not found the communication device 151, it may, for example, repeat the process in S302. Alternatively, if the CPU 103 determines in S302 that it has not found the communication device 151, it may notify the user to operate the communication device 151 so that it can operate the communication device 101 in connection setting mode. After that, the CPU 103 may perform the process in S302 again.

[0226] Furthermore, it goes without saying that the objectives of the present invention can also be achieved by supplying a recording medium containing program code for software that realizes the functions of the embodiments described above to a system or device, and by having the computer (or CPU or MPU) of that system or device read and execute the program code stored on the recording medium. In this case, the program code read from the storage medium itself realizes the functions of the embodiments described above, and the storage medium containing that program code constitutes the present invention.

[0227] For storing program code, storage media such as flexible disks, hard disks, optical disks, magneto-optical disks, CD-ROMs, CD-Rs, magnetic tapes, non-volatile memory cards, ROMs, and DVDs can be used.

[0228] Furthermore, it goes without saying that the functionality of the aforementioned embodiment is realized not only by the execution of program code read by the computer, but also when the operating system (OS) running on the computer performs some or all of the actual processing based on the instructions of that program code, and the functionality of the aforementioned embodiment is realized through that processing.

[0229] 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.

[0230] This embodiment discloses the inventions of the following items: (Item 1) An application program, The computer of the information processing device, A first display means that displays a selection screen for selecting which connection method to use to connect a communication device to another device. If, in the selection screen, a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), a second display means displays a confirmation screen to ask the user whether or not there is a device acting as an access point around the communication device. In the aforementioned confirmation screen, if an operation corresponding to the presence of a device acting as an access point around the communication device is performed, the connection setting process for connecting the communication device to another device using the first connection method is executed. In the aforementioned confirmation screen, if an operation corresponding to the absence of a device acting as an access point around the communication device is performed, the execution means is configured not to execute the connection setting process. An application program characterized by the following features. (Item 2) If, in the selection screen, a selection corresponding to connecting to another device using the first connection method is made, the computer is further configured to function as a first determination means for determining whether or not the information processing device is connected to another device via wireless LAN. The aforementioned execution means is If the first determination means determines that the information processing device is connected to another device via a wireless LAN, the second display means executes the connection setting process without displaying the confirmation screen. An application program as described in item 1, characterized by the features described herein. (Item 3) If the first determination means determines that the information processing device is not connected to other devices via a wireless LAN, the computer is further configured as a second determination means to determine whether or not the information processing device is connected to other devices via a wired LAN. The aforementioned execution means is If the second determination means determines that the information processing device is connected to another device via a wired LAN, the second display means displays the confirmation screen. If the second determination means determines that the information processing device is not connected to another device via a wired LAN, the second display means does not display the confirmation screen and does not execute the connection setting process. An application program as described in item 2, characterized by the features described herein. (Item 4) If the second determination means determines that the information processing device is not connected to other devices via a wired LAN, the computer is further made to function as a notification means for notifying that the information processing device is not connected to an external network. An application program as described in item 3, characterized by the features described herein. (Item 5) The aforementioned execution means is If the connection setting process is not performed, the first display means will display the selection screen again. An application program as described in any one of items 1 to 4, characterized by the above. (Item 6) The aforementioned execution means is If the connection setup process is not performed, the process for directly establishing a wireless LAN connection between the information processing device and the communication device is executed. An application program as described in item 1 to 4, characterized by the above. (Item 7) The aforementioned connection setup process is: This is a process for transmitting information to the communication device for connecting to a device that operates as an access point. An application program according to any one of items 1 to 6, characterized by the above. (Item 8) The aforementioned information is, The SSID and password of the device operating as the aforementioned access point, An application program as described in item 7, characterized by the features described herein. (Item 9) The aforementioned information is, The information is transmitted from the information processing device to the communication device via wireless LAN. An application program as described in item 7 or 8, characterized by the features described herein. (Item 10) The aforementioned information is, The information is transmitted from the information processing device to the communication device via short-range wireless communication. An application program as described in item 7 or 8, characterized by the features described herein. (Item 11) The computer is further configured to function as a search means for searching for the communication device that operates as a predetermined access point, The first display means is, If the search means finds the communication device that operates as the predetermined access point, the selection screen is displayed. An application program according to any one of items 1 to 10, characterized by the above. (Item 12) The aforementioned selection screen is The screen can accept either a selection corresponding to connecting the communication device to another device using the first connection method, or a selection corresponding to connecting the communication device to another device using a second connection method via a wired LAN. An application program as described in any one of items 1 to 11, characterized by the features described herein. (Item 13) The aforementioned selection screen is The screen can accept either a selection corresponding to connecting the communication device to another device using the first connection method, or a selection corresponding to connecting the communication device to the information processing device using a third connection method via USB. An application program according to any one of items 1 to 12, characterized by the features described herein. (Item 14) The aforementioned confirmation screen is The system displays information prompting the user to check whether or not there are devices acting as access points around the aforementioned communication device. An application program according to any one of items 1 to 13, characterized by the features described herein. (Item 15) The aforementioned confirmation screen is If no device acting as an access point exists around the communication device, information prompting the user to select a connection method different from the first connection method will be displayed. An application program according to any one of items 1 to 14, characterized by the features described herein. (Item 16) The device that acts as an access point is a wireless LAN router. An application program according to any one of items 1 to 15, characterized by the features described herein. (Item 17) An information processing device having an application program, A first display means that displays a selection screen using the application program for selecting how to connect the communication device to another device, In the selection screen, if a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), the application program displays a confirmation screen to the user to confirm whether or not there is a device acting as an access point around the communication device. The system includes, if an operation corresponding to the presence of a device acting as an access point around the communication device is performed on the confirmation screen, the application program executes a connection setting process to connect the communication device to another device using the first connection method; and if an operation corresponding to the absence of a device acting as an access point around the communication device is performed on the confirmation screen, the application program does not execute the connection setting process. An information processing device characterized by the following: (Item 18) A control method for an information processing device having an application program, A first display step in which the application program displays a selection screen for selecting which connection method to use to connect the communication device to another device, In the selection screen, if a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), the application program displays a confirmation screen to ask the user whether or not there is a device acting as an access point around the communication device. If, in the confirmation screen, an operation corresponding to the presence of a device operating as an access point around the communication device is performed, the application program executes a connection setting process to connect the communication device to another device using the first connection method. If, in the confirmation screen, an operation corresponding to the absence of a device operating as an access point around the communication device is performed, the application program does not execute the connection setting process. A control method characterized by the following: (Item 19) An application program, The computer of the information processing device, A first display means that displays a selection screen for selecting which connection method to use to connect a communication device to another device. In the selection screen, if a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), a determination means determines whether or not there is a device acting as an access point around the communication device, based on information about the network to which the information processing device is connected. If it is determined that a device acting as an access point exists around the communication device, the execution means will execute a connection setting process to connect the communication device to another device using the first connection method; if it is determined that no device acting as an access point exists around the communication device, the execution means will not execute the connection setting process. An application program characterized by the following features. (Item 20) An information processing device having an application program, A first display means that displays a selection screen for selecting which connection method to use to connect a communication device to another device. In the selection screen, if a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), a determination means determines whether or not there is a device acting as an access point around the communication device, based on information about the network to which the information processing device is connected. The system includes, if it is determined that a device acting as an access point exists around the communication device, an execution means that executes a connection setting process to connect the communication device to another device using the first connection method, and if it is determined that no device acting as an access point exists around the communication device, an execution means that does not execute the connection setting process. An information processing device characterized by the following: (Item 21) A control method for an information processing device having an application program, A first display step that displays a selection screen for selecting which connection method to use to connect the communication device to another device, In the selection screen, if a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), the information processing device determines, based on information about the network to which it is connected, whether or not there is a device that acts as an access point around the communication device. The execution step includes: if it is determined that a device acting as an access point exists around the communication device, a connection setting process is executed to connect the communication device to another device using the first connection method; and if it is determined that no device acting as an access point exists around the communication device, the connection setting process is not executed. A control method characterized by the following:

[0231] 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]

[0232] 101 Terminal device: 103 CPU: 104 ROM: 105 RAM: 131 Access point: 151 Communication device:

Claims

1. An application program, The computer of the information processing device, A first display means that displays a selection screen for selecting which connection method to use to connect a communication device to another device. If, in the selection screen, a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), a second display means displays a confirmation screen to ask the user whether or not there is a device that acts as an access point around the communication device. In the aforementioned confirmation screen, if an operation corresponding to the presence of a device operating as an access point around the communication device is performed, the connection setting process for connecting the communication device to another device using the first connection method is executed. In the aforementioned confirmation screen, if an operation corresponding to the absence of a device operating as an access point around the communication device is performed, the execution means is configured not to execute the connection setting process. An application program characterized by the following features.

2. If, in the selection screen, a selection corresponding to connecting to another device using the first connection method is made, the computer is further made to function as a first determination means for determining whether or not the information processing device is connected to another device via wireless LAN. The aforementioned execution means is If the first determination means determines that the information processing device is connected to another device via a wireless LAN, the second display means executes the connection setting process without displaying the confirmation screen. The application program according to feature 1.

3. If the first determination means determines that the information processing device is not connected to other devices via a wireless LAN, the computer is further configured to function as a second determination means for determining whether or not the information processing device is connected to other devices via a wired LAN. The aforementioned execution means is If the second determination means determines that the information processing device is connected to another device via a wired LAN, the second display means displays the confirmation screen. If the second determination means determines that the information processing device is not connected to another device via a wired LAN, the second display means does not display the confirmation screen and does not execute the connection setting process. The application program according to feature 2.

4. If the second determination means determines that the information processing device is not connected to other devices via a wired LAN, the computer is further made to function as a notification means for notifying that the information processing device is not connected to an external network. The application program according to feature 3.

5. The aforementioned execution means is If the connection setting process is not performed, the first display means will display the selection screen again. The application program according to feature 1.

6. The aforementioned execution means is If the connection setting process is not performed, the process for directly establishing a wireless LAN connection between the information processing device and the communication device is performed. The application program according to feature 1.

7. The aforementioned connection setup process is: This is a process for transmitting information to the communication device for connecting to a device that operates as an access point. The application program according to feature 1.

8. The aforementioned information is, The SSID and password of the device operating as the aforementioned access point, The application program according to feature 7.

9. The aforementioned information is, The information is transmitted from the information processing device to the communication device via a wireless LAN. The application program according to feature 7.

10. The aforementioned information is, The information is transmitted from the information processing device to the communication device via short-range wireless communication. The application program according to feature 7.

11. The computer is further configured to function as a search means for searching for the communication device that operates as a predetermined access point, The first display means is, If the search means finds the communication device that operates as the predetermined access point, the selection screen is displayed. The application program according to feature 1.

12. The aforementioned selection screen is The screen can accept either a selection corresponding to connecting the communication device to another device using the first connection method, or a selection corresponding to connecting the communication device to another device using a second connection method via a wired LAN. The application program according to feature 1.

13. The aforementioned selection screen is The screen is capable of accepting either a selection corresponding to connecting the communication device to another device using the first connection method, or a selection corresponding to connecting the communication device to the information processing device using a third connection method via USB. The application program according to feature 1.

14. The aforementioned confirmation screen is The system displays information prompting the user to check whether or not there are devices acting as access points around the aforementioned communication device. The application program according to feature 1.

15. The aforementioned confirmation screen is If no device acting as an access point exists around the communication device, information prompting the user to select a connection method different from the first connection method will be displayed. The application program according to feature 1.

16. The device that acts as an access point is a wireless LAN router. The application program according to feature 1.

17. An information processing device having an application program, A first display means that displays a selection screen using the application program for selecting how to connect the communication device to another device, In the selection screen, if a selection is made to connect the communication device to another device using a first connection method via wireless LAN (Local Area Network), the application program displays a confirmation screen to the user to confirm whether or not there is a device that acts as an access point around the communication device. The system includes, if an operation corresponding to the presence of a device acting as an access point around the communication device is performed on the confirmation screen, the application program executes a connection setting process to connect the communication device to another device using the first connection method; and if an operation corresponding to the absence of a device acting as an access point around the communication device is performed on the confirmation screen, the application program does not execute the connection setting process. An information processing device characterized by the following:

18. A control method for an information processing device having an application program, A first display step in which the application program displays a selection screen for selecting which connection method to use to connect the communication device to another device, If, in the selection screen, a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), the application program displays a confirmation screen to ask the user whether or not there is a device acting as an access point around the communication device. If, in the confirmation screen, an operation corresponding to the presence of a device acting as an access point around the communication device is performed, the application program executes a connection setting process to connect the communication device to another device using the first connection method. If, in the confirmation screen, an operation corresponding to the absence of a device acting as an access point around the communication device is performed, the application program does not execute the connection setting process. A control method characterized by the following:

19. An application program, The computer of the information processing device, A first display means that displays a selection screen for selecting which connection method to use to connect a communication device to another device. In the selection screen, if a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), the determination means determines whether or not there is a device that acts as an access point around the communication device, based on information about the network to which the information processing device is connected. If it is determined that a device acting as an access point exists around the communication device, the execution means will execute a connection setting process to connect the communication device to another device using the first connection method; if it is determined that no device acting as an access point exists around the communication device, the execution means will not execute the connection setting process. An application program characterized by the following features.

20. An information processing device having an application program, A first display means that displays a selection screen for selecting which connection method to use to connect a communication device to another device. In the selection screen, if a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), the determination means determines whether or not there is a device that acts as an access point around the communication device, based on information about the network to which the information processing device is connected. The system includes, if it is determined that a device acting as an access point exists around the communication device, an execution means that executes a connection setting process to connect the communication device to another device using the first connection method, and if it is determined that no device acting as an access point exists around the communication device, an execution means that does not execute the connection setting process. An information processing device characterized by the following:

21. A control method for an information processing device having an application program, A first display step that displays a selection screen for selecting which connection method to use to connect the communication device to another device. If, in the selection screen, a selection is made to connect the communication device to another device using a first connection method via a wireless LAN (Local Area Network), the information processing device determines, based on information about the network to which it is connected, whether or not there is a device that acts as an access point around the communication device. The execution step includes: if it is determined that a device acting as an access point exists around the communication device, a connection setting process is executed to connect the communication device to another device using the first connection method; and if it is determined that a device acting as an access point does not exist around the communication device, the connection setting process is not executed. A control method characterized by the following:

Citation Information

Patent Citations

  • Information processing device, control method, and program

    JP2016127545A