Information processing device, control method, and program

The application program enhances usability by establishing connections and controlling mirroring functions for communication devices, addressing the need for improved connectivity and mirroring support in access point connections.

JP2026054059APending Publication Date: 2026-03-26CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-09-13
Publication Date
2026-03-26

AI Technical Summary

Technical Problem

There is a demand for improving the usability of application programs that execute processing for connecting communication devices to access points, particularly in supporting mirroring functions.

Method used

A predetermined application program executes steps for establishing a connection between a communication device and an access point, displays a mirroring function control screen, and transmits connection information to connect to an external access point.

Benefits of technology

Enhances the usability of application programs by supporting mirroring functionality and improving the connectivity process between communication devices and access points.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026054059000001_ABST
    Figure 2026054059000001_ABST
Patent Text Reader

Abstract

To improve the usability of application programs. [Solution] The first information processing device is made to execute the following steps: a first transmission step in which a predetermined application sends an instruction to the OS for establishing a connection between a predetermined access point enabled by the communication device and the first information processing device; a display step in which a predetermined application displays a screen for stopping the mirroring function, which is a function that displays a screen based on information transmitted by the first information processing device on the display unit of a second information processing device different from that of the first information processing device; and a second transmission step in which, if a connection between the predetermined access point and the first information processing device is established based on the instruction, a predetermined application sends connection information for connecting to an access point outside the first information processing device and outside the communication device to the communication device via the connection between the predetermined access point and the first information processing device.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

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

Background Art

[0002] A form is known in which an information processing apparatus such as a smartphone transmits information for connecting to an access point to a communication apparatus such as a printer, and the communication apparatus uses the information to connect to the access point. Patent Document 1 describes that an information processing apparatus transmits information to a communication apparatus to set a connection mode for determining a connection form between the information processing apparatus and the communication apparatus in 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 form of transmitting information for connecting a communication apparatus to an access point becomes widespread, there is a demand for improving the usability of an application program that executes processing for transmitting information for connecting a communication apparatus to an access point.

[0005] Therefore, an object of the present invention is to be capable of supporting a mirroring function and improving the usability of an application program that executes processing for transmitting information for connecting a communication apparatus to an access point.

Means for Solving the Problems

[0006] The present invention is characterized by causing a predetermined application program to execute the following steps: a first transmission step in which the predetermined application transmits an instruction to the computer of a first information processing device having an operating system, for establishing a connection between a predetermined access point enabled by a communication device and the first information processing device; a display step in which the predetermined application displays a screen for stopping a mirroring function, which is a function that displays a screen based on screen information transmitted by the first information processing device and for controlling the first information processing device on the display unit of a second information processing device different from the first information processing device; and a second transmission step in which, when a connection between the predetermined access point and the first information processing device is established based on the instruction, the predetermined application transmits connection information for connecting to an access point outside the first information processing device and outside the communication device to the communication device via the connection between the predetermined access point and the first information processing device. [Effects of the Invention]

[0007] According to the present invention, it is possible to support mirroring functionality and improve the usability of application programs that perform processing to transmit information for connecting a communication device to an access point. [Brief explanation of the drawing]

[0008] [Figure 1] This is a diagram showing an example of a communication system. [Figure 2] This figure shows an example of the configuration of terminal equipment and communication equipment. [Figure 3] This flowchart shows an example of a process performed by a terminal device using the first application. [Figure 4] This figure shows an example of a screen for direct connection. [Figure 5] This figure shows an example of a password entry screen. [Figure 6]This figure shows an example of a screen for password confirmation. [Figure 7] This flowchart shows an example of a process performed by a terminal device using the first application. [Figure 8] This figure shows an example of a confirmation screen. [Figure 9] This flowchart shows an example of the connection process in connection setting mode. [Figure 10] This figure shows an example of a screen displayed while a communication device is being searched for. [Figure 11] This figure shows another example of the screen displayed while searching for a communication device. [Modes for carrying out the invention]

[0009] <First Embodiment> This invention describes the information processing device and communication device included in the communication system of this embodiment. The information processing device is also called a terminal device. In this embodiment, a smartphone is used as an example of the information processing device, but it is not limited to this. Various devices can be used as the information processing device, such as a personal computer (PC), tablet terminal, PDA (Personal Digital Assistant), digital camera, etc. In this embodiment, a printer is used as an example of the communication device. The printer may be an inkjet printer that prints using ink, or a laser beam printer that prints using toner. The printer may also be a full-color printer capable of color printing, or a monochrome printer capable of monochrome printing but not color printing. In this embodiment, the communication device is not limited to a printer. Any device capable of wireless communication with the information processing device can be used as the communication device. Examples of communication devices that can be used include photocopiers, facsimile machines, scanners, smartphones, PCs, tablet terminals, PDAs, digital cameras, music playback devices, televisions, smart speakers, robot vacuum cleaners, automatic cooking pots, refrigerators, etc. In addition, it can be used with multifunction devices that have multiple functions such as photocopying, faxing, and printing.

[0010] First, the system configuration for realizing this embodiment will be described. Figure 1 is a diagram showing an example of the configuration of the communication system of this embodiment. This system includes a communication device 151, a terminal device 101, a terminal device 121, an access point (AP) 131, and an external server 171.

[0011] Terminal device 101 is an information processing device of this embodiment. Communication device 151 is a communication device of this embodiment. AP131 is an access point activated by an external device located outside terminal device 101 and outside communication device 151. The external device is, for example, a wireless LAN (Local Area Network) router. External server 171 is a server that can provide services to devices connected to AP131 via the Internet.

[0012] In a situation where AP131 is connected to communication device 151 and terminal device 101, the LAN formed by AP131 includes AP131, communication device 151, and terminal device 101. On the other hand, the WAN (Wide Area Network) includes AP131 and external server 171.

[0013] 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 one external device may activate multiple APs, and one external device may be able to form multiple networks simultaneously.

[0014] In this embodiment, it is assumed that the connection 141 between the terminal device 101 and the AP 131 and the connection 142 between the communication device 151 and the AP 131 are connections based on a communication method conforming to the IEEE 802.11 series of standards. Specifically, the communication method based on the IEEE 802.11 series of standards is Wi-Fi (Wireless Fidelity) (registered trademark). Also, it is assumed that the connection 143 between the terminal device 101 and the communication device 151 is also a connection based on a communication method conforming to the IEEE 802.11 series of standards. However, the communication method used for the connection 143 is not limited to this form and may be, for example, Bluetooth (registered trademark) Low Energy (BLE), Bluetooth Classic, Wi-Fi Aware, Near Field Communication (NFC), or the like. The AP 131 and the external server 171 can communicate via the Internet, and when the AP 131 is connected to the Internet, the devices (terminal device 101 and communication device 151) connected to the AP 131 can also use the Internet. Note that the connection 141 between the terminal device 101 and the AP 131 and the connection 142 between the communication device 151 and the AP 131 may be connections via a wired LAN.

[0015] The terminal device 121 is an information processing device similar to the terminal device 101 and is an example of another information processing device. The terminal device 101 can communicate wirelessly with the terminal device 121.

[0016] Next, the configuration of the information processing device of this embodiment and a communication device capable of communicating with the information processing device of this embodiment will be described with reference to the block diagram of FIG. 2. Also, in this embodiment, the following configuration is described as an example, but this embodiment is applicable to devices capable of communicating with a communication device and does not particularly limit the functions as shown in this figure.

[0017] 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 photographing device 111, a wired communication unit 112, and the like. The computer of the terminal device 101 is formed by the CPU 103, the ROM 104, the RAM 105, and the like.

[0018] 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, a touch panel, and the like. Note that the output interface 107 described later and the input interface 102 may have the same configuration, and the output on the screen and the reception of operations from the user may be performed with the same configuration.

[0019] The CPU 103 is a system control unit that controls the entire terminal device 101. In the present embodiment, the CPU 103 executes control of display content (display control) on the display unit 108 and the like.

[0020] ROM 104 stores fixed data such as control programs executed by CPU 103, data tables, and operating system (hereinafter referred to as OS) programs. In this embodiment, each control program stored in ROM 104 performs software execution control such as scheduling, task switching, and interrupt processing under the management of the embedded OS stored in ROM 104. In this embodiment, ROM 104 stores a predetermined application program (app) for controlling the communication device 151. An application program is, in other words, application software. The predetermined app is installed on the terminal device 101 from an external source, for example, by a store app for installing various apps. The predetermined app is an app provided by the vendor of the communication device 151. In this embodiment, the predetermined app is an app for communicating with the communication device 151 and configuring the connection settings for the communication device 151. Hereinafter, the predetermined app will be referred to as the first app. The first app may have functions other than the function for configuring the connection settings for the communication device 151. Other functions specifically include, for example, a function to send a print job to the communication device 151 to perform printing (print job sending function), and a function to send a scan job to the communication device 151 to perform scanning (scan job sending function). In this embodiment, the processes described as being performed by the OS are, more precisely, processes that the CPU 103 performs according to a program within the OS. Similarly, the processes described as being performed by the application are, more precisely, processes that the CPU 103 performs according to a program within the application.

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

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

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

[0024] The display unit 108 is composed of LEDs (light-emitting diodes) and LCDs (liquid crystal displays), and displays data and notifies the status of the 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. In this embodiment, the display unit 108 is a touch panel and can accept user input using a finger, pen, or other control device.

[0025] The wireless communication unit 109 is configured to wirelessly connect to devices such as the communication device 151 and AP 131 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 AP 131 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. In this embodiment, a connection method in which the terminal device 101 and the communication device 151 are directly connected without going through an external AP is called a direct connection. A connection method in which the terminal device 101 and the communication device 151 are connected via an external AP is called an infrastructure connection.

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

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

[0028] 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. Also, for example, if the terminal device 101 is a smartphone, the terminal device 101 does not need to have a wired communication unit 112.

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

[0030] 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, the wireless communication method used by the wireless communication unit 156 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. 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 communication device 151 may be able to start up multiple APs internally with different SSIDs (Service Set Identifiers) and passwords.

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

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

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

[0034] 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 a wireless communication unit 156 that can communicate at a higher speed than the short-range wireless communication unit 157.

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

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

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

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

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

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

[0041] 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 a WFD connection has not been established but the communication device 151 is operating as GO, or a state in which a WFD connection has been established and the communication device 151 is operating as GO.

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

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

[0044] <About 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.

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

[0046] In this embodiment, when the communication device 151 operates in an infrastructure connection, the AP 131 operates as the master station and the communication device 151 operates as the slave station. That is, in this embodiment, the infrastructure connection refers to the connection between the communication device 151 operating as a slave station 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 to communicate with the communication device 151 via AP131, the terminal device 101 recognizes and identifies that the communication device 151 belongs to the network formed by AP131 and to which the terminal device 101 belongs.

[0047] <About connection setup process> In this embodiment, the terminal device 101 performs connection settings (network settings), which are settings for operating the communication device 151 using at least one communication method from infrastructure connection and direct connection, 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). Note that the connection setting process may also be performed by wired communication. The terminal device 101 performs the connection setting process on the communication device 151 when the first application stored in the external storage device 106 or the like is running. The communication device 151 can operate in connection setting mode (connection setting state), which is a mode for executing the connection setting process, and executes the connection setting process while operating in the connection setting mode described later. Details of the connection setting mode will be described later.

[0048] When the terminal device 101 operates the communication device 151 in infrastructure connection mode, it wirelessly transmits infrastructure configuration information, which is the configuration information for operating in infrastructure connection mode, to the communication device 151. The infrastructure configuration information includes information about AP131. Information about AP131 includes, for example, the SSID (Service Set Identifier), password, and frequency band information.

[0049] On the other hand, when the terminal device 101 operates the communication device 151 in direct connection mode, it wirelessly transmits direct configuration information, which is the configuration information for operating in direct connection mode, to the communication device 151. The direct configuration information includes instructions for enabling the WFD function and operating as a Group Owner, and for enabling the access point settings of the communication device 151. The terminal device 101 also obtains connection information necessary to directly connect with the communication device 151 from the communication device 151. The connection information for directly connecting with the communication device 151 includes, for example, information such as the SSID and password of the communication device 151 operating in direct connection mode.

[0050] In this embodiment, a direct connection for connection setup is used between the terminal device 101 and the communication device 151 for transmitting infrastructure setting information and direct setting information, and for obtaining information for direct connection with the communication device 151 during the connection setup process. In this embodiment, a Wi-Fi connection setup process is performed as the direct connection for connection setup, but other wireless communication standards such as Bluetooth may be used. Alternatively, wired communication standards such as wired LAN or USB (Universal Serial Bus) may be used as the direct connection for connection setup.

[0051] After the connection setup process establishes an infrastructure connection or a direct connection between the terminal device 101 and the communication device 151, communication becomes possible between the terminal device 101 and the communication device 151 via the established connection. Specifically, for example, the terminal device 101 can send a print job to the communication device 151 to perform printing, or a scan job to perform scanning, via the established connection. In this embodiment, the connection setup process can operate the communication device 151 in either infrastructure connection mode or direct connection mode, but the embodiment is not limited to this configuration. For example, the connection setup process may only allow the communication device 151 to operate in infrastructure connection mode (i.e., it may not be possible to operate the communication device 151 in direct connection mode).

[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 may be 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 makes the communication device 151 capable of establishing 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 first application installed on the terminal device 101. In other words, the terminal device 101 is assumed to be aware of the connection information for connecting to the connection setting AP in advance. Therefore, unlike the connection information for the AP enabled in direct connection mode, the connection information for connecting to the connection setting AP cannot be arbitrarily changed by the user. Note that the connection setting AP may not have an encryption method set, and a password may not be required to connect to the AP. Note that in connection setting mode, the communication device 151 may connect to the terminal device 101 using Wi-Fi Direct (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] <Regarding registration of communication devices to the app> In this embodiment, the first application can register the communication device 151 with the first application by obtaining information about the communication device 151 from the communication device 151. Information about the communication device 151 includes, for example, the capability information of the communication device 151, the identification information of the communication device 151 (MAC address, etc.), and the model information of the communication device 151. Specifically, the capability information of the communication device 151 includes a list of information about the functions that the communication device 151 supports, information about consumables (ink, paper) that can be used with the communication device 151, and information indicating the printing method of the communication device 151. The first application then selects one device from among the one or more communication devices 151 registered with the first application to be the communication partner of the first application. Hereinafter, the communication device 151 currently selected as the communication partner of the first application will be referred to as the selected communication device 151. The selection of the device to communicate with by the first application may be performed by accepting a selection from the user from one or more communication devices 151 registered in the first application, or it may be performed automatically by the first application according to predetermined criteria. Furthermore, the change of the device to communicate with by the first application may be performed, for example, by accepting a selection from the user from one or more communication devices 151 registered in the first application. In this embodiment, the first application sends various jobs, such as print jobs and scan jobs, to the selected communication device 151. In other words, the selected communication device 151 is the device to which various jobs are sent.

[0055] <Regarding the first problem that this embodiment solves> In order to connect the communication device 151 to the AP through the connection setup process, the terminal device 101 sends a password to the communication device 151 that will be used to connect to the AP. The communication device 151 then connects to the AP using the received password. In this process, the password sent from the terminal device 101 to the communication device 151 may be the password entered by the user into the terminal device 101. In this case, the user needs to recognize the correct password and enter it into the terminal device 101. However, in the past, the wrong password was sometimes entered into the terminal device 101 due to the user recognizing the wrong (incorrect) password or due to input errors even though the user recognized the correct password. As a result, the wrong password was sometimes sent to the communication device 151, and the communication device 151 was unable to connect to the AP.

[0056] To solve these problems, in this embodiment, the terminal device 101 performs a process to prevent an incorrect password from being entered into the terminal device 101. Specifically, the first application of the terminal device 101 displays a screen that presents a method for verifying the correct password on a screen displayed by a specific application of the terminal device 101. The specific application is an application different from the predetermined application and is pre-installed on the terminal device 101 without being installed on the terminal device 101 by a store application. The specific application is a settings application for configuring various settings of the terminal device 101 and is capable of executing various settings, including settings related to the terminal device 101's Wi-Fi connection. In the following, the screen for configuring the terminal device 101's Wi-Fi connection among the various settings that the second application can execute will be referred to as the Wi-Fi settings screen. In the following, the specific application will be referred to as the second application. The second application can display a list of access points present around the terminal device 101 on the Wi-Fi settings screen. Furthermore, if a password is required to connect to the access point selected from the list, the second application can accept password input from the user on the Wi-Fi settings screen. If the connection using that password is successful, the second application saves and manages various information about the access point to which the terminal device 101 connected using that password. Specifically, this information includes, for example, password, SSID, and security information. In other words, the second application has a management function that saves and manages information about the access point to which the terminal device 101 is currently connected, as well as information about access points to which the terminal device 101 has connected in the past. In its management function, the second application can display the password for the access point to which the terminal device 101 is currently connected, as well as the passwords for access points to which the terminal device 101 has connected in the past, on the Wi-Fi settings screen. The user can confirm the correct password for the access point by checking the password displayed by the second application. However, in order for the second application to display the password, several operations are required on the screen displayed by the second application.Furthermore, since terminal device 101 has a second application that differs depending on the OS and model of terminal device 101, the operation to display the password using the second application may also differ depending on the OS and model of terminal device 101. If the user does not correctly recognize the operation, the user will not be able to display the password using the second application. Therefore, in this embodiment, a screen is displayed that presents the operation to display the password using the second application.

[0057] Furthermore, if the OS of the terminal device 101 is iOS (trademark registered) or iPadOS (registered trademark), the connection of the terminal device 101 established by the instructions of the first app can be divided into two types: a connection that is disconnected based on the first app transitioning to the background (hereinafter referred to as the first type of connection), and a connection that is not disconnected even if the first app transitions to the background (hereinafter referred to as the second type of connection). Specifically, the first type of connection is disconnected by the OS based on the fact that the first app remains in the background for a predetermined amount of time (for example, 15 seconds). The second type of connection is maintained without being disconnected by the OS even if the first app remains in the background for a predetermined amount of time. As described above, in this embodiment, the first app displays a screen prompting the user to confirm the password on the Wi-Fi settings screen displayed by the second app. When the user launches the second app according to that screen, the first app transitions to the background. Furthermore, if the connection between the communication device 151 operating in connection setting mode and the terminal device 101 is a Type 1 connection, the connection between the communication device 151 operating in connection setting mode and the terminal device 101 will be disconnected if the user launches the second application to check the password. Once the connection is disconnected, even if the user checks the password on the Wi-Fi settings screen displayed by the second application and enters it into the first application, the first application will not be able to send the entered password to the communication device 151. In order to send the entered password to the communication device 151, the connection needs to be re-established, but this requires an operation to re-establish the connection, which is troublesome for the user. Therefore, in this embodiment, the connection between the communication device 151 operating in connection setting mode and the terminal device 101 is controlled to be a Type 2 connection. This allows the connection to be maintained without being disconnected even if the first application transitions to the background when the user launches the second application.

[0058] As described above, the first application establishes a connection between the communication device 151 and the AP by sending configuration information, including the password entered by the user on the first application, to the communication device 151. However, the user may abandon the method of the first application sending configuration information to the communication device 151, even though the password input screen is displayed by the first application, for reasons such as being unable to verify the password. There are other methods (other connection methods) for establishing a connection between the communication device 151 and other devices, other than the method of the first application sending configuration information to the communication device 151. However, if the user is unaware of the existence of other connection methods or the details of these other connection methods, there is a problem that the user cannot establish a connection to the communication device 151, either by the method of the first application sending configuration information to the communication device 151 or by the other connection methods. Therefore, in this embodiment, a button to display a manual on other connection methods is displayed on the password input screen. This makes it possible to guide users who have abandoned the method of the first application sending configuration information to the communication device 151, even though the password input screen is displayed by the first application, to other connection methods, thereby improving usability.

[0059] Furthermore, the present invention does not necessarily have to solve all of the above-mentioned problems; it is sufficient if it solves any of the above-mentioned problems. In other words, it does not necessarily have to perform all of the processes that solve the above-mentioned problems; it is sufficient if it performs any of the processes that solve the above-mentioned problems.

[0060] <Regarding the processing performed by the first application in this embodiment> Figure 3 is a flowchart showing an example of processing performed by the terminal device 101 using the first application in this embodiment. Each process in the flowchart of Figure 3 is realized, for example, by the CPU 103 loading the first application stored in memory such as ROM 104 into RAM 105 and executing it. The flowchart of Figure 3 is started based on an operation to perform connection setting processing on the screen displayed by the first application. The flowchart of Figure 3 may also be started in response to the launch of the first application.

[0061] In S301, the first application retrieves and saves information about the access point (AP) to which the selected communication device 151 is currently connected via Wi-Fi. Hereafter, the AP to which the selected communication device 151 is currently connected via Wi-Fi will be referred to as the specific AP. The information of the specific AP retrieved here includes the SSID and password. The information of the specific AP is obtained, for example, via the infrastructure connection or direct connection between the terminal device 101 and the communication device 151. If the terminal device 101 is not currently able to communicate with the selected communication device 151, or if the selected communication device 151 is not currently connected to an AP via Wi-Fi, the information of the specific AP is not retrieved. The timing of retrieval of the specific AP information is not limited to this timing. For example, the acquisition of the specific AP information may be performed at a time before the flowchart in Figure 3 starts, based on the launch of the first application, in which case the processing in S301 is skipped.

[0062] In S302, the first application obtains and saves information about the AP to which terminal device 101 is currently connected via Wi-Fi from the OS. In other words, the AP to which terminal device 101 is currently connected via Wi-Fi is the AP to which terminal device 101 is connected when the process that triggered the start of the flowchart in Figure 3 is executed. The process that triggered the start of the flowchart in Figure 3 is the acceptance of an operation to execute the connection setting process or the launch of the first application. Hereafter, the AP to which terminal device 101 is connected via Wi-Fi at the time of S301 will be referred to as the predetermined AP. The AP information obtained here is information that the first application can obtain from the OS from among various AP-related information, specifically, for example, the SSID. If terminal device 101 is not currently connected to an AP via Wi-Fi, the information of the predetermined AP is not obtained.

[0063] In S303, the first application executes a process to establish a connection between the communication device 151, which is operating in connection setting mode, and the terminal device 101. Specifically, the first application instructs the OS to establish a connection between the communication device 151, which is operating in connection setting mode, and the terminal device 101. More specifically, the first application executes a predetermined API (Application Programming Interface) to establish a connection with the terminal device 101, while setting at least a part of the string of the SSID of the communication device 151, which is operating in connection setting mode, as an argument. The OS then searches for a device with an SSID containing the string and establishes a connection between the found device (i.e., the communication device 151, which is operating in connection setting mode) and the terminal device 101. The communication device 151 to which the terminal device 101 connects through this process is the first communication device 151 found by the search performed in the process of S303. However, the system is not limited to this form. The first application may display multiple communication devices 151 discovered by the search performed in the S303 process, and the user may select one of the displayed communication devices 151. The communication device 151 to which the terminal device 101 connects through this process may be the communication device 151 selected by the user. While a connection is established between the communication device 151 operating in connection setting mode and the terminal device 101, communication between the communication device 151 and the terminal device 101 will be performed through that connection. Details of the S303 process will be described later with reference to Figure 9.

[0064] In this embodiment, the first iOS application controls the connection between the communication device 151, which is operating in connection setting mode, and the terminal device 101 so that it becomes the second type of connection described above. Specifically, in S303, the first iOS application executes a predetermined API while setting a flag to instruct the OS to establish a second type of connection. As a result, the OS establishes a connection between the communication device 151, which is operating in connection setting mode, and the terminal device 101 as a second type of connection. This prevents the connection between the communication device 151, which is operating in connection setting mode, and the terminal device 101 from being disconnected even if a predetermined amount of time has elapsed since the first application started running in the background.

[0065] In S304, the first application obtains information from the communication device 151 regarding a list of APs discovered by a search performed by the communication device 151. APs discovered by a search performed by the communication device 151 are APs that the communication device 151 can connect to. APs that the communication device 151 can connect to are APs located within the communication range of the communication device 151 and corresponding to the capabilities of the communication device 151. For example, if the communication device 151 can perform 2.4GHz communication but not 5GHz communication, the list of APs shown in the obtained information will include APs that support 2.4GHz communication but will not include APs that support 5GHz communication.

[0066] In S305, the first application determines whether the AP indicated by the information saved in S302 (the specified AP) is included in the list of APs indicated by the information obtained in S304. If the first application determines that it is YES, it proceeds to S306; if it determines that it is NO, it proceeds to S309.

[0067] In S306, the first application displays information about a designated AP and shows a confirmation screen to the user asking whether to set the communication device 151 to connect to the designated AP. The information displayed here is the information saved in S302, for example, the SSID of the designated AP.

[0068] In S307, the first application determines whether or not to transmit information about a predetermined AP to the communication device 151. In other words, this determination determines whether the user has confirmed that the communication device 151 will connect to the predetermined AP. Therefore, if an input indicating that the communication device 151 will connect to the predetermined AP is given on the confirmation screen, the determination is YES, and the predetermined AP is identified as the communication device 151's connection target. If an input indicating that the communication device 151 will not connect to the predetermined AP is given on the confirmation screen, the determination is NO. If the first application determines YES, it proceeds to S308; if it determines NO, it proceeds to S313.

[0069] In S308, the first application determines whether a given AP matches a specific AP. If the given AP matches a specific AP, the first application holds the password for the given AP. Therefore, this determination determines whether the first application holds the password for the given AP. In other words, this determination determines whether the password for the given AP is stored in a storage area accessible to the first application. If the first application determines YES, it proceeds to S312 and sends the information of the given AP to the communication device 151. If it determines NO, it proceeds to S319 and displays the password input screen.

[0070] In S308, it is not necessary to determine whether the specified AP matches a specific AP. The determination performed in S308 may be a process to determine whether the specified AP corresponds to the AP held in the storage area accessible by the first application. In this configuration, a case where the determination is YES is, for example, a case in which, in a connection setup process previously performed by the first application, a password for connecting to the specified AP was entered by the user into the first application and sent to the communication device 151. In this configuration, a case where the determination is NO is, for example, a case in which, in a connection setup process previously performed by the first application, a password for connecting to the specified AP was never entered by the user into the first application.

[0071] In S309, which is executed when the result of S305 is NO, the first application determines whether the AP indicated by the information saved in S301 (a specific AP) is included in the list of APs indicated by the information obtained in S304. If the first application determines it is YES, it proceeds to S310; if it determines it is NO, it proceeds to S313.

[0072] In S310, the first application displays information about a specific AP and shows a confirmation screen to the user asking whether to set the communication device 151 to connect to that specific AP. The information displayed here is information saved in S301, such as the SSID of the specific AP.

[0073] In S311, the first application determines whether or not to send information about a specific AP to the communication device 151. In other words, this determination determines whether the user has confirmed that the communication device 151 will connect to a specific AP. Therefore, if the confirmation screen indicates that the communication device 151 will connect to a specific AP, the determination is YES, and the specific AP is identified as the communication device 151's connection target. If the confirmation screen indicates that the communication device 151 will not connect to a specific AP, the determination is NO. If the first application determines YES, it proceeds to S312; if it determines NO, it proceeds to S313.

[0074] In S312, the first application transmits information to the communication device 151 for connecting to the AP identified as the target of the communication device 151. The information transmitted here includes the SSID of the AP identified as the target of the communication device 151 and the password for connecting to the AP identified as the target of the communication device 151. In this process, the AP identified as the target of the communication device 151 is a predetermined AP that matches a specific AP, or a specific AP. That is, the password transmitted here is the password for the specific AP, and is the password obtained from the communication device 151 in S301. In other words, the password transmitted here is the password held by the first application (the password held in a storage area accessible to the first application). Therefore, after the target of the communication device 151 is identified, the first application transmits the password to the communication device 151 without accepting password input from the user. After information for connecting to the AP identified as the target for connection to the communication device 151 is sent to the communication device 151, the communication device 151 exits connection setting mode and uses the received information to connect to the AP identified as the target for connection to the communication device 151. When connection setting mode is exited, the connection between the communication device 151 and the terminal device 101 is also disconnected. The terminal device 101 reconnects to the predetermined AP, which is the AP to which the terminal device 101 was connected before connecting to the communication device 151, using the OS's reconnection function. After that, the first application proceeds to S327. However, the application is not limited to proceeding to S327; it may also proceed to a process such as S710 described later, which displays a screen for searching for the communication device 151 on the Wi-Fi network to which the terminal device 101 is connected.

[0075] S313 is executed if the result of S301 is NO, or if the result of S307 is NO, or if the result of S309 is NO, or if the result of S311 is NO. In S313, the first application displays a list of APs indicated by the information obtained in S304. In this embodiment, the screen containing the list includes a direct connection button. If the AP that the user desires to connect to the communication device 151 is not in the list, the user operates the direct connection button.

[0076] In S314, the first application determines whether the direct connection button has been operated. If the first application determines that the answer is YES, it proceeds to S315; otherwise, it proceeds to S318.

[0077] In S315, the first application executes a process to establish a direct connection between the communication device 151 and the terminal device 101. Specifically, the first application first sends direct configuration information to the communication device 151. Then, it obtains connection information from the communication device 151 to establish a direct connection with the communication device 151. The first application then instructs the OS to establish a connection between the communication device 151, which is operating in direct connection mode, and the terminal device 101. More specifically, the first application identifies the SSID of the communication device 151, which is operating in direct connection mode, from the received connection information. The first application then executes a predetermined API to establish a connection with the terminal device 101, setting at least a part of the identified SSID string as an argument. The OS then searches for a device with an SSID containing that string and displays a confirmation screen asking whether to establish a direct connection between the found device (the communication device 151 operating in direct connection mode) and the terminal device 101. Furthermore, if the first application is an iOS application, the first application may, in this process, execute a predetermined API while setting a flag to instruct the OS to establish a connection that will not be disconnected even if the first application transitions to the background. In other words, a direct connection between the communication device 151 and the terminal device 101 may be established as a Type 2 connection. However, the process is not limited to this form, and the first application may, in this process, execute a predetermined API without setting the flag, and a direct connection between the communication device 151 and the terminal device 101 may be established as a Type 1 connection.

[0078] In S316, the first application determines whether a user action indicating the establishment of a direct connection has been performed on the confirmation screen displayed by the OS in S315. This determination is made when the first application receives a notification from the OS indicating which action has been performed on the confirmation screen displayed by the OS. If a user action indicating the establishment of a direct connection is performed, the OS establishes the direct connection; however, if a user action indicating not to establish a direct connection is performed, the OS does not establish the direct connection. If the first application determines the result is YES, it proceeds to S327; otherwise, it proceeds to S317.

[0079] In S317, the first application displays a screen for direct connection. An example of the screen displayed in this process is shown in Figure 4. Screen 400 includes an SSID display area 401, a password display area 402, a password copy area 403, and a complete button 404. The SSID display area 401 is the area that displays the SSID of the communication device 151 operating in direct connection mode. The password display area 402 is the area that displays the password of the communication device 151 operating in direct connection mode. When area 403 is operated, the first application copies the password of the communication device 151 operating in direct connection mode and saves it to the clipboard of the terminal device 101. With the password of the communication device 151 operating in direct connection mode copied, the user can easily enter the password in the second application, and the second application can establish a direct connection. Screen 400 may also include messages prompting the user to establish a direct connection using the Wi-Fi settings screen displayed by the second application, and messages prompting the user to operate the complete button 404 once the direct connection has been established. If the complete button 404 is operated, the first application proceeds to S327. However, it is not limited to proceeding to S327; it may also proceed to a process such as S710 described later, which displays a screen for searching for the communication device 151 on the Wi-Fi network to which the terminal device 101 is connected.

[0080] In S318, which is executed when the result of S314 is NO, the first application determines whether any AP has been selected by the user from the displayed list of APs. If the first application determines it is YES, it identifies the selected AP as the target for connection to the communication device 151 and proceeds to S319. If it determines it is NO, it returns to S314 and waits to accept any operation.

[0081] In S319, the first application displays a password input screen (first display control) to accept input of a password for connecting to the AP identified as the target of connection for the communication device 151. The password input screen may also be displayed as a pop-up on the top of the AP list. An example of the screen displayed in this process is shown in Figure 5. The password input screen 500 includes an SSID display area 501, a password input box 502 (first area), a password confirmation button 503, a button 504 for other connection methods, an OK button 506, and a cancel button 505. The SSID display area 501 is an area that displays the SSID of the AP identified as the target of connection for the communication device 151. The password input box 502 is an area that accepts input from the user of the password for the AP identified as the target of connection for the communication device 151. The password confirmation button 503 is a button related to the function of displaying the password on the Wi-Fi settings screen by the second application. The button 504 for other connection methods is a button for displaying a manual for other connection methods. In this embodiment, "other connection methods" refers to connection methods other than those in which the first application establishes a connection between the communication device 151 and other devices by transmitting configuration information to the communication device 151. In other words, "other connection methods" refers to methods in which the first application establishes a connection between the communication device 151 and other devices without transmitting configuration information to the communication device 151.

[0082] Depending on the OS version of terminal device 101, the second application may not be able to display the password for the access point to which terminal device 101 is currently connected, or the passwords for access points to which terminal device 101 has previously connected, on the Wi-Fi settings screen. Specifically, for example, if the OS of terminal device 101 is an iOS version lower than 16 or an iPadOS version lower than 16, the second application cannot display the above passwords on the Wi-Fi settings screen. Therefore, in S319, the first application may identify the OS version of terminal device 101 and determine whether the identified version is one to which the second application cannot display the above passwords on the Wi-Fi settings screen. If the result of the determination is YES, the first application may display a password input screen that does not include the password confirmation button 503, and if the result is NO, it may display a password input screen that includes the password confirmation button 503. The password input screen that does not include the password confirmation button 503 includes other buttons and areas on screen 500. In other words, the button 504 for other connection methods will be displayed regardless of the OS version. However, if, for example, the first app only supports OS versions that allow the second app to display the above password on the Wi-Fi settings screen, then it is not necessary to perform version detection or control to switch the display screen based on the version detection result.

[0083] In S320, the first application determines whether it has received a user response to the cancel button 505. If the first application determines it is YES, it proceeds to S313 to display a list of applications; if it determines it is NO, it proceeds to S321.

[0084] In S321, the first application determines whether it has received a user response to the password confirmation button 503. If the first application determines it is YES, it proceeds to S322; otherwise, it proceeds to S323.

[0085] In S322, the first application displays a screen for password confirmation. In this embodiment, the password confirmation screen is a predetermined screen that shows how to confirm the AP password on the Wi-Fi settings screen displayed by the second application. An example of the screen displayed in this process is shown in Figure 6. In this embodiment, the password confirmation screen is not a web page displayed via internet communication by a web browser. That is, it is a screen displayed on the first application based on information that the first application has in advance. A web browser is, for example, an internal browser of the first application or a browser of a browser application different from the first application. However, it is not limited to this form, and the password confirmation screen may be a web page displayed by a web browser. Also, the password confirmation screen may be displayed as a pop-up at the top of the AP list.

[0086] Figure 6 shows a password confirmation screen displayed when the OS of terminal device 101 is iOS or iPadOS, and the first application is an iOS application or an iPadOS application. Screen 610 includes an area 611 showing a method for confirming the AP password on the Wi-Fi settings screen displayed by a second application compatible with iOS or iPadOS (hereinafter referred to as the second password confirmation method), and an OK button 612. Area 611 displays text indicating the second password confirmation method, which shows the operation to confirm the password on the Wi-Fi settings screen compatible with iOS or iPadOS. Screen 610 may also display the SSID of the AP identified as the connection target of the communication device 151. Area 611 may also display text prompting the user to return to the first application (bring the first application back to the foreground) after confirming the password. After confirming this text, the user launches the second application from the home screen of terminal device 101, etc., and confirms the password by performing the operation indicated by the text. After the user confirms the password, they run the first app in the foreground again, press the OK button 612, and enter the password in the first app. Note that all devices with iOS or iPadOS of a specified version or higher have a function to confirm the password on the Wi-Fi settings screen. Therefore, screen 610 does not include buttons for other connection methods. However, this is not limited to this configuration, and screen 610 may also include buttons for other connection methods. Also, on devices with iOS or iPadOS, the second app cannot be launched by instructions from the first app. Therefore, screen 610 does not include a button to display the Wi-Fi settings screen. However, this is not limited to this configuration, and if it becomes possible to launch the second app by instructions from the first app on devices with iOS or iPadOS, then screen 610 may also include a button to display the Wi-Fi settings screen. When the OK button 612 is pressed, the first app proceeds to S319.In this embodiment, the text describing the first password verification method and the text describing the second password verification method are different, but the embodiment is not limited to this form, and the text describing the first password verification method and the text describing the second password verification method may be the same.

[0087] In S323, which is executed when the result of S321 is NO, the first application determines whether or not it has received a user input for button 504 for another connection method. If the first application determines it is YES, it proceeds to S324; if it determines it is NO, it proceeds to S325. Details of the processing in S324 will be described later.

[0088] In S325, the first application determines whether it has received a user input to the OK button 506 with a password entered in the password input box 502. The user has pressed the password confirmation button 503 and can confirm the password on the Wi-Fi settings screen according to the text displayed on the screen shown in Figure 6, and then enter the password in the password input box 502. Alternatively, if the user has copied the password from the Wi-Fi settings screen and saved it to the clipboard, they can paste the saved password into the password input box 502 to enter the password. If the first application determines it is YES, it proceeds to S326; if it determines it is NO, it returns to S320 and waits for the user to perform any action on the password input screen 500.

[0089] In S326, the first application sends information to the communication device 151 for connecting to the AP identified as the target of the communication device 151. Specifically, the information sent here includes the password entered in the password input box 502 and the SSID of the AP identified as the target of the communication device 151. After the information for connecting to the AP identified as the target of the communication device 151 is sent to the communication device 151, the communication device 151 exits connection setup mode and uses the received information to connect to the AP identified as the target of the communication device 151. As the connection setup mode is exited, the connection between the communication device 151 and the terminal device 101 is also disconnected. The terminal device 101 reconnects to the predetermined AP, which is the AP to which the terminal device 101 was connected before connecting to the communication device 151, using the OS's reconnection function. After that, the first application proceeds to S327.

[0090] In S327, the first application searches for the communication device 151 on the Wi-Fi network to which the terminal device 101 is connected. For example, if the AP identified as the connection target for the communication device 151 is a predetermined AP, both the communication device 151 and the terminal device 101 will connect to the predetermined AP, and the communication device 151 will be found through this search. If the AP identified as the connection target for the communication device 151 is not a predetermined AP, and the communication device 151 connects to an AP that is not a predetermined AP, or if the entered password is incorrect and the communication device 151 fails to connect to the AP, the communication device 151 will not be found through this search. If the communication device 151 is found through this search, the application obtains information about the communication device 151 from the communication device 151 via the Wi-Fi network to which the terminal device 101 is connected, and registers the communication device 151 in the first application. At this time, the first application may automatically set the newly registered communication device 151 as the selected communication device 151. After that, the first app finishes processing and displays its home screen.

[0091] <Regarding the second problem that this embodiment solves> For example, in Figure 1, terminal device 101 is a smartphone (e.g., iPhone®), terminal device 121 is a personal computer (e.g., Mac), and communication device 151 is a printer. Terminal device 101 can communicate wirelessly with terminal device 121. Terminal device 101 has the iOS 18 operating system, and terminal device 121 has the macOS® Sequoia operating system. This combination of operating systems enables the mirroring function. Specifically, the mirroring function is a function called iPhone mirroring, for example. The mirroring function is a function in which terminal device 101 transfers (transmits) screen information to terminal device 121, displays the screen corresponding to that screen information on terminal device 121, and allows terminal device 101 to be operated by operations on the screen of terminal device 121. The mirroring function is started when an operation to start the mirroring function is performed on the screen displayed by the application for executing the mirroring function (hereinafter referred to as the mirroring function application) on terminal device 121. The mirroring function is also started on the condition that terminal device 101 is in a locked state. The mirroring function is also deactivated when an operation to deactivate (stop) the mirroring function is performed on the screen displayed by the mirroring function application. The mirroring function is also deactivated when an operation to unlock the lock state is performed on terminal device 101, and the lock state is released on terminal device 101. While the mirroring function is running, terminal device 101 can perform processing based on operations on terminal device 121. That is, terminal device 121 appropriately sends information indicating the operation performed on terminal device 121 to terminal device 101 each time such an operation is performed. As a result, terminal device 101 considers the operation indicated by the received information to have been performed on terminal device 101, and performs the same processing on terminal device 101 as would be performed if the operation was performed on terminal device 101. Note that while terminal device 101 is displaying its screen on terminal device 121 via the mirroring function, terminal device 101 is in a locked state, so the display unit of terminal device 101 is off and does not display anything.However, the mirroring function is not limited to this form, and may also display a screen indicating that the mirroring function is in operation. Therefore, the mirroring function can be defined as a function that displays a screen for controlling terminal device 101 on the display unit of terminal device 121 instead of the display unit of terminal device 101. When the mirroring function is deactivated, the screen that was displayed on the display unit of terminal device 121 by the mirroring function is displayed on the display unit of terminal device 101. It should be noted that the mirroring function is not limited to this form, and while the mirroring function is in operation, the screen displayed on the display unit of terminal device 121 may also be displayed on the display unit of terminal device 101. In other words, the mirroring function may also be a function that displays the screen displayed on the display unit of terminal device 101 on the display unit of terminal device 121.

[0092] However, while the mirroring function is running, even if the first application on the terminal device 101 instructs the OS to connect to the AP that is enabled by the communication device 151 operating in connection setting mode, as shown in S303 of Figure 3, the connection will fail.

[0093] Specifically, the OS notifies the first application of an "unknown" error. Here, even if the target AP is not present in the vicinity of terminal device 101, an "unknown" error is notified. Therefore, it is thought that the AP search fails while the mirroring function is running, resulting in the notification of an "unknown" error. To address this issue, we will explain the solution with reference to Figure 9.

[0094] <Regarding the process for resolving the second issue> Figure 9 is a detailed flowchart of an example of the connection process in the connection setting mode of S303 in Figure 3. Each process in the flowchart of Figure 9 is realized, for example, by the CPU 103 loading the first application stored in memory such as ROM 104 into RAM 105 and executing it.

[0095] Terminal device 101 can perform a mirroring function with respect to terminal device 121. The control method for terminal device 101 will be described below.

[0096] In S901, the first application instructs the OS to search for the communication device 151, which is compatible with the OS's standard setup function.

[0097] In S902, the first application receives the results of the above search from the OS and determines, based on the search results, whether or not a communication device 151 corresponding to the OS's standard setup function has been found. If the first application determines that it has been found, it proceeds to S903; if it determines that it has not been found, it proceeds to S905.

[0098] In S903, the first application instructs the OS to execute the OS's standard setup functions. Note that the processing in S905 is not performed in S903.

[0099] In S904, the first application receives a completion notification from the OS's standard setup function and proceeds to S327 in Figure 3.

[0100] In S905, the first application sends instructions to the OS to establish a connection between a predetermined AP enabled by the communication device 151 operating in connection setting mode and the terminal device 101. More specifically, the first application executes a predetermined API for establishing a connection with the terminal device 101, while setting at least a part of the string of the SSID of the communication device 151 operating in connection setting mode as an argument. The OS then searches for a device having an SSID containing that string.

[0101] The first application displays screen 1001, which indicates that the search shown in Figure 10 is in progress. Screen 1001 is displayed while waiting for the OS to receive the result of the instructions for establishing a connection to S905, and has a "Next" button 1002. The "Next" button 1002 is to be tapped if the communication device 151 is not found after waiting for a while.

[0102] In S906, the first app determines whether the "Next" button 1002 has been tapped. Here, tapping the "Next" button 1002 is an example of a predetermined operation performed on screen 1001. If the first app determines that the "Next" button 1002 has been tapped, it proceeds to S907; if it determines that the "Next" button 1002 has not been tapped, it proceeds to S910.

[0103] In step S907, the first app determines whether the OS version is iOS 18 or higher. If it is iOS 18 or higher, the mirroring function is implemented; if it is below iOS 18, the mirroring function is not implemented. iOS 18 is an example of a specified version. If the first app determines that it is iOS 18 or higher, it proceeds to S908; if it determines that it is below iOS 18, it proceeds to S909.

[0104] In S908, the first application displays a connection preparation screen 1003, which includes the mirroring cancellation message 1004 shown in Figure 10. After processing the preparation screen 1003, it returns to S905. The mirroring cancellation message 1004 is an example of a message prompting the user to stop (cancel) the mirroring function. The preparation screen 1003 is also the screen for stopping the mirroring function.

[0105] In this case, if terminal device 101 is performing the mirroring function, the connection based on the connection instruction in S905 is likely to fail. If the user stops the mirroring function of terminal device 101 in accordance with the mirroring cancellation message 1004, the connection is likely to succeed with the subsequent connection instruction in S905.

[0106] The first application may display the connection preparation screen 1101 in Figure 11 instead of the connection preparation screen 1003 in Figure 10. The preparation screen 1101 includes a link button 1102 for checking the web manual. When the link button 1102 is tapped, the first application displays a web page 1103 that includes a mirroring release message 1104. The mirroring release message 1104 is an example of a message prompting the user to stop the mirroring function. The web page 1103 also includes a message 1107 prompting the user to operate the communication device 151 in connection setting mode.

[0107] In S909, the first application displays a connection preparation screen 1003 that does not include the mirroring cancellation message 1004 shown in Figure 10, processes the preparation screen 1003, and returns to S905.

[0108] In S910, the first application determines whether or not the OS has notified the first application of an "unknown" error. As described above, the "unknown" error is notified when the terminal device 101 is performing the mirroring function, or when there is no communication device 151 around the terminal device 101. The "unknown" error is an example of a predetermined error. If the first application determines that the "unknown" error has been notified, it proceeds to S911; if it determines that the "unknown" error has not been notified, it proceeds to S914.

[0109] In step S911, the first app determines whether the OS version is iOS 18 or higher. If it is iOS 18 or higher, the mirroring function is implemented. If the first app determines that the OS version is iOS 18 or higher, it proceeds to step S912. If it determines that the OS version is lower than iOS 18, it terminates the process shown in the flowchart in Figure 9, and also terminates the process shown in the flowchart in Figure 3.

[0110] In S912, the first application displays an error screen 1005, which includes the mirroring release message 1006 shown in Figure 10. The mirroring release message 1006 is an example of a message prompting the user to stop the mirroring function. The error screen 1005 is also a screen for stopping the mirroring function and includes a retry button 1007 and a cancel button 1008. The retry button 1007 is a button that sends instructions to the OS again to establish a connection with S905.

[0111] Here, since the "unknown" error also occurs when the designated AP is not present around the terminal device 101, the error screen 1005 may include a message instructing the communication device 151 to operate in connection setting mode, and a message instructing the communication device 151 on how to operate it in connection setting mode.

[0112] The first application may display the error screen 1105 shown in Figure 11 instead of the error screen 1005 shown in Figure 10. The error screen 1105 includes a link button 1106 for checking the web manual, a retry button 1007, and a cancel button 1008. The retry button 1007 and the cancel button 1008 are the same as those in Figure 10. When the link button 1106 is tapped, the first application displays the same web page 1103 as shown in Figure 11.

[0113] Here, since the "unknown" error also occurs when the designated AP is not present around the terminal device 101, the web page 1103 may include a message notifying the communication device 151 to operate in connection setting mode, and a message notifying the communication device 151 of how to operate it to operate in connection setting mode.

[0114] In S913, the first application determines whether the retry button 1007 has been tapped. If the first application determines that the retry button 1007 has been tapped, it returns to S905. If it determines that the cancel button 1008 has been tapped, it terminates the process shown in the flowchart in Figure 9, and also terminates the process shown in the flowchart in Figure 3.

[0115] If the user then stops the mirroring function of the terminal device 101 in accordance with the mirroring cancellation message 1006, there is a high probability that the connection will succeed following the connection instruction from S905.

[0116] In S914, the first application determines whether the connection based on the connection instruction in S905 was successful. The OS searches for a predetermined AP based on the connection instruction in S905 and displays a confirmation screen 1009 to establish a connection between the predetermined AP, which is enabled by the communication device 151, and the terminal device 101. The confirmation screen 1009 has a connect button 1010 and a cancel button 1011. The first application receives notification from the OS whether the connection was successful when the connect button 1010 is tapped on the confirmation screen 1009 displayed by the OS when the predetermined AP is found, and the connection is successful. If the cancel button 1011 is tapped, the first application receives a notification to that effect from the OS. If the first application receives a connection success notification from the OS based on the tap of the connect button 1010, it proceeds to S304 in Figure 3. If it receives a cancellation notification from the OS based on the tap of the cancel button 1011, it returns to S905.

[0117] If a connection between the designated AP and the terminal device 101 is established based on the instructions in S905, the process proceeds from S914 to S304. Subsequently, in S312 and S326 of Figure 3, the first application transmits connection information to the communication device 151 via the connection between the designated AP and the terminal device 101, for connecting to AP 131 which is outside the terminal device 101 and outside the communication device 151.

[0118] Furthermore, there are two methods for setting up the communication device 151 by sending AP information to the communication device 151: a first method which proceeds from S902 to S905, and a second method which proceeds from S902 to S903. The first method involves sending AP information to the communication device 151 using the first application. The second method involves sending AP information to the communication device 151 using a function that is standard in iOS. When searching for the communication device 151 using the second method, the communication device 151 can be found even while the mirroring function is running. Note that some communication devices 151 support only the first method, while others support both the first and second methods. In order to prioritize the second method, which can be executed even while the mirroring function is running, S902 in the flowchart of Figure 9 first searches for a communication device 151 that supports the standard iOS setup method.

[0119] Furthermore, if terminal device 101 is performing a mirroring function with terminal device 121, the screen shown in Figure 10 or Figure 11 will not be displayed on the display unit of terminal device 101, but will be displayed on the display unit of terminal device 121.

[0120] Furthermore, in S905, the first application may display the mirroring cancellation message 1004 shown in Figure 10 on screen 1001 when displaying the search screen 1001 shown in Figure 10.

[0121] Furthermore, since the "unknown" error in S910 also occurs when the designated AP is not present around the terminal device 101, the error screen 1005 in Figure 10 may also include a message instructing the communication device 151 to operate in connection setting mode, and a message instructing the communication device 151 on how to operate it in connection setting mode.

[0122] Figure 7 is a flowchart showing an example of processing performed by the terminal device 101 using the first application in this embodiment. Each process in the flowchart of Figure 7 is realized, for example, by the CPU 103 loading the first application stored in memory such as ROM 104 into RAM 105 and executing it. The processing in this flowchart corresponds to the processing in S324.

[0123] In S701, the first application sends information to the communication device 151 instructing it to terminate operation in connection setting mode. As a result, the communication device 151 terminates connection setting mode and restarts operation in the mode it was in before operating in connection setting mode. When connection setting mode is terminated, the connection between the communication device 151 and the terminal device 101 is also disconnected. The terminal device 101 then uses the OS's reconnection function to reconnect with the designated AP, which is the AP to which the terminal device 101 was connected before connecting with the communication device 151.

[0124] In S702, the first application displays a confirmation screen to ask the user whether the initial setup operation for the communication device 151 has been completed. The initial setup operation for the communication device 151 is an operation performed when the communication device 151 is first powered on (upon arrival). In this embodiment, the initial setup operation includes, for example, removing the orange tape from the communication device 151, attaching the print head to the communication device 151, replenishing recording material (ink or toner) to the communication device 151, replenishing paper to the communication device 151, and setting the date and time for the communication device 151. In addition, the initial setup process, which is a process performed by the communication device 151 in conjunction with the initial setup operation, includes, for example, a print head cleaning process, paper detection, a registration process (register adjustment process) to adjust the ink placement on the paper during printing, and starting operation in connection setting mode. Therefore, the confirmation screen can also be said to be a screen to ask the user whether the initial setup process by the communication device 151 has been completed. Note that the operations included in the initial setup operation and the processes included in the initial setup process are not limited to this form and may differ depending on the type of communication device 151, the printing method, etc. An example of a screen displayed in this process is shown in Figure 8. Screen 800 includes a message 801, a no button 802, and a yes button 803. Message 801 includes a message notifying that the initial setup operation for the communication device 151 must be completed in order to try other connection methods, and a message confirming whether the initial setup operation for the communication device 151 has been completed. If the initial setup operation for the communication device 151 has been completed, the user presses the yes button 803; if the initial setup operation for the communication device 151 has not been completed, the user presses the no button 802.

[0125] In S703, the first application determines whether or not it has received a user response to the Yes button 803. If a user response to the No button 802 has been received, the result of this determination is NO. If the first application determines it is YES, it proceeds to S707; if it determines it is NO, it proceeds to S704.

[0126] In S704, the first application determines whether the terminal device 101 is connected to the internet. As described above, when the connection between the communication device 151 and the terminal device 101 is disconnected in S701, the OS of the terminal device 101 performs a reconnection process. However, operations on the confirmation screen may be performed before the reconnection with the Wi-Fi AP is completed. In other words, operations on the confirmation screen may be performed while the terminal device is not connected to the internet via the Wi-Fi AP. In this case, the web page cannot be displayed in the process of S706. This determination is performed in the process of S705 in order to display the web page correctly. Specifically in this process, the first application executes an API to check whether the terminal device 101 is connected to the internet and receives a notification from the OS indicating whether the terminal device 101 is connected to the internet. The first application then performs this determination based on the content of the received notification. The notification from the OS indicates that the terminal device 101 is connected to the internet when the terminal device 101 is connected to the internet via the Wi-Fi AP. Furthermore, the notification from the OS may indicate that terminal device 101 is connected to the internet even if terminal device 101 is not connected to the internet via Wi-Fi connection to an AP, but is connected to the internet via mobile data communication. Also, the processing in this determination is not limited to the above form. For example, terminal device 101 may execute an API to check the SSID of the AP to which it is currently connected, and receive a notification from the OS indicating the SSID of the AP to which terminal device 101 is currently connected. The first application may then determine YES in this determination if the received notification indicates an SSID different from the SSID of the AP enabled by the communication device 151 operating in connection setting mode, and determine NO in this determination if the received notification indicates an SSID of the AP enabled by the communication device 151 operating in connection setting mode. In other words, this determination may also be a determination of whether terminal device 101 is currently connected to an AP different from the AP enabled by the communication device 151 operating in connection setting mode.Furthermore, the first app may determine in this determination whether the received notification indicates the SSID of a specified AP, or whether it determines whether the received notification indicates a different SSID. If the first app determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it determines whether it is SSID.

[0127] In S705, the first application determines whether the time elapsed since the operation on the confirmation screen displayed in S702 was accepted has exceeded a predetermined threshold. That is, the first application determines whether the time elapsed since the operation on the confirmation screen displayed in S702 was accepted has timed out. The predetermined threshold is, for example, 10 seconds. If the first application determines YES, it proceeds to S706; if it determines NO, it returns to S704.

[0128] In S706, the first application executes a process to display a manual for initial setup operations for the communication device 151. Specifically, the first application uses its internal browser (in-app browser) to display a web page containing the manual for initial setup operations for the communication device 151. The information required to display this web page is obtained from a predetermined server via an internet connection. Therefore, if the communication device 151 is connected to the internet, the web page is successfully displayed. If the communication device 151 is not connected to the internet, the web page is not displayed successfully, and a screen notifying the user that the communication device 151 is not connected to the internet is displayed by the browser. In this embodiment, by displaying the web page using the internal browser of the first application, the first application can continue to operate in the foreground. The manual for initial setup operations for the communication device 151 includes content that sequentially explains to the user the specific operation methods for each operation to be performed as part of the initial setup operations for the communication device 151. The first application may also display a web page for selecting the model of the communication device 151 before displaying the web page containing the manual for initial setup operations for the communication device 151. Furthermore, once a model is selected on that page, a manual for initial setup procedures corresponding to the selected model may be displayed. The manual for initial setup procedures for the communication device 151 may be displayed by an external browser of the first application, rather than the internal browser of the first application. In that case, the external browser displaying the manual will move to the foreground, and the first application will move to the background. Also, the manual for initial setup procedures for the communication device 151 may be displayed by the first application without using a browser, as content pre-installed by the first application, rather than being displayed as a web page obtained via the internet. The screen displayed by the internal browser of the first application can be closed by the user operating the close button on that screen.Furthermore, the screen displayed by the internal browser of the first application is displayed on top of the confirmation screen shown in S702. Therefore, when the screen displayed by the internal browser of the first application is closed, the terminal device 101 becomes able to accept operations on the confirmation screen again. For this reason, after this process, the process returns to S703.

[0129] In the above description, the process proceeds to S706 only if the result of S705 is YES. However, the process is not limited to this configuration. If the result of S705 is YES, the first application may, without attempting to display a web page via a browser, display a message on the first application's screen indicating that the communication device 151 is not connected to the internet.

[0130] In S707, which is executed when the result of S703 is YES, the first application determines whether the terminal device 101 is connected to the internet. This process is the same as in S704. If the first application determines it is YES, it proceeds to S709; if it determines it is NO, it proceeds to S708.

[0131] In S708, the first application determines whether the time elapsed since the operation on the confirmation screen displayed in S702 was accepted exceeds a predetermined threshold. This process is the same as in S705. If the first application determines it is YES, it proceeds to S709; if it determines it is NO, it returns to S707.

[0132] In S709, the first application executes a process to display a manual on other connection methods. Specifically, the first application displays a web page containing a manual on other connection methods using its internal browser (in-app browser). The information required to display this web page is obtained from a predetermined server via an internet connection. Therefore, if the communication device 151 is connected to the internet, the web page is successfully displayed. If the communication device 151 is not connected to the internet, the web page is not displayed successfully, and a screen notifying the user that the communication device 151 is not connected to the internet is displayed by the browser. In this embodiment, by displaying the web page using the internal browser of the first application, the first application can continue to operate in the foreground. The manual on other connection methods includes content that explains specific operating procedures for establishing a connection between the communication device 151 and the AP using other connection methods. Specifically, other connection methods include, for example, a method in which the communication device 151 displays a list of APs discovered by the communication device 151 through a search on the screen of the communication device 151, and establishes a Wi-Fi connection between the communication device 151 and the AP selected by the user from the displayed list. Other connection methods include, for example, establishing a Wi-Fi connection between the AP and the communication device 151 using WPS (Wi-Fi Protected Storage). Other connection methods also include, for example, establishing a wired LAN connection between the AP and the communication device 151 using a wired LAN cable. The first application may display a web page for selecting the model of the communication device 151 before displaying a web page displaying a manual for initial setup operations for the communication device 151. Once a model is selected on that page, a manual for other connection methods corresponding to the selected model may be displayed. The manual for other connection methods for the communication device 151 may be displayed by an external browser of the first application, rather than by the internal browser of the first application.In that case, the external browser displaying the manual will move to the foreground, and the first application will move to the background. Furthermore, manuals for other connection methods may be displayed by the first application without using a browser, rather than being displayed as web pages retrieved via the internet, as content already present in the first application.

[0133] In S710, the first application displays a search screen for searching for communication devices 151 on the Wi-Fi network to which terminal device 101 is connected. The display of the search screen is performed in the background of the internal browser while a web page is being displayed by the internal browser. Therefore, if the internal browser is closed by pressing the close button, the search screen will be displayed. The search screen includes a button to instruct the system to start searching for communication devices 151 on the Wi-Fi network to which terminal device 101 is connected. When this button is pressed, the first application searches for communication devices 151 on the Wi-Fi network to which terminal device 101 is connected. The application then displays a list of communication devices 151 found through the search. The first application displays only the communication device 151 that corresponds to the first application from among the multiple communication devices 151 found through the search. The communication device 151 that corresponds to the first application is the communication device 151 provided by the vendor that provides the first application. Furthermore, the search may be performed in such a manner that only communication devices 151 provided by the vendor providing the first application are found, and communication devices 151 provided by other vendors are not found. If any communication device 151 is selected from the displayed list, the first application obtains information about the selected communication device 151 from the selected communication device 151 via the Wi-Fi network to which the terminal device 101 is connected, and registers the selected communication device 151 with the first application. After that, the process of this flowchart is terminated.

[0134] This configuration allows the first app to improve usability when verifying AP passwords. Furthermore, the first app can improve usability when verifying other connection methods.

[0135] <Other Embodiments> In the above-described embodiment, the connection between the communication device 151 operating in connection setting mode and the terminal device 101 is Wi-Fi, but the embodiment is not limited to this embodiment. The connection between the communication device 151 operating in connection setting mode and the terminal device 101 may be established by a communication method other than Wi-Fi, such as Bluetooth Classic or Bluetooth Low Energy. In that case, the terminal device 101 may maintain a Wi-Fi connection with a predetermined AP even while the connection between the communication device 151 operating in connection setting mode and the terminal device 101 is being established. That is, in the embodiment where the connection between the communication device 151 operating in connection setting mode and the terminal device 101 is a Wi-Fi connection, the predetermined AP is an AP to which the terminal device 101 was connected when the process that triggered the start of the flowchart in Figure 3 was executed, but to which the terminal device 101 is not connected when the information of the predetermined AP is transmitted to the communication device 151. On the other hand, in the case where the connection between the communication device 151 operating in connection setting mode and the terminal device 101 is a connection using a communication method other than Wi-Fi, the predetermined AP is the AP to which the terminal device 101 is connected both when the process that triggered the start of the flowchart in Figure 3 is executed and when the information of the predetermined AP is transmitted to the communication device 151. Therefore, it can be said that the predetermined AP is the AP to which the terminal device 101 was connected at least when the process that triggered the start of the flowchart in Figure 3 was executed.

[0136] In the above embodiment, the process of referencing a specific AP does not need to be performed. Specifically, for example, the processes S301 and S308-S312 may be omitted. In this form, if the result of the determination in S305 is NO, S313 is executed. Also, if the result of the determination in S307 is YES, S319 is executed.

[0137] In the above embodiment, it is not necessary for both the process that references a predetermined AP and the process that references a specific AP to be executed. Specifically, for example, processes S301, S302, and S305-S312 may be omitted. In this form, S313 is executed after S304.

[0138] In the embodiment described above, the direct connection button does not need to be displayed on the screen shown in S313. Specifically, for example, the processing in S314 to S317 may be omitted. In this embodiment, S318 is executed after S313.

[0139] In the above embodiment, even if the OS of the terminal device 101 is a version that allows the password to be displayed on the Wi-Fi settings screen by the second application, it is not necessary for both the password confirmation button 503 and the other connection method button 504 to be displayed on the password input screen displayed in S319. That is, it is possible for one of the two buttons, the password confirmation button 503 and the other connection method button 504, to be displayed on the password input screen displayed in S319, and the other to be omitted. If the password confirmation button 503 is not displayed on the password input screen displayed in S319, S321 and S322 are omitted, and if the result of the determination in S320 is NO, S323 is executed. If the button for other connection method button 504 is not displayed on the password input screen displayed in S319, S323 and S324 are omitted, and if the result of the determination in S321 is NO, S325 is executed.

[0140] In the above-described embodiment, a password confirmation button 503 is displayed on the password input screen as an area for password confirmation, and when this button is operated, a new password confirmation screen is displayed. However, the system is not limited to this embodiment. An area containing text explaining a specific password confirmation method may also be displayed on the password input screen as an area for password confirmation. In other words, the content that was displayed on the password confirmation screen in the above-described embodiment may be displayed on the password input screen. Furthermore, this content may be displayed on a separate screen that is displayed before the password input screen is displayed. In this embodiment, the password confirmation button 503 does not need to be displayed on the password input screen 500.

[0141] In the above-described embodiment, a button 504 for other connection methods is displayed on the password input screen as an area for other connection methods, and when this button is operated, a new screen for other connection methods is displayed. However, the embodiment is not limited to this form. An area containing text describing other connection methods may also be displayed on the password input screen as an area for other connection methods. In other words, the content that was displayed on the screen for other connection methods in the above-described embodiment may be displayed on the password input screen. Furthermore, this content may be displayed on a separate screen that is displayed before the password input screen is displayed. In this form, the button 504 for other connection methods does not need to be displayed on the password input screen 500.

[0142] In the above-described embodiment, the order in which the decisions in S320 to S325 are made is not particularly limited, and the decisions in S320 to S325 may be made in any order.

[0143] In the above-described embodiment, the list of APs used in the determinations of S305 and S309, or displayed in S313, is described as a list of APs discovered by a search performed by the communication device 151. However, the embodiment is not limited to this form. The list of APs used in the determinations of S305 and S309, or displayed in S313, may also be a list of APs discovered by a search performed by the terminal device 101. In this form, the processing of S304 may be omitted.

[0144] In the above embodiment, it is not necessary to perform a process to check whether the initial setup operation for the communication device 151 has been completed. Specifically, for example, the processes S702 to S706 may be omitted. In this form, S707 is executed after S701.

[0145] Furthermore, the object 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. That is, the object of the present invention can also be achieved by the computer (or CPU or MPU) of the system or device reading and executing 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.

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

[0147] It goes without saying that this also includes cases where the operating system running on the computer performs some or all of the actual processing based on the instructions of the program code read by the computer, and the functions of the aforementioned embodiment are realized through that processing.

[0148] Furthermore, the disclosure of this embodiment includes the following configuration. (Item 1) A specified application program, A computer of a first information processing device having an operating system, A first transmission step in which the predetermined application transmits to the operating system an instruction to establish a connection between a predetermined access point which is enabled by the communication device and the first information processing device, A display step in which a screen for stopping a mirroring function, which is a function that displays a screen based on screen information transmitted by the first information processing device and for controlling the first information processing device on the display unit of a second information processing device different from the first information processing device, is displayed by a predetermined application; If a connection between the predetermined access point and the first information processing device is established based on the instruction, a second transmission step is performed in which the predetermined application transmits connection information for connecting to an access point outside the first information processing device and outside the communication device to the communication device via the connection between the predetermined access point and the first information processing device. A program characterized by causing the execution of a specific action. (Item 2) The program according to item 1, characterized in that, in the display step, a screen for stopping the mirroring function is displayed based on whether the version of the operating system is a predetermined version or higher, and a step of not displaying the screen for stopping the mirroring function is performed based on whether the version of the operating system is less than a predetermined version. (Item 3) The program according to item 1 or 2, characterized in that in the first transmission step, the predetermined application program instructs the operating system to search for a device corresponding to the standard setup function of the operating system, and if a device is found in the search, the predetermined application program instructs the operating system to execute the standard setup function of the operating system without sending an instruction to establish the connection, and if a device is not found in the search, the program instructs the operating system to send an instruction to establish the connection. (Item 4) The program according to any one of items 1 to 3, characterized in that the screen for stopping the mirroring function is a screen displayed while waiting to receive the result of the instruction to establish the connection from the operating system. (Item 5) The program according to any one of items 1 to 3, characterized in that the screen for stopping the mirroring function is a screen that is displayed when a predetermined operation is performed on a screen that is displayed while waiting to receive the result of the instruction to establish the connection from the operating system. (Item 6) The program according to any one of items 1 to 3, characterized in that the screen for stopping the mirroring function is a screen displayed based on the fact that a predetermined error has been notified to the application program from the operating system. (Item 7) The program according to any one of items 1 to 6, characterized in that the screen for stopping the mirroring function includes a message prompting the user to stop the mirroring function. (Item 8) The program according to item 7, characterized in that the screen for stopping the mirroring function also includes a message prompting the user to operate the communication device in connection setting mode. (Item 9) The program according to any one of items 1 to 6, characterized in that the screen for stopping the mirroring function includes a link button for displaying a web page containing a message prompting the user to stop the mirroring function. (Item 10) The program according to item 9, characterized in that the aforementioned web page also includes a message prompting the user to operate the communication device in connection setting mode. (Item 11) The program according to any one of items 1 to 10, characterized in that the screen for stopping the mirroring function includes a button for sending instructions to the operating system again to establish the connection. (Item 12) An information processing device having a predetermined application program and operating system, A first transmission means that transmits to the operating system, via a predetermined application, an instruction to establish a connection between a predetermined access point activated by the communication device and the information processing device, A display means that displays a screen, based on screen information transmitted by the aforementioned information processing device and for controlling the aforementioned information processing device, on the display unit of another information processing device different from the aforementioned information processing device, for stopping the mirroring function, using a predetermined application; When a connection between the predetermined access point and the information processing device is established based on the instruction, a second transmission means transmits connection information for connecting to an access point outside the information processing device and outside the communication device to the communication device via the connection between the predetermined access point and the information processing device, using the predetermined application. An information processing device characterized by having the following features. (Item 13) A control method for an information processing device having a predetermined application program and operating system, A first transmission step in which the communication device transmits to the operating system an instruction to establish a connection between a predetermined access point and the information processing device, using the predetermined application; A display step in which a predetermined application displays a screen for stopping a mirroring function, which is a function that displays a screen based on screen information transmitted by the information processing device and for controlling the information processing device on the display unit of another information processing device different from the information processing device, If a connection between the predetermined access point and the information processing device is established based on the instruction, a second transmission step is performed in which the predetermined application transmits connection information for connecting to an access point outside the information processing device and outside the communication device to the communication device via the connection between the predetermined access point and the information processing device. A control method characterized by having the following features. [Explanation of Symbols]

[0149] 101 Terminal device 121 Terminal device 151 Communication equipment

Claims

1. A specified application program, In the computer of the first information processing device having an operating system, A first transmission step in which the predetermined application transmits to the operating system an instruction to establish a connection between a predetermined access point which is enabled by the communication device and the first information processing device, A display step in which a screen for stopping a mirroring function, which is a function that displays a screen based on screen information transmitted by the first information processing device and for controlling the first information processing device on the display unit of a second information processing device different from the first information processing device, is displayed by a predetermined application, If a connection between the predetermined access point and the first information processing device is established based on the instruction, a second transmission step is performed in which the predetermined application transmits connection information for connecting to an access point outside the first information processing device and outside the communication device to the communication device via the connection between the predetermined access point and the first information processing device. A program characterized by causing the execution of a specific action.

2. The program according to claim 1, characterized in that the display step involves displaying a screen for stopping the mirroring function based on whether the operating system version is at or above a predetermined version, and not displaying a screen for stopping the mirroring function based on whether the operating system version is below a predetermined version.

3. The program according to claim 1, characterized in that the first transmission step involves instructing the operating system from a predetermined application program to search for a device corresponding to the standard setup function of the operating system, and if a device is found in the search, instructing the operating system from the predetermined application program to execute the standard setup function of the operating system without sending an instruction to establish the connection, and if a device is not found in the search, the program causes the program to execute a step of sending an instruction to establish the connection.

4. The program according to claim 1, characterized in that the screen for stopping the mirroring function is a screen displayed while waiting to receive the result of the instruction to establish the connection from the operating system.

5. The program according to claim 1, characterized in that the screen for stopping the mirroring function is a screen that is displayed when a predetermined operation is performed on a screen that is displayed while waiting to receive the result of the instruction to establish the connection from the operating system.

6. The program according to claim 1, characterized in that the screen for stopping the mirroring function is a screen displayed based on the fact that a predetermined error has been notified to the application program from the operating system.

7. The program according to claim 1, characterized in that the screen for stopping the mirroring function includes a message prompting the user to stop the mirroring function.

8. The program according to claim 7, characterized in that the screen for stopping the mirroring function also includes a message prompting the user to operate the communication device in connection setting mode.

9. The program according to claim 1, characterized in that the screen for stopping the mirroring function includes a link button for displaying a web page containing a message prompting the user to stop the mirroring function.

10. The program according to claim 9, characterized in that the aforementioned web page also includes a message prompting the user to operate the communication device in connection setting mode.

11. The program according to claim 1, wherein the screen for stopping the mirroring function includes a button for sending an instruction to the operating system again to establish the connection.

12. An information processing device having a predetermined application program and operating system, A first transmission means that transmits to the operating system, via a predetermined application, an instruction to establish a connection between a predetermined access point activated by the communication device and the information processing device, A display means that displays a screen, based on screen information transmitted by the information processing device and for controlling the information processing device, on the display unit of another information processing device different from the information processing device, using a predetermined application, for stopping the mirroring function, When a connection between the predetermined access point and the information processing device is established based on the instruction, a second transmission means transmits connection information for connecting to an access point outside the information processing device and outside the communication device to the communication device via the connection between the predetermined access point and the information processing device, using the predetermined application. An information processing device characterized by having the following features.

13. A control method for an information processing device having a predetermined application program and operating system, A first transmission step in which the communication device transmits to the operating system an instruction to establish a connection between a predetermined access point and the information processing device, using the predetermined application; A display step in which a predetermined application displays a screen for stopping a mirroring function, which is a function that displays a screen based on screen information transmitted by the information processing device and for controlling the information processing device on the display unit of another information processing device different from the information processing device, If a connection between the predetermined access point and the information processing device is established based on the instruction, a second transmission step is performed in which the predetermined application transmits connection information for connecting to an access point outside the information processing device and outside the communication device to the communication device via the connection between the predetermined access point and the information processing device. A control method characterized by having the following features.

Citation Information

Patent Citations

  • Information processing device, control method, and program

    JP2016127545A